From: Jordan Williams Date: Tue, 23 Apr 2024 12:43:00 +0000 (-0500) Subject: meson: Add build-enosys option X-Git-Tag: v2.42-start~379^2~1 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=0f2dd62ed106af8291e91364e992bc9eb65cab55;p=thirdparty%2Futil-linux.git meson: Add build-enosys option Add a check to ensure that the linux/audit.h header exists for enosys. Signed-off-by: Jordan Williams --- diff --git a/meson.build b/meson.build index 31bd60a2a..119b35562 100644 --- a/meson.build +++ b/meson.build @@ -3167,19 +3167,22 @@ syscalls_h = custom_target('syscalls.h', cc.cmd_array(), get_option('c_args')], ) -if cc.compiles(fs.read('include/audit-arch.h'), name : 'has AUDIT_ARCH_NATIVE') - exe = executable( - 'enosys', - 'misc-utils/enosys.c', syscalls_h, errnos_h, - include_directories : includes, - link_with : [lib_common], - install_dir : usrbin_exec_dir, - install : true) - if not is_disabler(exe) - exes += exe - manadocs += ['misc-utils/enosys.1.adoc'] - bashcompletions += ['enosys'] - endif +have_linux_audit_h = cc.has_header('linux/audit.h') +have_audit_arch_native = cc.compiles(fs.read('include/audit-arch.h'), name : 'has AUDIT_ARCH_NATIVE') + +opt = get_option('build-enosys').require(have_linux_audit_h and have_audit_arch_native).allowed() +exe = executable( + 'enosys', + 'misc-utils/enosys.c', syscalls_h, errnos_h, + include_directories : includes, + link_with : [lib_common], + install_dir : usrbin_exec_dir, + install : opt, + build_by_default : opt) +if opt and not is_disabler(exe) + exes += exe + manadocs += ['misc-utils/enosys.1.adoc'] + bashcompletions += ['enosys'] endif exe = executable( diff --git a/meson_options.txt b/meson_options.txt index 17f5c59c1..226721ad8 100644 --- a/meson_options.txt +++ b/meson_options.txt @@ -203,6 +203,8 @@ option('build-pipesz', type : 'feature', description : 'build pipesz') option('build-fadvise', type : 'feature', description : 'build fadvise') +option('build-enosys', type : 'feature', + description : 'build enosys') option('build-setterm', type : 'feature', description : 'build setterm') option('build-schedutils', type : 'feature',