https://gcc.gnu.org/g:dbba3c9008e35ba45966945baf816886c5520196

commit r14-11714-gdbba3c9008e35ba45966945baf816886c5520196
Author: Iain Sandoe <i...@sandoe.co.uk>
Date:   Tue Apr 15 14:02:21 2025 +0100

    configure, Darwin: Recognise new naming for Xcode ld.
    
    The latest editions of XCode have altered the identify reported by 'ld -v'
    (again).  This means that GCC configure no longer detects the version.
    
    Fixed by adding the new name to the set checked.
    
    gcc/ChangeLog:
    
            * configure: Regenerate.
            * configure.ac: Recognise PROJECT:ld-mmmm.nn.aa as an identifier
            for Darwin's static linker.
    
    Signed-off-by: Iain Sandoe <i...@sandoe.co.uk>
    (cherry picked from commit 7f56a8e8ad1c33d358e9e09fcbaf263c2caba1b9)

Diff:
---
 gcc/configure    | 7 ++++---
 gcc/configure.ac | 7 ++++---
 2 files changed, 8 insertions(+), 6 deletions(-)

diff --git a/gcc/configure b/gcc/configure
index 4e9c65225d34..a4dcd1317834 100755
--- a/gcc/configure
+++ b/gcc/configure
@@ -3940,7 +3940,7 @@ if test x"${DEFAULT_LINKER+set}" = x"set"; then
     as_fn_error $? "cannot execute: $DEFAULT_LINKER: check --with-ld or env. 
var. DEFAULT_LINKER" "$LINENO" 5
   elif $DEFAULT_LINKER -v < /dev/null 2>&1 | grep GNU > /dev/null; then
     gnu_ld_flag=yes
-  elif $DEFAULT_LINKER -v < /dev/null 2>&1 | grep ld64- > /dev/null; then
+  elif $DEFAULT_LINKER -v < /dev/null 2>&1 | grep 'PROJECT:ld\(64\)*-' > 
/dev/null; then
     ld64_flag=yes
   fi
 
@@ -32781,8 +32781,9 @@ $as_echo "$gcc_cv_ld64_major" >&6; }
     { $as_echo "$as_me:${as_lineno-$LINENO}: checking linker version" >&5
 $as_echo_n "checking linker version... " >&6; }
     if test x"${gcc_cv_ld64_version}" = x; then
-      gcc_cv_ld64_version=`$gcc_cv_ld -v 2>&1 | $EGREP 'ld64|dyld' \
-      | sed -e 's/.*ld64-//' -e 's/.*dyld-//'| awk '{print $1}'`
+      gcc_cv_ld64_version=`$gcc_cv_ld -v 2>&1 | $EGREP 'ld64|dyld|PROJECT:ld' \
+      | sed -e 's/.*ld64-//' -e 's/.*dyld-//' -e 's/.*PROJECT:ld-//' \
+      | awk '{print $1}'`
     fi
     { $as_echo "$as_me:${as_lineno-$LINENO}: result: $gcc_cv_ld64_version" >&5
 $as_echo "$gcc_cv_ld64_version" >&6; }
diff --git a/gcc/configure.ac b/gcc/configure.ac
index 89d927cf0ac2..cb743b5a875a 100644
--- a/gcc/configure.ac
+++ b/gcc/configure.ac
@@ -358,7 +358,7 @@ if test x"${DEFAULT_LINKER+set}" = x"set"; then
     AC_MSG_ERROR([cannot execute: $DEFAULT_LINKER: check --with-ld or env. 
var. DEFAULT_LINKER])
   elif $DEFAULT_LINKER -v < /dev/null 2>&1 | grep GNU > /dev/null; then
     gnu_ld_flag=yes
-  elif $DEFAULT_LINKER -v < /dev/null 2>&1 | grep ld64- > /dev/null; then
+  elif $DEFAULT_LINKER -v < /dev/null 2>&1 | grep 'PROJECT:ld\(64\)*-' > 
/dev/null; then
     ld64_flag=yes
   fi
   AC_DEFINE_UNQUOTED(DEFAULT_LINKER,"$DEFAULT_LINKER",
@@ -6467,8 +6467,9 @@ if test x"$ld64_flag" = x"yes"; then
     # If the version was not specified, try to find it.
     AC_MSG_CHECKING(linker version)
     if test x"${gcc_cv_ld64_version}" = x; then
-      gcc_cv_ld64_version=`$gcc_cv_ld -v 2>&1 | $EGREP 'ld64|dyld' \
-      | sed -e 's/.*ld64-//' -e 's/.*dyld-//'| awk '{print $1}'`
+      gcc_cv_ld64_version=`$gcc_cv_ld -v 2>&1 | $EGREP 'ld64|dyld|PROJECT:ld' \
+      | sed -e 's/.*ld64-//' -e 's/.*dyld-//' -e 's/.*PROJECT:ld-//' \
+      | awk '{print $1}'`
     fi
     AC_MSG_RESULT($gcc_cv_ld64_version)

Reply via email to