aboutsummaryrefslogtreecommitdiff
path: root/gcc/configure.ac
diff options
context:
space:
mode:
authorAlan Modra <amodra@bigpond.net.au>2004-04-01 16:45:34 +0000
committerJakub Jelinek <jakub@gcc.gnu.org>2004-04-01 18:45:34 +0200
commit765f1bf9e4451e97ccfba21bc2d9dcee8580fb31 (patch)
tree1a3ce88b8909a989116b51749ef3a5f061786ed7 /gcc/configure.ac
parent45dcc026e55601992454c81ff5c171a58a5ac4b9 (diff)
downloadgcc-765f1bf9e4451e97ccfba21bc2d9dcee8580fb31.zip
gcc-765f1bf9e4451e97ccfba21bc2d9dcee8580fb31.tar.gz
gcc-765f1bf9e4451e97ccfba21bc2d9dcee8580fb31.tar.bz2
gcc.c (init_gcc_specs): If HAVE_LD_AS_NEEDED, link with -lgcc --as-needed -lgcc_s --no-as-needed by default.
* gcc.c (init_gcc_specs): If HAVE_LD_AS_NEEDED, link with -lgcc --as-needed -lgcc_s --no-as-needed by default. * configure.ac (HAVE_LD_AS_NEEDED): Check for ld --as-needed. * configure: Rebuilt. * config.in: Rebuilt. * Makefile.in (stage1-start): Copy also libgcc_s*$(SHLIB_EXT). (stage2-start, stage3-start, stage4-start): Likewise. (stageprofile-start, stagefeedback-start): Likewise. Co-Authored-By: Jakub Jelinek <jakub@redhat.com> From-SVN: r80302
Diffstat (limited to 'gcc/configure.ac')
-rw-r--r--gcc/configure.ac19
1 files changed, 19 insertions, 0 deletions
diff --git a/gcc/configure.ac b/gcc/configure.ac
index a4da3d2..f35812d 100644
--- a/gcc/configure.ac
+++ b/gcc/configure.ac
@@ -2744,6 +2744,25 @@ AC_MSG_RESULT($gcc_cv_ld_pie)
# UNSORTED
# --------
+AC_MSG_CHECKING(linker --as-needed support)
+gcc_cv_ld_as_needed=no
+if test $in_tree_ld = yes ; then
+ if test "$gcc_cv_gld_major_version" -eq 2 -a "$gcc_cv_gld_minor_version" -ge 16 -o "$gcc_cv_gld_major_version" -gt 2 \
+ && test $in_tree_ld_is_elf = yes; then
+ gcc_cv_ld_as_needed=yes
+ fi
+elif test x$gcc_cv_ld != x; then
+ # Check if linker supports --as-needed and --no-as-needed options
+ if $gcc_cv_ld --help 2>/dev/null | grep as-needed > /dev/null; then
+ gcc_cv_ld_as_needed=yes
+ fi
+fi
+if test x"$gcc_cv_ld_as_needed" = xyes; then
+ AC_DEFINE(HAVE_LD_AS_NEEDED, 1,
+[Define if your linker supports --as-needed and --no-as-needed options.])
+fi
+AC_MSG_RESULT($gcc_cv_ld_as_needed)
+
if test x$with_sysroot = x && test x$host = x$target \
&& test "$prefix" != "/usr" && test "x$prefix" != "x$local_prefix" ; then
AC_DEFINE_UNQUOTED(PREFIX_INCLUDE_DIR, "$prefix/include",