[packages/crossmingw32-gcc] - updated to 9.5.0; more hacks to build with mingw32 5.4.x

qboosh qboosh at pld-linux.org
Sun Apr 16 21:28:45 CEST 2023


commit e1e2e047ace525b9f6d28e57af5fd64ddb2cad73
Author: Jakub Bogusz <qboosh at pld-linux.org>
Date:   Sun Apr 16 21:29:51 2023 +0200

    - updated to 9.5.0; more hacks to build with mingw32 5.4.x

 crossmingw32-gcc-buildsystem2.patch | 36 +++++++++----------
 crossmingw32-gcc.spec               |  6 ++--
 gcc-mingw32.patch                   | 69 ++++++++++++++++++++++++++++++++++---
 3 files changed, 86 insertions(+), 25 deletions(-)
---
diff --git a/crossmingw32-gcc.spec b/crossmingw32-gcc.spec
index 673d0a8..24c88fd 100644
--- a/crossmingw32-gcc.spec
+++ b/crossmingw32-gcc.spec
@@ -13,13 +13,13 @@ Summary(pl.UTF-8):	Skrośne narzędzia programistyczne GNU dla MinGW32 - gcc
 Summary(pt_BR.UTF-8):	Utilitários para desenvolvimento de binários da GNU - MinGW32 gcc
 Summary(tr.UTF-8):	GNU geliştirme araçları - MinGW32 gcc
 Name:		crossmingw32-gcc
-Version:	8.5.0
-Release:	2
+Version:	9.5.0
+Release:	1
 Epoch:		1
 License:	GPL v3+
 Group:		Development/Languages
 Source0:	https://ftp.gnu.org/gnu/gcc/gcc-%{version}/gcc-%{version}.tar.xz
-# Source0-md5:	0c1f625768840187ef3b10adebe8e3b0
+# Source0-md5:	34cd76facb562835ff5faca81fead17e
 %define		w32api_ver	5.4.2
 #Source1Download: https://osdn.net/projects/mingw/releases/
 Source1:	https://osdn.net/projects/mingw/downloads/74926/w32api-%{w32api_ver}-mingw32-dev.tar.xz
diff --git a/crossmingw32-gcc-buildsystem2.patch b/crossmingw32-gcc-buildsystem2.patch
index 3218ec7..b1df190 100644
--- a/crossmingw32-gcc-buildsystem2.patch
+++ b/crossmingw32-gcc-buildsystem2.patch
@@ -9,14 +9,14 @@
  CFLAGS = @CFLAGS@
  RANLIB = @RANLIB@
  LN_S = @LN_S@
---- gcc/libgcc/configure.org	2010-09-29 01:36:46.047000017 +0200
-+++ gcc/libgcc/configure	2010-09-29 01:40:00.929000003 +0200
-@@ -2687,6 +2687,7 @@
+--- gcc-9.5.0/libgcc/configure.orig	2023-04-15 23:24:15.271132715 +0200
++++ gcc-9.5.0/libgcc/configure	2023-04-16 07:36:39.584410765 +0200
+@@ -3208,6 +3208,7 @@ if test -n "$ac_tool_prefix"; then
  set dummy ${ac_tool_prefix}gcc; ac_word=$2
  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
  $as_echo_n "checking for $ac_word... " >&6; }
 +CC="$CC -isystem `pwd`/../../sysroot/i386-mingw32/include -isystem `pwd`/../../sysroot/i386-mingw32/sys-include -B`pwd`/../../sysroot/i386-mingw32/lib/"
- if test "${ac_cv_prog_CC+set}" = set; then :
+ if ${ac_cv_prog_CC+:} false; then :
    $as_echo_n "(cached) " >&6
  else
 --- gcc/libiberty/Makefile.in.org	2010-04-29 23:53:50.429231967 +0200
@@ -30,19 +30,19 @@
  CFLAGS = @CFLAGS@
  CPPFLAGS = @CPPFLAGS@
  RANLIB = @RANLIB@
