]> git.ipfire.org Git - thirdparty/gcc.git/commitdiff
acinclude.m4 (GLIBCXX_CHECK_LINKER_FEATURES): Verbose ld version reporting.
authorBenjamin Kosnik <bkoz@redhat.com>
Fri, 20 Jan 2006 22:24:43 +0000 (22:24 +0000)
committerBenjamin Kosnik <bkoz@gcc.gnu.org>
Fri, 20 Jan 2006 22:24:43 +0000 (22:24 +0000)
2006-01-20  Benjamin Kosnik  <bkoz@redhat.com>

* acinclude.m4 (GLIBCXX_CHECK_LINKER_FEATURES): Verbose ld version
reporting.  Disable --gc-sections for old binutils, by version.
* configure: Regenerate.

From-SVN: r110045

libstdc++-v3/ChangeLog
libstdc++-v3/acinclude.m4
libstdc++-v3/configure

index b88a3b6f7c95451bb2f93ea82c0ab66b7a7b9794..4dd507c405530f5e1a9e6d2fb1a1265ed3111c40 100644 (file)
@@ -1,3 +1,9 @@
+2006-01-20  Benjamin Kosnik  <bkoz@redhat.com>
+
+       * acinclude.m4 (GLIBCXX_CHECK_LINKER_FEATURES): Verbose ld version
+       reporting.  Disable --gc-sections for old binutils, by version.
+       * configure: Regenerate.
+
 2006-01-20  Joseph S. Myers  <joseph@codesourcery.com>
 
        PR libstdc++/25524
