From 17e77da99f103191da3e1e7d0b43838a04c5ac3b Mon Sep 17 00:00:00 2001 From: Jeff Layton Date: Fri, 23 Dec 2011 14:41:11 -0500 Subject: [PATCH] autoconf: don't let libnfsidmap test add -lnfsidmap to $LIBS ...as that makes that library get linked into every binary. Also, replace "hardcoded" -lnfsidmap linker flag in Makefiles with a AC_SUBST variable. This fixes a regression introduced in commit d7c64dd. Signed-off-by: Jeff Layton --- aclocal/libnfsidmap.m4 | 9 ++++++--- utils/gssd/Makefile.am | 2 +- utils/idmapd/Makefile.am | 2 +- utils/nfsidmap/Makefile.am | 2 +- 4 files changed, 9 insertions(+), 6 deletions(-) diff --git a/aclocal/libnfsidmap.m4 b/aclocal/libnfsidmap.m4 index 484b1ec..ae697e8 100644 --- a/aclocal/libnfsidmap.m4 +++ b/aclocal/libnfsidmap.m4 @@ -3,7 +3,7 @@ dnl AC_DEFUN([AC_LIBNFSIDMAP], [ dnl Check for libnfsidmap, but do not add -lnfsidmap to LIBS - AC_CHECK_LIB([nfsidmap], [nfs4_init_name_mapping], [libnfsidmap=1], + AC_CHECK_LIB([nfsidmap], [nfs4_init_name_mapping], [LIBNFSIDMAP=-lnfsidmap], [AC_MSG_ERROR([libnfsidmap not found.])]) AC_CHECK_HEADERS([nfsidmap.h], , @@ -14,7 +14,10 @@ AC_DEFUN([AC_LIBNFSIDMAP], [ [AC_DEFINE([HAVE_NFS4_SET_DEBUG], 1, [Define to 1 if you have the `nfs4_set_debug' function.])]) - dnl only enable nfsidmap when libnfsidmap supports it - AC_CHECK_LIB([nfsidmap], [nfs4_owner_to_uid]) + dnl nfs4_owner_to_uid() doesn't appear in all versions of libnfsidmap + dnl We just need this test to set $ac_cv_lib_nfsidmap_nfs4_owner_to_uid + AC_CHECK_LIB([nfsidmap], [nfs4_owner_to_uid], [:]) + + AC_SUBST(LIBNFSIDMAP) ])dnl diff --git a/utils/gssd/Makefile.am b/utils/gssd/Makefile.am index d7888ad..9136189 100644 --- a/utils/gssd/Makefile.am +++ b/utils/gssd/Makefile.am @@ -58,7 +58,7 @@ svcgssd_SOURCES = \ svcgssd_LDADD = \ ../../support/nfs/libnfs.a \ - $(RPCSECGSS_LIBS) $(GSSGLUE_LIBS) -lnfsidmap \ + $(RPCSECGSS_LIBS) $(GSSGLUE_LIBS) $(LIBNFSIDMAP) \ $(KRBLIBS) svcgssd_LDFLAGS = $(KRBLDFLAGS) diff --git a/utils/idmapd/Makefile.am b/utils/idmapd/Makefile.am index f8578b0..58b33ec 100644 --- a/utils/idmapd/Makefile.am +++ b/utils/idmapd/Makefile.am @@ -16,7 +16,7 @@ idmapd_SOURCES = \ nfs_idmap.h \ queue.h -idmapd_LDADD = $(LIBEVENT) -lnfsidmap ../../support/nfs/libnfs.a +idmapd_LDADD = $(LIBEVENT) $(LIBNFSIDMAP) ../../support/nfs/libnfs.a MAINTAINERCLEANFILES = Makefile.in diff --git a/utils/nfsidmap/Makefile.am b/utils/nfsidmap/Makefile.am index 037aa79..c0675c4 100644 --- a/utils/nfsidmap/Makefile.am +++ b/utils/nfsidmap/Makefile.am @@ -4,6 +4,6 @@ man8_MANS = nfsidmap.man sbin_PROGRAMS = nfsidmap nfsidmap_SOURCES = nfsidmap.c -nfsidmap_LDADD = -lnfsidmap -lkeyutils ../../support/nfs/libnfs.a +nfsidmap_LDADD = $(LIBNFSIDMAP) -lkeyutils ../../support/nfs/libnfs.a MAINTAINERCLEANFILES = Makefile.in -- 2.39.5