aboutsummaryrefslogtreecommitdiff
path: root/gcc/configure.ac
diff options
context:
space:
mode:
authorDavid Malcolm <dmalcolm@redhat.com>2018-03-09 15:24:44 +0000
committerDavid Malcolm <dmalcolm@gcc.gnu.org>2018-03-09 15:24:44 +0000
commitdeb3da39d6ec5b94f45679860ae48a7037939f9f (patch)
treebe3e50e2422a1c4eff607d0c25b1b0133ae9dc03 /gcc/configure.ac
parent20003c3cc31bf4ef40a0e03b4f237698e3e1b0ec (diff)
downloadgcc-deb3da39d6ec5b94f45679860ae48a7037939f9f.zip
gcc-deb3da39d6ec5b94f45679860ae48a7037939f9f.tar.gz
gcc-deb3da39d6ec5b94f45679860ae48a7037939f9f.tar.bz2
jit: use 'configure' to replace hard-coded linker options (PR jit/64089 and PR jit/84288)
gcc/ChangeLog: PR jit/64089 PR jit/84288 * Makefile.in (LD_VERSION_SCRIPT_OPTION, LD_SONAME_OPTION): New. * configure: Regenerate. * configure.ac ("linker --version-script option"): New. ("linker soname option"): New. gcc/jit/ChangeLog: PR jit/64089 PR jit/84288 * Make-lang.in (COMMA): New. (LIBGCCJIT_VERSION_SCRIPT_OPTION): New. (LIBGCCJIT_SONAME_OPTION): New. (jit): Move --version-script and -soname linker options to the above. Co-Authored-By: Francois-Xavier Coudert <fxcoudert@gcc.gnu.org> From-SVN: r258388
Diffstat (limited to 'gcc/configure.ac')
-rw-r--r--gcc/configure.ac38
1 files changed, 38 insertions, 0 deletions
diff --git a/gcc/configure.ac b/gcc/configure.ac
index 140c804..c3c76ac 100644
--- a/gcc/configure.ac
+++ b/gcc/configure.ac
@@ -3655,6 +3655,44 @@ if test x"$gcc_cv_ld_static_dynamic" = xyes; then
fi
AC_MSG_RESULT($gcc_cv_ld_static_dynamic)
+AC_MSG_CHECKING(linker --version-script option)
+gcc_cv_ld_version_script=no
+ld_version_script_option=''
+if test $in_tree_ld = yes || test x"$gnu_ld" = xyes; then
+ gcc_cv_ld_version_script=yes
+ ld_version_script_option='--version-script'
+elif test x$gcc_cv_ld != x; then
+ case "$target" in
+ # Solaris 2 ld always supports -M. It also supports a subset of
+ # --version-script since Solaris 11.4, but requires
+ # -z gnu-version-script-compat to activate.
+ *-*-solaris2*)
+ gcc_cv_ld_version_script=yes
+ ld_version_script_option='-M'
+ ;;
+ esac
+fi
+# Don't AC_DEFINE result, only used in jit/Make-lang.in so far.
+AC_MSG_RESULT($gcc_cv_ld_version_script)
+AC_SUBST(ld_version_script_option)
+
+AC_MSG_CHECKING(linker soname option)
+gcc_cv_ld_soname=no
+if test $in_tree_ld = yes || test x"$gnu_ld" = xyes; then
+ gcc_cv_ld_soname=yes
+ ld_soname_option='-soname'
+elif test x$gcc_cv_ld != x; then
+ case "$target" in
+ *-*-darwin*)
+ gcc_cv_ld_soname=yes
+ ld_soname_option='-install_name'
+ ;;
+ esac
+fi
+# Don't AC_DEFINE result, only used in jit/Make-lang.in so far.
+AC_MSG_RESULT($gcc_cv_ld_soname)
+AC_SUBST(ld_soname_option)
+
if test x"$demangler_in_ld" = xyes; then
AC_MSG_CHECKING(linker --demangle support)
gcc_cv_ld_demangle=no