pkgsrc-Changes archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

CVS commit: [pkgsrc-2024Q4] pkgsrc/lang



Module Name:    pkgsrc
Committed By:   maya
Date:           Fri Jan 10 17:08:37 UTC 2025

Modified Files:
        pkgsrc/lang/gcc10 [pkgsrc-2024Q4]: Makefile Makefile.common distinfo
        pkgsrc/lang/gcc10-aux [pkgsrc-2024Q4]: Makefile distinfo
        pkgsrc/lang/gcc10-aux/patches [pkgsrc-2024Q4]: patch-gcc_Makefile.in
        pkgsrc/lang/gcc10-libs [pkgsrc-2024Q4]: Makefile
        pkgsrc/lang/gcc10/patches [pkgsrc-2024Q4]: patch-gcc_Makefile.in
        pkgsrc/lang/gcc12 [pkgsrc-2024Q4]: Makefile Makefile.common distinfo
        pkgsrc/lang/gcc12-libs [pkgsrc-2024Q4]: Makefile
        pkgsrc/lang/gcc12/patches [pkgsrc-2024Q4]: patch-gcc_Makefile.in
        pkgsrc/lang/gcc13 [pkgsrc-2024Q4]: Makefile Makefile.common distinfo
        pkgsrc/lang/gcc13-gnat [pkgsrc-2024Q4]: Makefile distinfo
        pkgsrc/lang/gcc13-gnat/patches [pkgsrc-2024Q4]: patch-gcc_Makefile.in
        pkgsrc/lang/gcc13-libs [pkgsrc-2024Q4]: Makefile
        pkgsrc/lang/gcc13/patches [pkgsrc-2024Q4]: patch-gcc_Makefile.in
        pkgsrc/lang/gcc14 [pkgsrc-2024Q4]: Makefile Makefile.common distinfo
        pkgsrc/lang/gcc14-libs [pkgsrc-2024Q4]: Makefile
        pkgsrc/lang/gcc14/patches [pkgsrc-2024Q4]: patch-gcc_Makefile.in
        pkgsrc/lang/gcc6 [pkgsrc-2024Q4]: Makefile
        pkgsrc/lang/gcc6-libs [pkgsrc-2024Q4]: Makefile
        pkgsrc/lang/gcc7-libs [pkgsrc-2024Q4]: Makefile
        pkgsrc/lang/gcc8-libs [pkgsrc-2024Q4]: Makefile
        pkgsrc/lang/gcc9-libs [pkgsrc-2024Q4]: Makefile

Log Message:
Pullup ticket #6928 - requested by riastradh
lang/gcc10-aux: install fix
lang/gcc10-libs: install fix
lang/gcc10: install fix
lang/gcc12: install fix
lang/gcc13-gnat: install fix
lang/gcc13-libs: install fix
lang/gcc13: install fix
lang/gcc14-libs: install fix
lang/gcc14: install fix
lang/gcc6: install fix
lang/gcc7-libs: install fix
lang/gcc8-libs: install fix
lang/gcc9-libs: install fix

Revisions pulled up:
- lang/gcc10-aux/Makefile                                       1.8
- lang/gcc10-aux/distinfo                                       1.2
- lang/gcc10-aux/patches/patch-gcc_Makefile.in                  1.2
- lang/gcc10-libs/Makefile                                      1.10-1.11
- lang/gcc10/Makefile                                           1.26
- lang/gcc10/Makefile.common                                    1.11
- lang/gcc10/distinfo                                           1.19
- lang/gcc10/patches/patch-gcc_Makefile.in                      1.3
- lang/gcc12-libs/Makefile                                      1.7-1.8
- lang/gcc12/Makefile                                           1.11
- lang/gcc12/Makefile.common                                    1.10
- lang/gcc12/distinfo                                           1.11
- lang/gcc12/patches/patch-gcc_Makefile.in                      1.2
- lang/gcc13-gnat/Makefile                                      1.3
- lang/gcc13-gnat/distinfo                                      1.4
- lang/gcc13-gnat/patches/patch-gcc_Makefile.in                 1.2
- lang/gcc13-libs/Makefile                                      1.3-1.4
- lang/gcc13/Makefile                                           1.4
- lang/gcc13/Makefile.common                                    1.9
- lang/gcc13/distinfo                                           1.5
- lang/gcc13/patches/patch-gcc_Makefile.in                      1.2
- lang/gcc14-libs/Makefile                                      1.2-1.3
- lang/gcc14/Makefile                                           1.2
- lang/gcc14/Makefile.common                                    1.5
- lang/gcc14/distinfo                                           1.6
- lang/gcc14/patches/patch-gcc_Makefile.in                      1.2
- lang/gcc6-libs/Makefile                                       1.21
- lang/gcc6/Makefile                                            1.48
- lang/gcc7-libs/Makefile                                       1.17
- lang/gcc8-libs/Makefile                                       1.19
- lang/gcc9-libs/Makefile                                       1.12

---
   Module Name:    pkgsrc
   Committed By:   riastradh
   Date:           Tue Jan  7 19:54:31 UTC 2025

   Modified Files:
           pkgsrc/lang/gcc10: Makefile Makefile.common distinfo
           pkgsrc/lang/gcc10-aux: Makefile distinfo
           pkgsrc/lang/gcc10-aux/patches: patch-gcc_Makefile.in
           pkgsrc/lang/gcc10-libs: Makefile
           pkgsrc/lang/gcc10/patches: patch-gcc_Makefile.in

   Log Message:
   lang/gcc10*: Fix LINK_LIBGCC_SPEC.

   PR pkg/58963: gcc: LINK_LIBGCC_SPEC snafu
   PR pkg/48740: lang/gcc44 to gcc46 linker fails because of whitespace

---
   Module Name:    pkgsrc
   Committed By:   riastradh
   Date:           Tue Jan  7 19:55:38 UTC 2025

   Modified Files:
           pkgsrc/lang/gcc12: Makefile Makefile.common distinfo
           pkgsrc/lang/gcc12-libs: Makefile
           pkgsrc/lang/gcc12/patches: patch-gcc_Makefile.in

   Log Message:
   lang/gcc12*: Fix LINK_LIBGCC_SPEC.

   PR pkg/58963: gcc: LINK_LIBGCC_SPEC snafu
   PR pkg/48740: lang/gcc44 to gcc46 linker fails because of whitespace

---
   Module Name:    pkgsrc
   Committed By:   riastradh
   Date:           Tue Jan  7 19:55:52 UTC 2025

   Modified Files:
           pkgsrc/lang/gcc13: Makefile Makefile.common distinfo
           pkgsrc/lang/gcc13-gnat: Makefile distinfo
           pkgsrc/lang/gcc13-gnat/patches: patch-gcc_Makefile.in
           pkgsrc/lang/gcc13-libs: Makefile
           pkgsrc/lang/gcc13/patches: patch-gcc_Makefile.in

   Log Message:
   lang/gcc13*: Fix LINK_LIBGCC_SPEC.

   PR pkg/58963: gcc: LINK_LIBGCC_SPEC snafu
   PR pkg/48740: lang/gcc44 to gcc46 linker fails because of whitespace

---
   Module Name:    pkgsrc
   Committed By:   riastradh
   Date:           Tue Jan  7 19:56:07 UTC 2025

   Modified Files:
           pkgsrc/lang/gcc14: Makefile Makefile.common distinfo
           pkgsrc/lang/gcc14-libs: Makefile
           pkgsrc/lang/gcc14/patches: patch-gcc_Makefile.in

   Log Message:
   lang/gcc14*: Fix LINK_LIBGCC_SPEC.

   PR pkg/58963: gcc: LINK_LIBGCC_SPEC snafu
   PR pkg/48740: lang/gcc44 to gcc46 linker fails because of whitespace

---
   Module Name:    pkgsrc
   Committed By:   riastradh
   Date:           Tue Jan  7 19:56:15 UTC 2025

   Modified Files:
           pkgsrc/lang/gcc6: Makefile

   Log Message:
   lang/gcc6: Add scary comment over GCC_TARGET_MACHINE substitution.

   Same one as in later lang/gcc* versions, for consistency.

   No functional change intended.

---
   Module Name:    pkgsrc
   Committed By:   riastradh
   Date:           Tue Jan  7 19:56:45 UTC 2025

   Modified Files:
           pkgsrc/lang/gcc10-libs: Makefile
           pkgsrc/lang/gcc12-libs: Makefile
           pkgsrc/lang/gcc13-libs: Makefile
           pkgsrc/lang/gcc14-libs: Makefile
           pkgsrc/lang/gcc6-libs: Makefile
           pkgsrc/lang/gcc7-libs: Makefile
           pkgsrc/lang/gcc8-libs: Makefile
           pkgsrc/lang/gcc9-libs: Makefile

   Log Message:
   lang/gccN-libs: Disable REQUIRES/PROVIDES analysis.

   This is a stop-gap measure to work around:

   PR pkg/58966: mk: REQUIRES/PROVIDES analysis is wrong for
   self-libraries

   It should be removed once the REQUIRES/PROVIDES analysis is fixed.

   Since the REQUIRES/PROVIDES analysis is already done for the
   underlying lang/gccN package, and the transformation from lang/gccN
   to lang/gccN-libs is straightforward, disabling this check should be
   reasonably low-risk -- currently the lang/gccN-libs packages are
   outright broken and unusable with pkgtools/pkg_install.

   This doesn't change the content of the package, only the metadata, so
   no need for recursive revbump of dependent packages.