---- gcc/libiberty/configure.org	2010-09-29 01:46:07.266000013 +0200
-+++ gcc/libiberty/configure	2010-09-29 01:46:35.758000014 +0200
-@@ -2789,6 +2789,7 @@
+--- gcc-9.5.0/libiberty/configure.orig	2023-04-15 23:24:15.307799183 +0200
++++ gcc-9.5.0/libiberty/configure	2023-04-16 07:37:20.094191305 +0200
+@@ -2990,6 +2990,7 @@ if test -n "$ac_tool_prefix"; then
  set dummy ${ac_tool_prefix}gcc; ac_word=$2
  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
  $as_echo_n "checking for $ac_word... " >&6; }
 +CC="$CC -isystem `pwd`/../../sysroot/i386-mingw32/include -isystem `pwd`/../../sysroot/i386-mingw32/sys-include -B`pwd`/../../sysroot/i386-mingw32/lib/"
- if test "${ac_cv_prog_CC+set}" = set; then :
+ if ${ac_cv_prog_CC+:} false; then :
    $as_echo_n "(cached) " >&6
  else
---- gcc/libstdc++-v3/Makefile.in.org	2010-04-29 23:58:03.243106668 +0200
-+++ gcc/libstdc++-v3/Makefile.in	2010-04-29 23:57:34.857355967 +0200
-@@ -115,7 +115,7 @@
+--- gcc-9.5.0/libstdc++-v3/Makefile.in.orig	2022-05-27 09:21:13.311391084 +0200
++++ gcc-9.5.0/libstdc++-v3/Makefile.in	2023-04-15 23:24:15.351132282 +0200
+@@ -197,7 +197,7 @@ AUTOMAKE = @AUTOMAKE@
  AWK = @AWK@
  BASIC_FILE_CC = @BASIC_FILE_CC@
  BASIC_FILE_H = @BASIC_FILE_H@
@@ -51,18 +51,18 @@
  CCODECVT_CC = @CCODECVT_CC@
  CCOLLATE_CC = @CCOLLATE_CC@
  CCTYPE_CC = @CCTYPE_CC@
-@@ -133,7 +133,7 @@
+@@ -217,7 +217,7 @@ CPU_OPT_EXT_RANDOM = @CPU_OPT_EXT_RANDOM
  CSTDIO_H = @CSTDIO_H@
  CTIME_CC = @CTIME_CC@
  CTIME_H = @CTIME_H@
 -CXX = @CXX@
 +override CXX = @CXX@
  CXXCPP = @CXXCPP@
+ CXXFILT = @CXXFILT@
  CXXFLAGS = @CXXFLAGS@
- CYGPATH_W = @CYGPATH_W@
---- gcc/libstdc++-v3/configure.org	2010-09-29 01:48:10.661000013 +0200
-+++ gcc/libstdc++-v3/configure	2010-09-29 01:51:34.583000014 +0200
-@@ -3498,6 +3498,7 @@
+--- gcc-9.5.0/libstdc++-v3/configure.orig	2022-05-27 09:21:13.335391201 +0200
++++ gcc-9.5.0/libstdc++-v3/configure	2023-04-16 07:38:19.120538198 +0200
+@@ -3795,6 +3795,7 @@ fi
  save_CXXFLAGS="$CXXFLAGS"
  CXXFLAGS="$CXXFLAGS -fno-builtin"
  ac_ext=c
@@ -70,12 +70,12 @@
  ac_cpp='$CPP $CPPFLAGS'
  ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
  ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
-@@ -3507,6 +3508,8 @@
+@@ -3804,6 +3805,8 @@ if test -n "$ac_tool_prefix"; then
  set dummy ${ac_tool_prefix}gcc; ac_word=$2
  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
  $as_echo_n "checking for $ac_word... " >&6; }
 +CC="$CC -isystem `pwd`/../../sysroot/i386-mingw32/include -isystem `pwd`/../../sysroot/i386-mingw32/sys-include -B`pwd`/../../sysroot/i386-mingw32/lib/"
 +CXX="$CXX -isystem `pwd`/../../sysroot/i386-mingw32/include -isystem `pwd`/../../sysroot/i386-mingw32/sys-include -B`pwd`/../../sysroot/i386-mingw32/lib/"
- if test "${ac_cv_prog_CC+set}" = set; then :
+ if ${ac_cv_prog_CC+:} false; then :
    $as_echo_n "(cached) " >&6
  else
