From 85f19d825e7504676f3a80c78c1d9a7ec35a3b3f Mon Sep 17 00:00:00 2001 From: Michael Biebl Date: Thu, 28 Jul 2011 04:02:32 +0200 Subject: [PATCH] Link against -lcap only where required Don't put -lcap into LIBS as otherwise everything will be linked against it, like libsystemd-daemon, where this is not desired. --- Makefile.am | 6 ++++-- configure.ac | 6 ++++++ 2 files changed, 10 insertions(+), 2 deletions(-) diff --git a/Makefile.am b/Makefile.am index 25ce3f4..15349a1 100644 --- a/Makefile.am +++ b/Makefile.am @@ -545,7 +545,8 @@ libsystemd_basic_la_CFLAGS = \ $(SELINUX_CFLAGS) libsystemd_basic_la_LIBADD = \ - $(SELINUX_LIBS) + $(SELINUX_LIBS) \ + $(CAP_LIBS) libsystemd_core_la_SOURCES = \ src/unit.c \ @@ -614,7 +615,8 @@ libsystemd_core_la_LIBADD = \ $(UDEV_LIBS) \ $(LIBWRAP_LIBS) \ $(PAM_LIBS) \ - $(AUDIT_LIBS) + $(AUDIT_LIBS) \ + $(CAP_LIBS) # This is needed because automake is buggy in how it generates the # rules for C programs, but not Vala programs. We therefore can't diff --git a/configure.ac b/configure.ac index 82ed85c..a551d23 100644 --- a/configure.ac +++ b/configure.ac @@ -111,8 +111,14 @@ LT_INIT AC_SEARCH_LIBS([clock_gettime], [rt], [], [AC_MSG_ERROR([*** POSIX RT library not found])]) AC_SEARCH_LIBS([dlsym], [dl], [], [AC_MSG_ERROR([*** Dynamic linking loader library not found])]) + +save_LIBS="$LIBS" +LIBS= AC_SEARCH_LIBS([cap_init], [cap], [], [AC_MSG_ERROR([*** POSIX caps library not found])]) AC_CHECK_HEADERS([sys/capability.h], [], [AC_MSG_ERROR([*** POSIX caps headers not found])]) +CAP_LIBS="$LIBS" +LIBS="$save_LIBS" +AC_SUBST(CAP_LIBS) # This makes sure pkg.m4 is available. m4_pattern_forbid([^_?PKG_[A-Z_]+$],[*** pkg.m4 missing, please install pkg-config]) -- 2.7.4