https://gcc.gnu.org/g:cae584bddd0e348d9ac6f9bd917b47255a26458e
commit r14-11709-gcae584bddd0e348d9ac6f9bd917b47255a26458e Author: Mark Mentovai <m...@mentovai.com> Date: Tue Sep 24 16:11:14 2024 -0400 libgcc, Darwin: Drop the legacy library build for macOS >= 10.12 [PR116809]. From macOSX15 SDK, the unwinder no longer exports some of the symbols used in that library which (a) causes bootstrap fail and (b) means that the legacy library is no longer useful. No open branch of GCC emits references to this library - and any already -built code that depends on the symbols would need rework anyway. We have been asked to extend this back to the earliest OS vesion supported by the SDK (10.12). PR target/116809 libgcc/ChangeLog: * config.host: Build legacy libgcc_s.1 on hosts before macOS 10.12. * config/i386/t-darwin: Remove reference to legacy libgcc_s.1 * config/rs6000/t-darwin: Likewise. * config/t-darwin-libgccs1: New file. Signed-off-by: Iain Sandoe <i...@sandoe.co.uk> (cherry picked from commit d9cafa0c4f0a81304d9b95a78ccc8e9003c6d7a3) Diff: --- libgcc/config.host | 9 ++++++--- libgcc/config/i386/t-darwin | 3 --- libgcc/config/rs6000/t-darwin | 3 --- libgcc/config/t-darwin-libgccs1 | 3 +++ 4 files changed, 9 insertions(+), 9 deletions(-) diff --git a/libgcc/config.host b/libgcc/config.host index 8ad2f4047867..ee10e99b0a66 100644 --- a/libgcc/config.host +++ b/libgcc/config.host @@ -242,16 +242,19 @@ case ${host} in *-*-darwin1[89]*) tmake_file="t-darwin-min-8 $tmake_file" ;; - *-*-darwin9* | *-*-darwin1[0-7]*) + *-*-darwin1[67]]*) tmake_file="t-darwin-min-5 $tmake_file" ;; + *-*-darwin9* | *-*-darwin1[0-5]*) + tmake_file="t-darwin-min-5 t-darwin-libgccs1 $tmake_file" + ;; *-*-darwin[4-8]*) - tmake_file="t-darwin-min-1 $tmake_file" + tmake_file="t-darwin-min-1 t-darwin-libgccs1 $tmake_file" ;; *) # Fall back to configuring for the oldest system known to work with # all archs and the current sources. - tmake_file="t-darwin-min-5 $tmake_file" + tmake_file="t-darwin-min-5 t-darwin-libgccs1 $tmake_file" echo "Warning: libgcc configured to support macOS 10.5" 1>&2 ;; esac diff --git a/libgcc/config/i386/t-darwin b/libgcc/config/i386/t-darwin index 4c18da1efbfd..c6b3acaaca28 100644 --- a/libgcc/config/i386/t-darwin +++ b/libgcc/config/i386/t-darwin @@ -4,6 +4,3 @@ LIB2FUNCS_EXCLUDE = _fixtfdi _fixunstfdi _floatditf _floatunditf # Extra symbols for this port. SHLIB_MAPFILES += $(srcdir)/config/i386/libgcc-darwin.ver - -# Build a legacy libgcc_s.1 -BUILD_LIBGCCS1 = YES diff --git a/libgcc/config/rs6000/t-darwin b/libgcc/config/rs6000/t-darwin index 183d0df92ce9..8b513bdb1d78 100644 --- a/libgcc/config/rs6000/t-darwin +++ b/libgcc/config/rs6000/t-darwin @@ -56,6 +56,3 @@ unwind-dw2_s.o: HOST_LIBGCC2_CFLAGS += -maltivec unwind-dw2.o: HOST_LIBGCC2_CFLAGS += -maltivec LIB2ADDEH += $(srcdir)/config/rs6000/darwin-fallback.c - -# Build a legacy libgcc_s.1 -BUILD_LIBGCCS1 = YES diff --git a/libgcc/config/t-darwin-libgccs1 b/libgcc/config/t-darwin-libgccs1 new file mode 100644 index 000000000000..b88b1a5bba8a --- /dev/null +++ b/libgcc/config/t-darwin-libgccs1 @@ -0,0 +1,3 @@ + +# Build a legacy libgcc_s.1 +BUILD_LIBGCCS1 = YES