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