summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBjörn Jacke <bj@sernet.de>2010-07-20 11:13:51 +0200
committerBjörn Jacke <bj@sernet.de>2010-07-20 13:46:42 +0200
commitfa4dec31cf3bc37ff86fde722b1fa85d1ab1f0c6 (patch)
treebe43ec8582cbcd173b7f5bd2dd97e12233f5d964
parent4581902553b511a5ad4bae3249df9326b4cf95ec (diff)
downloadsamba-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.in33
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