changeset 33410:b14a47736a1c v9.0.1963

patch 9.0.1963: Configure script may not detect xattr Commit: https://github.com/vim/vim/commit/6de4e58cf27a3bb6e81653ca63b77e29d1bb46f2 Author: zeertzjq <zeertzjq@outlook.com> Date: Sat Sep 30 14:19:14 2023 +0200 patch 9.0.1963: Configure script may not detect xattr Problem: Configure script may not detect xattr correctly Solution: include sys/xattr instead of attr/xattr, make Test_write_with_xattr_support() test xattr feature correctly This also applies to the Smack security feature, so change the include and configure script for it as well. closes: #13229 Signed-off-by: Christian Brabandt <cb@256bit.org> Co-authored-by: zeertzjq <zeertzjq@outlook.com>
author Christian Brabandt <cb@256bit.org>
date Sat, 30 Sep 2023 14:30:03 +0200
parents c5ef8d2646b7
children ce46db7b64bf
files src/auto/configure src/configure.ac src/os_unix.c src/testdir/test_writefile.vim src/version.c
diffstat 5 files changed, 9 insertions(+), 6 deletions(-) [+]
line wrap: on
line diff
--- a/src/auto/configure
+++ b/src/auto/configure
@@ -5279,7 +5279,7 @@ else
 printf "%s\n" "yes" >&6; }
 fi
 if test "$enable_smack" = "yes"; then
-  ac_fn_c_check_header_compile "$LINENO" "attr/xattr.h" "ac_cv_header_attr_xattr_h" "$ac_includes_default"
+  ac_fn_c_check_header_compile "$LINENO" "sys/xattr.h" "ac_cv_header_attr_xattr_h" "$ac_includes_default"
 if test "x$ac_cv_header_attr_xattr_h" = xyes
 then :
   true
@@ -5434,7 +5434,7 @@ fi
 if test "$enable_xattr" = "yes"; then
   { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
 printf "%s\n" "yes" >&6; }
-  ac_fn_c_check_header_compile "$LINENO" "attr/xattr.h" "ac_cv_header_attr_xattr_h" "$ac_includes_default"
+  ac_fn_c_check_header_compile "$LINENO" "sys/xattr.h" "ac_cv_header_attr_xattr_h" "$ac_includes_default"
 if test "x$ac_cv_header_attr_xattr_h" = xyes
 then :
   printf "%s\n" "#define HAVE_XATTR 1" >>confdefs.h
--- a/src/configure.ac
+++ b/src/configure.ac
@@ -480,7 +480,7 @@ else
   AC_MSG_RESULT(yes)
 fi
 if test "$enable_smack" = "yes"; then
-  AC_CHECK_HEADER([attr/xattr.h], true, enable_smack="no")
+  AC_CHECK_HEADER([sys/xattr.h], true, enable_smack="no")
 fi
 if test "$enable_smack" = "yes"; then
   AC_MSG_CHECKING(for XATTR_NAME_SMACKEXEC in linux/xattr.h)
@@ -520,7 +520,7 @@ AC_ARG_ENABLE(xattr,
 	, enable_xattr="yes")
 if test "$enable_xattr" = "yes"; then
   AC_MSG_RESULT(yes)
-  AC_CHECK_HEADER([attr/xattr.h], [AC_DEFINE(HAVE_XATTR)])
+  AC_CHECK_HEADER([sys/xattr.h], [AC_DEFINE(HAVE_XATTR)])
 else
   AC_MSG_RESULT(no)
 fi
--- a/src/os_unix.c
+++ b/src/os_unix.c
@@ -36,12 +36,12 @@ static int selinux_enabled = -1;
 #endif
 
 #ifdef FEAT_XATTR
-# include <attr/xattr.h>
+# include <sys/xattr.h>
 # define XATTR_VAL_LEN 1024
 #endif
 
 #ifdef HAVE_SMACK
-# include <attr/xattr.h>
+# include <sys/xattr.h>
 # include <linux/xattr.h>
 # ifndef SMACK_LABEL_LEN
 #  define SMACK_LABEL_LEN 1024
--- a/src/testdir/test_writefile.vim
+++ b/src/testdir/test_writefile.vim
@@ -979,6 +979,7 @@ endfunc
 
 func Test_write_with_xattr_support()
   CheckLinux
+  CheckFeature xattr
   CheckExecutable setfattr
 
   let contents = ["file with xattrs", "line two"]
--- a/src/version.c
+++ b/src/version.c
@@ -705,6 +705,8 @@ static char *(features[]) =
 static int included_patches[] =
 {   /* Add new patch number below this line */
 /**/
+    1963,
+/**/
     1962,
 /**/
     1961,