r2223 - trunk/nfs-utils

ken at linuxfromscratch.org ken at linuxfromscratch.org
Fri Sep 3 12:12:36 PDT 2010


Author: ken
Date: 2010-09-03 13:12:32 -0600 (Fri, 03 Sep 2010)
New Revision: 2223

Added:
   trunk/nfs-utils/nfs-utils-1.2.2-make_libpcap_optional-1.patch
Log:
Let nfs-utils-1.2.2 build without libcap.

Added: trunk/nfs-utils/nfs-utils-1.2.2-make_libpcap_optional-1.patch
===================================================================
--- trunk/nfs-utils/nfs-utils-1.2.2-make_libpcap_optional-1.patch	                        (rev 0)
+++ trunk/nfs-utils/nfs-utils-1.2.2-make_libpcap_optional-1.patch	2010-09-03 19:12:32 UTC (rev 2223)
@@ -0,0 +1,76 @@
+Submitted By: Ken Moffat <ken at linuxfromscratch dot org>
+Date: 2010-09-03
+Initial Package Version: 1.2.2
+Upstream Status: unknown
+Origin: Mike Frysinger at gentoo
+Description: Make libcap (and therefore libattr) optional.
+Comment: use 'sh ./autogen.sh' to recreate configure.  If you have an
+unmodified pkg-config-0.25 with autoconf >= 0.66 you will need to fix
+aclocal/pkg.m4, see the sed in the LFS book.
+
+ aclocal/libcap.m4  |   18 +++++++++++++-----
+ support/nsm/file.c |    4 ++++
+ 2 files changed, 17 insertions(+), 5 deletions(-)
+
+diff --git a/aclocal/libcap.m4 b/aclocal/libcap.m4
+index eabe507..68a624c 100644
+--- a/aclocal/libcap.m4
++++ b/aclocal/libcap.m4
+@@ -5,11 +5,19 @@ AC_DEFUN([AC_LIBCAP], [
+   dnl look for prctl
+   AC_CHECK_FUNC([prctl], , )
+ 
+-  dnl look for the library; do not add to LIBS if found
+-  AC_CHECK_LIB([cap], [cap_get_proc], [LIBCAP=-lcap], ,)
+-  AC_SUBST(LIBCAP)
++  AC_ARG_ENABLE([caps],
++    [AS_HELP_STRING([--disable-caps], [Disable capabilities support])])
++
++  LIBCAP=
++
++  if test "x$enable_caps" != "xno" ; then
++    dnl look for the library; do not add to LIBS if found
++    AC_CHECK_LIB([cap], [cap_get_proc], [LIBCAP=-lcap], ,)
+ 
+-  AC_CHECK_HEADERS([sys/capability.h], ,
+-                   [AC_MSG_ERROR([libcap headers not found.])])
++    AC_CHECK_HEADERS([sys/capability.h], ,
++      [test "x$enable_caps" = "xyes" && AC_MSG_ERROR([libcap headers not found.])])
++  fi
++
++  AC_SUBST(LIBCAP)
+ 
+ ])dnl
+diff --git a/support/nsm/file.c b/support/nsm/file.c
+index d469219..f4baeb9 100644
+--- a/support/nsm/file.c
++++ b/support/nsm/file.c
+@@ -67,7 +67,9 @@
+ #endif
+ 
+ #include <sys/types.h>
++#ifdef HAVE_SYS_CAPABILITY_H
+ #include <sys/capability.h>
++#endif
+ #include <sys/prctl.h>
+ #include <sys/stat.h>
+ 
+@@ -347,6 +349,7 @@ nsm_is_default_parentdir(void)
+ static _Bool
+ nsm_clear_capabilities(void)
+ {
++#ifdef HAVE_SYS_CAPABILITY_H
+ 	cap_t caps;
+ 
+ 	caps = cap_from_text("cap_net_bind_service=ep");
+@@ -362,6 +365,7 @@ nsm_clear_capabilities(void)
+ 	}
+ 
+ 	(void)cap_free(caps);
++#endif
+ 	return true;
+ }
+ 
+-- 
+1.7.0.2
+




More information about the patches mailing list