endif
foreach test : simple_tests
- tests += [ [[test]] ]
+ tests += { 'sources' : [test] }
endforeach
-foreach tuple : tests
- sources = tuple[0]
- link_with = tuple.length() > 1 and tuple[1].length() > 0 ? tuple[1] : [libshared]
- dependencies = tuple.length() > 2 ? tuple[2] : []
- incs = tuple.length() > 3 and tuple[3].length() > 0 ? tuple[3] : includes
- condition = tuple.length() > 4 ? tuple[4] : ''
- type = tuple.length() > 5 ? tuple[5] : ''
- defs = tuple.length() > 6 ? tuple[6] : []
- defs += test_cflags
- parallel = tuple.length() > 7 ? tuple[7] : true
- timeout = 30
+foreach test : tests
+ sources = test.get('sources')
+ condition = test.get('condition', '')
+ type = test.get('type', '')
+ base = test.get('base', {})
# FIXME: Use fs.stem() with meson >= 0.54.0
name = '@0@'.format(sources[0]).split('/')[-1].split('.')[0]
- if type.startswith('timeout=')
- timeout = type.split('=')[1].to_int()
- type = ''
- endif
suite = fs.name(fs.parent('@0@'.format(sources[0])))
# FIXME: Use str.replace() with meson >= 0.58.0
suite = suite.split('sd-')[-1]
- if condition == '' or conf.get(condition) == 1
- exe = executable(
- name,
- sources,
- include_directories : incs,
- link_with : link_with,
- dependencies : [versiondep,
- dependencies],
- c_args : defs,
- build_by_default : want_tests != 'false',
- install_rpath : rootpkglibdir,
- install : install_tests,
- install_dir : testsdir / type,
- link_depends : runtest_env)
-
- if type == 'manual'
- message('@0@ is a manual test'.format(name))
- elif type == 'unsafe' and want_tests != 'unsafe'
- message('@0@ is an unsafe test'.format(name))
- elif want_tests != 'false'
- test(name, exe,
- env : test_env,
- timeout : timeout,
- suite : suite,
- is_parallel : parallel)
- endif
- else
+ if condition != '' and conf.get(condition) == 0
message('Not compiling @0@ because @1@ is not true'.format(name, condition))
+ continue
+ endif
+
+ exe = executable(
+ name,
+ sources,
+ include_directories : [base.get('includes', []), test.get('includes', includes)],
+ link_with : [base.get('link_with', []), test.get('link_with', libshared)],
+ dependencies : [versiondep, base.get('dependencies', []), test.get('dependencies', [])],
+ c_args : [test_cflags, test.get('c_args', [])],
+ build_by_default : want_tests != 'false',
+ install_rpath : rootpkglibdir,
+ install : install_tests,
+ install_dir : testsdir / type,
+ link_depends : runtest_env)
+
+ if type == 'manual'
+ message('@0@ is a manual test'.format(name))
+ elif type == 'unsafe' and want_tests != 'unsafe'
+ message('@0@ is an unsafe test'.format(name))
+ elif want_tests != 'false'
+ test(name, exe,
+ env : test_env,
+ timeout : test.get('timeout', 30),
+ suite : suite,
+ is_parallel : test.get('parallel', true))
endif
endforeach
)
tests += [
- [files('test-verify.c',
- 'analyze-verify-util.c',
- 'analyze-verify-util.h'),
- [libcore,
- libshared],
- [],
- core_includes],
+ {
+ 'sources' : files(
+ 'test-verify.c',
+ 'analyze-verify-util.c',
+ ),
+ 'base' : test_core_base,
+ },
]
endif
tests += [
- [files('test-efi-string.c', 'efi-string.c')],
+ {
+ 'sources' : files(
+ 'test-efi-string.c',
+ 'efi-string.c',
+ )
+ },
]
# BCD parser only makes sense on arches that Windows supports.
if efi_arch[1] in ['ia32', 'x86_64', 'arm', 'aarch64']
systemd_boot_sources += files('bcd.c')
tests += [
- [files('test-bcd.c', 'efi-string.c'),
- [],
- [libzstd],
- [],
- 'HAVE_ZSTD'],
+ {
+ 'sources' : files(
+ 'test-bcd.c',
+ 'efi-string.c',
+ ),
+ 'dependencies' : libzstd,
+ 'condition' : 'HAVE_ZSTD',
+ },
]
fuzzers += [
[files('fuzz-bcd.c', 'bcd.c', 'efi-string.c')],
)
tests += [
- [files('test-busctl-introspect.c',
- 'busctl-introspect.c')],
+ {
+ 'sources' : files(
+ 'test-busctl-introspect.c',
+ 'busctl-introspect.c',
+ )
+ },
]
############################################################
+test_core_base = {
+ 'link_with' : [libcore, libshared],
+ 'includes' : core_includes,
+}
+
fuzzers += [
[files('fuzz-unit-file.c'),
[libcore,
endif
tests += [
- [files('test-coredump-vacuum.c',
- 'coredump-vacuum.c'),
- [], [], [], '', 'manual'],
+ {
+ 'sources' : files(
+ 'test-coredump-vacuum.c',
+ 'coredump-vacuum.c',
+ ),
+ 'type' : 'manual',
+ },
]
endif
tests += [
- [files('test-qcow2.c',
- 'qcow2-util.c'),
- [],
- [libz],
- [], 'HAVE_ZLIB', 'manual'],
+ {
+ 'sources' : files(
+ 'test-qcow2.c',
+ 'qcow2-util.c',
+ ),
+ 'dependencies' : libz,
+ 'condition' : 'HAVE_ZLIB',
+ 'type' : 'manual',
+ },
]
############################################################
-tests += [
- [files('test-journal-syslog.c'),
- [libjournal_core,
- libshared],
- [threads,
- libxz,
- liblz4,
- libselinux]],
-
- [files('test-journal-config.c'),
- [libjournal_core,
- libshared],
- [libxz,
- liblz4,
- libselinux]],
-
- [files('test-journal.c'),
- [libjournal_core,
- libshared]],
+test_journal_base = {
+ 'link_with' : [libjournal_core, libshared],
+}
- [files('test-journal-stream.c'),
- [libjournal_core,
- libshared]],
-
- [files('test-journal-flush.c'),
- [libjournal_core,
- libshared]],
-
- [files('test-journal-verify.c'),
- [libjournal_core,
- libshared]],
-
- [files('test-journal-interleaving.c'),
- [libjournal_core,
- libshared]],
+tests += [
+ {
+ 'sources' : files('test-journal-config.c'),
+ 'dependencies' : [
+ liblz4,
+ libselinux,
+ libxz,
+ ],
+ 'base' : test_journal_base,
+ },
+ {
+ 'sources' : files('test-journal-flush.c'),
+ 'base' : test_journal_base,
+ },
+ {
+ 'sources' : files('test-journal-interleaving.c'),
+ 'base' : test_journal_base,
+ },
+ {
+ 'sources' : files('test-journal-stream.c'),
+ 'base' : test_journal_base,
+ },
+ {
+ 'sources' : files('test-journal-syslog.c'),
+ 'dependencies' : [
+ liblz4,
+ libselinux,
+ libxz,
+ threads,
+ ],
+ 'base' : test_journal_base,
+ },
+ {
+ 'sources' : files('test-journal-verify.c'),
+ 'base' : test_journal_base,
+ },
+ {
+ 'sources' : files('test-journal.c'),
+ 'base' : test_journal_base,
+ },
]
fuzzers += [
############################################################
-tests += [
- [files('test-dhcp-option.c'),
- [libshared,
- libsystemd_network]],
-
- [files('test-sd-dhcp-lease.c'),
- [libshared,
- libsystemd_network]],
-
- [files('test-dhcp-client.c'),
- [libshared,
- libsystemd_network]],
-
- [files('test-dhcp-server.c'),
- [libshared,
- libsystemd_network]],
+test_libsystemd_network_base = {
+ 'link_with' : [libshared, libsystemd_network],
+}
- [files('test-ipv4ll.c'),
- [libshared,
- libsystemd_network]],
-
- [files('test-ipv4ll-manual.c'),
- [libshared,
- libsystemd_network],
- [], [], '', 'manual'],
-
- [files('test-acd.c'),
- [libshared,
- libsystemd_network],
- [], [], '', 'manual'],
-
- [files('test-ndisc-rs.c'),
- [libshared,
- libsystemd_network]],
-
- [files('test-ndisc-ra.c'),
- [libshared,
- libsystemd_network]],
-
- [files('test-dhcp6-client.c'),
- [libshared,
- libsystemd_network]],
-
- [files('test-lldp-rx.c'),
- [libshared,
- libsystemd_network]],
+tests += [
+ {
+ 'sources' : files('test-acd.c'),
+ 'base' : test_libsystemd_network_base,
+ 'type' : 'manual',
+ },
+ {
+ 'sources' : files('test-dhcp-client.c'),
+ 'base' : test_libsystemd_network_base,
+ },
+ {
+ 'sources' : files('test-dhcp-option.c'),
+ 'base' : test_libsystemd_network_base,
+ },
+ {
+ 'sources' : files('test-dhcp-server.c'),
+ 'base' : test_libsystemd_network_base,
+ },
+ {
+ 'sources' : files('test-dhcp6-client.c'),
+ 'base' : test_libsystemd_network_base,
+ },
+ {
+ 'sources' : files('test-ipv4ll-manual.c'),
+ 'base' : test_libsystemd_network_base,
+ 'type' : 'manual',
+ },
+ {
+ 'sources' : files('test-ipv4ll.c'),
+ 'base' : test_libsystemd_network_base,
+ },
+ {
+ 'sources' : files('test-lldp-rx.c'),
+ 'base' : test_libsystemd_network_base,
+ },
+ {
+ 'sources' : files('test-ndisc-ra.c'),
+ 'base' : test_libsystemd_network_base,
+ },
+ {
+ 'sources' : files('test-ndisc-rs.c'),
+ 'base' : test_libsystemd_network_base,
+ },
+ {
+ 'sources' : files('test-sd-dhcp-lease.c'),
+ 'base' : test_libsystemd_network_base,
+ },
]
fuzzers += [
)
tests += [
- [files('sd-journal/test-journal-enum.c'),
- [], [], [], '', 'timeout=360'],
+ {
+ 'sources' : files('sd-journal/test-journal-enum.c'),
+ 'timeout' : 360,
+ },
]
############################################################
)
tests += [
- [files('sd-bus/test-bus-address.c'),
- [],
- [threads]],
-
- [files('sd-bus/test-bus-marshal.c'),
- [],
- [threads,
- libglib,
- libgobject,
- libgio,
- libdbus,
- libm]],
-
- [files('sd-bus/test-bus-signature.c'),
- [],
- [threads]],
-
- [files('sd-bus/test-bus-queue-ref-cycle.c'),
- [],
- [threads]],
-
- [files('sd-bus/test-bus-watch-bind.c'),
- [],
- [threads],
- [], '', 'timeout=120'],
-
- [files('sd-bus/test-bus-chat.c'),
- [],
- [threads]],
-
- [files('sd-bus/test-bus-cleanup.c'),
- [],
- [threads,
- libseccomp]],
-
- [files('sd-bus/test-bus-track.c'),
- [],
- [libseccomp]],
-
- [files('sd-bus/test-bus-server.c'),
- [],
- [threads]],
-
- [files('sd-bus/test-bus-objects.c'),
- [],
- [threads]],
-
- [files('sd-bus/test-bus-benchmark.c'),
- [],
- [threads],
- [], '', 'manual'],
-
- [files('sd-resolve/test-resolve.c'),
- [],
- [threads],
- [], '', 'timeout=120'],
+ {
+ 'sources' : files('sd-bus/test-bus-address.c'),
+ 'dependencies' : threads
+ },
+ {
+ 'sources' : files('sd-bus/test-bus-benchmark.c'),
+ 'dependencies' : threads,
+ 'type' : 'manual',
+ },
+ {
+ 'sources' : files('sd-bus/test-bus-chat.c'),
+ 'dependencies' : threads,
+ },
+ {
+ 'sources' : files('sd-bus/test-bus-cleanup.c'),
+ 'dependencies' : [threads, libseccomp],
+ },
+ {
+ 'sources' : files('sd-bus/test-bus-marshal.c'),
+ 'dependencies' : [
+ libdbus,
+ libgio,
+ libglib,
+ libgobject,
+ libm,
+ threads,
+ ],
+ },
+ {
+ 'sources' : files('sd-bus/test-bus-objects.c'),
+ 'dependencies' : threads,
+ },
+ {
+ 'sources' : files('sd-bus/test-bus-queue-ref-cycle.c'),
+ 'dependencies' : threads,
+ },
+ {
+ 'sources' : files('sd-bus/test-bus-server.c'),
+ 'dependencies' : threads,
+ },
+ {
+ 'sources' : files('sd-bus/test-bus-signature.c'),
+ 'dependencies' : threads,
+ },
+ {
+ 'sources' : files('sd-bus/test-bus-track.c'),
+ 'dependencies' : libseccomp,
+ },
+ {
+ 'sources' : files('sd-bus/test-bus-watch-bind.c'),
+ 'dependencies' : threads,
+ 'timeout' : 120,
+ },
+ {
+ 'sources' : files('sd-resolve/test-resolve.c'),
+ 'dependencies' : threads,
+ 'timeout' : 120,
+ },
]
if cxx_cmd != ''
############################################################
tests += [
- [files('test-libudev.c'),
- [libshared,
- libudev_basic]],
+ {
+ 'sources' : files('test-libudev.c'),
+ 'link_with' : [
+ libshared,
+ libudev_basic,
+ ],
+ },
]
endif
tests += [
- [files('test-localed-util.c',
- 'localed-util.c')],
+ {
+ 'sources' : files(
+ 'test-localed-util.c',
+ 'localed-util.c',
+ ),
+ },
]
)
tests += [
- [files('test-inhibit.c'),
- [], [], [], '', 'manual'],
-
- [files('test-login-tables.c'),
- [liblogind_core,
- libshared],
- [threads]],
-
- [files('test-session-properties.c'),
- [], [], [], '', 'manual'],
+ {
+ 'sources' : files('test-inhibit.c'),
+ 'type' : 'manual',
+ },
+ {
+ 'sources' : files('test-login-tables.c'),
+ 'link_with' : [
+ liblogind_core,
+ libshared,
+ ],
+ 'dependencies' : threads,
+ },
+ {
+ 'sources' : files('test-session-properties.c'),
+ 'type' : 'manual',
+ },
]
endif
tests += [
- [files('test-machine-tables.c'),
- [libmachine_core,
- libshared],
- [threads]],
+ {
+ 'sources' : files('test-machine-tables.c'),
+ 'link_with': [
+ libmachine_core,
+ libshared
+ ],
+ 'dependencies': threads,
+ },
]
network_includes],
]
-tests += [
- [files('test-networkd-address.c'),
- [libnetworkd_core,
- libsystemd_network],
- [libatomic],
- network_includes],
-
- [files('test-networkd-conf.c'),
- [libnetworkd_core,
- libsystemd_network],
- [libatomic],
- network_includes],
-
- [files('test-networkd-util.c'),
- [libnetworkd_core,
- libsystemd_network],
- [],
- network_includes],
+test_network_base = {
+ 'link_with' : [libnetworkd_core, libsystemd_network],
+ 'includes' : network_includes,
+}
- [files('test-network.c'),
- [libnetworkd_core,
- libsystemd_network],
- [threads],
- network_includes],
-
- [files('test-network-tables.c'),
- [libnetworkd_core,
- libsystemd_network],
- [threads],
- network_includes],
-
- [files('generator/test-network-generator.c',
- 'generator/network-generator.c')],
+tests += [
+ {
+ 'sources' : files(
+ 'generator/network-generator.c',
+ 'generator/test-network-generator.c'
+ )
+ },
+ {
+ 'sources' : files('test-network-tables.c'),
+ 'dependencies' : threads,
+ 'base' : test_network_base,
+ },
+ {
+ 'sources' : files('test-network.c'),
+ 'dependencies' : threads,
+ 'base' : test_network_base,
+ },
+ {
+ 'sources' : files('test-networkd-address.c'),
+ 'dependencies' : libatomic,
+ 'base' : test_network_base,
+ },
+ {
+ 'sources' : files('test-networkd-conf.c'),
+ 'dependencies' : libatomic,
+ 'base' : test_network_base,
+ },
+ {
+ 'sources' : files('test-networkd-util.c'),
+ 'base' : test_network_base,
+ },
]
############################################################
tests += [
- [files('test-nspawn-tables.c'),
- [libnspawn_core,
- libshared],
- [libseccomp]],
-
- [files('test-nspawn-util.c'),
- [libnspawn_core,
- libshared],
- [libseccomp]],
-
- [files('test-patch-uid.c'),
- [libnspawn_core,
- libshared],
- [libacl],
- [], '', 'manual'],
+ {
+ 'sources' : files('test-nspawn-tables.c'),
+ 'link_with' : [
+ libnspawn_core,
+ libshared,
+ ],
+ 'dependencies' : libseccomp,
+ },
+ {
+ 'sources' : files('test-nspawn-util.c'),
+ 'link_with' : [
+ libnspawn_core,
+ libshared,
+ ],
+ 'dependencies' : libseccomp,
+ },
+ {
+ 'sources' : files('test-patch-uid.c'),
+ 'link_with' : [
+ libnspawn_core,
+ libshared,
+ ],
+ 'dependencies' : libacl,
+ 'type' : 'manual',
+ },
]
fuzzers += [
endif
tests += [
- [files('test-oomd-util.c',
- 'oomd-util.c'),
- [],
- [libatomic]]
+ {
+ 'sources' : files(
+ 'test-oomd-util.c',
+ 'oomd-util.c',
+ ),
+ 'dependencies' : libatomic,
+ },
]
############################################################
-tests += [
- [files('test-resolve-tables.c'),
- [libsystemd_resolve_core,
- libshared],
- [lib_openssl_or_gcrypt,
- libm]],
-
- [files('test-dns-packet.c'),
- [libsystemd_resolve_core,
- libshared],
- [lib_openssl_or_gcrypt,
- libm]],
-
- [files('test-resolved-etc-hosts.c',
- 'resolved-etc-hosts.c'),
- [libsystemd_resolve_core,
- libshared],
- [lib_openssl_or_gcrypt,
- libm]],
+test_resolve_base = {
+ 'link_with' : [libsystemd_resolve_core, libshared],
+ 'dependencies' : [lib_openssl_or_gcrypt, libm],
+}
- [files('test-resolved-packet.c'),
- [libsystemd_resolve_core,
- libshared],
- [lib_openssl_or_gcrypt,
- libm]],
-
- [files('test-resolved-stream.c')
- + basic_dns_sources + systemd_resolved_sources,
- [libshared],
- [lib_openssl_or_gcrypt,
- libm]
- + systemd_resolved_dependencies,
- resolve_includes],
-
- [files('test-dnssec.c'),
- [libsystemd_resolve_core,
- libshared],
- [lib_openssl_or_gcrypt,
- libm],
- [], 'HAVE_OPENSSL_OR_GCRYPT'],
-
- [files('test-dnssec-complex.c'),
- [libsystemd_resolve_core,
- libshared],
- [lib_openssl_or_gcrypt,
- libm],
- [], '', 'manual'],
+tests += [
+ {
+ 'sources' : files('test-resolve-tables.c'),
+ 'base' : test_resolve_base,
+ },
+ {
+ 'sources' : files('test-dns-packet.c'),
+ 'base' : test_resolve_base,
+ },
+ {
+ 'sources' : files(
+ 'test-resolved-etc-hosts.c',
+ 'resolved-etc-hosts.c',
+ ),
+ 'base' : test_resolve_base,
+ },
+ {
+ 'sources' : files('test-resolved-packet.c'),
+ 'base' : test_resolve_base,
+ },
+ {
+ 'sources' : files('test-dnssec.c'),
+ 'base' : test_resolve_base,
+ 'condition' : 'HAVE_OPENSSL_OR_GCRYPT',
+ },
+ {
+ 'sources' : files('test-dnssec-complex.c'),
+ 'base' : test_resolve_base,
+ 'type' : 'manual',
+ },
+ {
+ 'sources' : [
+ files('test-resolved-stream.c'),
+ basic_dns_sources,
+ systemd_resolved_sources,
+ ],
+ 'dependencies' : [
+ lib_openssl_or_gcrypt,
+ libm,
+ systemd_resolved_dependencies,
+ ],
+ 'includes' : resolve_includes,
+ },
]
fuzzers += [
)
tests += [
- [files('test-umount.c',
- 'umount.c'),
- [],
- [libmount]],
+ {
+ 'sources' : files(
+ 'test-umount.c',
+ 'umount.c',
+ ),
+ 'dependencies' : libmount,
+ },
]
############################################################
-tests += [
- [files('test-engine.c'),
- [libcore,
- libshared],
- [threads,
- librt,
- libseccomp,
- libselinux,
- libmount,
- libblkid],
- core_includes],
-
- [files('test-manager.c'),
- [libcore,
- libshared],
- [],
- core_includes],
-
- [files('test-emergency-action.c'),
- [libcore,
- libshared],
- [],
- core_includes],
-
- [files('test-chown-rec.c'),
- [libcore,
- libshared],
- [],
- core_includes],
-
- [files('test-dlopen-so.c'),
- [],
- libp11kit_cflags],
-
- [files('test-job-type.c'),
- [libcore,
- libshared],
- [threads,
- librt,
- libseccomp,
- libselinux,
- libmount,
- libblkid],
- core_includes],
-
- [files('test-ns.c'),
- [libcore,
- libshared],
- [threads,
- librt,
- libseccomp,
- libselinux,
- libmount,
- libblkid],
- core_includes, '', 'manual'],
-
- [files('test-loopback.c'),
- [libcore,
- libshared],
- [threads,
- librt,
- libseccomp,
- libselinux,
- libmount,
- libblkid],
- core_includes],
-
- [files('test-boot-timestamps.c'),
- [], [], [], 'ENABLE_EFI'],
-
- [files('test-unit-name.c'),
- [libcore,
- libshared],
- [threads,
- librt,
- libseccomp,
- libselinux,
- libmount,
- libblkid],
- core_includes],
-
- [files('test-load-fragment.c'),
- [libcore,
- libshared],
- [threads,
- librt,
- libseccomp,
- libselinux,
- libmount,
- libblkid],
- core_includes],
-
- [files('test-unit-serialize.c'),
- [libcore,
- libshared],
- [threads,
- librt,
- libseccomp,
- libselinux,
- libmount,
- libblkid],
- core_includes],
-
- [files('test-capability.c'),
- [],
- [libcap]],
-
- [files('test-async.c'),
- [], [], [], '', 'timeout=120'],
-
- [files('test-compress.c'),
- [libshared,
- libbasic_compress]],
-
- [files('test-compress-benchmark.c'),
- [libshared,
- libbasic_compress],
- [],
- [], '', 'timeout=90'],
-
- [files('test-random-util.c'),
- [],
- [libm],
- [], '', 'timeout=120'],
-
- [files('test-math-util.c'),
- [],
- [libm]],
-
- [files('test-json.c'),
- [],
- [libm]],
-
- [files('test-libmount.c'),
- [],
- [threads,
- libmount]],
-
- [files('test-fd-util.c'),
- [],
- [libseccomp]],
-
- [files('test-libcrypt-util.c'),
- [], [libcrypt], [], '', 'timeout=120'],
-
- [files('test-parse-util.c'),
- [],
- [libm]],
-
- [files('test-process-util.c'),
- [],
- [threads]],
-
- [files('test-cap-list.c') +
- generated_gperf_headers,
- [],
- [libcap]],
-
- [files('test-namespace.c'),
- [libcore,
- libshared],
- [threads,
- libblkid],
- core_includes],
-
- [files('test-acl-util.c'),
- [], [], [], 'HAVE_ACL'],
-
- [files('test-seccomp.c'),
- [],
- [libseccomp],
- [], 'HAVE_SECCOMP'],
-
- [files('test-ask-password-api.c'),
- [], [], [], '', 'manual'],
-
- [files('test-loop-block.c'),
- [libcore,
- libshared],
- [threads,
- libblkid],
- core_includes, '', '', [], false],
-
- [files('test-sizeof.c'),
- [libbasic]],
-
- [files('test-bpf-devices.c'),
- [libcore,
- libshared],
- [libmount,
- threads,
- librt,
- libseccomp,
- libselinux,
- libblkid],
- core_includes],
-
- [files('test-bpf-firewall.c'),
- [libcore,
- libshared],
- [libmount,
- threads,
- librt,
- libseccomp,
- libselinux,
- libblkid],
- core_includes],
-
- [files('test-bpf-foreign-programs.c'),
- [libcore,
- libshared],
- [],
- core_includes],
-
- [files('test-bpf-lsm.c'),
- [libcore,
- libshared],
- [libmount,
- threads,
- librt,
- libseccomp,
- libselinux,
- libblkid],
- core_includes],
-
- [files('test-watch-pid.c'),
- [libcore,
- libshared],
- [libmount,
- threads,
- librt,
- libseccomp,
- libselinux,
- libblkid],
- core_includes],
-
- [files('test-hashmap.c',
- 'test-hashmap-plain.c') +
- [test_hashmap_ordered_c],
- [], [], [], '', 'timeout=180'],
-
- [files('test-set-disable-mempool.c'),
- [],
- [threads]],
-
- [files('test-tables.c'),
- [libcore,
- libjournal_core,
- libudevd_core,
- libshared],
- [threads,
- libseccomp,
- libmount,
- libxz,
- liblz4,
- libblkid,
- libselinux],
- [core_includes, journal_includes, udev_includes]],
-
- [files('test-ipcrm.c'),
- [], [], [], '', 'unsafe'],
-
- [files('test-btrfs.c'),
- [], [], [], '', 'manual'],
-
- [files('test-netlink-manual.c'),
- [],
- [libkmod],
- [], 'HAVE_KMOD', 'manual'],
-
- [files('test-sbat.c'),
- [], [], [], 'HAVE_GNU_EFI', '',
- ['-I@0@'.format(efi_config_h_dir)]],
-
- [files('test-cgroup-cpu.c'),
- [libcore,
- libshared],
- [],
- core_includes],
-
- [files('test-cgroup-unit-default.c'),
- [libcore,
- libshared],
- [],
- core_includes],
-
- [files('test-cgroup-mask.c'),
- [libcore,
- libshared],
- [threads,
- librt,
- libseccomp,
- libselinux,
- libmount,
- libblkid],
- core_includes],
-
- [files('test-varlink.c'),
- [],
- [threads]],
-
- [files('test-chase-symlinks.c'),
- [], [], [], '', 'manual'],
-
- [files('test-path.c'),
- [libcore,
- libshared],
- [threads,
- librt,
- libseccomp,
- libselinux,
- libmount,
- libblkid],
- core_includes, '', 'timeout=120'],
-
- [files('test-execute.c'),
- [libcore,
- libshared],
- [threads,
- librt,
- libseccomp,
- libselinux,
- libmount,
- libblkid],
- core_includes, '', 'timeout=360'],
-
- [files('test-install.c'),
- [libcore,
- libshared],
- [],
- core_includes, '', 'manual'],
-
- [files('test-watchdog.c'),
- [], [], [], '', 'unsafe'],
-
- [files('test-sched-prio.c'),
- [libcore,
- libshared],
- [threads,
- librt,
- libseccomp,
- libselinux,
- libmount,
- libblkid],
- core_includes],
-
- [files('test-af-list.c') +
- generated_gperf_headers],
-
- [files('test-arphrd-util.c') +
- generated_gperf_headers],
-
- [files('test-errno-list.c') +
- generated_gperf_headers],
-
- [files('test-ip-protocol-list.c') +
- shared_generated_gperf_headers],
-
- [files('test-utmp.c'),
- [], [], [], 'ENABLE_UTMP'],
-
- [files('test-udev.c'),
- [libudevd_core,
- libshared],
- [threads,
- librt,
- libblkid,
- libkmod,
- libacl,
- libselinux],
- udev_includes, '', 'manual'],
-
- [files('test-cryptolib.c'),
- [libshared],
- [lib_openssl_or_gcrypt],
- [], 'HAVE_OPENSSL_OR_GCRYPT'],
-
- [files('test-nss-hosts.c',
- 'nss-test-util.c'),
- [],
- [libdl],
- [], 'ENABLE_NSS', 'timeout=120'],
-
- [files('test-nss-users.c',
- 'nss-test-util.c'),
- [],
- [libdl],
- [], 'ENABLE_NSS'],
-
- [files('test-qrcode-util.c'),
- [],
- [libdl]],
+common_test_dependencies = [
+ libblkid,
+ libmount,
+ librt,
+ libseccomp,
+ libselinux,
+ threads,
+]
- [files('test-nscd-flush.c'),
- [], [], [], 'ENABLE_NSCD', 'manual'],
+tests += [
+ {
+ 'sources' : files('test-acl-util.c'),
+ 'condition' : 'HAVE_ACL',
+ },
+ {
+ 'sources' : [
+ files('test-af-list.c'),
+ generated_gperf_headers,
+ ],
+ },
+ {
+ 'sources' : [
+ files('test-arphrd-util.c'),
+ generated_gperf_headers,
+ ],
+ },
+ {
+ 'sources' : files('test-ask-password-api.c'),
+ 'type' : 'manual',
+ },
+ {
+ 'sources' : files('test-async.c'),
+ 'timeout' : 120,
+ },
+ {
+ 'sources' : files('test-boot-timestamps.c'),
+ 'condition' : 'ENABLE_EFI',
+ },
+ {
+ 'sources' : files('test-bpf-devices.c'),
+ 'dependencies' : common_test_dependencies,
+ 'base' : test_core_base,
+ },
+ {
+ 'sources' : files('test-bpf-firewall.c'),
+ 'dependencies' : common_test_dependencies,
+ 'base' : test_core_base,
+ },
+ {
+ 'sources' : files('test-bpf-foreign-programs.c'),
+ 'base' : test_core_base,
+ },
+ {
+ 'sources' : files('test-bpf-lsm.c'),
+ 'dependencies' : common_test_dependencies,
+ 'base' : test_core_base,
+ },
+ {
+ 'sources' : files('test-btrfs.c'),
+ 'type' : 'manual',
+ },
+ {
+ 'sources' : [
+ files('test-cap-list.c'),
+ generated_gperf_headers,
+ ],
+ 'dependencies' : libcap,
+ },
+ {
+ 'sources' : files('test-capability.c'),
+ 'dependencies' : libcap,
+ },
+ {
+ 'sources' : files('test-cgroup-cpu.c'),
+ 'base' : test_core_base,
+ },
+ {
+ 'sources' : files('test-cgroup-mask.c'),
+ 'dependencies' : common_test_dependencies,
+ 'base' : test_core_base,
+ },
+ {
+ 'sources' : files('test-cgroup-unit-default.c'),
+ 'base' : test_core_base,
+ },
+ {
+ 'sources' : files('test-chase-symlinks.c'),
+ 'type' : 'manual',
+ },
+ {
+ 'sources' : files('test-chown-rec.c'),
+ 'base' : test_core_base,
+ },
+ {
+ 'sources' : files('test-compress-benchmark.c'),
+ 'link_with' : [
+ libbasic_compress,
+ libshared,
+ ],
+ 'timeout' : 90,
+ },
+ {
+ 'sources' : files('test-compress.c'),
+ 'link_with' : [
+ libbasic_compress,
+ libshared,
+ ],
+ },
+ {
+ 'sources' : files('test-cryptolib.c'),
+ 'link_with' : libshared,
+ 'dependencies' : lib_openssl_or_gcrypt,
+ 'condition' : 'HAVE_OPENSSL_OR_GCRYPT',
+ },
+ {
+ 'sources' : files('test-dlopen-so.c'),
+ 'dependencies' : libp11kit_cflags
+ },
+ {
+ 'sources' : files('test-emergency-action.c'),
+ 'base' : test_core_base,
+ },
+ {
+ 'sources' : files('test-engine.c'),
+ 'dependencies' : common_test_dependencies,
+ 'base' : test_core_base,
+ },
+ {
+ 'sources' : [
+ files('test-errno-list.c'),
+ generated_gperf_headers,
+ ],
+ },
+ {
+ 'sources' : files('test-execute.c'),
+ 'dependencies' : common_test_dependencies,
+ 'base' : test_core_base,
+ 'timeout' : 360,
+ },
+ {
+ 'sources' : files('test-fd-util.c'),
+ 'dependencies' : libseccomp,
+ },
+ {
+ 'sources' : [files(
+ 'test-hashmap.c',
+ 'test-hashmap-plain.c'),
+ test_hashmap_ordered_c,
+ ],
+ 'timeout' : 180,
+ },
+ {
+ 'sources' : files('test-install.c'),
+ 'base' : test_core_base,
+ 'type' : 'manual',
+ },
+ {
+ 'sources' : [
+ files('test-ip-protocol-list.c'),
+ shared_generated_gperf_headers,
+ ],
+ },
+ {
+ 'sources' : files('test-ipcrm.c'),
+ 'type' : 'unsafe',
+ },
+ {
+ 'sources' : files('test-job-type.c'),
+ 'dependencies' : common_test_dependencies,
+ 'base' : test_core_base,
+ },
+ {
+ 'sources' : files('test-json.c'),
+ 'dependencies' : libm,
+ },
+ {
+ 'sources' : files('test-libcrypt-util.c'),
+ 'dependencies' : libcrypt,
+ 'timeout' : 120,
+ },
+ {
+ 'sources' : files('test-libmount.c'),
+ 'dependencies' : [
+ libmount,
+ threads,
+ ],
+ },
+ {
+ 'sources' : files('test-load-fragment.c'),
+ 'dependencies' : common_test_dependencies,
+ 'base' : test_core_base,
+ },
+ {
+ 'sources' : files('test-loop-block.c'),
+ 'dependencies' : [threads, libblkid],
+ 'base' : test_core_base,
+ 'parallel' : false,
+ },
+ {
+ 'sources' : files('test-loopback.c'),
+ 'dependencies' : common_test_dependencies,
+ },
+ {
+ 'sources' : files('test-manager.c'),
+ 'base' : test_core_base,
+ },
+ {
+ 'sources' : files('test-math-util.c'),
+ 'dependencies' : libm,
+ },
+ {
+ 'sources' : files('test-namespace.c'),
+ 'dependencies' : [
+ libblkid,
+ threads,
+ ],
+ 'base' : test_core_base,
+ },
+ {
+ 'sources' : files('test-netlink-manual.c'),
+ 'dependencies' : libkmod,
+ 'condition' : 'HAVE_KMOD',
+ 'type' : 'manual',
+ },
+ {
+ 'sources' : files('test-ns.c'),
+ 'dependencies' : common_test_dependencies,
+ 'base' : test_core_base,
+ 'type' : 'manual',
+ },
+ {
+ 'sources' : files('test-nscd-flush.c'),
+ 'condition' : 'ENABLE_NSCD',
+ 'type' : 'manual',
+ },
+ {
+ 'sources' : files(
+ 'test-nss-hosts.c',
+ 'nss-test-util.c',
+ ),
+ 'dependencies' : libdl,
+ 'condition' : 'ENABLE_NSS',
+ 'timeout' : 120,
+ },
+ {
+ 'sources' : files(
+ 'test-nss-users.c',
+ 'nss-test-util.c',
+ ),
+ 'dependencies' : libdl,
+ 'condition' : 'ENABLE_NSS',
+ },
+ {
+ 'sources' : files('test-parse-util.c'),
+ 'dependencies' : libm,
+ },
+ {
+ 'sources' : files('test-path.c'),
+ 'dependencies' : common_test_dependencies,
+ 'base' : test_core_base,
+ 'timeout' : 120,
+ },
+ {
+ 'sources' : files('test-process-util.c'),
+ 'dependencies' : threads,
+ },
+ {
+ 'sources' : files('test-qrcode-util.c'),
+ 'dependencies' : libdl,
+ },
+ {
+ 'sources' : files('test-random-util.c'),
+ 'dependencies' : libm,
+ 'timeout' : 120,
+ },
+ {
+ 'sources' : files('test-sbat.c'),
+ 'condition' : 'HAVE_GNU_EFI',
+ 'c_args' : '-I@0@'.format(efi_config_h_dir),
+ },
+ {
+ 'sources' : files('test-sched-prio.c'),
+ 'dependencies' : common_test_dependencies,
+ 'base' : test_core_base,
+ },
+ {
+ 'sources' : files('test-seccomp.c'),
+ 'dependencies' : libseccomp,
+ 'condition' : 'HAVE_SECCOMP',
+ },
+ {
+ 'sources' : files('test-set-disable-mempool.c'),
+ 'dependencies' : threads,
+ },
+ {
+ 'sources' : files('test-sizeof.c'),
+ 'link_with' : libbasic,
+ },
+ {
+ 'sources' : files('test-tables.c'),
+ 'link_with' : [
+ libcore,
+ libjournal_core,
+ libshared,
+ libudevd_core,
+ ],
+ 'dependencies' : [
+ libblkid,
+ liblz4,
+ libmount,
+ libseccomp,
+ libselinux,
+ libxz,
+ threads,
+ ],
+ 'includes' : [
+ core_includes,
+ journal_includes,
+ udev_includes,
+ ],
+ },
+ {
+ 'sources' : files('test-udev.c'),
+ 'link_with' : [
+ libshared,
+ libudevd_core,
+ ],
+ 'dependencies' : [
+ libacl,
+ libblkid,
+ libkmod,
+ librt,
+ libselinux,
+ threads,
+ ],
+ 'includes' : udev_includes,
+ 'type' : 'manual',
+ },
+ {
+ 'sources' : files('test-unit-name.c'),
+ 'dependencies' : common_test_dependencies,
+ 'base' : test_core_base,
+ },
+ {
+ 'sources' : files('test-unit-serialize.c'),
+ 'dependencies' : common_test_dependencies,
+ 'base' : test_core_base,
+ },
+ {
+ 'sources' : files('test-utmp.c'),
+ 'condition' : 'ENABLE_UTMP',
+ },
+ {
+ 'sources' : files('test-varlink.c'),
+ 'dependencies' : threads,
+ },
+ {
+ 'sources' : files('test-watch-pid.c'),
+ 'dependencies' : common_test_dependencies,
+ 'base' : test_core_base,
+ },
+ {
+ 'sources' : files('test-watchdog.c'),
+ 'type' : 'unsafe',
+ },
]
############################################################
# define some tests here, because the link_with deps were not defined earlier
tests += [
- [files('../libsystemd/sd-bus/test-bus-error.c'),
- [libshared_static,
- libsystemd_static]],
-
- [files('../libsystemd/sd-device/test-sd-device-thread.c'),
- [libsystemd],
- [threads]],
-
- [files('../libudev/test-udev-device-thread.c'),
- [libudev],
- [threads]],
-]
-
-tests += [
- [files('test-socket-bind.c'),
- [libcore,
- libshared],
- [libdl],
- core_includes,
- 'BPF_FRAMEWORK'],
+ {
+ 'sources' : files('../libsystemd/sd-bus/test-bus-error.c'),
+ 'link_with' : [
+ libshared_static,
+ libsystemd_static,
+ ],
+ },
+ {
+ 'sources' : files('../libsystemd/sd-device/test-sd-device-thread.c'),
+ 'link_with' : libsystemd,
+ 'dependencies' : threads,
+ },
+ {
+ 'sources' : files('../libudev/test-udev-device-thread.c'),
+ 'link_with' : libudev,
+ 'dependencies' : threads,
+ },
+ {
+ 'sources' : files('test-socket-bind.c'),
+ 'dependencies' : libdl,
+ 'condition' : 'BPF_FRAMEWORK',
+ 'base' : test_core_base,
+ },
]
############################################################
tests += [
- [files('test-timesync.c'),
- [libtimesyncd_core,
- libshared],
- [libm]],
+ {
+ 'sources' : files('test-timesync.c'),
+ 'link_with' : [
+ libshared,
+ libtimesyncd_core,
+ ],
+ 'dependencies' : libm,
+ },
]
)
tests += [
- [files('test-offline-passwd.c',
- 'offline-passwd.c')],
+ {
+ 'sources' : files(
+ 'test-offline-passwd.c',
+ 'offline-passwd.c',
+ ),
+ },
]
'fido_id/fido_id_desc.c')],
]
-tests += [
- [files('test-udev-event.c'),
- [libudevd_core,
- libshared],
- [threads,
- libacl]],
+test_libudev_base = {
+ 'link_with' : [libudevd_core, libshared],
+ 'dependencies' : [threads, libacl],
+}
- [files('test-udev-node.c'),
- [libudevd_core,
- libshared],
- [threads,
- libacl]],
-
- [files('test-udev-builtin.c'),
- [libudevd_core,
- libshared],
- [threads,
- libacl]],
-
- [files('fido_id/test-fido-id-desc.c',
- 'fido_id/fido_id_desc.c')],
+tests += [
+ {
+ 'sources' : files(
+ 'fido_id/test-fido-id-desc.c',
+ 'fido_id/fido_id_desc.c',
+ ),
+ },
+ {
+ 'sources' : files('test-udev-builtin.c'),
+ 'base' : test_libudev_base,
+ },
+ {
+ 'sources' : files('test-udev-event.c'),
+ 'base' : test_libudev_base,
+ },
+ {
+ 'sources' : files('test-udev-node.c'),
+ 'base' : test_libudev_base,
+ },
]
)
tests += [
- [files('test-xdg-autostart.c',
- 'xdg-autostart-service.c')],
+ {
+ 'sources' : files(
+ 'test-xdg-autostart.c',
+ 'xdg-autostart-service.c',
+ ),
+ },
]
fuzzers += [