diff --git a/gcc-mingw32.patch b/gcc-mingw32.patch
index 5450bfa..5c3c6e8 100644
--- a/gcc-mingw32.patch
+++ b/gcc-mingw32.patch
@@ -10,10 +10,10 @@
  
  
  /* INTEGER FUNCTION CHMOD (NAME, MODE)
---- gcc-8.5.0/libstdc++-v3/libsupc++/new_opa.cc.orig	2022-02-16 06:33:02.466274733 +0100
-+++ gcc-8.5.0/libstdc++-v3/libsupc++/new_opa.cc	2022-02-16 06:24:22.683854869 +0100
-@@ -28,10 +28,13 @@
- #include <stdint.h>
+--- gcc-9.5.0/libstdc++-v3/libsupc++/new_opa.cc.orig	2023-04-15 22:04:10.903826873 +0200
++++ gcc-9.5.0/libstdc++-v3/libsupc++/new_opa.cc	2023-04-15 22:58:08.356288088 +0200
+@@ -29,10 +29,13 @@
+ #include <bit>
  #include "new"
  
 -#if !_GLIBCXX_HAVE_ALIGNED_ALLOC && !_GLIBCXX_HAVE__ALIGNED_MALLOC \
@@ -47,3 +47,64 @@
  // The sized deletes are defined in other files.
  #pragma GCC diagnostic ignored "-Wsized-deallocation"
  
+--- gcc-9.5.0/libstdc++-v3/src/filesystem/ops-common.h.orig	2022-05-27 09:21:13.451391769 +0200
++++ gcc-9.5.0/libstdc++-v3/src/filesystem/ops-common.h	2023-04-16 15:41:54.130017065 +0200
+@@ -106,7 +106,7 @@ namespace __gnu_posix
+   inline int rename(const wchar_t* oldname, const wchar_t* newname)
+   { return _wrename(oldname, newname); }
+ 
+-  inline int truncate(const wchar_t* path, _off64_t length)
++  inline int truncate(const wchar_t* path, __off64_t length)
+   {
+     const int fd = ::_wopen(path, _O_BINARY|_O_RDWR);
+     if (fd == -1)
+--- gcc-9.5.0/libstdc++-v3/config/os/mingw32/error_constants.h.orig	2022-05-27 09:21:13.331391181 +0200
++++ gcc-9.5.0/libstdc++-v3/config/os/mingw32/error_constants.h	2023-04-16 18:55:43.337016242 +0200
+@@ -33,6 +33,18 @@
+ #include <bits/c++config.h>
+ #include <cerrno>
+ 
++#ifndef EOVERFLOW
++#define EOVERFLOW ERANGE
++#endif
++
++#ifndef ELOOP
++#define ELOOP ERANGE
++#endif
++
++#ifndef ENOTSUP
++#define ENOTSUP ENOSYS
++#endif
++
+ namespace std _GLIBCXX_VISIBILITY(default)
+ {
+ _GLIBCXX_BEGIN_NAMESPACE_VERSION
+--- gcc-9.5.0/libstdc++-v3/src/c++11/system_error.cc.orig	2022-05-27 09:21:13.447391751 +0200
++++ gcc-9.5.0/libstdc++-v3/src/c++11/system_error.cc	2023-04-16 20:09:05.676500055 +0200
+@@ -168,7 +168,7 @@ namespace
+ #ifdef EISDIR
+       case EISDIR:
+ #endif
+-#ifdef ELOOP
++#if defined(ELOOP) && (ELOOP != ERANGE)
+       case ELOOP:
+ #endif
+ #ifdef EMFILE
+@@ -253,7 +253,7 @@ namespace
+ #ifdef ENOTSOCK
+       case ENOTSOCK:
+ #endif
+-#ifdef ENOTSUP
++#if defined (ENOTSUP) && (ENOTSUP != ENOSYS)
+       case ENOTSUP:
+ #endif
+ #ifdef ENOTTY
+@@ -265,7 +265,7 @@ namespace
+ #if defined EOPNOTSUPP && (!defined ENOTSUP || EOPNOTSUPP != ENOTSUP)
+       case EOPNOTSUPP:
+ #endif
+-#ifdef EOVERFLOW
++#if defined(EOVERFLOW) && (EOVERFLOW != ERANGE)
+       case EOVERFLOW:
+ #endif
+ #ifdef EOWNERDEAD
================================================================

---- gitweb:

http://git.pld-linux.org/gitweb.cgi/packages/crossmingw32-gcc.git/commitdiff/e1e2e047ace525b9f6d28e57af5fd64ddb2cad73



More information about the pld-cvs-commit mailing list