To generate a diff of this commit:
cvs rdiff -u -r1.25 -r1.25.6.1 pkgsrc/lang/gcc10/Makefile
cvs rdiff -u -r1.10 -r1.10.6.1 pkgsrc/lang/gcc10/Makefile.common
cvs rdiff -u -r1.18 -r1.18.6.1 pkgsrc/lang/gcc10/distinfo
cvs rdiff -u -r1.7 -r1.7.12.1 pkgsrc/lang/gcc10-aux/Makefile
cvs rdiff -u -r1.1 -r1.1.24.1 pkgsrc/lang/gcc10-aux/distinfo
cvs rdiff -u -r1.1 -r1.1.24.1 \
    pkgsrc/lang/gcc10-aux/patches/patch-gcc_Makefile.in
cvs rdiff -u -r1.9 -r1.9.6.1 pkgsrc/lang/gcc10-libs/Makefile
cvs rdiff -u -r1.2 -r1.2.6.1 pkgsrc/lang/gcc10/patches/patch-gcc_Makefile.in
cvs rdiff -u -r1.10 -r1.10.4.1 pkgsrc/lang/gcc12/Makefile
cvs rdiff -u -r1.9 -r1.9.4.1 pkgsrc/lang/gcc12/Makefile.common
cvs rdiff -u -r1.10 -r1.10.2.1 pkgsrc/lang/gcc12/distinfo
cvs rdiff -u -r1.6 -r1.6.4.1 pkgsrc/lang/gcc12-libs/Makefile
cvs rdiff -u -r1.1 -r1.1.22.1 pkgsrc/lang/gcc12/patches/patch-gcc_Makefile.in
cvs rdiff -u -r1.3 -r1.3.6.1 pkgsrc/lang/gcc13/Makefile
cvs rdiff -u -r1.8 -r1.8.4.1 pkgsrc/lang/gcc13/Makefile.common
cvs rdiff -u -r1.4 -r1.4.2.1 pkgsrc/lang/gcc13/distinfo
cvs rdiff -u -r1.2 -r1.2.8.1 pkgsrc/lang/gcc13-gnat/Makefile
cvs rdiff -u -r1.2 -r1.2.6.1 pkgsrc/lang/gcc13-gnat/distinfo
cvs rdiff -u -r1.1 -r1.1.8.1 \
    pkgsrc/lang/gcc13-gnat/patches/patch-gcc_Makefile.in
cvs rdiff -u -r1.2 -r1.2.14.1 pkgsrc/lang/gcc13-libs/Makefile
cvs rdiff -u -r1.1 -r1.1.14.1 pkgsrc/lang/gcc13/patches/patch-gcc_Makefile.in
cvs rdiff -u -r1.1 -r1.1.4.1 pkgsrc/lang/gcc14/Makefile
cvs rdiff -u -r1.4 -r1.4.4.1 pkgsrc/lang/gcc14/Makefile.common
cvs rdiff -u -r1.5 -r1.5.2.1 pkgsrc/lang/gcc14/distinfo
cvs rdiff -u -r1.1 -r1.1.4.1 pkgsrc/lang/gcc14-libs/Makefile
cvs rdiff -u -r1.1 -r1.1.4.1 pkgsrc/lang/gcc14/patches/patch-gcc_Makefile.in
cvs rdiff -u -r1.47 -r1.47.6.1 pkgsrc/lang/gcc6/Makefile
cvs rdiff -u -r1.20 -r1.20.10.1 pkgsrc/lang/gcc6-libs/Makefile
cvs rdiff -u -r1.16 -r1.16.14.1 pkgsrc/lang/gcc7-libs/Makefile
cvs rdiff -u -r1.18 -r1.18.10.1 pkgsrc/lang/gcc8-libs/Makefile
cvs rdiff -u -r1.11 -r1.11.10.1 pkgsrc/lang/gcc9-libs/Makefile

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.

Modified files:

Index: pkgsrc/lang/gcc10/Makefile
diff -u pkgsrc/lang/gcc10/Makefile:1.25 pkgsrc/lang/gcc10/Makefile:1.25.6.1
--- pkgsrc/lang/gcc10/Makefile:1.25     Mon Apr  1 18:08:48 2024
+++ pkgsrc/lang/gcc10/Makefile  Fri Jan 10 17:08:35 2025
@@ -1,10 +1,10 @@
-# $NetBSD: Makefile,v 1.25 2024/04/01 18:08:48 js Exp $
+# $NetBSD: Makefile,v 1.25.6.1 2025/01/10 17:08:35 maya Exp $
 
 PKGNAME=       ${GCC_PKGNAME}-${GCC10_DIST_VERSION}
 ## When bumping the PKGREVISION of this package the PKGREVISION of
 ## lang/gcc10-libs needs to be bumped to be at least 1 more than the
 ## PKGREVISION of this package!
-PKGREVISION=   2
+PKGREVISION=   3
 
 COMMENT=       The GNU Compiler Collection (GCC) - 10.0 Release Series
 

Index: pkgsrc/lang/gcc10/Makefile.common
diff -u pkgsrc/lang/gcc10/Makefile.common:1.10 pkgsrc/lang/gcc10/Makefile.common:1.10.6.1
--- pkgsrc/lang/gcc10/Makefile.common:1.10      Wed Apr 24 10:56:06 2024
+++ pkgsrc/lang/gcc10/Makefile.common   Fri Jan 10 17:08:35 2025
@@ -1,4 +1,4 @@
-# $NetBSD: Makefile.common,v 1.10 2024/04/24 10:56:06 jperkin Exp $
+# $NetBSD: Makefile.common,v 1.10.6.1 2025/01/10 17:08:35 maya Exp $
 # used by lang/gcc10-libjit/Makefile
 
 GCC_PKGNAME=           gcc10
@@ -138,6 +138,22 @@ SUBST_FILES.ccs=   contrib/make_sunver.pl
 SUBST_SED.ccs=         -e 's,/usr/ccs/bin,/usr/bin,g'
 .endif
 
+# DO NOT REMOVE THIS SUBST.  If it fails, the corruption to
+# patch-gcc_Makefile.in chronicled in PR pkg/58963 `gcc:
+# LINK_LIBGCC_SPEC snafu' <https://gnats.NetBSD.org/58963> probably got
+# replicated yet again.  You must make sure that LINK_LIBGCC_SPEC is
+# appropriately set with @GCC_TARGET_MACHINE@ in patch-gcc_Makefile.in
+# or similar, or confirm with a discussion on tech-pkg@ that it is no
+# longer relevant before you remove this SUBST.
+SUBST_CLASSES+=                vars
+SUBST_MESSAGE.vars=    Setting target machine name path in ${SUBST_FILES.vars}
+SUBST_STAGE.vars=      pre-configure
+SUBST_FILES.vars=      gcc/Makefile.in
+SUBST_VARS.vars=       GCC_TARGET_MACHINE
+
+GCC_TARGET_MACHINE?=   ${MACHINE_GNU_PLATFORM}
+BUILD_DEFS+=           GCC_TARGET_MACHINE
+
 pre-configure:
        ${RUN} cd ${WRKSRC} && ${MKDIR} ${OBJDIR}
 

Index: pkgsrc/lang/gcc10/distinfo
diff -u pkgsrc/lang/gcc10/distinfo:1.18 pkgsrc/lang/gcc10/distinfo:1.18.6.1
--- pkgsrc/lang/gcc10/distinfo:1.18     Mon Apr  1 18:08:48 2024
+++ pkgsrc/lang/gcc10/distinfo  Fri Jan 10 17:08:35 2025
@@ -1,4 +1,4 @@
-$NetBSD: distinfo,v 1.18 2024/04/01 18:08:48 js Exp $
+$NetBSD: distinfo,v 1.18.6.1 2025/01/10 17:08:35 maya Exp $
 
 BLAKE2s (gcc-10.5.0.tar.xz) = af4a8b262d9d4e534e8e1c311897e68e7d64f147ad1eed42e77f9674da188bf3
 SHA512 (gcc-10.5.0.tar.xz) = d86dbc18b978771531f4039465e7eb7c19845bf607dc513c97abf8e45ffe1086a99d98f83dfb7b37204af22431574186de9d5ff80c8c3c3a98dbe3983195bffd
@@ -8,7 +8,7 @@ SHA512 (isl-0.16.1.tar.bz2) = c188667a84
 Size (isl-0.16.1.tar.bz2) = 1626446 bytes
 SHA1 (patch-contrib_download__prerequisites) = 9cdcde21ab174052911447d20762ddfd40aa8791
 SHA1 (patch-fixincludes_inclhack.def) = 7b00974d3f52a8364190a607f52a5d7e8a6db41a
-SHA1 (patch-gcc_Makefile.in) = a47571d8340702d1a86d0dfb7df654280c6a6ee6
+SHA1 (patch-gcc_Makefile.in) = ae324c5df0b5c4ba4ebae280039594043bb34e12
 SHA1 (patch-gcc_config.gcc) = 4767d5b16794f4485879ed10e172cb2f86bc0777
 SHA1 (patch-gcc_config.host) = 8920ce841f6088b365c9b590e3ea9535bd880b40
 SHA1 (patch-gcc_config_aarch64_aarch64-builtins.c) = 87185f5c2e2dbe4195cb19fe6213d2d616d5519b