index d0a5a6be7cf1d38c2ccd5dff39830ce6852fe671..aa68ac7abf2d8cf0f603021e1423ef3784e7a069 100644 (file)
@@ -222,16 +222,23 @@ AC_DEFUN([GLIBCXX_CHECK_LINKER_FEATURES], [
 
   # Start by getting the version number.  I think the libtool test already
   # does some of this, but throws away the result.
+  AC_MSG_CHECKING([for ld version])
   changequote(,)
   ldver=`$LD --version 2>/dev/null | head -1 | \
          sed -e 's/GNU ld version \([0-9.][0-9.]*\).*/\1/'`
   changequote([,])
   glibcxx_gnu_ld_version=`echo $ldver | \
          $AWK -F. '{ if (NF<3) [$]3=0; print ([$]1*100+[$]2)*100+[$]3 }'`
+  AC_MSG_RESULT($glibcxx_gnu_ld_version)
 
   # Set --gc-sections.
-  if test x"$with_gnu_ld" = x"yes"; then
-    # GNU ld it is!  Joy and bunny rabbits!
+  glibcxx_gcsections_min_ld=21602
+  if test x"$with_gnu_ld" = x"yes" && 
+       test $glibcxx_gnu_ld_version -gt $glibcxx_gcsections_min_ld ; then
+
+    # Sufficiently young GNU ld it is!  Joy and bunny rabbits!
+    # NB: This flag only works reliably after 2.16.1. Configure tests
+    # for this are difficult, so hard wire a value that should work.
 
     # All these tests are for C++, but run with the "C" compiler driver.
     # Need to do this so that g++ won't try to link in libstdc++/libsupc++.
index 50b936196173e9f7d5b73f3721e68c67ac1651f8..6131b9b67e9e2fc8c0d1e8c44845b6c02fd04ac5 100755 (executable)
@@ -8200,16 +8200,25 @@ ac_compiler_gnu=$ac_cv_c_compiler_gnu
 
   # Start by getting the version number.  I think the libtool test already
   # does some of this, but throws away the result.
+  echo "$as_me:$LINENO: checking for ld version" >&5
+echo $ECHO_N "checking for ld version... $ECHO_C" >&6
 
   ldver=`$LD --version 2>/dev/null | head -1 | \
          sed -e 's/GNU ld version \([0-9.][0-9.]*\).*/\1/'`
 
   glibcxx_gnu_ld_version=`echo $ldver | \
          $AWK -F. '{ if (NF<3) $3=0; print ($1*100+$2)*100+$3 }'`
+  echo "$as_me:$LINENO: result: $glibcxx_gnu_ld_version" >&5
+echo "${ECHO_T}$glibcxx_gnu_ld_version" >&6
 
   # Set --gc-sections.
-  if test x"$with_gnu_ld" = x"yes"; then
-    # GNU ld it is!  Joy and bunny rabbits!
+  glibcxx_gcsections_min_ld=21602
+  if test x"$with_gnu_ld" = x"yes" &&
+       test $glibcxx_gnu_ld_version -gt $glibcxx_gcsections_min_ld ; then
+
+    # Sufficiently young GNU ld it is!  Joy and bunny rabbits!
+    # NB: This flag only works reliably after 2.16.1. Configure tests
+    # for this are difficult, so hard wire a value that should work.
 
     # All these tests are for C++, but run with the "C" compiler driver.
     # Need to do this so that g++ won't try to link in libstdc++/libsupc++.
@@ -53058,16 +53067,25 @@ ac_compiler_gnu=$ac_cv_c_compiler_gnu
 
   # Start by getting the version number.  I think the libtool test already
   # does some of this, but throws away the result.
+  echo "$as_me:$LINENO: checking for ld version" >&5
+echo $ECHO_N "checking for ld version... $ECHO_C" >&6
 
   ldver=`$LD --version 2>/dev/null | head -1 | \
          sed -e 's/GNU ld version \([0-9.][0-9.]*\).*/\1/'`
 
   glibcxx_gnu_ld_version=`echo $ldver | \
          $AWK -F. '{ if (NF<3) $3=0; print ($1*100+$2)*100+$3 }'`
+  echo "$as_me:$LINENO: result: $glibcxx_gnu_ld_version" >&5
+echo "${ECHO_T}$glibcxx_gnu_ld_version" >&6
 
   # Set --gc-sections.
-  if test x"$with_gnu_ld" = x"yes"; then
-    # GNU ld it is!  Joy and bunny rabbits!
+  glibcxx_gcsections_min_ld=21602
+  if test x"$with_gnu_ld" = x"yes" &&
+       test $glibcxx_gnu_ld_version -gt $glibcxx_gcsections_min_ld ; then
+
+    # Sufficiently young GNU ld it is!  Joy and bunny rabbits!
+    # NB: This flag only works reliably after 2.16.1. Configure tests
+    # for this are difficult, so hard wire a value that should work.
 
     # All these tests are for C++, but run with the "C" compiler driver.
     # Need to do this so that g++ won't try to link in libstdc++/libsupc++.
@@ -74409,16 +74427,25 @@ done
 
   # Start by getting the version number.  I think the libtool test already
   # does some of this, but throws away the result.
+  echo "$as_me:$LINENO: checking for ld version" >&5
+echo $ECHO_N "checking for ld version... $ECHO_C" >&6
 
   ldver=`$LD --version 2>/dev/null | head -1 | \
          sed -e 's/GNU ld version \([0-9.][0-9.]*\).*/\1/'`
 
   glibcxx_gnu_ld_version=`echo $ldver | \
          $AWK -F. '{ if (NF<3) $3=0; print ($1*100+$2)*100+$3 }'`
+  echo "$as_me:$LINENO: result: $glibcxx_gnu_ld_version" >&5
+echo "${ECHO_T}$glibcxx_gnu_ld_version" >&6
 
   # Set --gc-sections.
-  if test x"$with_gnu_ld" = x"yes"; then
-    # GNU ld it is!  Joy and bunny rabbits!
+  glibcxx_gcsections_min_ld=21602
+  if test x"$with_gnu_ld" = x"yes" &&
+       test $glibcxx_gnu_ld_version -gt $glibcxx_gcsections_min_ld ; then
+
+    # Sufficiently young GNU ld it is!  Joy and bunny rabbits!
+    # NB: This flag only works reliably after 2.16.1. Configure tests
+    # for this are difficult, so hard wire a value that should work.
 
     # All these tests are for C++, but run with the "C" compiler driver.
     # Need to do this so that g++ won't try to link in libstdc++/libsupc++.
@@ -75923,16 +75950,25 @@ done
 
   # Start by getting the version number.  I think the libtool test already
   # does some of this, but throws away the result.
+  echo "$as_me:$LINENO: checking for ld version" >&5
+echo $ECHO_N "checking for ld version... $ECHO_C" >&6
 
   ldver=`$LD --version 2>/dev/null | head -1 | \
          sed -e 's/GNU ld version \([0-9.][0-9.]*\).*/\1/'`
 
   glibcxx_gnu_ld_version=`echo $ldver | \
          $AWK -F. '{ if (NF<3) $3=0; print ($1*100+$2)*100+$3 }'`
+  echo "$as_me:$LINENO: result: $glibcxx_gnu_ld_version" >&5
+echo "${ECHO_T}$glibcxx_gnu_ld_version" >&6
 
   # Set --gc-sections.
-  if test x"$with_gnu_ld" = x"yes"; then
-    # GNU ld it is!  Joy and bunny rabbits!
+  glibcxx_gcsections_min_ld=21602
+  if test x"$with_gnu_ld" = x"yes" &&
+       test $glibcxx_gnu_ld_version -gt $glibcxx_gcsections_min_ld ; then
+
+    # Sufficiently young GNU ld it is!  Joy and bunny rabbits!
+    # NB: This flag only works reliably after 2.16.1. Configure tests
+    # for this are difficult, so hard wire a value that should work.
 
     # All these tests are for C++, but run with the "C" compiler driver.
     # Need to do this so that g++ won't try to link in libstdc++/libsupc++.
@@ -77313,16 +77349,25 @@ done
 
   # Start by getting the version number.  I think the libtool test already
   # does some of this, but throws away the result.
+  echo "$as_me:$LINENO: checking for ld version" >&5
+echo $ECHO_N "checking for ld version... $ECHO_C" >&6
 
   ldver=`$LD --version 2>/dev/null | head -1 | \
          sed -e 's/GNU ld version \([0-9.][0-9.]*\).*/\1/'`
 
   glibcxx_gnu_ld_version=`echo $ldver | \
          $AWK -F. '{ if (NF<3) $3=0; print ($1*100+$2)*100+$3 }'`
+  echo "$as_me:$LINENO: result: $glibcxx_gnu_ld_version" >&5
+echo "${ECHO_T}$glibcxx_gnu_ld_version" >&6
 
   # Set --gc-sections.
-  if test x"$with_gnu_ld" = x"yes"; then
-    # GNU ld it is!  Joy and bunny rabbits!
+  glibcxx_gcsections_min_ld=21602
+  if test x"$with_gnu_ld" = x"yes" &&
+       test $glibcxx_gnu_ld_version -gt $glibcxx_gcsections_min_ld ; then
+
+    # Sufficiently young GNU ld it is!  Joy and bunny rabbits!
+    # NB: This flag only works reliably after 2.16.1. Configure tests
+    # for this are difficult, so hard wire a value that should work.
 
     # All these tests are for C++, but run with the "C" compiler driver.
     # Need to do this so that g++ won't try to link in libstdc++/libsupc++.
@@ -79490,16 +79535,25 @@ done
 
   # Start by getting the version number.  I think the libtool test already
   # does some of this, but throws away the result.
+  echo "$as_me:$LINENO: checking for ld version" >&5
+echo $ECHO_N "checking for ld version... $ECHO_C" >&6
 
   ldver=`$LD --version 2>/dev/null | head -1 | \
          sed -e 's/GNU ld version \([0-9.][0-9.]*\).*/\1/'`
 
   glibcxx_gnu_ld_version=`echo $ldver | \
          $AWK -F. '{ if (NF<3) $3=0; print ($1*100+$2)*100+$3 }'`
+  echo "$as_me:$LINENO: result: $glibcxx_gnu_ld_version" >&5
+echo "${ECHO_T}$glibcxx_gnu_ld_version" >&6
 
   # Set --gc-sections.
-  if test x"$with_gnu_ld" = x"yes"; then
-    # GNU ld it is!  Joy and bunny rabbits!
+  glibcxx_gcsections_min_ld=21602
+  if test x"$with_gnu_ld" = x"yes" &&
+       test $glibcxx_gnu_ld_version -gt $glibcxx_gcsections_min_ld ; then
+
+    # Sufficiently young GNU ld it is!  Joy and bunny rabbits!
+    # NB: This flag only works reliably after 2.16.1. Configure tests
+    # for this are difficult, so hard wire a value that should work.
 
     # All these tests are for C++, but run with the "C" compiler driver.
     # Need to do this so that g++ won't try to link in libstdc++/libsupc++.
@@ -80833,16 +80887,25 @@ done
 
   # Start by getting the version number.  I think the libtool test already
   # does some of this, but throws away the result.
+  echo "$as_me:$LINENO: checking for ld version" >&5
+echo $ECHO_N "checking for ld version... $ECHO_C" >&6
 
   ldver=`$LD --version 2>/dev/null | head -1 | \
          sed -e 's/GNU ld version \([0-9.][0-9.]*\).*/\1/'`
 
   glibcxx_gnu_ld_version=`echo $ldver | \
          $AWK -F. '{ if (NF<3) $3=0; print ($1*100+$2)*100+$3 }'`
+  echo "$as_me:$LINENO: result: $glibcxx_gnu_ld_version" >&5
+echo "${ECHO_T}$glibcxx_gnu_ld_version" >&6
 
   # Set --gc-sections.
-  if test x"$with_gnu_ld" = x"yes"; then
-    # GNU ld it is!  Joy and bunny rabbits!
+  glibcxx_gcsections_min_ld=21602
+  if test x"$with_gnu_ld" = x"yes" &&
+       test $glibcxx_gnu_ld_version -gt $glibcxx_gcsections_min_ld ; then
+
+    # Sufficiently young GNU ld it is!  Joy and bunny rabbits!
+    # NB: This flag only works reliably after 2.16.1. Configure tests
+    # for this are difficult, so hard wire a value that should work.
 
     # All these tests are for C++, but run with the "C" compiler driver.
     # Need to do this so that g++ won't try to link in libstdc++/libsupc++.
@@ -82225,16 +82288,25 @@ done
 
   # Start by getting the version number.  I think the libtool test already
   # does some of this, but throws away the result.
+  echo "$as_me:$LINENO: checking for ld version" >&5
+echo $ECHO_N "checking for ld version... $ECHO_C" >&6
 
   ldver=`$LD --version 2>/dev/null | head -1 | \
          sed -e 's/GNU ld version \([0-9.][0-9.]*\).*/\1/'`
 
   glibcxx_gnu_ld_version=`echo $ldver | \
          $AWK -F. '{ if (NF<3) $3=0; print ($1*100+$2)*100+$3 }'`
+  echo "$as_me:$LINENO: result: $glibcxx_gnu_ld_version" >&5
+echo "${ECHO_T}$glibcxx_gnu_ld_version" >&6
 
   # Set --gc-sections.
-  if test x"$with_gnu_ld" = x"yes"; then
-    # GNU ld it is!  Joy and bunny rabbits!
+  glibcxx_gcsections_min_ld=21602
+  if test x"$with_gnu_ld" = x"yes" &&
+       test $glibcxx_gnu_ld_version -gt $glibcxx_gcsections_min_ld ; then
+
+    # Sufficiently young GNU ld it is!  Joy and bunny rabbits!
+    # NB: This flag only works reliably after 2.16.1. Configure tests
+    # for this are difficult, so hard wire a value that should work.
 
     # All these tests are for C++, but run with the "C" compiler driver.
     # Need to do this so that g++ won't try to link in libstdc++/libsupc++.
@@ -84009,16 +84081,25 @@ echo "${ECHO_T}$glibcxx_cv_WRITEV" >&6
 
   # Start by getting the version number.  I think the libtool test already
   # does some of this, but throws away the result.
+  echo "$as_me:$LINENO: checking for ld version" >&5
+echo $ECHO_N "checking for ld version... $ECHO_C" >&6
 
   ldver=`$LD --version 2>/dev/null | head -1 | \
          sed -e 's/GNU ld version \([0-9.][0-9.]*\).*/\1/'`
 
   glibcxx_gnu_ld_version=`echo $ldver | \
          $AWK -F. '{ if (NF<3) $3=0; print ($1*100+$2)*100+$3 }'`
+  echo "$as_me:$LINENO: result: $glibcxx_gnu_ld_version" >&5
+echo "${ECHO_T}$glibcxx_gnu_ld_version" >&6
 
   # Set --gc-sections.
-  if test x"$with_gnu_ld" = x"yes"; then
-    # GNU ld it is!  Joy and bunny rabbits!
+  glibcxx_gcsections_min_ld=21602
+  if test x"$with_gnu_ld" = x"yes" &&
+       test $glibcxx_gnu_ld_version -gt $glibcxx_gcsections_min_ld ; then
+
+    # Sufficiently young GNU ld it is!  Joy and bunny rabbits!
+    # NB: This flag only works reliably after 2.16.1. Configure tests
+    # for this are difficult, so hard wire a value that should work.
 
     # All these tests are for C++, but run with the "C" compiler driver.
     # Need to do this so that g++ won't try to link in libstdc++/libsupc++.
@@ -86114,16 +86195,25 @@ done
 
   # Start by getting the version number.  I think the libtool test already
   # does some of this, but throws away the result.
+  echo "$as_me:$LINENO: checking for ld version" >&5
+echo $ECHO_N "checking for ld version... $ECHO_C" >&6
 
   ldver=`$LD --version 2>/dev/null | head -1 | \
          sed -e 's/GNU ld version \([0-9.][0-9.]*\).*/\1/'`
 
   glibcxx_gnu_ld_version=`echo $ldver | \
          $AWK -F. '{ if (NF<3) $3=0; print ($1*100+$2)*100+$3 }'`
+  echo "$as_me:$LINENO: result: $glibcxx_gnu_ld_version" >&5
+echo "${ECHO_T}$glibcxx_gnu_ld_version" >&6
 
   # Set --gc-sections.
-  if test x"$with_gnu_ld" = x"yes"; then
-    # GNU ld it is!  Joy and bunny rabbits!
+  glibcxx_gcsections_min_ld=21602
+  if test x"$with_gnu_ld" = x"yes" &&
+       test $glibcxx_gnu_ld_version -gt $glibcxx_gcsections_min_ld ; then
+
+    # Sufficiently young GNU ld it is!  Joy and bunny rabbits!
+    # NB: This flag only works reliably after 2.16.1. Configure tests
+    # for this are difficult, so hard wire a value that should work.
 
     # All these tests are for C++, but run with the "C" compiler driver.
     # Need to do this so that g++ won't try to link in libstdc++/libsupc++.