From c6bfd2290968151bb1ea14127aacee416b687cbb Mon Sep 17 00:00:00 2001 From: Simon Josefsson Date: Fri, 7 Nov 2008 12:21:10 +0100 Subject: [PATCH] Test for -Wl,--version-script properly. --- NEWS | 3 +++ configure.in | 35 ++++++++++++++++------------------- 2 files changed, 19 insertions(+), 19 deletions(-) diff --git a/NEWS b/NEWS index e9d7a9d..0b85a0b 100644 --- a/NEWS +++ b/NEWS @@ -13,6 +13,9 @@ Version 1.6 (unreleased) - Assumes system has strdup and string.h. - Remove libtasn1-config and libtasn1.m4, use standard AC_CHECK_FUNCS autoconf tests or pkg-config instead. +- Change detection of when to use a linker version script, + use --enable-ld-version-script or --disable-ld-version-script to + override auto-detection logic. - API and ABI changes since last version: asn1_get_length_ber: New function. struct node_asn_struct: Removed, was never documented nor meant for export. diff --git a/configure.in b/configure.in index e78cdc0..5483b33 100644 --- a/configure.in +++ b/configure.in @@ -83,28 +83,21 @@ AC_MSG_RESULT($opt_valgrind_tests) AC_CHECK_SIZEOF(unsigned long int, 4) AC_CHECK_SIZEOF(unsigned int, 4) -# For some systems we know that we have ld_version scripts. -# Use it then as default. -have_ld_version_script=no -case "${host}" in - *-*-linux*) - have_ld_version_script=yes - ;; - *-*-gnu*) - have_ld_version_script=yes - ;; -esac AC_ARG_ENABLE([ld-version-script], - AS_HELP_STRING([--enable-ld-version-script],[enable/disable use of linker version script. - (default is system dependent)]), - [have_ld_version_script=$enableval], - [ : ] ) + AS_HELP_STRING([--enable-ld-version-script], + [enable/disable linker version script (default is enabled when possible)]), + [have_ld_version_script=$enableval], []) +if test -z "$have_ld_version_script"; then + AC_MSG_CHECKING([if -Wl,--version-script works]) + save_LDFLAGS="$LDFLAGS" + LDFLAGS="$LDFLAGS -Wl,--version-script=$srcdir/lib/libtasn1.vers" + AC_LINK_IFELSE(AC_LANG_PROGRAM([], []), + [have_ld_version_script=yes], [have_ld_version_script=no]) + LDFLAGS="$save_LDFLAGS" + AC_MSG_RESULT($have_ld_version_script) +fi AM_CONDITIONAL(HAVE_LD_VERSION_SCRIPT, test "$have_ld_version_script" = "yes") -# For gnulib compatibility modules in gl/. -AC_MSG_NOTICE([Running gnulib checks]) -gl_INIT - # Check for gtk-doc. GTK_DOC_CHECK(1.2) @@ -125,6 +118,10 @@ AC_ARG_VAR(WARN_CFLAGS, [Flags to enable compiler warnings]) AC_MSG_CHECKING([what compiler warning flags we will use]) AC_MSG_RESULT($WARN_CFLAGS) +# For gnulib compatibility modules in gl/. +AC_MSG_NOTICE([Running gnulib checks]) +gl_INIT + AC_CONFIG_FILES([ \ Makefile \ gl/Makefile \ -- 2.7.4