aboutsummaryrefslogtreecommitdiff
path: root/libjava/configure.ac
diff options
context:
space:
mode:
authorAndrew Haley <aph@redhat.com>2010-04-21 16:34:01 +0000
committerAndrew Haley <aph@gcc.gnu.org>2010-04-21 16:34:01 +0000
commit6cf3abb170cca507c681dff4ef810f5d5da19588 (patch)
tree97c913df003cc2af3990c16ba1837ecd35fbd001 /libjava/configure.ac
parentdd6d1ad715541f538a82090a8480412dde0169db (diff)
downloadgcc-6cf3abb170cca507c681dff4ef810f5d5da19588.zip
gcc-6cf3abb170cca507c681dff4ef810f5d5da19588.tar.gz
gcc-6cf3abb170cca507c681dff4ef810f5d5da19588.tar.bz2
re PR libgcj/40860 (regressions in libjava testsuite on arm-linux)
2010-04-19 Andrew Haley <aph@redhat.com> PR libgcj/40860 * configure.ac: Handle --no-merge-exidx-entries. From-SVN: r158611
Diffstat (limited to 'libjava/configure.ac')
-rw-r--r--libjava/configure.ac15
1 files changed, 15 insertions, 0 deletions
diff --git a/libjava/configure.ac b/libjava/configure.ac
index 255fb64..7f4befa 100644
--- a/libjava/configure.ac
+++ b/libjava/configure.ac
@@ -927,6 +927,21 @@ arm*linux*eabi)
extra_ldflags_libjava=-liconv
;;
esac
+
+# Check for --no-merge-exidx-entries, an ARM-specific linker option.
+AC_CACHE_CHECK([for --no-merge-exidx-entries], [libgcj_cv_exidx],
+ [saved_ldflags="$LDFLAGS"
+ LDFLAGS="${LDFLAGS} -Wl,--no-merge-exidx-entries"
+ AC_LINK_IFELSE([int main(void){ return 0;} ],
+ [eval "libgcj_cv_exidx=yes"],
+ [eval "libgcj_cv_exidx=no"])
+ LDFLAGS="${saved_ldflags}"]
+)
+if test "${libgcj_cv_exidx}" = "yes"; then
+ SYSTEMSPEC="${SYSTEMSPEC} --no-merge-exidx-entries"
+ extra_ldflags="${extra_ldflags} -Wl,--no-merge-exidx-entries"
+fi
+
AC_SUBST(extra_ldflags_libjava)
AC_SUBST(extra_ldflags)
AC_SUBST(LIBSTDCXXSPEC)