From 79f563779b9b9ba89cc2352d70e3cdf27acff513 Mon Sep 17 00:00:00 2001 From: Brice De Bruyne Date: Mon, 27 Apr 2015 14:57:56 +0200 Subject: [PATCH] fix compilation with latest xattr git The attr package has removed, but acl has not been adapted yet. I took the liberty to cook up this patch that includes instead of in affected c files and I added errno.h plus a define of ENOATTR to c files where needed. I also removed the AC_PACKAGE_NEED_ATTR_XATTR_H definition from package_attrdev.m4, and changed configure to skip this test. Further changes by Andreas: Move the ENOATTR check into libacl.h. --- libacl/__acl_extended_file.c | 3 +-- libacl/acl_delete_def_file.c | 4 ++-- libacl/acl_extended_fd.c | 3 +-- libacl/acl_extended_file.c | 2 +- libacl/acl_extended_file_nofollow.c | 2 +- libacl/acl_get_fd.c | 3 +-- libacl/acl_get_file.c | 3 +-- libacl/acl_set_fd.c | 2 +- libacl/acl_set_file.c | 2 +- libacl/libacl.h | 5 +++++ m4/package_attrdev.m4 | 11 ----------- 12 files changed, 15 insertions(+), 26 deletions(-) diff --git a/libacl/__acl_extended_file.c b/libacl/__acl_extended_file.c index 3e45abd..c81dc8f 100644 --- a/libacl/__acl_extended_file.c +++ b/libacl/__acl_extended_file.c @@ -20,14 +20,13 @@ */ #include -#include +#include #include "libacl.h" #include "byteorder.h" #include "acl_ea.h" #include "__acl_extended_file.h" - int __acl_extended_file(const char *path_p, ssize_t (*fun)(const char *, const char *, diff --git a/libacl/acl_delete_def_file.c b/libacl/acl_delete_def_file.c index fae4460..845940c 100644 --- a/libacl/acl_delete_def_file.c +++ b/libacl/acl_delete_def_file.c @@ -20,11 +20,11 @@ */ #include -#include +#include #include "byteorder.h" #include "acl_ea.h" #include "config.h" - +#include "libacl.h" /* 23.4.8 */ int diff --git a/libacl/acl_extended_fd.c b/libacl/acl_extended_fd.c index f19ad7b..bbf9055 100644 --- a/libacl/acl_extended_fd.c +++ b/libacl/acl_extended_fd.c @@ -20,13 +20,12 @@ */ #include -#include +#include #include "libacl.h" #include "byteorder.h" #include "acl_ea.h" - int acl_extended_fd(int fd) { diff --git a/libacl/acl_extended_file.c b/libacl/acl_extended_file.c index f417784..87f8e6e 100644 --- a/libacl/acl_extended_file.c +++ b/libacl/acl_extended_file.c @@ -20,7 +20,7 @@ */ #include -#include +#include #include "libacl.h" #include "__acl_extended_file.h" diff --git a/libacl/acl_extended_file_nofollow.c b/libacl/acl_extended_file_nofollow.c index c253e4d..a15b076 100644 --- a/libacl/acl_extended_file_nofollow.c +++ b/libacl/acl_extended_file_nofollow.c @@ -20,7 +20,7 @@ */ #include -#include +#include #include "libacl.h" #include "__acl_extended_file.h" diff --git a/libacl/acl_get_fd.c b/libacl/acl_get_fd.c index f2525ef..15e3880 100644 --- a/libacl/acl_get_fd.c +++ b/libacl/acl_get_fd.c @@ -23,7 +23,7 @@ #include #include #include -#include +#include #include #include "libacl.h" #include "__acl_from_xattr.h" @@ -31,7 +31,6 @@ #include "byteorder.h" #include "acl_ea.h" - /* 23.4.15 */ acl_t acl_get_fd(int fd) diff --git a/libacl/acl_get_file.c b/libacl/acl_get_file.c index 110ef2e..d3131bc 100644 --- a/libacl/acl_get_file.c +++ b/libacl/acl_get_file.c @@ -23,7 +23,7 @@ #include #include #include -#include +#include #include #include "libacl.h" #include "__acl_from_xattr.h" @@ -31,7 +31,6 @@ #include "byteorder.h" #include "acl_ea.h" - /* 23.4.16 */ acl_t acl_get_file(const char *path_p, acl_type_t type) diff --git a/libacl/acl_set_fd.c b/libacl/acl_set_fd.c index e6413ad..38dcd4a 100644 --- a/libacl/acl_set_fd.c +++ b/libacl/acl_set_fd.c @@ -20,7 +20,7 @@ */ #include -#include +#include #include "libacl.h" #include "__acl_to_xattr.h" diff --git a/libacl/acl_set_file.c b/libacl/acl_set_file.c index a7e368f..c234b4a 100644 --- a/libacl/acl_set_file.c +++ b/libacl/acl_set_file.c @@ -22,7 +22,7 @@ #include #include #include -#include +#include #include "libacl.h" #include "__acl_to_xattr.h" diff --git a/libacl/libacl.h b/libacl/libacl.h index e79575d..08ba905 100644 --- a/libacl/libacl.h +++ b/libacl/libacl.h @@ -17,8 +17,13 @@ #include #include +#include #include "libobj.h" +#ifndef ENOATTR +# define ENOATTR ENODATA +#endif + typedef unsigned int permset_t; #define ACL_PERM_NONE (0x0000) diff --git a/m4/package_attrdev.m4 b/m4/package_attrdev.m4 index 92c9135..1891bb2 100644 --- a/m4/package_attrdev.m4 +++ b/m4/package_attrdev.m4 @@ -12,17 +12,6 @@ dnl GNU General Public License for more details. dnl dnl You should have received a copy of the GNU General Public License dnl along with this program. If not, see . -AC_DEFUN([AC_PACKAGE_NEED_ATTR_XATTR_H], - [ AC_CHECK_HEADERS([attr/xattr.h]) - if test "$ac_cv_header_attr_xattr_h" != "yes"; then - echo - echo 'FATAL ERROR: attr/xattr.h does not exist.' - echo 'Install the extended attributes (attr) development package.' - echo 'Alternatively, run "make install-dev" from the attr source.' - exit 1 - fi - ]) - AC_DEFUN([AC_PACKAGE_NEED_ATTR_ERROR_H], [ AC_CHECK_HEADERS([attr/error_context.h]) if test "$ac_cv_header_attr_error_context_h" != "yes"; then -- 2.21.0 diff --git a/configure b/configure @@ -12416,26 +12416,6 @@ fi - for ac_header in attr/xattr.h -do : - ac_fn_c_check_header_mongrel "$LINENO" "attr/xattr.h" "ac_cv_header_attr_xattr_h" "$ac_includes_default" -if test "x$ac_cv_header_attr_xattr_h" = xyes; then : - cat >>confdefs.h <<_ACEOF -#define HAVE_ATTR_XATTR_H 1 -_ACEOF - -fi - -done - - if test "$ac_cv_header_attr_xattr_h" != "yes"; then - echo - echo 'FATAL ERROR: attr/xattr.h does not exist.' - echo 'Install the extended attributes (attr) development package.' - echo 'Alternatively, run "make install-dev" from the attr source.' - exit 1 - fi - for ac_header in attr/error_context.h do : ac_fn_c_check_header_mongrel "$LINENO" "attr/error_context.h" "ac_cv_header_attr_error_context_h" "$ac_includes_default"