matthew patton
2018-Oct-18 10:28 UTC
Cygwin build fails because headers no longer default to Solaris ACL
Unfortunately I don't know how to write AC macros to properly solve this problem but Cygwin does not (any longer) include cygwin/acl.h from sys/acls.h which is required for Solaris ACL data structures to work. So the CASE statement improperly short-circuits the logic. I have confirmed that Rsync builds using POSIX ACLs but haven't tested said functionality. diff --git a/configure.ac b/configure.ac index 45a96637..4f68e98a 100644 --- a/configure.ac +++ b/configure.ac @@ -979,7 +979,7 @@ else AC_DEFINE(HAVE_UNIXWARE_ACLS, 1, [true if you have UnixWare ACLs]) AC_DEFINE(SUPPORT_ACLS, 1, [Define to 1 to add support for ACLs]) ;; - solaris*|*cygwin*) + solaris*) AC_MSG_RESULT(Using solaris ACLs) AC_DEFINE(HAVE_SOLARIS_ACLS, 1, [true if you have solaris ACLs]) AC_DEFINE(SUPPORT_ACLS, 1) Configure detects the following after the above mod: $ grep -i acl config.status S["LIBS"]="-lacl " D["HAVE_SYS_ACL_H"]=" 1" D["HAVE_ACL_LIBACL_H"]=" 1" D["HAVE_ACLSORT"]=" 1" D["HAVE_LIBACL"]=" 1" D["HAVE_POSIX_ACLS"]=" 1" D["SUPPORT_ACLS"]=" 1"