Index: pkgsrc/lang/gcc10-aux/Makefile
diff -u pkgsrc/lang/gcc10-aux/Makefile:1.7 pkgsrc/lang/gcc10-aux/Makefile:1.7.12.1
--- pkgsrc/lang/gcc10-aux/Makefile:1.7  Tue Aug 15 13:49:17 2023
+++ pkgsrc/lang/gcc10-aux/Makefile      Fri Jan 10 17:08:34 2025
@@ -1,7 +1,7 @@
-# $NetBSD: Makefile,v 1.7 2023/08/15 13:49:17 tnn Exp $
+# $NetBSD: Makefile,v 1.7.12.1 2025/01/10 17:08:34 maya Exp $
 
 GCC_PKGNAME=           gcc10-aux
-PKGREVISION=           1
+PKGREVISION=           2
 .include               "version.mk"
 
 DISTNAME=      gcc-${GCC10_DIST_VERSION}
@@ -184,6 +184,22 @@ SUBST_FILES.ccs=   contrib/make_sunver.pl
 SUBST_SED.ccs=         -e 's,/usr/ccs/bin,/usr/bin,g'
 .endif
 
+# DO NOT REMOVE THIS SUBST.  If it fails, the corruption to
+# patch-gcc_Makefile.in chronicled in PR pkg/58963 `gcc:
+# LINK_LIBGCC_SPEC snafu' <https://gnats.NetBSD.org/58963> probably got
+# replicated yet again.  You must make sure that LINK_LIBGCC_SPEC is
+# appropriately set with @GCC_TARGET_MACHINE@ in patch-gcc_Makefile.in
+# or similar, or confirm with a discussion on tech-pkg@ that it is no
+# longer relevant before you remove this SUBST.
+SUBST_CLASSES+=                vars
+SUBST_MESSAGE.vars=    Setting target machine name path in ${SUBST_FILES.vars}
+SUBST_STAGE.vars=      pre-configure
+SUBST_FILES.vars=      gcc/Makefile.in
+SUBST_VARS.vars=       GCC_TARGET_MACHINE
+
+GCC_TARGET_MACHINE?=   ${MACHINE_GNU_PLATFORM}
+BUILD_DEFS+=           GCC_TARGET_MACHINE
+
 CTF_FILES_SKIP+=       */gengtype      # CPU limit exceeded
 
 pre-configure:

Index: pkgsrc/lang/gcc10-aux/distinfo
diff -u pkgsrc/lang/gcc10-aux/distinfo:1.1 pkgsrc/lang/gcc10-aux/distinfo:1.1.24.1
--- pkgsrc/lang/gcc10-aux/distinfo:1.1  Sun Mar 13 08:34:04 2022
+++ pkgsrc/lang/gcc10-aux/distinfo      Fri Jan 10 17:08:34 2025
@@ -1,4 +1,4 @@
-$NetBSD: distinfo,v 1.1 2022/03/13 08:34:04 nia Exp $
+$NetBSD: distinfo,v 1.1.24.1 2025/01/10 17:08:34 maya Exp $
 
 BLAKE2s (gcc-10.3.0.tar.xz) = 6d7c42f9386e5e32a3148122471cb207e5f65d7b5f53b3c9adba2d45a4f28715
 SHA512 (gcc-10.3.0.tar.xz) = 2b2dd7453d48a398c29eaebd1422b70341001b8c90a62aee51e83344e7fdd8a8e45f82a4a9165bd7edc76dada912c932f4b6632c5636760fec4c5d7e402b3f86
@@ -8,7 +8,7 @@ SHA512 (isl-0.16.1.tar.bz2) = c188667a84
 Size (isl-0.16.1.tar.bz2) = 1626446 bytes
 SHA1 (patch-contrib_download__prerequisites) = 9cdcde21ab174052911447d20762ddfd40aa8791
 SHA1 (patch-fixincludes_inclhack.def) = 7b00974d3f52a8364190a607f52a5d7e8a6db41a
-SHA1 (patch-gcc_Makefile.in) = c0f97c75ba1d37eae894141edd58bb36b734f651
+SHA1 (patch-gcc_Makefile.in) = a31ddc27f1092cfdf5ac896ca79c8590b5aceb47
 SHA1 (patch-gcc_ada_Makefile.rtl) = 1b6a18dce5ffe752be942f6e328d487692f3b33a
 SHA1 (patch-gcc_ada_adaint.c) = 465b3e3d6db193b2729f1d4e1c74eefcc3dc85bf
 SHA1 (patch-gcc_ada_adaint.h) = 57befa67b18f97345db05672f1e53e8ec70e1935

Index: pkgsrc/lang/gcc10-aux/patches/patch-gcc_Makefile.in
diff -u pkgsrc/lang/gcc10-aux/patches/patch-gcc_Makefile.in:1.1 pkgsrc/lang/gcc10-aux/patches/patch-gcc_Makefile.in:1.1.24.1
--- pkgsrc/lang/gcc10-aux/patches/patch-gcc_Makefile.in:1.1     Sun Mar 13 08:34:04 2022
+++ pkgsrc/lang/gcc10-aux/patches/patch-gcc_Makefile.in Fri Jan 10 17:08:34 2025
@@ -1,7 +1,8 @@
-$NetBSD: patch-gcc_Makefile.in,v 1.1 2022/03/13 08:34:04 nia Exp $
+$NetBSD: patch-gcc_Makefile.in,v 1.1.24.1 2025/01/10 17:08:34 maya Exp $
 
-Add gcc libdir to a programs rpath so that _this gcc's_ support libraries
-are found.
+Ensure libgcc from this GCC is found before others.  Note that there must
+not be a whitespace between $(LINKER_RPATH_FLAG) and the path.  Otherwise
+the flag may be misinterpreted by the linker (e.g. Apple ld).
 
 --- gcc/Makefile.in.orig       2017-04-18 18:10:27.000000000 +0000
 +++ gcc/Makefile.in
@@ -9,7 +10,7 @@ are found.
  # Language-independent files.
  
  DRIVER_DEFINES = \
-+  -DLINK_LIBGCC_SPEC="\"%D $(LINKER_RPATH_FLAG) $(prefix)//lib/%M $(LINKER_RPATH_FLAG) $(libdir)/%M \"" \
++  -DLINK_LIBGCC_SPEC="\"%D $(LINKER_RPATH_FLAG)$(prefix)/@GCC_TARGET_MACHINE@/lib/%M $(LINKER_RPATH_FLAG)$(libdir)/%M \"" \
    -DSTANDARD_STARTFILE_PREFIX=\"$(unlibsubdir)/\" \
    -DSTANDARD_EXEC_PREFIX=\"$(libdir)/gcc/\" \
    -DSTANDARD_LIBEXEC_PREFIX=\"$(libexecdir)/gcc/\" \

Index: pkgsrc/lang/gcc10-libs/Makefile
diff -u pkgsrc/lang/gcc10-libs/Makefile:1.9 pkgsrc/lang/gcc10-libs/Makefile:1.9.6.1
--- pkgsrc/lang/gcc10-libs/Makefile:1.9 Mon Apr  1 18:08:48 2024
+++ pkgsrc/lang/gcc10-libs/Makefile     Fri Jan 10 17:08:34 2025
@@ -1,4 +1,4 @@
-# $NetBSD: Makefile,v 1.9 2024/04/01 18:08:48 js Exp $
+# $NetBSD: Makefile,v 1.9.6.1 2025/01/10 17:08:34 maya Exp $
 
 GCC_PKGNAME=   gcc10
 .include       "../../lang/${GCC_PKGNAME}/version.mk"
