aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSteve Ellcey <sje@cup.hp.com>2010-01-08 21:54:37 +0000
committerSteve Ellcey <sje@gcc.gnu.org>2010-01-08 21:54:37 +0000
commit601fc26e4e7625131573450f11dfb7ae5f57ffeb (patch)
tree1c4268e5a2e7410d018f9ca9d3e41978eaaeb487
parente51ded7c74e8911008fac61475f436faa2ef8140 (diff)
downloadgcc-601fc26e4e7625131573450f11dfb7ae5f57ffeb.zip
gcc-601fc26e4e7625131573450f11dfb7ae5f57ffeb.tar.gz
gcc-601fc26e4e7625131573450f11dfb7ae5f57ffeb.tar.bz2
re PR target/37454 (gcc: unrecognized option '-rdynamic')
2010-01-08 Steve Ellcey <sje@cup.hp.com> PR target/37454 * configure.ac: Modify -rdynamic check. * configure: Regenerate. From-SVN: r155745
-rw-r--r--gcc/ChangeLog6
-rwxr-xr-xgcc/configure50
-rw-r--r--gcc/configure.ac32
3 files changed, 35 insertions, 53 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index fdf4c85..b524bae 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,9 @@
+2010-01-08 Steve Ellcey <sje@cup.hp.com>
+
+ PR target/37454
+ * configure.ac: Modify -rdynamic check.
+ * configure: Regenerate.
+
2010-01-08 DJ Delorie <dj@redhat.com>
* config/sh/sh.c (sh_expand_epilogue): Fix interrupt handler
diff --git a/gcc/configure b/gcc/configure
index 4cb6cf7..4a1fe5b 100755
--- a/gcc/configure
+++ b/gcc/configure
@@ -25017,39 +25017,22 @@ fi
pluginlibs=
if test x"$enable_plugin" = x"yes"; then
- # Check that the host supports -rdynamic and -ldl
- have_rdynamic=no
- have_dl=no
- saved_LDFLAGS="$LDFLAGS"
- saved_LIBS="$LIBS"
- LIBS=
-
- # Check -rdynamic
- LDFLAGS="$LDFLAGS -rdynamic"
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for -rdynamic" >&5
-$as_echo_n "checking for -rdynamic... " >&6; }
- cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-int
-main ()
-{
-return 0;
- ;
- return 0;
-}
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }; have_rdynamic=yes
-else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-rm -f core conftest.err conftest.$ac_objext \
- conftest$ac_exeext conftest.$ac_ext
- if test x"$have_rdynamic" = x"yes" ; then
- pluginlibs="-rdynamic"
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking for exported symbols" >&5
+$as_echo_n "checking for exported symbols... " >&6; }
+ echo "int main() {return 0;} int foobar() {return 0;}" > conftest.c
+ ${CC} ${CFLAGS} ${LDFLAGS} conftest.c -o conftest > /dev/null 2>&1
+ if $gcc_cv_objdump -T conftest | grep foobar > /dev/null; then
+ : # No need to use a flag
+ else
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking for -rdynamic" >&5
+$as_echo_n "checking for -rdynamic... " >&6; }
+ ${CC} ${CFLAGS} ${LDFLAGS} -rdynamic conftest.c -o conftest > /dev/null 2>&1
+ if $gcc_cv_objdump -T conftest | grep foobar > /dev/null; then
+ pluginlibs="-rdynamic"
+ else
+ enable_plugin=no
+ fi
fi
# Check -ldl
@@ -25150,9 +25133,6 @@ Building GCC with plugin support requires a host that supports
-fPIC, -shared, -ldl and -rdynamic." "$LINENO" 5
fi
fi
-
- LDFLAGS="$saved_LDFLAGS"
- LIBS="$saved_LIBS"
fi
diff --git a/gcc/configure.ac b/gcc/configure.ac
index 1d9d13e..ab1d775 100644
--- a/gcc/configure.ac
+++ b/gcc/configure.ac
@@ -4297,21 +4297,20 @@ enable_plugin=yes; default_plugin=yes)
pluginlibs=
if test x"$enable_plugin" = x"yes"; then
- # Check that the host supports -rdynamic and -ldl
- have_rdynamic=no
- have_dl=no
- saved_LDFLAGS="$LDFLAGS"
- saved_LIBS="$LIBS"
- LIBS=
-
- # Check -rdynamic
- LDFLAGS="$LDFLAGS -rdynamic"
- AC_MSG_CHECKING([for -rdynamic])
- AC_TRY_LINK([],[return 0;],
- [AC_MSG_RESULT([yes]); have_rdynamic=yes],
- [AC_MSG_RESULT([no])])
- if test x"$have_rdynamic" = x"yes" ; then
- pluginlibs="-rdynamic"
+
+ AC_MSG_CHECKING([for exported symbols])
+ echo "int main() {return 0;} int foobar() {return 0;}" > conftest.c
+ ${CC} ${CFLAGS} ${LDFLAGS} conftest.c -o conftest > /dev/null 2>&1
+ if $gcc_cv_objdump -T conftest | grep foobar > /dev/null; then
+ : # No need to use a flag
+ else
+ AC_MSG_CHECKING([for -rdynamic])
+ ${CC} ${CFLAGS} ${LDFLAGS} -rdynamic conftest.c -o conftest > /dev/null 2>&1
+ if $gcc_cv_objdump -T conftest | grep foobar > /dev/null; then
+ pluginlibs="-rdynamic"
+ else
+ enable_plugin=no
+ fi
fi
# Check -ldl
@@ -4340,9 +4339,6 @@ Building GCC with plugin support requires a host that supports
-fPIC, -shared, -ldl and -rdynamic.])
fi
fi
-
- LDFLAGS="$saved_LDFLAGS"
- LIBS="$saved_LIBS"
fi
AC_SUBST(pluginlibs)