From 5a35f08026cad007f460170fe6a3e43bd51f60f9 Mon Sep 17 00:00:00 2001 From: Jan Janssen Date: Tue, 11 Jan 2022 10:56:22 +0100 Subject: [PATCH] meson: Add check argument to remaining run_command() calls (cherry picked from commit 68a06b3cdfe35ff08092e139033edb4a5189a439) Related: #2017035 --- man/meson.build | 2 +- src/basic/meson.build | 2 +- src/boot/efi/meson.build | 11 +++++++---- src/test/meson.build | 2 +- test/fuzz/meson.build | 7 ++++--- test/meson.build | 8 +++++--- 6 files changed, 19 insertions(+), 13 deletions(-) diff --git a/man/meson.build b/man/meson.build index a06a601767..710b4ca008 100644 --- a/man/meson.build +++ b/man/meson.build @@ -105,7 +105,7 @@ endforeach ############################################################ -have_lxml = run_command(xml_helper_py).returncode() == 0 +have_lxml = run_command(xml_helper_py, check: false).returncode() == 0 if not have_lxml message('python-lxml not available, not making man page indices') endif diff --git a/src/basic/meson.build b/src/basic/meson.build index 229ac97c69..5a9e13d741 100644 --- a/src/basic/meson.build +++ b/src/basic/meson.build @@ -384,7 +384,7 @@ filesystem_includes = ['linux/magic.h', 'linux/gfs2_ondisk.h'] check_filesystems = find_program('check-filesystems.sh') -r = run_command([check_filesystems, cpp, 'filesystems-gperf.gperf'] + filesystem_includes) +r = run_command([check_filesystems, cpp, 'filesystems-gperf.gperf'] + filesystem_includes, check: false) if r.returncode() != 0 error('found unknown filesystem(s) defined in kernel headers:\n\n' + r.stdout()) r.stdout() diff --git a/src/boot/efi/meson.build b/src/boot/efi/meson.build index 3e948281f2..fad92f09a1 100644 --- a/src/boot/efi/meson.build +++ b/src/boot/efi/meson.build @@ -57,8 +57,11 @@ endif efi_libdir = '' foreach dir : [get_option('efi-libdir'), '/usr/lib/gnuefi' / efi_arch[0], - run_command('realpath', '-e', - '/usr/lib' / run_command(cc.cmd_array(), '-print-multi-os-directory').stdout().strip()).stdout().strip()] + run_command( + 'realpath', '-e', + '/usr/lib' / run_command(cc.cmd_array(), '-print-multi-os-directory', check: false).stdout().strip(), + check: false + ).stdout().strip()] if dir != '' and fs.is_dir(dir) efi_libdir = dir break @@ -125,7 +128,7 @@ elif get_option('sbat-distro') != '' value = get_option(sbatvar[0]) if (value == '' or value == 'auto') and not meson.is_cross_build() cmd = 'if [ -e /etc/os-release ]; then . /etc/os-release; else . /usr/lib/os-release; fi; echo $@0@'.format(sbatvar[1]) - value = run_command(sh, '-c', cmd).stdout().strip() + value = run_command(sh, '-c', cmd, check: true).stdout().strip() endif if value == '' error('Required @0@ option not set and autodetection failed'.format(sbatvar[0])) @@ -254,7 +257,7 @@ if efi_arch[1] == 'arm' efi_ldflags += ['-Wl,--no-warn-mismatch'] endif -if run_command('grep', '-q', '__CTOR_LIST__', efi_lds).returncode() == 0 +if run_command('grep', '-q', '__CTOR_LIST__', efi_lds, check: false).returncode() == 0 # fedora has a patched gnu-efi that adds support for ELF constructors. # If ld is called by gcc something about these symbols breaks, resulting # in sd-boot freezing when gnu-efi runs the constructors. Force defining diff --git a/src/test/meson.build b/src/test/meson.build index 9e224d69ce..75f78e2e1a 100644 --- a/src/test/meson.build +++ b/src/test/meson.build @@ -11,7 +11,7 @@ test_hashmap_ordered_c = custom_target( test_include_dir = include_directories('.') -path = run_command(sh, '-c', 'echo "$PATH"').stdout().strip() +path = run_command(sh, '-c', 'echo "$PATH"', check: true).stdout().strip() test_env = environment() test_env.set('SYSTEMD_LANGUAGE_FALLBACK_MAP', language_fallback_map) test_env.set('PATH', project_build_root + ':' + path) diff --git a/test/fuzz/meson.build b/test/fuzz/meson.build index 30e26b09cf..b4766de3eb 100644 --- a/test/fuzz/meson.build +++ b/test/fuzz/meson.build @@ -13,12 +13,13 @@ sanitize_address_undefined = custom_target( sanitizers = [['address,undefined', sanitize_address_undefined]] -if git.found() +if git.found() and fs.exists(project_source_root / '.git') out = run_command(env, '-u', 'GIT_WORK_TREE', git, '--git-dir=@0@/.git'.format(project_source_root), - 'ls-files', ':/test/fuzz/*/*') + 'ls-files', ':/test/fuzz/*/*', + check: true) else - out = run_command(sh, '-c', 'ls @0@/test/fuzz/*/*'.format(project_source_root)) + out = run_command(sh, '-c', 'ls @0@/test/fuzz/*/*'.format(project_source_root), check: true) endif fuzz_regression_tests = [] diff --git a/test/meson.build b/test/meson.build index 04ae9ebc78..baf94703ea 100644 --- a/test/meson.build +++ b/test/meson.build @@ -182,14 +182,16 @@ endif if want_tests != 'false' and dmi_arches.contains(host_machine.cpu_family()) udev_dmi_memory_id_test = find_program('udev-dmi-memory-id-test.sh') - if git.found() + if git.found() and fs.exists(project_source_root / '.git') out = run_command( env, '-u', 'GIT_WORK_TREE', git, '--git-dir=@0@/.git'.format(project_source_root), - 'ls-files', ':/test/dmidecode-dumps/*.bin') + 'ls-files', ':/test/dmidecode-dumps/*.bin', + check: true) else out = run_command( - sh, '-c', 'ls @0@/test/dmidecode-dumps/*.bin'.format(project_source_root)) + sh, '-c', 'ls @0@/test/dmidecode-dumps/*.bin'.format(project_source_root), + check: true) endif foreach p : out.stdout().split()