meson: use a feature option for tests instead of boolean
ci/woodpecker/pr/woodpecker Pipeline was successful
Details
ci/woodpecker/pr/woodpecker Pipeline was successful
Details
This allows tests to be autodetected gracefully, which is particularly convenient for kyua and atf_sh which are fairly painful to build and install by hand. Those who want to ensure tests are enabled or disabled may pass `-Dtests=enabled` or `-Dtests=disabled` respectively. This does require a modest bump in the required meson version to 0.49, which was released at the end of 2018, so roughly 4 years ago.pull/244/head
parent
bddf1641f8
commit
fa803c7ecd
15
meson.build
15
meson.build
|
@ -1,7 +1,7 @@
|
||||||
project('pkgconf', 'c',
|
project('pkgconf', 'c',
|
||||||
version : '1.9.3',
|
version : '1.9.3',
|
||||||
license : 'ISC',
|
license : 'ISC',
|
||||||
meson_version : '>=0.47',
|
meson_version : '>=0.49',
|
||||||
default_options : ['c_std=c99'],
|
default_options : ['c_std=c99'],
|
||||||
)
|
)
|
||||||
|
|
||||||
|
@ -117,13 +117,12 @@ pkgconf_exe = executable('pkgconf',
|
||||||
c_args: build_static,
|
c_args: build_static,
|
||||||
install : true)
|
install : true)
|
||||||
|
|
||||||
if get_option('tests')
|
with_tests = get_option('tests')
|
||||||
kyua_exe = find_program('kyua')
|
kyua_exe = find_program('kyua', required : with_tests, disabler : true)
|
||||||
atf_sh_exe = find_program('atf-sh')
|
atf_sh_exe = find_program('atf-sh', required : with_tests, disabler : true)
|
||||||
kyuafile = configure_file(input : 'Kyuafile.in', output : 'Kyuafile', configuration : cdata)
|
kyuafile = configure_file(input : 'Kyuafile.in', output : 'Kyuafile', configuration : cdata)
|
||||||
test('kyua', kyua_exe, args : ['--config=none', 'test', '--kyuafile', kyuafile, '--build-root', meson.current_build_dir()])
|
test('kyua', kyua_exe, args : ['--config=none', 'test', '--kyuafile', kyuafile, '--build-root', meson.current_build_dir()])
|
||||||
subdir('tests')
|
subdir('tests')
|
||||||
endif
|
|
||||||
|
|
||||||
install_man('man/pkgconf.1')
|
install_man('man/pkgconf.1')
|
||||||
install_man('man/pkg.m4.7')
|
install_man('man/pkg.m4.7')
|
||||||
|
|
|
@ -1,3 +1,5 @@
|
||||||
option('tests', type: 'boolean', value: true,
|
option(
|
||||||
description: 'Build tests which depends upon the kyua framework'
|
'tests',
|
||||||
|
type: 'feature',
|
||||||
|
description: 'Build tests which depends upon the kyua framework',
|
||||||
)
|
)
|
Loading…
Reference in New Issue