mirror of
https://gitlab.com/libvirt/libvirt.git
synced 2024-10-29 17:33:09 +00:00
4c69d64efa
An update to meson 0.61.1 meant that it started showing warnings due to the fact that the default for run_command's 'check' parameter is going to change. It unveiled the fact that we were even missing that parameter in some calls where we expected different outcome. To make sure the behaviour does not change specify the parameter explicitly. In places where we check for the return code the parameter should be 'false' so that meson does not fail. In all other cases the parameter should be set to 'true' to make sure possible failure also stops meson. The warning in meson was added in https://github.com/mesonbuild/meson/pull/9304 Signed-off-by: Martin Kletzander <mkletzan@redhat.com> Reviewed-by: Tim Wiederhake <twiederh@redhat.com>
70 lines
1.8 KiB
Meson
70 lines
1.8 KiB
Meson
syntax_check_conf = configuration_data()
|
|
syntax_check_conf.set('top_srcdir', meson.source_root())
|
|
syntax_check_conf.set('top_builddir', meson.build_root())
|
|
|
|
flake8_path = ''
|
|
if flake8_prog.found()
|
|
flake8_path = flake8_prog.path()
|
|
endif
|
|
syntax_check_conf.set('flake8_path', flake8_path)
|
|
syntax_check_conf.set('runutf8', ' '.join(runutf8))
|
|
syntax_check_conf.set('PYTHON3', python3_prog.path())
|
|
|
|
if host_machine.system() == 'freebsd' or host_machine.system() == 'darwin'
|
|
make_prog = find_program('gmake')
|
|
sed_prog = find_program('gsed')
|
|
else
|
|
make_prog = find_program('make')
|
|
sed_prog = find_program('sed')
|
|
endif
|
|
|
|
if host_machine.system() == 'freebsd'
|
|
grep_prog = find_program('grep')
|
|
grep_cmd = run_command(grep_prog, '--version', check: true)
|
|
if grep_cmd.stdout().startswith('grep (BSD grep')
|
|
grep_prog = find_program('/usr/local/bin/grep', required: false)
|
|
if not grep_prog.found()
|
|
error('GNU grep not found')
|
|
endif
|
|
endif
|
|
elif host_machine.system() == 'darwin'
|
|
grep_prog = find_program('ggrep')
|
|
else
|
|
grep_prog = find_program('grep')
|
|
endif
|
|
|
|
syntax_check_conf.set('GREP', grep_prog.path())
|
|
syntax_check_conf.set('SED', sed_prog.path())
|
|
|
|
configure_file(
|
|
input: 'Makefile.in',
|
|
output: '@BASENAME@',
|
|
configuration: syntax_check_conf,
|
|
)
|
|
|
|
rc = run_command(
|
|
'sed', '-n',
|
|
's/^\\(sc_[a-zA-Z0-9_-]*\\):.*/\\1/p',
|
|
meson.current_source_dir() / 'syntax-check.mk',
|
|
check: true,
|
|
)
|
|
|
|
sc_tests = rc.stdout().strip().split()
|
|
|
|
|
|
# Skip syntax-check if not building from git because we get the list of files
|
|
# to check using git commands and it fails if we are not in git repository.
|
|
if git
|
|
foreach target : sc_tests
|
|
test(
|
|
target,
|
|
make_prog,
|
|
args: [ '-C', meson.current_build_dir(), target ],
|
|
depends: [
|
|
potfiles_dep,
|
|
],
|
|
suite: 'syntax-check',
|
|
)
|
|
endforeach
|
|
endif
|