pkgsrc-Changes archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
CVS commit: pkgsrc/lang/gcc6
Module Name: pkgsrc
Committed By: js
Date: Sat Oct 11 16:14:19 UTC 2025
Modified Files:
pkgsrc/lang/gcc6: Makefile distinfo options.mk
pkgsrc/lang/gcc6/patches: patch-gcc_Makefile.in patch-gcc_config.gcc
patch-gcc_ginclude_stddef.h patch-gcc_plugin.c
patch-libgcc_config.host
Added Files:
pkgsrc/lang/gcc6/patches: patch-gmp_gen-sieve.c
patch-gmp_mpn_generic_compute_powtab.c patch-gmp_mpz_millerrabin.c
patch-gmp_mpz_nextprime.c patch-gmp_mpz_primorial_ui.c
patch-gmp_primesieve.c patch-libiberty_pex-unix.c
patch-libstdc++-v3_include_bits_unique_ptr.h
patch-libstdc++-v3_include_bits_valarray_after.h
patch-libstdc++-v3_include_c_global_cmath
patch-libstdc++-v3_include_c_global_cstring
patch-libstdc++-v3_include_c_global_cwchar
patch-libstdc++-v3_src_c++11_system_error.cc
Log Message:
Port lang/gcc6 to QNX
To generate a diff of this commit:
cvs rdiff -u -r1.50 -r1.51 pkgsrc/lang/gcc6/Makefile
cvs rdiff -u -r1.22 -r1.23 pkgsrc/lang/gcc6/distinfo
cvs rdiff -u -r1.6 -r1.7 pkgsrc/lang/gcc6/options.mk
cvs rdiff -u -r1.2 -r1.3 pkgsrc/lang/gcc6/patches/patch-gcc_Makefile.in
cvs rdiff -u -r1.5 -r1.6 pkgsrc/lang/gcc6/patches/patch-gcc_config.gcc
cvs rdiff -u -r1.1 -r1.2 pkgsrc/lang/gcc6/patches/patch-gcc_ginclude_stddef.h \
pkgsrc/lang/gcc6/patches/patch-gcc_plugin.c \
pkgsrc/lang/gcc6/patches/patch-libgcc_config.host
cvs rdiff -u -r0 -r1.1 pkgsrc/lang/gcc6/patches/patch-gmp_gen-sieve.c \
pkgsrc/lang/gcc6/patches/patch-gmp_mpn_generic_compute_powtab.c \
pkgsrc/lang/gcc6/patches/patch-gmp_mpz_millerrabin.c \
pkgsrc/lang/gcc6/patches/patch-gmp_mpz_nextprime.c \
pkgsrc/lang/gcc6/patches/patch-gmp_mpz_primorial_ui.c \
pkgsrc/lang/gcc6/patches/patch-gmp_primesieve.c \
pkgsrc/lang/gcc6/patches/patch-libiberty_pex-unix.c \
pkgsrc/lang/gcc6/patches/patch-libstdc++-v3_include_bits_unique_ptr.h \
pkgsrc/lang/gcc6/patches/patch-libstdc++-v3_include_bits_valarray_after.h \
pkgsrc/lang/gcc6/patches/patch-libstdc++-v3_include_c_global_cmath \
pkgsrc/lang/gcc6/patches/patch-libstdc++-v3_include_c_global_cstring \
pkgsrc/lang/gcc6/patches/patch-libstdc++-v3_include_c_global_cwchar \
pkgsrc/lang/gcc6/patches/patch-libstdc++-v3_src_c++11_system_error.cc
Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.
Modified files:
Index: pkgsrc/lang/gcc6/Makefile
diff -u pkgsrc/lang/gcc6/Makefile:1.50 pkgsrc/lang/gcc6/Makefile:1.51
--- pkgsrc/lang/gcc6/Makefile:1.50 Mon Apr 21 20:26:51 2025
+++ pkgsrc/lang/gcc6/Makefile Sat Oct 11 16:14:18 2025
@@ -1,4 +1,4 @@
-# $NetBSD: Makefile,v 1.50 2025/04/21 20:26:51 wiz Exp $
+# $NetBSD: Makefile,v 1.51 2025/10/11 16:14:18 js Exp $
GCC_PKGNAME= gcc6
.include "version.mk"
@@ -99,7 +99,8 @@ FORTIFY_SUPPORTED= no
# Disable fixincludes on SmartOS, header changes result in broken includes
# being generated, see https://github.com/joyent/pkgsrc-legacy/issues/270
-.if ${OS_VARIANT} == "SmartOS"
+# Same on QNX.
+.if ${OS_VARIANT} == "SmartOS" || ${OPSYS} == "QNX"
SUBST_CLASSES+= fixinc
SUBST_STAGE.fixinc= pre-configure
SUBST_FILES.fixinc= gcc/Makefile.in
@@ -136,6 +137,11 @@ CONFIGURE_ARGS+= --with-local-prefix=${G
CONFIGURE_ARGS+= --enable-threads=posix
CONFIGURE_ARGS+= --with-boot-ldflags=${BOOT_LDFLAGS:Q}
+CONFIGURE_ENV.QNX+= ACCEPT_INFERIOR_RM_PROGRAM=yes
+# Make invokes further configure scripts
+MAKE_ENV.QNX+= ACCEPT_INFERIOR_RM_PROGRAM=yes
+MAKE_ENV.QNX+= GENAUTOMATA_LDFLAGS="-Wl,--stack,10000000"
+
.if !empty(MACHINE_PLATFORM:MNetBSD-*-*)
# native SSP conflicts with gcc's libssp
CONFIGURE_ARGS+= --disable-libssp
Index: pkgsrc/lang/gcc6/distinfo
diff -u pkgsrc/lang/gcc6/distinfo:1.22 pkgsrc/lang/gcc6/distinfo:1.23
--- pkgsrc/lang/gcc6/distinfo:1.22 Tue Sep 5 16:54:20 2023
+++ pkgsrc/lang/gcc6/distinfo Sat Oct 11 16:14:18 2025
@@ -1,4 +1,4 @@
-$NetBSD: distinfo,v 1.22 2023/09/05 16:54:20 vins Exp $
+$NetBSD: distinfo,v 1.23 2025/10/11 16:14:18 js Exp $
BLAKE2s (ecj-4.5.jar) = dc4803ed7321f118a8d4ed687cb8e14233b05f5ae164ceaca12abe6b44ebb898
SHA512 (ecj-4.5.jar) = d4e1bf7538ace56e3d69fa91da5bbd16c272923b4de0a9d8dee23ea2b75f9f38c603de72fc4061df49285c450b63f3df211cee5270e9fffc5447445d1a9c9e4e
@@ -9,8 +9,8 @@ Size (gcc-6.5.0.tar.xz) = 74355588 bytes
BLAKE2s (isl-0.14.tar.bz2) = 7eb101840278e5819cf4767e8509cb61f0a0a7bac52c8a4c199bfbf10a0ec444
SHA512 (isl-0.14.tar.bz2) = 117c0c6f31d91a9284a8f54a748df6494ca2ac21507a45611e911403e9610579b9323ce624aea1de0b8089b3194e59d4364f01bdb71ddcf8f6c24c749d11c4b7
Size (isl-0.14.tar.bz2) = 1399896 bytes
-SHA1 (patch-gcc_Makefile.in) = 41d45e8988b59e6ffa7adb7833290d39fc1fd0e1
-SHA1 (patch-gcc_config.gcc) = ec4426c7800f909f5ccdfea23e3b3c61a914f061
+SHA1 (patch-gcc_Makefile.in) = 185cd94319c16ebc09356780435c398cbb75e666
+SHA1 (patch-gcc_config.gcc) = 11106b7084c76ab7d06a558e327ffea30e440e04
SHA1 (patch-gcc_config.host) = 5dd1b72be5d520ebc679c79cbe92317eaf66028f
SHA1 (patch-gcc_config_arm_arm.h) = e69b7f89ba245847f58253675a16749890b9d1ae
SHA1 (patch-gcc_config_host-netbsd.c) = 765295f07edb8a68f1910e3a9b4dd2a7dcd491a5
@@ -23,21 +23,28 @@ SHA1 (patch-gcc_config_t-netbsd) = 802ad
SHA1 (patch-gcc_config_x-netbsd) = 6dc3d78e26df62054ea29f98ca51592858e671e3
SHA1 (patch-gcc_configure) = 15fb7af267b79965f83bc64ce8aad1279b0ea52d
SHA1 (patch-gcc_ggc-common.c) = a5d2dba635859f5d680c3f80d7c30b42461c752b
-SHA1 (patch-gcc_ginclude_stddef.h) = fb1f83801e0f5bcec110667dc868c47ff2d10343
+SHA1 (patch-gcc_ginclude_stddef.h) = 41757e17fbdaee83b95278efa228350c4d8e80db
SHA1 (patch-gcc_lto_lto.c) = 825b632e2a7ff5777d4fbfdcf6f0ea3f64c4742b
-SHA1 (patch-gcc_plugin.c) = 7a7ebc6650fe327fa7be1f7a4d26e8edc7597fcf
+SHA1 (patch-gcc_plugin.c) = fe897fa051c5a1e69af423c354a07baa7332043e
SHA1 (patch-gcc_system.h) = 4c959a6b1c4d524cbdf44cfb80f0e5758ec20783
SHA1 (patch-gcc_targhooks.c) = f8ec71006cf35947e93fa229bc2f52f46cf5597b
+SHA1 (patch-gmp_gen-sieve.c) = 7e95627a7f46e9db965de5620999c7bdc6ef6606
+SHA1 (patch-gmp_mpn_generic_compute_powtab.c) = 2301acc51d23bb5558360f133c037a39dec2bd7f
+SHA1 (patch-gmp_mpz_millerrabin.c) = dc92fc81042028ffa1722a85cf42f225bee32cd5
+SHA1 (patch-gmp_mpz_nextprime.c) = 12d7ba775972bf8ef1501131dbbb4bffeb4b0214
+SHA1 (patch-gmp_mpz_primorial_ui.c) = 973d4faadb27bb353bf68f28fd76a5bf0d6315fb
+SHA1 (patch-gmp_primesieve.c) = 3477e4de710bc1eb4297d53e54dc7173cf961217
SHA1 (patch-libcilkrts_configure) = d8f3065bb9934c3278e5e7dc6f1c56cdf31de6b1
SHA1 (patch-libcilkrts_runtime_os-unix.c) = 653c5e3486d09bddae6a384edc2a3b3f2c95f74b
SHA1 (patch-libdecnumber_decNumber.c) = cec90e49c829bfc6ba1ec605d2fac7daaad62762
SHA1 (patch-libffi_configure) = bcfbfe8abddc378e2de4a39ad0669583b37e0292
SHA1 (patch-libffi_testsuite_libffi.call_float2.c) = 6321dde308579448c27c2b6e1e30633699dd145f
-SHA1 (patch-libgcc_config.host) = 7ef11f83071325ef29b710f40251fce2b62cc9f3
+SHA1 (patch-libgcc_config.host) = 4265cb9917984467caec5f5ebebad5c902168623
SHA1 (patch-libgcc_crtstuff.c) = d22dd1fb4a79aed2e7c2864f0bb00bcc338b3ab8
SHA1 (patch-libgcc_unwind-dw2-fde-dip.c) = 9c5e1823226521d11900b4d3b92c050d3941a1f6
SHA1 (patch-libgfortran_configure) = 869a60fd08edecf18a42732dcbf226bad1309394
SHA1 (patch-libgo_Makefile.in) = 612987541f745c7be6835ce7fb7119884db294c3
+SHA1 (patch-libiberty_pex-unix.c) = 52896635b2578e8338a82ad3a3e9fd4d911c8489
SHA1 (patch-libjava_boehm.cc) = bf5564261b02523927685340f59ce8faf7f84ace
SHA1 (patch-libjava_configure) = 48ea2baffe87e09dda8133d286bd9b1bfe4c3f8a
SHA1 (patch-libjava_contrib_rebuild-gcj-db.in) = bb01d738fc7db05046ae37e8ade32574de1d8297
@@ -45,4 +52,10 @@ SHA1 (patch-libsanitizer_configure.tgt)
SHA1 (patch-libstdc++-v3_config_os_bsd_netbsd_ctype__base.h) = 014d442c885b9c51d1a4af05205279c274a9559d
SHA1 (patch-libstdc++-v3_config_os_bsd_netbsd_ctype__configure__char.cc) = b63c2682336c9b6f0e0d7b900d6f40ad6e7a5ec4
SHA1 (patch-libstdc++-v3_config_os_bsd_netbsd_ctype__inline.h) = 626fc1f9c035ac5cef30a92d525af4e778835ebf
+SHA1 (patch-libstdc++-v3_include_bits_unique_ptr.h) = 2b2ff3b4ccc66241e359f09c15557d3125573acc
+SHA1 (patch-libstdc++-v3_include_bits_valarray_after.h) = bb0f70b3de5967cf102ffb9cc24a8acdf57ebadd
+SHA1 (patch-libstdc++-v3_include_c_global_cmath) = 8ce58c8ff36de0ee87e9a2f13caa7ad130ebf415
+SHA1 (patch-libstdc++-v3_include_c_global_cstring) = 0a87e7939448957bb352d8a50d5d3cb07f2f9a5d
+SHA1 (patch-libstdc++-v3_include_c_global_cwchar) = 9408c1876183fa3f9d4440acdc96217c8a47ed87
SHA1 (patch-libstdc++-v3_libsupc++_unwind-cxx.h) = 9784bfa4323f8498b36565d0fea28fce69ffdbb1
+SHA1 (patch-libstdc++-v3_src_c++11_system_error.cc) = 2c4b5326f4a4f518b202055aa3fbcc76c27f51dd
Index: pkgsrc/lang/gcc6/options.mk
diff -u pkgsrc/lang/gcc6/options.mk:1.6 pkgsrc/lang/gcc6/options.mk:1.7
--- pkgsrc/lang/gcc6/options.mk:1.6 Tue Mar 5 15:26:42 2024
+++ pkgsrc/lang/gcc6/options.mk Sat Oct 11 16:14:18 2025
@@ -1,11 +1,17 @@
-# $NetBSD: options.mk,v 1.6 2024/03/05 15:26:42 wiz Exp $
+# $NetBSD: options.mk,v 1.7 2025/10/11 16:14:18 js Exp $
+
+.include "../../mk/bsd.fast.prefs.mk"
PKG_OPTIONS_VAR= PKG_OPTIONS.${GCC_PKGNAME}
PKG_SUPPORTED_OPTIONS= nls gcc-inplace-math gcc-c++ gcc-fortran \
gcc-go gcc-objc gcc-objc++ gcc-graphite gcc-java \
always-libgcc
-PKG_SUGGESTED_OPTIONS= gcc-c++ gcc-fortran gcc-objc gcc-objc++ \
+PKG_SUGGESTED_OPTIONS= gcc-c++ gcc-objc gcc-objc++ \
gcc-graphite gcc-inplace-math
+.if ${OPSYS} != "QNX"
+# Building the Fortran compiler on QNX segfaults.
+PKG_SUGGESTED_OPTIONS+= gcc-fortran
+.endif
.if ${OPSYS} == "NetBSD"
PKG_SUGGESTED_OPTIONS+= nls
Index: pkgsrc/lang/gcc6/patches/patch-gcc_Makefile.in
diff -u pkgsrc/lang/gcc6/patches/patch-gcc_Makefile.in:1.2 pkgsrc/lang/gcc6/patches/patch-gcc_Makefile.in:1.3
--- pkgsrc/lang/gcc6/patches/patch-gcc_Makefile.in:1.2 Fri Sep 30 17:17:37 2016
+++ pkgsrc/lang/gcc6/patches/patch-gcc_Makefile.in Sat Oct 11 16:14:18 2025
@@ -1,4 +1,4 @@
-$NetBSD: patch-gcc_Makefile.in,v 1.2 2016/09/30 17:17:37 sevan Exp $
+$NetBSD: patch-gcc_Makefile.in,v 1.3 2025/10/11 16:14:18 js Exp $
Add gcc libdir to a programs rpath so that _this gcc's_ support libraries
are found. Note that there must not be a whitespace between
@@ -15,3 +15,12 @@ misinterpreted by linker (e.g. Apple's l
-DSTANDARD_STARTFILE_PREFIX=\"$(unlibsubdir)/\" \
-DSTANDARD_EXEC_PREFIX=\"$(libdir)/gcc/\" \
-DSTANDARD_LIBEXEC_PREFIX=\"$(libexecdir)/gcc/\" \
+@@ -2638,7 +2639,7 @@ $(genprogerr:%=build/gen%$(build_exeext)
+ genprog = $(genprogerr) check checksum condmd match
+
+ # These programs need libs over and above what they get from the above list.
+-build/genautomata$(build_exeext) : BUILD_LIBS += -lm
++build/genautomata$(build_exeext) : BUILD_LIBS += -lm $(GENAUTOMATA_LDFLAGS)
+
+ build/genrecog$(build_exeext) : build/hash-table.o build/inchash.o
+ build/gencfn-macros$(build_exeext) : build/hash-table.o build/ggc-none.o
Index: pkgsrc/lang/gcc6/patches/patch-gcc_config.gcc
diff -u pkgsrc/lang/gcc6/patches/patch-gcc_config.gcc:1.5 pkgsrc/lang/gcc6/patches/patch-gcc_config.gcc:1.6
--- pkgsrc/lang/gcc6/patches/patch-gcc_config.gcc:1.5 Sun Jan 20 09:19:44 2019
+++ pkgsrc/lang/gcc6/patches/patch-gcc_config.gcc Sat Oct 11 16:14:18 2025
@@ -1,7 +1,9 @@
-$NetBSD: patch-gcc_config.gcc,v 1.5 2019/01/20 09:19:44 he Exp $
+$NetBSD: patch-gcc_config.gcc,v 1.6 2025/10/11 16:14:18 js Exp $
Adjust for target includes and crt make.
+Fix build on QNX.
+
--- gcc/config.gcc.orig 2017-11-21 10:41:34.000000000 +0100
+++ gcc/config.gcc 2019-01-12 11:23:37.360661984 +0100
@@ -769,10 +769,16 @@
@@ -22,7 +24,7 @@ Adjust for target includes and crt make.
# NetBSD 2.0 and later get POSIX threads enabled by default.
# Allow them to be explicitly enabled on any other version.
case ${enable_threads} in
-@@ -989,7 +995,7 @@
+@@ -989,7 +995,7 @@ alpha*-*-freebsd*)
extra_options="${extra_options} alpha/elf.opt"
;;
alpha*-*-netbsd*)
@@ -31,7 +33,7 @@ Adjust for target includes and crt make.
extra_options="${extra_options} netbsd.opt netbsd-elf.opt \
alpha/elf.opt"
;;
-@@ -1465,12 +1471,14 @@
+@@ -1465,12 +1471,14 @@ x86_64-*-freebsd*)
tm_file="${tm_file} i386/unix.h i386/att.h dbxelf.h elfos.h ${fbsd_tm_file} i386/x86-64.h i386/freebsd.h i386/freebsd64.h"
;;
i[34567]86-*-netbsdelf*)
@@ -48,7 +50,16 @@ Adjust for target includes and crt make.
;;
i[34567]86-*-openbsd2.*|i[34567]86-*openbsd3.[0123])
tm_file="i386/i386.h i386/unix.h i386/bsd.h i386/gas.h i386/gstabs.h openbsd-oldgas.h openbsd.h i386/openbsd.h"
-@@ -2358,7 +2366,7 @@
+@@ -1630,7 +1638,7 @@ i[34567]86-*-lynxos*)
+ gnu_ld=yes
+ gas=yes
+ ;;
+-i[34567]86-*-nto-qnx*)
++i[34567]86-*-qnx*)
+ tm_file="${tm_file} i386/att.h dbxelf.h tm-dwarf2.h elfos.h i386/unix.h i386/nto.h"
+ extra_options="${extra_options} i386/nto.opt"
+ gnu_ld=yes
+@@ -2358,7 +2366,7 @@ powerpc*-*-freebsd*)
esac
;;
powerpc-*-netbsd*)
Index: pkgsrc/lang/gcc6/patches/patch-gcc_ginclude_stddef.h
diff -u pkgsrc/lang/gcc6/patches/patch-gcc_ginclude_stddef.h:1.1 pkgsrc/lang/gcc6/patches/patch-gcc_ginclude_stddef.h:1.2
--- pkgsrc/lang/gcc6/patches/patch-gcc_ginclude_stddef.h:1.1 Tue Aug 6 06:16:15 2019
+++ pkgsrc/lang/gcc6/patches/patch-gcc_ginclude_stddef.h Sat Oct 11 16:14:18 2025
@@ -1,13 +1,27 @@
-$NetBSD: patch-gcc_ginclude_stddef.h,v 1.1 2019/08/06 06:16:15 maya Exp $
+$NetBSD: patch-gcc_ginclude_stddef.h,v 1.2 2025/10/11 16:14:18 js Exp $
handle netbsd/arm not using the same include guards for
ansi.h as other archs
+QNX: Include the system <stddef.h> first, as otherwise we'll end up without
+ptrdiff_t and size_t depending on include order.
+
Upstreamed in 2018-06-20 (GCC 9.x)
--- gcc/ginclude/stddef.h.orig 2017-01-01 12:07:43.000000000 +0000
+++ gcc/ginclude/stddef.h
-@@ -46,9 +46,7 @@ see the files COPYING3 and COPYING.RUNTI
+@@ -21,6 +21,10 @@ a copy of the GCC Runtime Library Except
+ see the files COPYING3 and COPYING.RUNTIME respectively. If not, see
+ <http://www.gnu.org/licenses/>. */
+
++#ifdef __QNX__
++# include_next <stddef.h>
++#endif
++
+ /*
+ * ISO C Standard: 7.17 Common definitions <stddef.h>
+ */
+@@ -46,9 +50,7 @@ see the files COPYING3 and COPYING.RUNTI
/* This avoids lossage on SunOS but only if stdtypes.h comes first.
There's no way to win with the other order! Sun lossage. */
@@ -18,7 +32,7 @@ Upstreamed in 2018-06-20 (GCC 9.x)
#include <machine/ansi.h>
#endif
/* On FreeBSD 5, machine/ansi.h does not exist anymore... */
-@@ -56,11 +54,7 @@ see the files COPYING3 and COPYING.RUNTI
+@@ -56,11 +58,7 @@ see the files COPYING3 and COPYING.RUNTI
#include <sys/_types.h>
#endif
@@ -31,7 +45,7 @@ Upstreamed in 2018-06-20 (GCC 9.x)
#if !defined(_SIZE_T_) && !defined(_BSD_SIZE_T_)
#define _SIZE_T
#endif
-@@ -87,7 +81,7 @@ see the files COPYING3 and COPYING.RUNTI
+@@ -87,7 +85,7 @@ see the files COPYING3 and COPYING.RUNTI
#undef _WCHAR_T_
#undef _BSD_WCHAR_T_
#endif
@@ -40,7 +54,7 @@ Upstreamed in 2018-06-20 (GCC 9.x)
/* Sequent's header files use _PTRDIFF_T_ in some conflicting way.
Just ignore it. */
-@@ -359,11 +353,7 @@ typedef __WINT_TYPE__ wint_t;
+@@ -359,11 +357,7 @@ typedef __WINT_TYPE__ wint_t;
#undef __need_wint_t
#endif
@@ -53,7 +67,7 @@ Upstreamed in 2018-06-20 (GCC 9.x)
/* The references to _GCC_PTRDIFF_T_, _GCC_SIZE_T_, and _GCC_WCHAR_T_
are probably typos and should be removed before 2.8 is released. */
#ifdef _GCC_PTRDIFF_T_
-@@ -391,7 +381,7 @@ typedef __WINT_TYPE__ wint_t;
+@@ -391,7 +385,7 @@ typedef __WINT_TYPE__ wint_t;
#undef _WCHAR_T_
#undef _BSD_WCHAR_T_
#endif
Index: pkgsrc/lang/gcc6/patches/patch-gcc_plugin.c
diff -u pkgsrc/lang/gcc6/patches/patch-gcc_plugin.c:1.1 pkgsrc/lang/gcc6/patches/patch-gcc_plugin.c:1.2
--- pkgsrc/lang/gcc6/patches/patch-gcc_plugin.c:1.1 Tue Sep 5 16:54:20 2023
+++ pkgsrc/lang/gcc6/patches/patch-gcc_plugin.c Sat Oct 11 16:14:19 2025
@@ -1,15 +1,18 @@
-$NetBSD: patch-gcc_plugin.c,v 1.1 2023/09/05 16:54:20 vins Exp $
+$NetBSD: patch-gcc_plugin.c,v 1.2 2025/10/11 16:14:19 js Exp $
Support dynamic link interface functions.
---- gcc/plugin.c.orig 2022-05-27 07:21:11.335381405 +0000
+Needs to come after the other includes as those add some defines that change
+behavior (breaks QNX otherwise).
+
+--- gcc/plugin.c.orig 2023-07-07 07:08:19.000000000 +0000
+++ gcc/plugin.c
-@@ -20,6 +20,8 @@ along with GCC; see the file COPYING3.
- /* This file contains the support for GCC plugin mechanism based on the
- APIs described in doc/plugin.texi. */
+@@ -30,6 +30,8 @@ along with GCC; see the file COPYING3.
+ #include "intl.h"
+ #include "plugin.h"
+#include <dlfcn.h>
+
- #include "config.h"
- #include "system.h"
- #include "coretypes.h"
+ #ifdef ENABLE_PLUGIN
+ #include "plugin-version.h"
+ #endif
Index: pkgsrc/lang/gcc6/patches/patch-libgcc_config.host
diff -u pkgsrc/lang/gcc6/patches/patch-libgcc_config.host:1.1 pkgsrc/lang/gcc6/patches/patch-libgcc_config.host:1.2
--- pkgsrc/lang/gcc6/patches/patch-libgcc_config.host:1.1 Fri Nov 23 19:28:30 2018
+++ pkgsrc/lang/gcc6/patches/patch-libgcc_config.host Sat Oct 11 16:14:19 2025
@@ -1,7 +1,9 @@
-$NetBSD: patch-libgcc_config.host,v 1.1 2018/11/23 19:28:30 abs Exp $
+$NetBSD: patch-libgcc_config.host,v 1.2 2025/10/11 16:14:19 js Exp $
Sync with NetBSD-current as of 2018-11-23
+Fix build on QNX.
+
--- libgcc/config.host.orig 2017-11-21 09:41:34.000000000 +0000
+++ libgcc/config.host
@@ -164,9 +164,15 @@ nds32*-*)
@@ -69,6 +71,15 @@ Sync with NetBSD-current as of 2018-11-2
i[34567]86-*-darwin*)
tmake_file="$tmake_file i386/t-crtpc t-crtfm"
tm_file="$tm_file i386/darwin-lib.h"
+@@ -645,7 +668,7 @@ i[34567]86-pc-msdosdjgpp*)
+ ;;
+ i[34567]86-*-lynxos*)
+ ;;
+-i[34567]86-*-nto-qnx*)
++i[34567]86-*-qnx*)
+ tmake_file="$tmake_file i386/t-nto t-libgcc-pic"
+ extra_parts=crtbegin.o
+ ;;
@@ -775,6 +798,10 @@ ia64*-*-linux*)
fi
md_unwind_header=ia64/linux-unwind.h
Added files:
Index: pkgsrc/lang/gcc6/patches/patch-gmp_gen-sieve.c
diff -u /dev/null pkgsrc/lang/gcc6/patches/patch-gmp_gen-sieve.c:1.1
--- /dev/null Sat Oct 11 16:14:19 2025
+++ pkgsrc/lang/gcc6/patches/patch-gmp_gen-sieve.c Sat Oct 11 16:14:19 2025
@@ -0,0 +1,17 @@
+$NetBSD: patch-gmp_gen-sieve.c,v 1.1 2025/10/11 16:14:19 js Exp $
+
+Fix compiling with GCC 4.4.2 on QNX.
+
+--- gmp/gen-sieve.c.orig 2023-07-29 13:42:16.000000000 +0000
++++ gmp/gen-sieve.c
+@@ -95,8 +95,9 @@ generate (int limb_bits, int limit)
+ void
+ setmask (mpz_t mask, int a, int b)
+ {
++ unsigned i;
+ mpz_set_ui (mask, 0);
+- for (unsigned i = 0; i < 2 * a * b; ++i)
++ for (i = 0; i < 2 * a * b; ++i)
+ if ((bit_to_n (i) % a == 0) || (bit_to_n (i) % b == 0))
+ mpz_setbit (mask, i);
+ }
Index: pkgsrc/lang/gcc6/patches/patch-gmp_mpn_generic_compute_powtab.c
diff -u /dev/null pkgsrc/lang/gcc6/patches/patch-gmp_mpn_generic_compute_powtab.c:1.1
--- /dev/null Sat Oct 11 16:14:19 2025
+++ pkgsrc/lang/gcc6/patches/patch-gmp_mpn_generic_compute_powtab.c Sat Oct 11 16:14:19 2025
@@ -0,0 +1,67 @@
+$NetBSD: patch-gmp_mpn_generic_compute_powtab.c,v 1.1 2025/10/11 16:14:19 js Exp $
+
+Fix compiling with GCC 4.4.2 on QNX.
+
+--- gmp/mpn/generic/compute_powtab.c.orig 2023-07-29 13:42:16.000000000 +0000
++++ gmp/mpn/generic/compute_powtab.c
+@@ -70,6 +70,7 @@ mpn_compute_powtab_mul (powers_t *powtab
+ mp_limb_t cy;
+ long start_idx;
+ int c;
++ long pi;
+
+ mp_limb_t big_base = mp_bases[base].big_base;
+ int chars_per_limb = mp_bases[base].chars_per_limb;
+@@ -139,7 +140,7 @@ mpn_compute_powtab_mul (powers_t *powtab
+ start_idx = n_pows - 3;
+ }
+
+- for (long pi = start_idx; pi >= 0; pi--)
++ for (pi = start_idx; pi >= 0; pi--)
+ {
+ t = powtab_mem_ptr;
+ powtab_mem_ptr += 2 * n + 2;
+@@ -223,7 +224,8 @@ mpn_compute_powtab_div (powers_t *powtab
+
+ mp_size_t n = 1;
+ mp_size_t shift = 0;
+- for (long pi = n_pows - 1; pi >= 0; pi--)
++ long pi;
++ for (pi = n_pows - 1; pi >= 0; pi--)
+ {
+ t = powtab_mem_ptr;
+ powtab_mem_ptr += 2 * n;
+@@ -271,7 +273,7 @@ mpn_compute_powtab_div (powers_t *powtab
+
+ /* Strip any remaining low zero limbs. */
+ pt -= n_pows + 1;
+- for (long pi = n_pows; pi >= 0; pi--)
++ for (pi = n_pows; pi >= 0; pi--)
+ {
+ mp_ptr t = pt[pi].p;
+ mp_size_t shift = pt[pi].shift;
+@@ -293,7 +295,8 @@ powtab_decide (size_t *exptab, size_t un
+ {
+ int chars_per_limb = mp_bases[base].chars_per_limb;
+ long n_pows = 0;
+- for (size_t pn = (un + 1) >> 1; pn != 1; pn = (pn + 1) >> 1)
++ size_t pn;
++ for (pn = (un + 1) >> 1; pn != 1; pn = (pn + 1) >> 1)
+ {
+ exptab[n_pows] = pn * chars_per_limb;
+ n_pows++;
+@@ -301,11 +304,12 @@ powtab_decide (size_t *exptab, size_t un
+ exptab[n_pows] = chars_per_limb;
+
+ #if HAVE_mpn_compute_powtab_mul && HAVE_mpn_compute_powtab_div
+- size_t pn = un - 1;
++ pn = un - 1;
+ size_t xn = (un + 1) >> 1;
+ unsigned mcost = 1;
+ unsigned dcost = 1;
+- for (long i = n_pows - 2; i >= 0; i--)
++ long i;
++ for (i = n_pows - 2; i >= 0; i--)
+ {
+ size_t pow = (pn >> (i + 1)) + 1;
+
Index: pkgsrc/lang/gcc6/patches/patch-gmp_mpz_millerrabin.c
diff -u /dev/null pkgsrc/lang/gcc6/patches/patch-gmp_mpz_millerrabin.c:1.1
--- /dev/null Sat Oct 11 16:14:19 2025
+++ pkgsrc/lang/gcc6/patches/patch-gmp_mpz_millerrabin.c Sat Oct 11 16:14:19 2025
@@ -0,0 +1,16 @@
+$NetBSD: patch-gmp_mpz_millerrabin.c,v 1.1 2025/10/11 16:14:19 js Exp $
+
+Fix compiling with GCC 4.4.2 on QNX.
+
+--- gmp/mpz/millerrabin.c.orig 2023-07-29 13:42:17.000000000 +0000
++++ gmp/mpz/millerrabin.c
+@@ -206,7 +206,8 @@ millerrabin (mpz_srcptr n, mpz_ptr x, mp
+ if (mpz_cmp_ui (y, 1L) == 0 || mod_eq_m1 (y, n))
+ return 1;
+
+- for (mp_bitcnt_t i = 1; i < k; ++i)
++ mp_bitcnt_t i;
++ for (i = 1; i < k; ++i)
+ {
+ mpz_powm_ui (y, y, 2L, n);
+ if (mod_eq_m1 (y, n))
Index: pkgsrc/lang/gcc6/patches/patch-gmp_mpz_nextprime.c
diff -u /dev/null pkgsrc/lang/gcc6/patches/patch-gmp_mpz_nextprime.c:1.1
--- /dev/null Sat Oct 11 16:14:19 2025
+++ pkgsrc/lang/gcc6/patches/patch-gmp_mpz_nextprime.c Sat Oct 11 16:14:19 2025
@@ -0,0 +1,43 @@
+$NetBSD: patch-gmp_mpz_nextprime.c,v 1.1 2025/10/11 16:14:19 js Exp $
+
+Fix compiling with GCC 4.4.2 on QNX.
+
+--- gmp/mpz/nextprime.c.orig 2023-07-29 13:42:17.000000000 +0000
++++ gmp/mpz/nextprime.c
+@@ -113,7 +113,8 @@ findnext_small (unsigned t, short diff)
+ for (; ; t += diff)
+ {
+ unsigned prime = 3;
+- for (int i = 0; ; prime += primegap_small[i++])
++ int i;
++ for (i = 0; ; prime += primegap_small[i++])
+ {
+ unsigned q, r;
+ q = t / prime;
+@@ -182,14 +183,18 @@ findnext (mpz_ptr p,
+ i = 0;
+ last_prime = 3;
+ /* THINK: should we get rid of sieve_limit and use (i < prime_limit)? */
+- for (mp_limb_t j = 4, *sp = sieve; j < sieve_limit; j += GMP_LIMB_BITS * 3)
+- for (mp_limb_t b = j, x = ~ *(sp++); x != 0; b += 3, x >>= 1)
+- if (x & 1)
+- {
+- mp_limb_t prime = b | 1;
+- primegap_tmp[i++] = prime - last_prime;
+- last_prime = prime;
+- }
++ mp_limb_t j, *sp;
++ for (j = 4, sp = sieve; j < sieve_limit; j += GMP_LIMB_BITS * 3)
++ {
++ mp_limb_t b, x;
++ for (b = j, x = ~ *(sp++); x != 0; b += 3, x >>= 1)
++ if (x & 1)
++ {
++ mp_limb_t prime = b | 1;
++ primegap_tmp[i++] = prime - last_prime;
++ last_prime = prime;
++ }
++ }
+
+ /* Both primesieve and prime_limit ignore the first two primes. */
+ ASSERT(i == prime_limit);
Index: pkgsrc/lang/gcc6/patches/patch-gmp_mpz_primorial_ui.c
diff -u /dev/null pkgsrc/lang/gcc6/patches/patch-gmp_mpz_primorial_ui.c:1.1
--- /dev/null Sat Oct 11 16:14:19 2025
+++ pkgsrc/lang/gcc6/patches/patch-gmp_mpz_primorial_ui.c Sat Oct 11 16:14:19 2025
@@ -0,0 +1,31 @@
+$NetBSD: patch-gmp_mpz_primorial_ui.c,v 1.1 2025/10/11 16:14:19 js Exp $
+
+Fix compiling with GCC 4.4.2 on QNX.
+
+--- gmp/mpz/primorial_ui.c.orig 2023-07-29 13:42:17.000000000 +0000
++++ gmp/mpz/primorial_ui.c
+@@ -106,13 +106,17 @@ mpz_primorial_ui (mpz_ptr res, unsigned
+ max_prod = GMP_NUMB_MAX / n;
+
+ /* Loop on sieved primes. */
+- for (mp_limb_t i = 4, *sp = sieve; i < n; i += GMP_LIMB_BITS * 3)
+- for (mp_limb_t b = i, x = ~ *(sp++); x != 0; b += 3, x >>= 1)
+- if (x & 1)
+- {
+- mp_limb_t prime = b | 1;
+- FACTOR_LIST_STORE (prime, prod, max_prod, factors, j);
+- }
++ mp_limb_t i, *sp;
++ for (i = 4, sp = sieve; i < n; i += GMP_LIMB_BITS * 3)
++ {
++ mp_limb_t b, x;
++ for (b = i, x = ~ *(sp++); x != 0; b += 3, x >>= 1)
++ if (x & 1)
++ {
++ mp_limb_t prime = b | 1;
++ FACTOR_LIST_STORE (prime, prod, max_prod, factors, j);
++ }
++ }
+ }
+
+ if (j != 0)
Index: pkgsrc/lang/gcc6/patches/patch-gmp_primesieve.c
diff -u /dev/null pkgsrc/lang/gcc6/patches/patch-gmp_primesieve.c:1.1
--- /dev/null Sat Oct 11 16:14:19 2025
+++ pkgsrc/lang/gcc6/patches/patch-gmp_primesieve.c Sat Oct 11 16:14:19 2025
@@ -0,0 +1,17 @@
+$NetBSD: patch-gmp_primesieve.c,v 1.1 2025/10/11 16:14:19 js Exp $
+
+Fix compiling with GCC 4.4.2 on QNX.
+
+--- gmp/primesieve.c.orig 2023-07-29 13:42:17.000000000 +0000
++++ gmp/primesieve.c
+@@ -288,8 +288,8 @@ gmp_primesieve (mp_ptr bit_array, mp_lim
+ bits = n_fto_bit(n);
+ size = bits / GMP_LIMB_BITS + 1;
+
+- for (mp_size_t j = 0, lim = MIN (size, PRIMESIEVE_NUMBEROF_TABLE);
+- j < lim; ++j)
++ mp_size_t j, lim;
++ for (j = 0, lim = MIN (size, PRIMESIEVE_NUMBEROF_TABLE); j < lim; ++j)
+ bit_array [j] = presieved [j]; /* memcopy? */
+
+ if (size > PRIMESIEVE_NUMBEROF_TABLE) {
Index: pkgsrc/lang/gcc6/patches/patch-libiberty_pex-unix.c
diff -u /dev/null pkgsrc/lang/gcc6/patches/patch-libiberty_pex-unix.c:1.1
--- /dev/null Sat Oct 11 16:14:19 2025
+++ pkgsrc/lang/gcc6/patches/patch-libiberty_pex-unix.c Sat Oct 11 16:14:19 2025
@@ -0,0 +1,16 @@
+$NetBSD: patch-libiberty_pex-unix.c,v 1.1 2025/10/11 16:14:19 js Exp $
+
+QNX has spawnve and spawnvpe, which makes configure assume it's the same
+spawnve / spawnvpe that exists on Windows.
+
+--- libiberty/pex-unix.c.orig 2023-07-07 07:08:21.000000000 +0000
++++ libiberty/pex-unix.c
+@@ -366,7 +366,7 @@ pex_unix_close (struct pex_obj *obj ATTR
+
+ /* Execute a child. */
+
+-#if defined(HAVE_SPAWNVE) && defined(HAVE_SPAWNVPE)
++#if defined(HAVE_SPAWNVE) && defined(HAVE_SPAWNVPE) && !defined(__QNX__)
+ /* Implementation of pex->exec_child using the Cygwin spawn operation. */
+
+ /* Subroutine of pex_unix_exec_child. Move OLD_FD to a new file descriptor
Index: pkgsrc/lang/gcc6/patches/patch-libstdc++-v3_include_bits_unique_ptr.h
diff -u /dev/null pkgsrc/lang/gcc6/patches/patch-libstdc++-v3_include_bits_unique_ptr.h:1.1
--- /dev/null Sat Oct 11 16:14:19 2025
+++ pkgsrc/lang/gcc6/patches/patch-libstdc++-v3_include_bits_unique_ptr.h Sat Oct 11 16:14:19 2025
@@ -0,0 +1,17 @@
+$NetBSD: patch-libstdc++-v3_include_bits_unique_ptr.h,v 1.1 2025/10/11 16:14:19 js Exp $
+
+_UP is already defined on QNX, so use __UP.
+
+--- libstdc++-v3/include/bits/unique_ptr.h.orig 2018-10-25 16:41:54.000000000 +0000
++++ libstdc++-v3/include/bits/unique_ptr.h
+@@ -767,8 +767,8 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
+ size_t
+ operator()(const unique_ptr<_Tp, _Dp>& __u) const noexcept
+ {
+- typedef unique_ptr<_Tp, _Dp> _UP;
+- return std::hash<typename _UP::pointer>()(__u.get());
++ typedef unique_ptr<_Tp, _Dp> __UP;
++ return std::hash<typename __UP::pointer>()(__u.get());
+ }
+ };
+
Index: pkgsrc/lang/gcc6/patches/patch-libstdc++-v3_include_bits_valarray_after.h
diff -u /dev/null pkgsrc/lang/gcc6/patches/patch-libstdc++-v3_include_bits_valarray_after.h:1.1
--- /dev/null Sat Oct 11 16:14:19 2025
+++ pkgsrc/lang/gcc6/patches/patch-libstdc++-v3_include_bits_valarray_after.h Sat Oct 11 16:14:19 2025
@@ -0,0 +1,39 @@
+$NetBSD: patch-libstdc++-v3_include_bits_valarray_after.h,v 1.1 2025/10/11 16:14:19 js Exp $
+
+--- libstdc++-v3/include/bits/valarray_after.h.orig 2025-10-10 21:07:12.000000000 +0000
++++ libstdc++-v3/include/bits/valarray_after.h
+@@ -439,20 +439,20 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
+ return _Expr<_Closure, _Tp>(_Closure(__v)); \
+ }
+
+- _DEFINE_EXPR_UNARY_FUNCTION(abs, _Abs)
+- _DEFINE_EXPR_UNARY_FUNCTION(cos, _Cos)
+- _DEFINE_EXPR_UNARY_FUNCTION(acos, _Acos)
+- _DEFINE_EXPR_UNARY_FUNCTION(cosh, _Cosh)
+- _DEFINE_EXPR_UNARY_FUNCTION(sin, _Sin)
+- _DEFINE_EXPR_UNARY_FUNCTION(asin, _Asin)
+- _DEFINE_EXPR_UNARY_FUNCTION(sinh, _Sinh)
+- _DEFINE_EXPR_UNARY_FUNCTION(tan, _Tan)
+- _DEFINE_EXPR_UNARY_FUNCTION(tanh, _Tanh)
+- _DEFINE_EXPR_UNARY_FUNCTION(atan, _Atan)
+- _DEFINE_EXPR_UNARY_FUNCTION(exp, _Exp)
+- _DEFINE_EXPR_UNARY_FUNCTION(log, _Log)
+- _DEFINE_EXPR_UNARY_FUNCTION(log10, _Log10)
+- _DEFINE_EXPR_UNARY_FUNCTION(sqrt, _Sqrt)
++ _DEFINE_EXPR_UNARY_FUNCTION(abs, struct _Abs)
++ _DEFINE_EXPR_UNARY_FUNCTION(cos, struct _Cos)
++ _DEFINE_EXPR_UNARY_FUNCTION(acos, struct _Acos)
++ _DEFINE_EXPR_UNARY_FUNCTION(cosh, struct _Cosh)
++ _DEFINE_EXPR_UNARY_FUNCTION(sin, struct _Sin)
++ _DEFINE_EXPR_UNARY_FUNCTION(asin, struct _Asin)
++ _DEFINE_EXPR_UNARY_FUNCTION(sinh, struct _Sinh)
++ _DEFINE_EXPR_UNARY_FUNCTION(tan, struct _Tan)
++ _DEFINE_EXPR_UNARY_FUNCTION(tanh, struct _Tanh)
++ _DEFINE_EXPR_UNARY_FUNCTION(atan, struct _Atan)
++ _DEFINE_EXPR_UNARY_FUNCTION(exp, struct _Exp)
++ _DEFINE_EXPR_UNARY_FUNCTION(log, struct _Log)
++ _DEFINE_EXPR_UNARY_FUNCTION(log10, struct _Log10)
++ _DEFINE_EXPR_UNARY_FUNCTION(sqrt, struct _Sqrt)
+
+ #undef _DEFINE_EXPR_UNARY_FUNCTION
+
Index: pkgsrc/lang/gcc6/patches/patch-libstdc++-v3_include_c_global_cmath
diff -u /dev/null pkgsrc/lang/gcc6/patches/patch-libstdc++-v3_include_c_global_cmath:1.1
--- /dev/null Sat Oct 11 16:14:19 2025
+++ pkgsrc/lang/gcc6/patches/patch-libstdc++-v3_include_c_global_cmath Sat Oct 11 16:14:19 2025
@@ -0,0 +1,15 @@
+$NetBSD: patch-libstdc++-v3_include_c_global_cmath,v 1.1 2025/10/11 16:14:19 js Exp $
+
+--- libstdc++-v3/include/c_global/cmath.orig 2016-12-01 15:02:37.000000000 +0000
++++ libstdc++-v3/include/c_global/cmath
+@@ -48,6 +48,10 @@
+ #ifndef _GLIBCXX_CMATH
+ #define _GLIBCXX_CMATH 1
+
++#ifdef __QNX__
++#define __CORRECT_ISO_CPP_MATH_H_PROTO
++#endif
++
+ // Get rid of those macros defined in <math.h> in lieu of real functions.
+ #undef abs
+ #undef div
Index: pkgsrc/lang/gcc6/patches/patch-libstdc++-v3_include_c_global_cstring
diff -u /dev/null pkgsrc/lang/gcc6/patches/patch-libstdc++-v3_include_c_global_cstring:1.1
--- /dev/null Sat Oct 11 16:14:19 2025
+++ pkgsrc/lang/gcc6/patches/patch-libstdc++-v3_include_c_global_cstring Sat Oct 11 16:14:19 2025
@@ -0,0 +1,15 @@
+$NetBSD: patch-libstdc++-v3_include_c_global_cstring,v 1.1 2025/10/11 16:14:19 js Exp $
+
+--- libstdc++-v3/include/c_global/cstring.orig 2023-07-07 07:08:22.000000000 +0000
++++ libstdc++-v3/include/c_global/cstring
+@@ -44,6 +44,10 @@
+ #ifndef _GLIBCXX_CSTRING
+ #define _GLIBCXX_CSTRING 1
+
++#ifdef __QNX__
++#define __CORRECT_ISO_CPP_STRING_H_PROTO
++#endif
++
+ // Get rid of those macros defined in <string.h> in lieu of real functions.
+ #undef memchr
+ #undef memcmp
Index: pkgsrc/lang/gcc6/patches/patch-libstdc++-v3_include_c_global_cwchar
diff -u /dev/null pkgsrc/lang/gcc6/patches/patch-libstdc++-v3_include_c_global_cwchar:1.1
--- /dev/null Sat Oct 11 16:14:19 2025
+++ pkgsrc/lang/gcc6/patches/patch-libstdc++-v3_include_c_global_cwchar Sat Oct 11 16:14:19 2025
@@ -0,0 +1,15 @@
+$NetBSD: patch-libstdc++-v3_include_c_global_cwchar,v 1.1 2025/10/11 16:14:19 js Exp $
+
+--- libstdc++-v3/include/c_global/cwchar.orig 2023-07-07 07:08:22.000000000 +0000
++++ libstdc++-v3/include/c_global/cwchar
+@@ -47,6 +47,10 @@
+ #ifndef _GLIBCXX_CWCHAR
+ #define _GLIBCXX_CWCHAR 1
+
++#ifdef __QNX__
++#define __CORRECT_ISO_CPP_WCHAR_H_PROTO
++#endif
++
+ // Need to do a bit of trickery here with mbstate_t as char_traits
+ // assumes it is in wchar.h, regardless of wchar_t specializations.
+ #ifndef _GLIBCXX_HAVE_MBSTATE_T
Index: pkgsrc/lang/gcc6/patches/patch-libstdc++-v3_src_c++11_system_error.cc
diff -u /dev/null pkgsrc/lang/gcc6/patches/patch-libstdc++-v3_src_c++11_system_error.cc:1.1
--- /dev/null Sat Oct 11 16:14:19 2025
+++ pkgsrc/lang/gcc6/patches/patch-libstdc++-v3_src_c++11_system_error.cc Sat Oct 11 16:14:19 2025
@@ -0,0 +1,15 @@
+$NetBSD: patch-libstdc++-v3_src_c++11_system_error.cc,v 1.1 2025/10/11 16:14:19 js Exp $
+
+EALREADY and EBUSY are the same on QNX.
+
+--- libstdc++-v3/src/c++11/system_error.cc.orig 2023-07-07 07:08:22.000000000 +0000
++++ libstdc++-v3/src/c++11/system_error.cc
+@@ -100,7 +100,7 @@ namespace
+ #ifdef EAGAIN
+ case EAGAIN:
+ #endif
+-#ifdef EALREADY
++#if defined(EALREADY) && (!defined(EBUSY) || EALREADY != EBUSY)
+ case EALREADY:
+ #endif
+ #ifdef EBADF
Home |
Main Index |
Thread Index |
Old Index