meson: Add missing test dependencies

Currently, running "meson build" followed by "meson test -C build"
will result in many failed tests due to missing dependencies. This
commit adds the missing dependencies to make sure no tests fail.
This commit is contained in:
Daan De Meyer 2022-01-21 14:28:23 +00:00 committed by Yu Watanabe
parent ac16a593cf
commit e93ada9821
5 changed files with 30 additions and 23 deletions

View file

@ -19,7 +19,7 @@ support_url = get_option('support-url')
support_sed = 's~%SUPPORT_URL%~@0@~'.format(support_url) support_sed = 's~%SUPPORT_URL%~@0@~'.format(support_url)
foreach file : in_files foreach file : in_files
custom_target( catalogs += custom_target(
file, file,
input : file + '.in', input : file + '.in',
output: file, output: file,

View file

@ -226,7 +226,8 @@ update_dbus_docs = custom_target(
if conf.get('BUILD_MODE_DEVELOPER') == 1 if conf.get('BUILD_MODE_DEVELOPER') == 1
test('dbus-docs-fresh', test('dbus-docs-fresh',
update_dbus_docs_py, update_dbus_docs_py,
args : ['--build-dir', project_build_root, '--test', dbus_docs]) args : ['--build-dir', project_build_root, '--test', dbus_docs],
depends : dbus_programs)
endif endif
update_man_rules = custom_target( update_man_rules = custom_target(

View file

@ -1765,6 +1765,7 @@ conf.set10('SYSTEMD_SLOW_TESTS_DEFAULT', slow_tests)
tests = [] tests = []
fuzzers = [] fuzzers = []
catalogs = []
############################################################ ############################################################
@ -2072,7 +2073,8 @@ foreach tuple : [['myhostname', 'ENABLE_NSS_MYHOSTNAME'],
test('dlopen-nss_' + module, test('dlopen-nss_' + module,
test_dlopen, test_dlopen,
# path to dlopen must include a slash # path to dlopen must include a slash
args : nss.full_path()) args : nss.full_path(),
depends : nss)
endif endif
endif endif
endforeach endforeach
@ -2186,7 +2188,8 @@ if want_tests != 'false'
test('test-fstab-generator', test('test-fstab-generator',
test_fstab_generator_sh, test_fstab_generator_sh,
# https://github.com/mesonbuild/meson/issues/2681 # https://github.com/mesonbuild/meson/issues/2681
args : exe.full_path()) args : exe.full_path(),
depends : exe)
endif endif
if conf.get('ENABLE_ENVIRONMENT_D') == 1 if conf.get('ENABLE_ENVIRONMENT_D') == 1
@ -2337,7 +2340,8 @@ if conf.get('ENABLE_LOGIND') == 1
test('dlopen-pam_systemd', test('dlopen-pam_systemd',
test_dlopen, test_dlopen,
# path to dlopen must include a slash # path to dlopen must include a slash
args : pam_systemd.full_path()) args : pam_systemd.full_path(),
depends : pam_systemd)
endif endif
endif endif
@ -2676,7 +2680,7 @@ if conf.get('HAVE_LIBCRYPTSETUP') == 1
endif endif
if conf.get('HAVE_SYSV_COMPAT') == 1 if conf.get('HAVE_SYSV_COMPAT') == 1
executable( exe = executable(
'systemd-sysv-generator', 'systemd-sysv-generator',
'src/sysv-generator/sysv-generator.c', 'src/sysv-generator/sysv-generator.c',
include_directories : includes, include_directories : includes,
@ -2685,6 +2689,13 @@ if conf.get('HAVE_SYSV_COMPAT') == 1
install : true, install : true,
install_dir : systemgeneratordir) install_dir : systemgeneratordir)
sysv_generator_test_py = find_program('test/sysv-generator-test.py')
if want_tests != 'false'
test('sysv-generator-test',
sysv_generator_test_py,
depends : exe)
endif
executable( executable(
'systemd-rc-local-generator', 'systemd-rc-local-generator',
'src/rc-local-generator/rc-local-generator.c', 'src/rc-local-generator/rc-local-generator.c',
@ -3568,7 +3579,8 @@ if want_tests != 'false'
test('test-network-generator-conversion', test('test-network-generator-conversion',
test_network_generator_conversion_sh, test_network_generator_conversion_sh,
# https://github.com/mesonbuild/meson/issues/2681 # https://github.com/mesonbuild/meson/issues/2681
args : exe.full_path()) args : exe.full_path(),
depends : exe)
endif endif
executable( executable(
@ -3582,13 +3594,14 @@ executable(
############################################################ ############################################################
custom_target( runtest_env = custom_target(
'systemd-runtest.env', 'systemd-runtest.env',
output : 'systemd-runtest.env', output : 'systemd-runtest.env',
command : [sh, '-c', command : [sh, '-c',
'{ echo SYSTEMD_TEST_DATA=@0@; echo SYSTEMD_CATALOG_DIR=@1@; } >@OUTPUT@'.format( '{ echo SYSTEMD_TEST_DATA=@0@; echo SYSTEMD_CATALOG_DIR=@1@; } >@OUTPUT@'.format(
project_source_root / 'test', project_source_root / 'test',
project_build_root / 'catalog')], project_build_root / 'catalog')],
depends : catalogs,
build_by_default : true) build_by_default : true)
test_cflags = ['-DTEST_CODE=1'] test_cflags = ['-DTEST_CODE=1']
@ -3631,7 +3644,8 @@ foreach tuple : tests
build_by_default : want_tests != 'false', build_by_default : want_tests != 'false',
install_rpath : rootlibexecdir, install_rpath : rootlibexecdir,
install : install_tests, install : install_tests,
install_dir : testsdir / type) install_dir : testsdir / type,
link_depends : runtest_env)
if type == 'manual' if type == 'manual'
message('@0@ is a manual test'.format(name)) message('@0@ is a manual test'.format(name))
@ -3824,7 +3838,8 @@ foreach exec : public_programs
if want_tests != 'false' if want_tests != 'false'
test('check-help-' + name, test('check-help-' + name,
check_help, check_help,
args : exec.full_path()) args : exec.full_path(),
depends: exec)
endif endif
endforeach endforeach

View file

@ -152,7 +152,7 @@ foreach prog : udev_progs
install : true, install : true,
install_dir : udevlibexecdir) install_dir : udevlibexecdir)
udev_prog_paths += {name : exe.full_path()} udev_prog_paths += {name : exe}
endforeach endforeach
if install_sysconfdir_samples if install_sysconfdir_samples

View file

@ -116,16 +116,6 @@ endif
############################################################ ############################################################
if conf.get('HAVE_SYSV_COMPAT') == 1
sysv_generator_test_py = find_program('sysv-generator-test.py')
if want_tests != 'false'
test('sysv-generator-test',
sysv_generator_test_py)
endif
endif
############################################################
if install_tests if install_tests
install_data('run-unit-tests.py', install_data('run-unit-tests.py',
install_mode : 'rwxr-xr-x', install_mode : 'rwxr-xr-x',
@ -184,9 +174,10 @@ if want_tests != 'false' and dmi_arches.contains(host_machine.cpu_family())
test(name, test(name,
udev_dmi_memory_id_test, udev_dmi_memory_id_test,
args : [udev_prog_paths['dmi_memory_id'], args : [udev_prog_paths['dmi_memory_id'].full_path(),
source, source,
source + '.txt']) source + '.txt'],
depends : udev_prog_paths['dmi_memory_id'])
endforeach endforeach
endif endif