meson: Rewrite libacl check

libacl is Linux-only, so we don't need to explicitly check for
either the target platform or header availability, and we can
simply rely on cc.find_library() instead. The corresponding
preprocessor define is renamed to more accurately reflect the
nature of the check.

Signed-off-by: Andrea Bolognani <abologna@redhat.com>
Reviewed-by: Pavel Hrdina <phrdina@redhat.com>
This commit is contained in:
Andrea Bolognani 2021-05-26 18:42:40 +02:00
parent b6b7897ce8
commit f5298b8589
3 changed files with 8 additions and 10 deletions

View File

@ -844,11 +844,9 @@ endforeach
# generic build dependencies
if host_machine.system() == 'linux' and cc.has_header('sys/acl.h')
acl_dep = cc.find_library('acl', required: false)
conf.set('WITH_SYS_ACL_H', 1)
else
acl_dep = dependency('', required: false)
acl_dep = cc.find_library('acl', required: false)
if acl_dep.found()
conf.set('WITH_LIBACL', 1)
endif
apparmor_dep = dependency('libapparmor', required: get_option('apparmor'))

View File

@ -852,7 +852,7 @@ qemuDomainNamespaceAvailable(qemuDomainNamespace ns G_GNUC_UNUSED)
switch (ns) {
case QEMU_DOMAIN_NS_MOUNT:
# if !defined(WITH_SYS_ACL_H) || !defined(WITH_SELINUX)
# if !defined(WITH_LIBACL) || !defined(WITH_SELINUX)
/* We can't create the exact copy of paths if either of
* these is not available. */
return false;

View File

@ -56,7 +56,7 @@
#if WITH_SYS_SYSCALL_H
# include <sys/syscall.h>
#endif
#if WITH_SYS_ACL_H
#if WITH_LIBACL
# include <sys/acl.h>
#endif
#include <sys/file.h>
@ -3752,7 +3752,7 @@ virFileMoveMount(const char *src G_GNUC_UNUSED,
#endif /* !defined(__linux__) || !defined(WITH_SYS_MOUNT_H) */
#if defined(WITH_SYS_ACL_H)
#if defined(WITH_LIBACL)
int
virFileGetACLs(const char *file,
void **acl)
@ -3782,7 +3782,7 @@ virFileFreeACLs(void **acl)
*acl = NULL;
}
#else /* !defined(WITH_SYS_ACL_H) */
#else /* !defined(WITH_LIBACL) */
int
virFileGetACLs(const char *file G_GNUC_UNUSED,
@ -3808,7 +3808,7 @@ virFileFreeACLs(void **acl)
*acl = NULL;
}
#endif /* !defined(WITH_SYS_ACL_H) */
#endif /* !defined(WITH_LIBACL) */
int
virFileCopyACLs(const char *src,