@@ -9,7 +9,7 @@ PKGNAME=        ${GCC_PKGNAME}-libs-${GCC10_DIS
 ## The PKGREVISION of this package needs to be at least 1 more than the
 ## PKGREVISION of the lang/gcc10 package so that with the dependence pattern
 ## '{gcc10,gcc10-libs}>=10.2.*' pkg_add will choose gcc10-libs over gcc10.
-PKGREVISION=   3
+PKGREVISION=   5
 
 CATEGORIES=    lang
 MASTER_SITES=  # empty
@@ -36,6 +36,10 @@ LIBGCC_PREFIX=               ${LOCALBASE}/${LIBGCC_SU
 GCC_TARGET_MACHINE?=   ${MACHINE_GNU_PLATFORM}
 BUILD_DEFS+=           GCC_TARGET_MACHINE
 
+# Workaround for PR pkg/58966: mk: REQUIRES/PROVIDES analysis is wrong
+# for self-libraries.
+CHECK_SHLIBS_SUPPORTED=        no
+
 .if ${SHLIB_TYPE} == "dylib"
 SHLIB_EXT=     dylib
 .else

Index: pkgsrc/lang/gcc10/patches/patch-gcc_Makefile.in
diff -u pkgsrc/lang/gcc10/patches/patch-gcc_Makefile.in:1.2 pkgsrc/lang/gcc10/patches/patch-gcc_Makefile.in:1.2.6.1
--- pkgsrc/lang/gcc10/patches/patch-gcc_Makefile.in:1.2 Mon Apr  1 14:33:57 2024
+++ pkgsrc/lang/gcc10/patches/patch-gcc_Makefile.in     Fri Jan 10 17:08:35 2025
@@ -1,4 +1,4 @@
-$NetBSD: patch-gcc_Makefile.in,v 1.2 2024/04/01 14:33:57 js Exp $
+$NetBSD: patch-gcc_Makefile.in,v 1.2.6.1 2025/01/10 17:08:35 maya Exp $
 
 Add gcc libdir to programs' rpath so that _this gcc's_ support libraries
 are found.
@@ -11,7 +11,7 @@ Add a hack to increase the stack for gen
  # Language-independent files.
  
  DRIVER_DEFINES = \
-+  -DLINK_LIBGCC_SPEC="\"%D $(LINKER_RPATH_FLAG) $(prefix)//lib/%M $(LINKER_RPATH_FLAG) $(libdir)/%M \"" \
++  -DLINK_LIBGCC_SPEC="\"%D $(LINKER_RPATH_FLAG) $(prefix)/@GCC_TARGET_MACHINE@/lib/%M $(LINKER_RPATH_FLAG) $(libdir)/%M \"" \
    -DSTANDARD_STARTFILE_PREFIX=\"$(unlibsubdir)/\" \
    -DSTANDARD_EXEC_PREFIX=\"$(libdir)/gcc/\" \
    -DSTANDARD_LIBEXEC_PREFIX=\"$(libexecdir)/gcc/\" \

Index: pkgsrc/lang/gcc12/Makefile
diff -u pkgsrc/lang/gcc12/Makefile:1.10 pkgsrc/lang/gcc12/Makefile:1.10.4.1
--- pkgsrc/lang/gcc12/Makefile:1.10     Fri Jun 28 17:55:09 2024
+++ pkgsrc/lang/gcc12/Makefile  Fri Jan 10 17:08:35 2025
@@ -1,9 +1,10 @@
-# $NetBSD: Makefile,v 1.10 2024/06/28 17:55:09 wiz Exp $
+# $NetBSD: Makefile,v 1.10.4.1 2025/01/10 17:08:35 maya Exp $
 
 PKGNAME=       ${GCC_PKGNAME}-${GCC12_DIST_VERSION}
 ## When bumping the PKGREVISION of this package the PKGREVISION of
 ## lang/gcc12-libs needs to be bumped to be at least 1 more than the
 ## PKGREVISION of this package!
+PKGREVISION=   1
 COMMENT=       The GNU Compiler Collection (GCC) - 12.0 Release Series
 
 LANGS=                 c

Index: pkgsrc/lang/gcc12/Makefile.common
diff -u pkgsrc/lang/gcc12/Makefile.common:1.9 pkgsrc/lang/gcc12/Makefile.common:1.9.4.1
--- pkgsrc/lang/gcc12/Makefile.common:1.9       Wed Jul 24 23:01:27 2024
+++ pkgsrc/lang/gcc12/Makefile.common   Fri Jan 10 17:08:35 2025
@@ -1,4 +1,4 @@
-# $NetBSD: Makefile.common,v 1.9 2024/07/24 23:01:27 gutteridge Exp $
+# $NetBSD: Makefile.common,v 1.9.4.1 2025/01/10 17:08:35 maya Exp $
 # used by lang/gcc12-libjit/Makefile
 
 GCC_PKGNAME=           gcc12
@@ -150,6 +150,22 @@ SUBST_FILES.ccs=   contrib/make_sunver.pl
 SUBST_SED.ccs=         -e 's,/usr/ccs/bin,/usr/bin,g'
 .endif
 
+# DO NOT REMOVE THIS SUBST.  If it fails, the corruption to
+# patch-gcc_Makefile.in chronicled in PR pkg/58963 `gcc:
+# LINK_LIBGCC_SPEC snafu' <https://gnats.NetBSD.org/58963> probably got
+# replicated yet again.  You must make sure that LINK_LIBGCC_SPEC is
+# appropriately set with @GCC_TARGET_MACHINE@ in patch-gcc_Makefile.in
+# or similar, or confirm with a discussion on tech-pkg@ that it is no
+# longer relevant before you remove this SUBST.
+SUBST_CLASSES+=                vars
+SUBST_MESSAGE.vars=    Setting target machine name path in ${SUBST_FILES.vars}
+SUBST_STAGE.vars=      pre-configure
+SUBST_FILES.vars=      gcc/Makefile.in
+SUBST_VARS.vars=       GCC_TARGET_MACHINE
+
+GCC_TARGET_MACHINE?=   ${MACHINE_GNU_PLATFORM}
+BUILD_DEFS+=           GCC_TARGET_MACHINE
+
 pre-configure:
        ${RUN} cd ${WRKSRC} && ${MKDIR} ${OBJDIR}
 

Index: pkgsrc/lang/gcc12/distinfo
diff -u pkgsrc/lang/gcc12/distinfo:1.10 pkgsrc/lang/gcc12/distinfo:1.10.2.1
--- pkgsrc/lang/gcc12/distinfo:1.10     Fri Dec 20 09:29:10 2024
+++ pkgsrc/lang/gcc12/distinfo  Fri Jan 10 17:08:35 2025
@@ -1,4 +1,4 @@
-$NetBSD: distinfo,v 1.10 2024/12/20 09:29:10 jperkin Exp $
+$NetBSD: distinfo,v 1.10.2.1 2025/01/10 17:08:35 maya Exp $
 
 BLAKE2s (gcc-12.4.0.diff) = ff17898717cb3781dd802a3376ce9a659df97d7d4a3ec3c4bd26279755ab752b
 SHA512 (gcc-12.4.0.diff) = 1e5df17525c13ff3b79117ffb426726c47a9bbb1ffb8555a75083eff5b2134c728decf765be24e4e0bb21685e60973211e359027e9b90f298e24b501cbc899aa
@@ -9,7 +9,7 @@ Size (gcc-12.4.0.tar.xz) = 83377372 byte
 BLAKE2s (isl-0.16.1.tar.bz2) = 01c3fc657326e81414986eb7ede6f73e540b97009745ced125cdf7f4a8d80f61
 SHA512 (isl-0.16.1.tar.bz2) = c188667a84dc5bdddb4ab7c35f89c91bf15a8171f4fcaf41301cf285fb7328846d9a367c096012fec4cc69d244f0bc9e95d84c09ec097394cd4093076f2a041b
 Size (isl-0.16.1.tar.bz2) = 1626446 bytes
-SHA1 (patch-gcc_Makefile.in) = c0f97c75ba1d37eae894141edd58bb36b734f651
+SHA1 (patch-gcc_Makefile.in) = a31ddc27f1092cfdf5ac896ca79c8590b5aceb47
 SHA1 (patch-gcc_config.gcc) = 260f187048260e539e928bb04594b6394bb03912
 SHA1 (patch-gcc_config.host) = bf95dd21bfdf79d173e745fbd35c9bb99fdf4087
 SHA1 (patch-gcc_config_aarch64_aarch64-netbsd.h) = abf19e2445bce1773162bddef16cd7f41eb36827

Index: pkgsrc/lang/gcc12-libs/Makefile
diff -u pkgsrc/lang/gcc12-libs/Makefile:1.6 pkgsrc/lang/gcc12-libs/Makefile:1.6.4.1
--- pkgsrc/lang/gcc12-libs/Makefile:1.6 Fri Jun 28 17:55:10 2024
+++ pkgsrc/lang/gcc12-libs/Makefile     Fri Jan 10 17:08:35 2025
@@ -1,4 +1,4 @@
-# $NetBSD: Makefile,v 1.6 2024/06/28 17:55:10 wiz Exp $
+# $NetBSD: Makefile,v 1.6.4.1 2025/01/10 17:08:35 maya Exp $
 
 GCC_PKGNAME=   gcc12
 .include       "../../lang/${GCC_PKGNAME}/version.mk"
@@ -9,7 +9,7 @@ PKGNAME=        ${GCC_PKGNAME}-libs-${GCC12_DIS
 ## The PKGREVISION of this package needs to be at least 1 more than the
 ## PKGREVISION of the lang/gcc12 package so that with the dependence pattern
 ## '{gcc12,gcc12-libs}>=12.1.*' pkg_add will choose gcc12-libs over gcc12.
-PKGREVISION=   1
+PKGREVISION=   3
 
 CATEGORIES=    lang
 MASTER_SITES=  # empty
@@ -36,6 +36,10 @@ LIBGCC_PREFIX=               ${LOCALBASE}/${LIBGCC_SU
 GCC_TARGET_MACHINE?=   ${MACHINE_GNU_PLATFORM}
 BUILD_DEFS+=           GCC_TARGET_MACHINE
 
+# Workaround for PR pkg/58966: mk: REQUIRES/PROVIDES analysis is wrong
+# for self-libraries.
+CHECK_SHLIBS_SUPPORTED=        no
+
 .if ${SHLIB_TYPE} == "dylib"
 SHLIB_EXT=     dylib
 .else

Index: pkgsrc/lang/gcc12/patches/patch-gcc_Makefile.in
diff -u pkgsrc/lang/gcc12/patches/patch-gcc_Makefile.in:1.1 pkgsrc/lang/gcc12/patches/patch-gcc_Makefile.in:1.1.22.1
--- pkgsrc/lang/gcc12/patches/patch-gcc_Makefile.in:1.1 Thu Jun 16 15:43:55 2022
+++ pkgsrc/lang/gcc12/patches/patch-gcc_Makefile.in     Fri Jan 10 17:08:35 2025
@@ -1,7 +1,8 @@
-$NetBSD: patch-gcc_Makefile.in,v 1.1 2022/06/16 15:43:55 adam Exp $
+$NetBSD: patch-gcc_Makefile.in,v 1.1.22.1 2025/01/10 17:08:35 maya Exp $
 
-Add gcc libdir to a programs rpath so that _this gcc's_ support libraries
-are found.
+Ensure libgcc from this GCC is found before others.  Note that there must
+not be a whitespace between $(LINKER_RPATH_FLAG) and the path.  Otherwise
+the flag may be misinterpreted by the linker (e.g. Apple ld).
 
 --- gcc/Makefile.in.orig       2017-04-18 18:10:27.000000000 +0000
 +++ gcc/Makefile.in
@@ -9,7 +10,7 @@ are found.
  # Language-independent files.
  
  DRIVER_DEFINES = \
-+  -DLINK_LIBGCC_SPEC="\"%D $(LINKER_RPATH_FLAG) $(prefix)//lib/%M $(LINKER_RPATH_FLAG) $(libdir)/%M \"" \
++  -DLINK_LIBGCC_SPEC="\"%D $(LINKER_RPATH_FLAG)$(prefix)/@GCC_TARGET_MACHINE@/lib/%M $(LINKER_RPATH_FLAG)$(libdir)/%M \"" \
    -DSTANDARD_STARTFILE_PREFIX=\"$(unlibsubdir)/\" \
    -DSTANDARD_EXEC_PREFIX=\"$(libdir)/gcc/\" \
    -DSTANDARD_LIBEXEC_PREFIX=\"$(libexecdir)/gcc/\" \

Index: pkgsrc/lang/gcc13/Makefile
diff -u pkgsrc/lang/gcc13/Makefile:1.3 pkgsrc/lang/gcc13/Makefile:1.3.6.1
--- pkgsrc/lang/gcc13/Makefile:1.3      Fri Jun  7 10:28:55 2024
+++ pkgsrc/lang/gcc13/Makefile  Fri Jan 10 17:08:36 2025
@@ -1,9 +1,10 @@
-# $NetBSD: Makefile,v 1.3 2024/06/07 10:28:55 adam Exp $
+# $NetBSD: Makefile,v 1.3.6.1 2025/01/10 17:08:36 maya Exp $
 
 PKGNAME=       ${GCC_PKGNAME}-${GCC13_DIST_VERSION}
 ## When bumping the PKGREVISION of this package the PKGREVISION of
 ## lang/gcc13-libs needs to be bumped to be at least 1 more than the
 ## PKGREVISION of this package!
+PKGREVISION=   1
 COMMENT=       The GNU Compiler Collection (GCC) - 13.0 Release Series
 
 LANGS=         c

Index: pkgsrc/lang/gcc13/Makefile.common
diff -u pkgsrc/lang/gcc13/Makefile.common:1.8 pkgsrc/lang/gcc13/Makefile.common:1.8.4.1
--- pkgsrc/lang/gcc13/Makefile.common:1.8       Wed Jul 24 23:01:28 2024
+++ pkgsrc/lang/gcc13/Makefile.common   Fri Jan 10 17:08:36 2025
@@ -1,4 +1,4 @@
-# $NetBSD: Makefile.common,v 1.8 2024/07/24 23:01:28 gutteridge Exp $
+# $NetBSD: Makefile.common,v 1.8.4.1 2025/01/10 17:08:36 maya Exp $
 # used by lang/gcc13-libjit/Makefile
 
 GCC_PKGNAME=           gcc13
@@ -150,6 +150,22 @@ SUBST_FILES.ccs=   contrib/make_sunver.pl
 SUBST_SED.ccs=         -e 's,/usr/ccs/bin,/usr/bin,g'
 .endif
 
+# DO NOT REMOVE THIS SUBST.  If it fails, the corruption to
+# patch-gcc_Makefile.in chronicled in PR pkg/58963 `gcc:
+# LINK_LIBGCC_SPEC snafu' <https://gnats.NetBSD.org/58963> probably got
+# replicated yet again.  You must make sure that LINK_LIBGCC_SPEC is
+# appropriately set with @GCC_TARGET_MACHINE@ in patch-gcc_Makefile.in
+# or similar, or confirm with a discussion on tech-pkg@ that it is no
+# longer relevant before you remove this SUBST.
+SUBST_CLASSES+=                vars
+SUBST_MESSAGE.vars=    Setting target machine name path in ${SUBST_FILES.vars}
+SUBST_STAGE.vars=      pre-configure
+SUBST_FILES.vars=      gcc/Makefile.in
+SUBST_VARS.vars=       GCC_TARGET_MACHINE
+
+GCC_TARGET_MACHINE?=   ${MACHINE_GNU_PLATFORM}
+BUILD_DEFS+=           GCC_TARGET_MACHINE
+
 pre-configure:
        ${RUN} cd ${WRKSRC} && ${MKDIR} ${OBJDIR}
 

Index: pkgsrc/lang/gcc13/distinfo
diff -u pkgsrc/lang/gcc13/distinfo:1.4 pkgsrc/lang/gcc13/distinfo:1.4.2.1
--- pkgsrc/lang/gcc13/distinfo:1.4      Sun Dec 15 03:07:57 2024
+++ pkgsrc/lang/gcc13/distinfo  Fri Jan 10 17:08:36 2025
@@ -1,4 +1,4 @@
-$NetBSD: distinfo,v 1.4 2024/12/15 03:07:57 brook Exp $
+$NetBSD: distinfo,v 1.4.2.1 2025/01/10 17:08:36 maya Exp $
 
 BLAKE2s (gcc-13.3.0.diff) = 9b002a64761cf2f2a6a9a8c8decff8408380c0fe94c2d3013e4d84299bacf814
 SHA512 (gcc-13.3.0.diff) = 6165b6201f4ef94ee254ea40410911f5e5e1a05d80d4da2fce90b3db94000c3d5c5a28c9a4ad1a43387faae68d94fbef8e4d24e1ff049b9c0014c00f6f50757b
@@ -10,7 +10,7 @@ BLAKE2s (isl-0.24.tar.xz) = a3013b0d39b7
 SHA512 (isl-0.24.tar.xz) = ff6bdcff839e1cd473f2a0c1e4dd4a3612ec6fee4544ccbc62b530a7248db2cf93b4b99bf493a86ddf2aba00e768927265d5d411f92061ea85fd7929073428e8
 Size (isl-0.24.tar.xz) = 1930956 bytes
 SHA1 (patch-fixincludes_inclhack.def) = 7b00974d3f52a8364190a607f52a5d7e8a6db41a
-SHA1 (patch-gcc_Makefile.in) = c0f97c75ba1d37eae894141edd58bb36b734f651
+SHA1 (patch-gcc_Makefile.in) = a31ddc27f1092cfdf5ac896ca79c8590b5aceb47
 SHA1 (patch-gcc_config.host) = bf95dd21bfdf79d173e745fbd35c9bb99fdf4087
 SHA1 (patch-gcc_config_aarch64_aarch64-netbsd.h) = abf19e2445bce1773162bddef16cd7f41eb36827
 SHA1 (patch-gcc_config_arm_arm.h) = 9d554349869d67d6393552c33a7824f0dd53cb11

Index: pkgsrc/lang/gcc13-gnat/Makefile
diff -u pkgsrc/lang/gcc13-gnat/Makefile:1.2 pkgsrc/lang/gcc13-gnat/Makefile:1.2.8.1
--- pkgsrc/lang/gcc13-gnat/Makefile:1.2 Fri Mar  8 13:25:12 2024
+++ pkgsrc/lang/gcc13-gnat/Makefile     Fri Jan 10 17:08:35 2025
@@ -1,9 +1,10 @@
-# $NetBSD: Makefile,v 1.2 2024/03/08 13:25:12 wiz Exp $
+# $NetBSD: Makefile,v 1.2.8.1 2025/01/10 17:08:35 maya Exp $
 
 GCC_PKGNAME=gcc13
 .include "../../lang/${GCC_PKGNAME}/version.mk"
 
 PKGNAME=       ${GCC_PKGNAME}-gnat-${GCC13_DIST_VERSION}
+PKGREVISION=   1
 COMMENT=       GNAT Compiler and Ada tools
 DISTNAME=      gcc-${GCC13_DIST_VERSION}
 CATEGORIES=    lang
@@ -180,6 +181,22 @@ SUBST_FILES.ccs=   contrib/make_sunver.pl
 SUBST_SED.ccs=         -e 's,/usr/ccs/bin,/usr/bin,g'
 .endif
 
+# DO NOT REMOVE THIS SUBST.  If it fails, the corruption to
+# patch-gcc_Makefile.in chronicled in PR pkg/58963 `gcc:
+# LINK_LIBGCC_SPEC snafu' <https://gnats.NetBSD.org/58963> probably got
+# replicated yet again.  You must make sure that LINK_LIBGCC_SPEC is
+# appropriately set with @GCC_TARGET_MACHINE@ in patch-gcc_Makefile.in
+# or similar, or confirm with a discussion on tech-pkg@ that it is no
+# longer relevant before you remove this SUBST.
+SUBST_CLASSES+=                vars
+SUBST_MESSAGE.vars=    Setting target machine name path in ${SUBST_FILES.vars}
+SUBST_STAGE.vars=      pre-configure
+SUBST_FILES.vars=      gcc/Makefile.in
+SUBST_VARS.vars=       GCC_TARGET_MACHINE
+
+GCC_TARGET_MACHINE?=   ${MACHINE_GNU_PLATFORM}
+BUILD_DEFS+=           GCC_TARGET_MACHINE
+
 CTF_FILES_SKIP+=       */gengtype      # CPU limit exceeded
 
 TEST_TARGET=   -j ${MAKE_JOBS} -k check || ${TRUE}

Index: pkgsrc/lang/gcc13-gnat/distinfo
diff -u pkgsrc/lang/gcc13-gnat/distinfo:1.2 pkgsrc/lang/gcc13-gnat/distinfo:1.2.6.1
--- pkgsrc/lang/gcc13-gnat/distinfo:1.2 Mon Jun 10 19:27:57 2024
+++ pkgsrc/lang/gcc13-gnat/distinfo     Fri Jan 10 17:08:35 2025
@@ -1,10 +1,10 @@
-$NetBSD: distinfo,v 1.2 2024/06/10 19:27:57 adam Exp $
+$NetBSD: distinfo,v 1.2.6.1 2025/01/10 17:08:35 maya Exp $
 
 BLAKE2s (gcc-13.3.0.tar.xz) = d204b8987b4780b569f28226cbfff34ae27124e529857c36ff90d5d40ef0b511
 SHA512 (gcc-13.3.0.tar.xz) = ed5f2f4c6ed2c796fcf2c93707159e9dbd3ddb1ba063d549804dd68cdabbb6d550985ae1c8465ae9a336cfe29274a6eb0f42e21924360574ebd8e5d5c7c9a801
 Size (gcc-13.3.0.tar.xz) = 87909952 bytes
 SHA1 (patch-fixincludes_inclhack.def) = 7b00974d3f52a8364190a607f52a5d7e8a6db41a
-SHA1 (patch-gcc_Makefile.in) = c0f97c75ba1d37eae894141edd58bb36b734f651
+SHA1 (patch-gcc_Makefile.in) = a31ddc27f1092cfdf5ac896ca79c8590b5aceb47
 SHA1 (patch-gcc_ada_Makefile.rtl) = 59883834af5303b2e86a79d0df30a1a220ced895
 SHA1 (patch-gcc_ada_adaint.c) = 465b3e3d6db193b2729f1d4e1c74eefcc3dc85bf
 SHA1 (patch-gcc_ada_adaint.h) = 57befa67b18f97345db05672f1e53e8ec70e1935

Index: pkgsrc/lang/gcc13-gnat/patches/patch-gcc_Makefile.in
diff -u pkgsrc/lang/gcc13-gnat/patches/patch-gcc_Makefile.in:1.1 pkgsrc/lang/gcc13-gnat/patches/patch-gcc_Makefile.in:1.1.8.1
--- pkgsrc/lang/gcc13-gnat/patches/patch-gcc_Makefile.in:1.1    Fri Mar  8 12:02:33 2024
+++ pkgsrc/lang/gcc13-gnat/patches/patch-gcc_Makefile.in        Fri Jan 10 17:08:36 2025
@@ -1,7 +1,8 @@
-$NetBSD: patch-gcc_Makefile.in,v 1.1 2024/03/08 12:02:33 wiz Exp $
+$NetBSD: patch-gcc_Makefile.in,v 1.1.8.1 2025/01/10 17:08:36 maya Exp $
 
-Add gcc libdir to a programs rpath so that _this gcc's_ support libraries
-are found.
+Ensure libgcc from this GCC is found before others.  Note that there must
+not be a whitespace between $(LINKER_RPATH_FLAG) and the path.  Otherwise
+the flag may be misinterpreted by the linker (e.g. Apple ld).
 
 --- gcc/Makefile.in.orig       2017-04-18 18:10:27.000000000 +0000
 +++ gcc/Makefile.in
@@ -9,7 +10,7 @@ are found.
  # Language-independent files.
  
  DRIVER_DEFINES = \
-+  -DLINK_LIBGCC_SPEC="\"%D $(LINKER_RPATH_FLAG) $(prefix)//lib/%M $(LINKER_RPATH_FLAG) $(libdir)/%M \"" \
++  -DLINK_LIBGCC_SPEC="\"%D $(LINKER_RPATH_FLAG)$(prefix)/@GCC_TARGET_MACHINE@/lib/%M $(LINKER_RPATH_FLAG)$(libdir)/%M \"" \
    -DSTANDARD_STARTFILE_PREFIX=\"$(unlibsubdir)/\" \
    -DSTANDARD_EXEC_PREFIX=\"$(libdir)/gcc/\" \
    -DSTANDARD_LIBEXEC_PREFIX=\"$(libexecdir)/gcc/\" \

Index: pkgsrc/lang/gcc13-libs/Makefile
diff -u pkgsrc/lang/gcc13-libs/Makefile:1.2 pkgsrc/lang/gcc13-libs/Makefile:1.2.14.1
--- pkgsrc/lang/gcc13-libs/Makefile:1.2 Tue Jun  6 12:41:42 2023
+++ pkgsrc/lang/gcc13-libs/Makefile     Fri Jan 10 17:08:36 2025
@@ -1,4 +1,4 @@
-# $NetBSD: Makefile,v 1.2 2023/06/06 12:41:42 riastradh Exp $
+# $NetBSD: Makefile,v 1.2.14.1 2025/01/10 17:08:36 maya Exp $
 
 GCC_PKGNAME=   gcc13
 .include       "../../lang/${GCC_PKGNAME}/version.mk"
@@ -9,7 +9,7 @@ PKGNAME=        ${GCC_PKGNAME}-libs-${GCC13_DIS
 ## The PKGREVISION of this package needs to be at least 1 more than the
 ## PKGREVISION of the lang/gcc13 package so that with the dependence pattern
 ## '{gcc13,gcc13-libs}>=13.1.*' pkg_add will choose gcc13-libs over gcc13.
-PKGREVISION=   1
+PKGREVISION=   3
 
 CATEGORIES=    lang
 MASTER_SITES=  # empty
@@ -36,6 +36,10 @@ LIBGCC_PREFIX=               ${LOCALBASE}/${LIBGCC_SU
 GCC_TARGET_MACHINE?=   ${MACHINE_GNU_PLATFORM}
 BUILD_DEFS+=           GCC_TARGET_MACHINE
 
+# Workaround for PR pkg/58966: mk: REQUIRES/PROVIDES analysis is wrong
+# for self-libraries.
+CHECK_SHLIBS_SUPPORTED=        no
+
 .if ${SHLIB_TYPE} == "dylib"
 SHLIB_EXT=     dylib
 .else

Index: pkgsrc/lang/gcc13/patches/patch-gcc_Makefile.in
diff -u pkgsrc/lang/gcc13/patches/patch-gcc_Makefile.in:1.1 pkgsrc/lang/gcc13/patches/patch-gcc_Makefile.in:1.1.14.1
--- pkgsrc/lang/gcc13/patches/patch-gcc_Makefile.in:1.1 Wed May  3 20:03:09 2023
+++ pkgsrc/lang/gcc13/patches/patch-gcc_Makefile.in     Fri Jan 10 17:08:36 2025
@@ -1,7 +1,8 @@
-$NetBSD: patch-gcc_Makefile.in,v 1.1 2023/05/03 20:03:09 wiz Exp $
+$NetBSD: patch-gcc_Makefile.in,v 1.1.14.1 2025/01/10 17:08:36 maya Exp $
 
-Add gcc libdir to a programs rpath so that _this gcc's_ support libraries
-are found.
+Ensure libgcc from this GCC is found before others.  Note that there must
+not be a whitespace between $(LINKER_RPATH_FLAG) and the path.  Otherwise
+the flag may be misinterpreted by the linker (e.g. Apple ld).
 
 --- gcc/Makefile.in.orig       2017-04-18 18:10:27.000000000 +0000
 +++ gcc/Makefile.in
@@ -9,7 +10,7 @@ are found.
  # Language-independent files.
  
  DRIVER_DEFINES = \
-+  -DLINK_LIBGCC_SPEC="\"%D $(LINKER_RPATH_FLAG) $(prefix)//lib/%M $(LINKER_RPATH_FLAG) $(libdir)/%M \"" \
++  -DLINK_LIBGCC_SPEC="\"%D $(LINKER_RPATH_FLAG)$(prefix)/@GCC_TARGET_MACHINE@/lib/%M $(LINKER_RPATH_FLAG)$(libdir)/%M \"" \
    -DSTANDARD_STARTFILE_PREFIX=\"$(unlibsubdir)/\" \
    -DSTANDARD_EXEC_PREFIX=\"$(libdir)/gcc/\" \
    -DSTANDARD_LIBEXEC_PREFIX=\"$(libexecdir)/gcc/\" \

Index: pkgsrc/lang/gcc14/Makefile
diff -u pkgsrc/lang/gcc14/Makefile:1.1 pkgsrc/lang/gcc14/Makefile:1.1.4.1
--- pkgsrc/lang/gcc14/Makefile:1.1      Fri Jun 28 18:35:16 2024
+++ pkgsrc/lang/gcc14/Makefile  Fri Jan 10 17:08:36 2025
@@ -1,9 +1,10 @@
-# $NetBSD: Makefile,v 1.1 2024/06/28 18:35:16 wiz Exp $
+# $NetBSD: Makefile,v 1.1.4.1 2025/01/10 17:08:36 maya Exp $
 
 PKGNAME=       ${GCC_PKGNAME}-${GCC14_DIST_VERSION}
 ## When bumping the PKGREVISION of this package the PKGREVISION of
 ## lang/gcc14-libs needs to be bumped to be at least 1 more than the
 ## PKGREVISION of this package!
+PKGREVISION=   1
 COMMENT=       The GNU Compiler Collection (GCC) - 14.0 Release Series
 
 LANGS=         c

Index: pkgsrc/lang/gcc14/Makefile.common
diff -u pkgsrc/lang/gcc14/Makefile.common:1.4 pkgsrc/lang/gcc14/Makefile.common:1.4.4.1
--- pkgsrc/lang/gcc14/Makefile.common:1.4       Sun Sep 29 16:51:55 2024
+++ pkgsrc/lang/gcc14/Makefile.common   Fri Jan 10 17:08:36 2025
@@ -1,4 +1,4 @@
-# $NetBSD: Makefile.common,v 1.4 2024/09/29 16:51:55 adam Exp $
+# $NetBSD: Makefile.common,v 1.4.4.1 2025/01/10 17:08:36 maya Exp $
 # used by lang/gcc14-libjit/Makefile
 
 GCC_PKGNAME=           gcc14
@@ -150,6 +150,22 @@ SUBST_FILES.ccs=   contrib/make_sunver.pl
 SUBST_SED.ccs=         -e 's,/usr/ccs/bin,/usr/bin,g'
 .endif
 
+# DO NOT REMOVE THIS SUBST.  If it fails, the corruption to
+# patch-gcc_Makefile.in chronicled in PR pkg/58963 `gcc:
+# LINK_LIBGCC_SPEC snafu' <https://gnats.NetBSD.org/58963> probably got
+# replicated yet again.  You must make sure that LINK_LIBGCC_SPEC is
+# appropriately set with @GCC_TARGET_MACHINE@ in patch-gcc_Makefile.in
+# or similar, or confirm with a discussion on tech-pkg@ that it is no
+# longer relevant before you remove this SUBST.
+SUBST_CLASSES+=                vars
+SUBST_MESSAGE.vars=    Setting target machine name path in ${SUBST_FILES.vars}
+SUBST_STAGE.vars=      pre-configure
+SUBST_FILES.vars=      gcc/Makefile.in
+SUBST_VARS.vars=       GCC_TARGET_MACHINE
+
+GCC_TARGET_MACHINE?=   ${MACHINE_GNU_PLATFORM}
+BUILD_DEFS+=           GCC_TARGET_MACHINE
+
 pre-configure:
        ${RUN} cd ${WRKSRC} && ${MKDIR} ${OBJDIR}
 

Index: pkgsrc/lang/gcc14/distinfo
diff -u pkgsrc/lang/gcc14/distinfo:1.5 pkgsrc/lang/gcc14/distinfo:1.5.2.1
--- pkgsrc/lang/gcc14/distinfo:1.5      Sun Dec 15 03:12:17 2024
+++ pkgsrc/lang/gcc14/distinfo  Fri Jan 10 17:08:36 2025
@@ -1,4 +1,4 @@
-$NetBSD: distinfo,v 1.5 2024/12/15 03:12:17 brook Exp $
+$NetBSD: distinfo,v 1.5.2.1 2025/01/10 17:08:36 maya Exp $
 
 BLAKE2s (gcc-14.2.0.diff) = 48bde4d7aae57211844aca294c120caaebdb1b1ecabfd0349aa7e27d11ef0042
 SHA512 (gcc-14.2.0.diff) = c96d92289492d76f6e4e6376148c53d7e962fd15d03b1ecfe16f8036a0ff0c1e9277bf00566ecfe0d54765a679ce7d7470f6e696f8e3fe7b419000b924260fcf
@@ -9,7 +9,7 @@ Size (gcc-14.2.0.tar.xz) = 92306460 byte
 BLAKE2s (isl-0.24.tar.xz) = a3013b0d39b7fe68a1b3e15dc7e925b347d555348ee946a80f5319a76973cd61
 SHA512 (isl-0.24.tar.xz) = ff6bdcff839e1cd473f2a0c1e4dd4a3612ec6fee4544ccbc62b530a7248db2cf93b4b99bf493a86ddf2aba00e768927265d5d411f92061ea85fd7929073428e8
 Size (isl-0.24.tar.xz) = 1930956 bytes
-SHA1 (patch-gcc_Makefile.in) = c0f97c75ba1d37eae894141edd58bb36b734f651
+SHA1 (patch-gcc_Makefile.in) = a31ddc27f1092cfdf5ac896ca79c8590b5aceb47
 SHA1 (patch-gcc_config.host) = bf95dd21bfdf79d173e745fbd35c9bb99fdf4087
 SHA1 (patch-gcc_config_aarch64_aarch64-netbsd.h) = abf19e2445bce1773162bddef16cd7f41eb36827
 SHA1 (patch-gcc_config_arm_arm.h) = 9d554349869d67d6393552c33a7824f0dd53cb11

Index: pkgsrc/lang/gcc14-libs/Makefile
diff -u pkgsrc/lang/gcc14-libs/Makefile:1.1 pkgsrc/lang/gcc14-libs/Makefile:1.1.4.1
--- pkgsrc/lang/gcc14-libs/Makefile:1.1 Fri Jun 28 18:35:17 2024
+++ pkgsrc/lang/gcc14-libs/Makefile     Fri Jan 10 17:08:36 2025
@@ -1,4 +1,4 @@
-# $NetBSD: Makefile,v 1.1 2024/06/28 18:35:17 wiz Exp $
+# $NetBSD: Makefile,v 1.1.4.1 2025/01/10 17:08:36 maya Exp $
 
 GCC_PKGNAME=   gcc14
 .include       "../../lang/${GCC_PKGNAME}/version.mk"
@@ -9,7 +9,7 @@ PKGNAME=        ${GCC_PKGNAME}-libs-${GCC14_DIS
 ## The PKGREVISION of this package needs to be at least 1 more than the
 ## PKGREVISION of the lang/gcc14 package so that with the dependence pattern
 ## '{gcc14,gcc14-libs}>=14.1.*' pkg_add will choose gcc14-libs over gcc14.
-PKGREVISION=   1
+PKGREVISION=   3
 
 CATEGORIES=    lang
 MASTER_SITES=  # empty
@@ -36,6 +36,10 @@ LIBGCC_PREFIX=               ${LOCALBASE}/${LIBGCC_SU
 GCC_TARGET_MACHINE?=   ${MACHINE_GNU_PLATFORM}
 BUILD_DEFS+=           GCC_TARGET_MACHINE
 
+# Workaround for PR pkg/58966: mk: REQUIRES/PROVIDES analysis is wrong
+# for self-libraries.
+CHECK_SHLIBS_SUPPORTED=        no
+
 .if ${SHLIB_TYPE} == "dylib"
 SHLIB_EXT=     dylib
 .else

Index: pkgsrc/lang/gcc14/patches/patch-gcc_Makefile.in
diff -u pkgsrc/lang/gcc14/patches/patch-gcc_Makefile.in:1.1 pkgsrc/lang/gcc14/patches/patch-gcc_Makefile.in:1.1.4.1
--- pkgsrc/lang/gcc14/patches/patch-gcc_Makefile.in:1.1 Fri Jun 28 18:35:16 2024
+++ pkgsrc/lang/gcc14/patches/patch-gcc_Makefile.in     Fri Jan 10 17:08:36 2025
@@ -1,7 +1,8 @@
-$NetBSD: patch-gcc_Makefile.in,v 1.1 2024/06/28 18:35:16 wiz Exp $
+$NetBSD: patch-gcc_Makefile.in,v 1.1.4.1 2025/01/10 17:08:36 maya Exp $
 
-Add gcc libdir to a programs rpath so that _this gcc's_ support libraries
-are found.
+Ensure libgcc from this GCC is found before others.  Note that there must
+not be a whitespace between $(LINKER_RPATH_FLAG) and the path.  Otherwise
+the flag may be misinterpreted by the linker (e.g. Apple ld).
 
 --- gcc/Makefile.in.orig       2017-04-18 18:10:27.000000000 +0000
 +++ gcc/Makefile.in
@@ -9,7 +10,7 @@ are found.
  # Language-independent files.
  
  DRIVER_DEFINES = \
-+  -DLINK_LIBGCC_SPEC="\"%D $(LINKER_RPATH_FLAG) $(prefix)//lib/%M $(LINKER_RPATH_FLAG) $(libdir)/%M \"" \
++  -DLINK_LIBGCC_SPEC="\"%D $(LINKER_RPATH_FLAG)$(prefix)/@GCC_TARGET_MACHINE@/lib/%M $(LINKER_RPATH_FLAG)$(libdir)/%M \"" \
    -DSTANDARD_STARTFILE_PREFIX=\"$(unlibsubdir)/\" \
    -DSTANDARD_EXEC_PREFIX=\"$(libdir)/gcc/\" \
    -DSTANDARD_LIBEXEC_PREFIX=\"$(libexecdir)/gcc/\" \

Index: pkgsrc/lang/gcc6/Makefile
diff -u pkgsrc/lang/gcc6/Makefile:1.47 pkgsrc/lang/gcc6/Makefile:1.47.6.1
--- pkgsrc/lang/gcc6/Makefile:1.47      Sun Jun 23 15:47:17 2024
+++ pkgsrc/lang/gcc6/Makefile   Fri Jan 10 17:08:37 2025
@@ -1,4 +1,4 @@
-# $NetBSD: Makefile,v 1.47 2024/06/23 15:47:17 tsutsui Exp $
+# $NetBSD: Makefile,v 1.47.6.1 2025/01/10 17:08:37 maya Exp $
 
 GCC_PKGNAME=           gcc6
 .include               "version.mk"
@@ -57,6 +57,13 @@ FORCE_C_STD=         gnu99   
 UNLIMIT_RESOURCES+=    datasize
 UNLIMIT_RESOURCES+=    stacksize
 
+# DO NOT REMOVE THIS SUBST.  If it fails, the corruption to
+# patch-gcc_Makefile.in chronicled in PR pkg/58963 `gcc:
+# LINK_LIBGCC_SPEC snafu' <https://gnats.NetBSD.org/58963> probably got
+# replicated yet again.  You must make sure that LINK_LIBGCC_SPEC is
+# appropriately set with @GCC_TARGET_MACHINE@ in patch-gcc_Makefile.in
+# or similar, or confirm with a discussion on tech-pkg@ that it is no
+# longer relevant before you remove this SUBST.
 SUBST_CLASSES+=                vars
 SUBST_MESSAGE.vars=    Setting target machine name path in ${SUBST_FILES.vars}
 SUBST_STAGE.vars=      pre-configure

Index: pkgsrc/lang/gcc6-libs/Makefile
diff -u pkgsrc/lang/gcc6-libs/Makefile:1.20 pkgsrc/lang/gcc6-libs/Makefile:1.20.10.1
--- pkgsrc/lang/gcc6-libs/Makefile:1.20 Thu Oct  5 05:20:10 2023
+++ pkgsrc/lang/gcc6-libs/Makefile      Fri Jan 10 17:08:37 2025
@@ -1,4 +1,4 @@
-# $NetBSD: Makefile,v 1.20 2023/10/05 05:20:10 gutteridge Exp $
+# $NetBSD: Makefile,v 1.20.10.1 2025/01/10 17:08:37 maya Exp $
 
 GCC_PKGNAME=   gcc6
 .include       "../../lang/${GCC_PKGNAME}/version.mk"
@@ -9,7 +9,7 @@ PKGNAME=        ${GCC_PKGNAME}-libs-${GCC6_DIST
 ## The PKGREVISION of this package needs to be at least 1 more than the
 ## PKGREVISION of the lang/gcc6 package so that with the dependence pattern
 ## '{gcc6,gcc6-libs}>=6.1.*' pkg_add will choose gcc6-libs over gcc6.
-PKGREVISION=   10
+PKGREVISION=   11
 
 CATEGORIES=    lang
 MASTER_SITES=  # empty
@@ -36,6 +36,10 @@ LIBGCC_PREFIX=               ${LOCALBASE}/${LIBGCC_SU
 GCC_TARGET_MACHINE?=   ${MACHINE_GNU_PLATFORM}
 BUILD_DEFS+=           GCC_TARGET_MACHINE
 
+# Workaround for PR pkg/58966: mk: REQUIRES/PROVIDES analysis is wrong
+# for self-libraries.
+CHECK_SHLIBS_SUPPORTED=        no
+
 .include "../../mk/bsd.prefs.mk"
 .if ${SHLIB_TYPE} == "dylib"
 SHLIB_EXT=     dylib

Index: pkgsrc/lang/gcc7-libs/Makefile
diff -u pkgsrc/lang/gcc7-libs/Makefile:1.16 pkgsrc/lang/gcc7-libs/Makefile:1.16.14.1
--- pkgsrc/lang/gcc7-libs/Makefile:1.16 Tue Jun  6 12:41:43 2023
+++ pkgsrc/lang/gcc7-libs/Makefile      Fri Jan 10 17:08:37 2025
@@ -1,4 +1,4 @@
-# $NetBSD: Makefile,v 1.16 2023/06/06 12:41:43 riastradh Exp $
+# $NetBSD: Makefile,v 1.16.14.1 2025/01/10 17:08:37 maya Exp $
 
 GCC_PKGNAME=   gcc7
 .include       "../../lang/${GCC_PKGNAME}/version.mk"
@@ -9,7 +9,7 @@ PKGNAME=        ${GCC_PKGNAME}-libs-${GCC7_DIST
 ## The PKGREVISION of this package needs to be at least 1 more than the
 ## PKGREVISION of the lang/gcc7 package so that with the dependence pattern
 ## '{gcc7,gcc7-libs}>=7.5.*' pkg_add will choose gcc7-libs over gcc7.
-PKGREVISION=   7
+PKGREVISION=   8
 
 CATEGORIES=    lang
 MASTER_SITES=  # empty
@@ -36,6 +36,10 @@ LIBGCC_PREFIX=               ${LOCALBASE}/${LIBGCC_SU
 GCC_TARGET_MACHINE?=   ${MACHINE_GNU_PLATFORM}
 BUILD_DEFS+=           GCC_TARGET_MACHINE
 
+# Workaround for PR pkg/58966: mk: REQUIRES/PROVIDES analysis is wrong
+# for self-libraries.
+CHECK_SHLIBS_SUPPORTED=        no
+
 .if ${SHLIB_TYPE} == "dylib"
 SHLIB_EXT=     dylib
 .else

Index: pkgsrc/lang/gcc8-libs/Makefile
diff -u pkgsrc/lang/gcc8-libs/Makefile:1.18 pkgsrc/lang/gcc8-libs/Makefile:1.18.10.1
--- pkgsrc/lang/gcc8-libs/Makefile:1.18 Thu Oct  5 05:15:36 2023
+++ pkgsrc/lang/gcc8-libs/Makefile      Fri Jan 10 17:08:37 2025
@@ -1,4 +1,4 @@
-# $NetBSD: Makefile,v 1.18 2023/10/05 05:15:36 gutteridge Exp $
+# $NetBSD: Makefile,v 1.18.10.1 2025/01/10 17:08:37 maya Exp $
 
 GCC_PKGNAME=   gcc8
 .include       "../../lang/${GCC_PKGNAME}/version.mk"
@@ -9,7 +9,7 @@ PKGNAME=        ${GCC_PKGNAME}-libs-${GCC8_DIST
 ## The PKGREVISION of this package needs to be at least 1 more than the
 ## PKGREVISION of the lang/gcc8 package so that with the dependence pattern
 ## '{gcc8,gcc8-libs}>=8.2.*' pkg_add will choose gcc8-libs over gcc8.
-PKGREVISION=   2
+PKGREVISION=   3
 
 CATEGORIES=    lang
 MASTER_SITES=  # empty
@@ -36,6 +36,10 @@ LIBGCC_PREFIX=               ${LOCALBASE}/${LIBGCC_SU
 GCC_TARGET_MACHINE?=   ${MACHINE_GNU_PLATFORM}
 BUILD_DEFS+=           GCC_TARGET_MACHINE
 
+# Workaround for PR pkg/58966: mk: REQUIRES/PROVIDES analysis is wrong
+# for self-libraries.
+CHECK_SHLIBS_SUPPORTED=        no
+
 .if ${SHLIB_TYPE} == "dylib"
 SHLIB_EXT=     dylib
 .else

Index: pkgsrc/lang/gcc9-libs/Makefile
diff -u pkgsrc/lang/gcc9-libs/Makefile:1.11 pkgsrc/lang/gcc9-libs/Makefile:1.11.10.1
--- pkgsrc/lang/gcc9-libs/Makefile:1.11 Thu Oct  5 05:20:10 2023
+++ pkgsrc/lang/gcc9-libs/Makefile      Fri Jan 10 17:08:37 2025
@@ -1,4 +1,4 @@
-# $NetBSD: Makefile,v 1.11 2023/10/05 05:20:10 gutteridge Exp $
+# $NetBSD: Makefile,v 1.11.10.1 2025/01/10 17:08:37 maya Exp $
 
 GCC_PKGNAME=   gcc9
 .include       "../../lang/${GCC_PKGNAME}/version.mk"
@@ -9,7 +9,7 @@ PKGNAME=        ${GCC_PKGNAME}-libs-${GCC9_DIST
 ## The PKGREVISION of this package needs to be at least 1 more than the
 ## PKGREVISION of the lang/gcc9 package so that with the dependence pattern
 ## '{gcc9,gcc9-libs}>=9.2.*' pkg_add will choose gcc9-libs over gcc9.
-PKGREVISION=   2
+PKGREVISION=   3
 
 CATEGORIES=    lang
 MASTER_SITES=  # empty
@@ -36,6 +36,10 @@ LIBGCC_PREFIX=               ${LOCALBASE}/${LIBGCC_SU
 GCC_TARGET_MACHINE?=   ${MACHINE_GNU_PLATFORM}
 BUILD_DEFS+=           GCC_TARGET_MACHINE
 
+# Workaround for PR pkg/58966: mk: REQUIRES/PROVIDES analysis is wrong
+# for self-libraries.
+CHECK_SHLIBS_SUPPORTED=        no
+
 .if ${SHLIB_TYPE} == "dylib"
 SHLIB_EXT=     dylib
 .else



Home | Main Index | Thread Index | Old Index