[do not use POSIX.1e access control lists]),
[with_posix_acls=no])
if test "x$with_posix_acls" != "xno"; then
- AC_CHECK_HEADERS(sys/acl.h,, [with_posix_acl=no])
- AC_SEARCH_LIBS([acl_get_file], [acl pacl],, [with_posix_acl=no])
- AC_SEARCH_LIBS([acl_get_fd], [acl pacl],, [with_posix_acl=no])
- AC_SEARCH_LIBS([acl_set_file], [acl pacl],, [with_posix_acl=no])
- AC_SEARCH_LIBS([acl_set_fd], [acl pacl],, [with_posix_acl=no])
- AC_SEARCH_LIBS([acl_to_text], [acl pacl],, [with_posix_acl=no])
- AC_SEARCH_LIBS([acl_from_text], [acl pacl],, [with_posix_acl=no])
+ AC_CHECK_HEADERS(sys/acl.h,, [with_posix_acls=no])
+ for tar_acl_func in acl_get_file acl_get_fd acl_set_file acl_set_fd \
+ acl_to_text acl_from_text; do \
+ test "x$with_posix_acls" = xno && break
+ AC_SEARCH_LIBS([$tar_acl_func], [acl pacl], [], [with_posix_acls=no])
+ done
if test "x$with_posix_acls" != xno; then
AC_DEFINE(HAVE_POSIX_ACLS,,[Define when we have working POSIX acls])
fi
# paxutils modules
tar_PAXUTILS
+# gl_GCC_VERSION_IFELSE([major], [minor], [run-if-found], [run-if-not-found])
+# ------------------------------------------------
+# If $CPP is gcc-MAJOR.MINOR or newer, then run RUN-IF-FOUND.
+# Otherwise, run RUN-IF-NOT-FOUND.
+AC_DEFUN([gl_GCC_VERSION_IFELSE],
+ [AC_PREPROC_IFELSE(
+ [AC_LANG_PROGRAM(
+ [[
+#if ($1) < __GNUC__ || (($1) == __GNUC__ && ($2) <= __GNUC_MINOR__)
+/* ok */
+#else
+# error "your version of gcc is older than $1.$2"
+#endif
+ ]]),
+ ], [$3], [$4])
+ ]
+)
+
AC_ARG_ENABLE([gcc-warnings],
[AS_HELP_STRING([--enable-gcc-warnings],
[turn on many GCC warnings (for developers; best with GNU make)])],
*) AC_MSG_ERROR([bad value $enableval for gcc-warnings option]) ;;
esac
gl_gcc_warnings=$enableval],
- [if test -d "$srcdir"/.git; then
- gl_gcc_warnings=yes
- else
- gl_gcc_warnings=no
+ [gl_gcc_warnings=no
+ if test -d "$srcdir"/.git; then
+ gl_GCC_VERSION_IFELSE([4], [6], [gl_gcc_warnings=yes])
fi]
)