diff options
author | Björn Jacke <bj@sernet.de> | 2010-07-20 11:13:51 +0200 |
---|---|---|
committer | Björn Jacke <bj@sernet.de> | 2010-07-20 13:46:42 +0200 |
commit | fa4dec31cf3bc37ff86fde722b1fa85d1ab1f0c6 (patch) | |
tree | be43ec8582cbcd173b7f5bd2dd97e12233f5d964 | |
parent | 4581902553b511a5ad4bae3249df9326b4cf95ec (diff) | |
download | samba-fa4dec31cf3bc37ff86fde722b1fa85d1ab1f0c6.tar.gz samba-fa4dec31cf3bc37ff86fde722b1fa85d1ab1f0c6.tar.bz2 samba-fa4dec31cf3bc37ff86fde722b1fa85d1ab1f0c6.zip |
Revert "s3: Don't use as-needed"
This reverts commit b9835a1f9d8b81e4121a01a190dffaefe67cbe5c.
-rw-r--r-- | source3/configure.in | 33 |
1 files changed, 33 insertions, 0 deletions
diff --git a/source3/configure.in b/source3/configure.in index 43119fb246..6157f373a2 100644 --- a/source3/configure.in +++ b/source3/configure.in @@ -1799,6 +1799,39 @@ fi AC_MSG_RESULT($BLDSHARED) +saved_before_as_needed_ldflags="$LDFLAGS" +for flags in "-Wl,--as-needed" "-Wl,-z,ignore" "-z ignore" ; do + saved_ldflags="$LDFLAGS" + AC_MSG_CHECKING([if $flags works]) + LDFLAGS="$flags $saved_ldflags" + AC_TRY_LINK([],[], + [AC_MSG_RESULT([yes]) + LD_AS_NEEDED_FLAG=$flags + ld_as_needed_flag_found=yes], + AC_MSG_RESULT([no])) + LDFLAGS="$LD_AS_NEEDED_FLAG $saved_ldflags" + test x"$ld_as_needed_flag_found" = xyes && break +done + +# check if we have to disable LD_AS_NEEDED_FLAG: +# On some systems for a veriety of reasons linking with +# -Wl,--as-needed -lreadline -lncurses fails +# we have to retest, if these combination is detected before. +# Bugzilla #7209 + +if test x$ac_cv_lib_readline_rl_callback_handler_install = xyes ; then + if test x$ld_as_needed_flag_found = xyes ; then + AC_MSG_CHECKING([if $LD_AS_NEEDED_FLAG works with readline]) + # try if check no fails + save_LIBS=$LIBS + LIBS="$LIBS $TERMLIBS" + AC_TRY_LINK([], [rl_callback_handler_install();], [AC_MSG_RESULT([yes])],[ AC_MSG_RESULT([no]); LDFLAGS="$saved_before_as_needed_ldflags"]) + LIBS="$save_LIBS" + fi +fi + + + # for historical reasons almost all linkers don't complain about unresolved # symbols in shared libs. Except for the internal samba modules we want to get # errors when we produce a shared lib with unresolved symbols. On some |