summaryrefslogtreecommitdiff
path: root/libjava/configure.ac
diff options
context:
space:
mode:
authoraph <aph@138bc75d-0d04-0410-961f-82ee72b054a4>2010-04-21 16:34:01 +0000
committeraph <aph@138bc75d-0d04-0410-961f-82ee72b054a4>2010-04-21 16:34:01 +0000
commit438fa195386e30cec39e88d19ec4c05411ad0e94 (patch)
tree97c913df003cc2af3990c16ba1837ecd35fbd001 /libjava/configure.ac
parent509414a5becd65fd2602f480f93167f4a58840ed (diff)
downloadgcc-438fa195386e30cec39e88d19ec4c05411ad0e94.tar.gz
2010-04-19 Andrew Haley <aph@redhat.com>
PR libgcj/40860 * configure.ac: Handle --no-merge-exidx-entries. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@158611 138bc75d-0d04-0410-961f-82ee72b054a4
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 255fb64595e..7f4befa830b 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)