From 4247c1741bb50b05897e9e08f9575e8cff0e67c7 Mon Sep 17 00:00:00 2001 From: "Todd C. Miller" Date: Tue, 26 Nov 2013 07:15:55 -0700 Subject: [PATCH] Do not add LIBDL to SUDO_LIBS or SUDOERS_LIBS in configure, do it in Makefile.in so we can make it last. Fixes a linking problem on Ubuntu precise. --- configure | 11 ++--------- configure.ac | 11 ++--------- plugins/sudoers/Makefile.in | 4 ++-- src/Makefile.in | 2 +- 4 files changed, 7 insertions(+), 21 deletions(-) diff --git a/configure b/configure index 3f00aac75..e67dfa91a 100755 --- a/configure +++ b/configure @@ -13747,6 +13747,8 @@ else SHLIB_EXT="$_shrext" fi fi +LIBDL="$lt_cv_dlopen_libs" + { $as_echo "$as_me:${as_lineno-$LINENO}: checking path to sudo_noexec.so" >&5 $as_echo_n "checking path to sudo_noexec.so... " >&6; } @@ -21040,15 +21042,6 @@ case "$lt_cv_dlopen" in ;; esac -# -# Add library needed for dynamic loading, if any. -# -LIBDL="$lt_cv_dlopen_libs" -if test X"$LIBDL" != X""; then - SUDO_LIBS="${SUDO_LIBS} $LIBDL" - SUDOERS_LIBS="${SUDOERS_LIBS} $LIBDL" -fi - # On HP-UX, you cannot dlopen() a shared object that uses pthreads unless # the main program is linked against -lpthread. We have no knowledge of # what libraries a plugin may depend on (e.g. HP-UX LDAP which uses pthreads) diff --git a/configure.ac b/configure.ac index 952969a54..2721b98b0 100644 --- a/configure.ac +++ b/configure.ac @@ -1507,6 +1507,8 @@ else SHLIB_EXT="$_shrext" fi fi +LIBDL="$lt_cv_dlopen_libs" + AC_MSG_CHECKING(path to sudo_noexec.so) AC_ARG_WITH(noexec, [AS_HELP_STRING([--with-noexec[=PATH]], [fully qualified pathname of sudo_noexec.so])], [case $with_noexec in @@ -3359,15 +3361,6 @@ case "$lt_cv_dlopen" in ;; esac -# -# Add library needed for dynamic loading, if any. -# -LIBDL="$lt_cv_dlopen_libs" -if test X"$LIBDL" != X""; then - SUDO_LIBS="${SUDO_LIBS} $LIBDL" - SUDOERS_LIBS="${SUDOERS_LIBS} $LIBDL" -fi - # On HP-UX, you cannot dlopen() a shared object that uses pthreads unless # the main program is linked against -lpthread. We have no knowledge of # what libraries a plugin may depend on (e.g. HP-UX LDAP which uses pthreads) diff --git a/plugins/sudoers/Makefile.in b/plugins/sudoers/Makefile.in index 9a2e2df37..6260e3f37 100644 --- a/plugins/sudoers/Makefile.in +++ b/plugins/sudoers/Makefile.in @@ -49,7 +49,7 @@ INSTALL = $(SHELL) $(top_srcdir)/install-sh -c LT_LIBS = $(top_builddir)/common/libcommon.la $(LIBOBJDIR)libreplace.la LIBS = $(LT_LIBS) @LIBINTL@ NET_LIBS = @NET_LIBS@ -SUDOERS_LIBS = @SUDOERS_LIBS@ @AFS_LIBS@ @GETGROUPS_LIB@ $(LIBS) $(NET_LIBS) @ZLIB@ +SUDOERS_LIBS = @SUDOERS_LIBS@ @AFS_LIBS@ @GETGROUPS_LIB@ $(LIBS) $(NET_LIBS) @ZLIB@ @LIBDL@ REPLAY_LIBS = @REPLAY_LIBS@ @ZLIB@ # C preprocessor flags @@ -221,7 +221,7 @@ check_iolog_path: $(CHECK_IOLOG_PATH_OBJS) $(LT_LIBS) check_symbols: $(CHECK_SYMBOLS_OBJS) $(LT_LIBS) if [ X"$(soext)" != X"" ]; then \ - $(LIBTOOL) --mode=link $(CC) -o $@ $(CHECK_SYMBOLS_OBJS) $(LDFLAGS) $(PIE_LDFLAGS) $(SSP_LDFLAGS) $(LIBS) @SUDO_LIBS@; \ + $(LIBTOOL) --mode=link $(CC) -o $@ $(CHECK_SYMBOLS_OBJS) $(LDFLAGS) $(PIE_LDFLAGS) $(SSP_LDFLAGS) $(LIBS) @LIBDL@; \ fi check_wrap: $(CHECK_WRAP_OBJS) $(LT_LIBS) diff --git a/src/Makefile.in b/src/Makefile.in index e2717943b..7c8473814 100644 --- a/src/Makefile.in +++ b/src/Makefile.in @@ -35,7 +35,7 @@ INSTALL = $(SHELL) $(top_srcdir)/install-sh -c # Libraries LT_LIBS = $(top_builddir)/common/libcommon.la $(LIBOBJDIR)libreplace.la -LIBS = @LIBS@ @SUDO_LIBS@ @GETGROUPS_LIB@ @NET_LIBS@ @LIBINTL@ $(LT_LIBS) +LIBS = @LIBS@ @SUDO_LIBS@ @GETGROUPS_LIB@ @NET_LIBS@ @LIBINTL@ $(LT_LIBS) @LIBDL@ # C preprocessor flags CPPFLAGS = -I$(incdir) -I$(top_builddir) -I. -I$(srcdir) -I$(top_srcdir) @CPPFLAGS@ -- 2.50.0