summaryrefslogtreecommitdiff
path: root/src/w32.c
diff options
context:
space:
mode:
authorEli Zaretskii <eliz@gnu.org>2017-01-03 17:46:40 +0200
committerEli Zaretskii <eliz@gnu.org>2017-01-03 17:46:40 +0200
commit10444dcf77711bf3360f865fcb0d446a83e1bfb5 (patch)
treec5e6586bbae9bb3fdbfd2a7727f9ec9fc0fe8f4a /src/w32.c
parent134e86b360cab0d0a5cb634b71a4b06ec26c5f1f (diff)
downloademacs-10444dcf77711bf3360f865fcb0d446a83e1bfb5.tar.gz
Generate nt/gnulib.mk from lib/gnulib.mk
This was proposed by Paul Eggert <eggert@cs.ucla.edu>, with the purpose of avoiding manual maintenance of nt/gnulib.mk. * nt/gnulib-modules-to-delete.cfg: New file. * nt/Makefile.in (AM_V_GEN, am__v_GEN_, am__v_GEN_0) (am__v_GEN_1): New variables. (${srcdir}/gnulib.mk): Rules to generate gnulib.mk from lib/gnulib.mk and list of modules in gnulib-modules-to-delete.cfg. * make-dist (nt): Add gnulib-modules-to-delete.cfg to the list of files to link. * configure.ac (GNULIB_MK): Compute the value according to $opsys. * autogen.sh: Create nt/gnulib.mk if it doesn't exist, before running autoreconf. * Makefile.in (gnulib_mk): New variable. ($(srcdir)/nt/gnulib.mk): Rule to produce it. (AUTOMAKE_INPUTS): Use $(gnulib_mk) instead of a literal file name. * .gitignore: Add nt/gnulib.mk. * src/w32.c (acl_errno_valid): Implement it here, as we no longer build the acl-permissions module from Gnulib.
Diffstat (limited to 'src/w32.c')
-rw-r--r--src/w32.c17
1 files changed, 17 insertions, 0 deletions
diff --git a/src/w32.c b/src/w32.c
index 30aced9d9ff..f35ad67d829 100644
--- a/src/w32.c
+++ b/src/w32.c
@@ -6407,6 +6407,23 @@ acl_set_file (const char *fname, acl_type_t type, acl_t acl)
return retval;
}
+/* Return true if errno value ERRNUM indicates that ACLs are well
+ supported on this system. ERRNUM should be an errno value obtained
+ after an ACL-related system call fails. */
+bool
+acl_errno_valid (int errnum)
+{
+ switch (errnum)
+ {
+ case EBUSY:
+ case EINVAL:
+ case ENOTSUP:
+ return false;
+ default:
+ return true;
+ }
+}
+
/* MS-Windows version of careadlinkat (cf. ../lib/careadlinkat.c). We
have a fixed max size for file names, so we don't need the kind of