]> git.ipfire.org Git - thirdparty/coreutils.git/commitdiff
build: fix libcap configure flag handling
authorMike Frysinger <vapier@gentoo.org>
Thu, 3 Sep 2009 19:31:01 +0000 (15:31 -0400)
committerJim Meyering <meyering@redhat.com>
Fri, 4 Sep 2009 06:48:03 +0000 (08:48 +0200)
* m4/jm-macros.m4 (coreutils_MACROS): The code to handle configure-time
enabling or disabling of libcap support was broken.  It would treat any
libcap configure option as --disable-libcap because it doesn't check
$enableval at all.  This change makes sure we do the sane thing:
  --disable-libcap -> disable and don't run any tests
  --enable-libcap -> run tests and fail if not found
  default -> run tests and warn if not found

m4/jm-macros.m4

index 416a0af259f13af6b5d84bb6362643953fad2af2..f4d43f1dda5c6756d51f9c21c1b524d8a461a9c0 100644 (file)
@@ -105,17 +105,25 @@ AC_DEFUN([coreutils_MACROS],
   LIBS=$coreutils_saved_libs
 
   # Check whether libcap is usable -- for ls --color support
+  LIB_CAP=
   AC_ARG_ENABLE([libcap],
-    AC_HELP_STRING([--disable-libcap], [disable libcap support]),
-    AC_MSG_WARN([libcap support disabled by user]),
-    [AC_CHECK_LIB([cap], [cap_get_file],
+    AC_HELP_STRING([--disable-libcap], [disable libcap support]))
+  if test "X$enable_libcap" != "Xno"; then
+    AC_CHECK_LIB([cap], [cap_get_file],
       [AC_CHECK_HEADER([sys/capability.h],
         [LIB_CAP=-lcap
-         AC_DEFINE([HAVE_CAP], [1], [libcap usability])],
-        [AC_MSG_WARN([header sys/capability.h was not found, support for libcap will not be built])]
-      )],
-      [AC_MSG_WARN([libcap library was not found or not usable, support for libcap will not be built])])
-    ])
+         AC_DEFINE([HAVE_CAP], [1], [libcap usability])]
+      )])
+    if test "X$LIB_CAP" = "X"; then
+      if test "X$enable_libcap" = "Xyes"; then
+        AC_MSG_ERROR([libcap library was not found or not usable])
+      else
+        AC_MSG_WARN([libcap library was not found or not usable, support for libcap will not be built])
+      fi
+    fi
+  else
+    AC_MSG_WARN([libcap support disabled by user])
+  fi
   AC_SUBST([LIB_CAP])
 
   # See if linking `seq' requires -lm.