1 # SPDX-License-Identifier: LGPL-2.1+
3 # Copyright 2017 Zbigniew Jędrzejewski-Szmek
5 # systemd is free software; you can redistribute it and/or modify it
6 # under the terms of the GNU Lesser General Public License as published by
7 # the Free Software Foundation; either version 2.1 of the License, or
8 # (at your option) any later version.
10 # systemd is distributed in the hope that it will be useful, but
11 # WITHOUT ANY WARRANTY; without even the implied warranty of
12 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
13 # Lesser General Public License for more details.
15 # You should have received a copy of the GNU Lesser General Public License
16 # along with systemd; If not, see <http://www.gnu.org/licenses/>.
18 awkscript = 'test-hashmap-ordered.awk'
19 test_hashmap_ordered_c = custom_target(
20 'test-hashmap-ordered.c',
21 input : [awkscript, 'test-hashmap-plain.c'],
22 output : 'test-hashmap-ordered.c',
23 command : [awk, '-f', '@INPUT0@', '@INPUT1@'],
26 test_include_dir = include_directories('.')
28 path = run_command('sh', ['-c', 'echo "$PATH"']).stdout()
29 test_env = environment()
30 test_env.set('SYSTEMD_KBD_MODEL_MAP', kbd_model_map)
31 test_env.set('SYSTEMD_LANGUAGE_FALLBACK_MAP', language_fallback_map)
32 test_env.set('PATH', path)
33 test_env.prepend('PATH', meson.build_root())
35 ############################################################
37 generate_sym_test_py = find_program('generate-sym-test.py')
39 test_libsystemd_sym_c = custom_target(
40 'test-libsystemd-sym.c',
41 input : [libsystemd_sym_path] + systemd_headers,
42 output : 'test-libsystemd-sym.c',
43 command : [generate_sym_test_py, libsystemd_sym_path] + systemd_headers,
46 test_libudev_sym_c = custom_target(
48 input : [libudev_sym_path, libudev_h_path],
49 output : 'test-libudev-sym.c',
50 command : [generate_sym_test_py, '@INPUT0@', '@INPUT1@'],
53 test_dlopen_c = files('test-dlopen.c')
55 ############################################################
58 [['src/test/test-device-nodes.c'],
62 [['src/test/test-engine.c',
63 'src/test/test-helper.c'],
74 [['src/test/test-job-type.c'],
84 [['src/test/test-ns.c'],
95 [['src/test/test-loopback.c'],
105 [['src/test/test-hostname.c'],
116 [['src/test/test-dns-domain.c'],
121 [['src/test/test-boot-timestamps.c'],
126 [['src/test/test-unit-name.c',
127 'src/test/test-helper.c'],
137 [['src/test/test-unit-file.c',
138 'src/test/test-helper.c'],
148 [['src/test/test-utf8.c'],
152 [['src/test/test-capability.c'],
156 [['src/test/test-async.c'],
160 [['src/test/test-locale-util.c'],
164 [['src/test/test-copy.c'],
168 [['src/test/test-sigbus.c'],
172 [['src/test/test-condition.c'],
176 [['src/test/test-fdset.c'],
180 [['src/test/test-fstab-util.c'],
184 [['src/test/test-random-util.c'],
188 [['src/test/test-ratelimit.c'],
192 [['src/test/test-util.c'],
196 [['src/test/test-mount-util.c'],
200 [['src/test/test-exec-util.c'],
204 [['src/test/test-hexdecoct.c'],
208 [['src/test/test-alloc-util.c'],
212 [['src/test/test-xattr-util.c'],
216 [['src/test/test-io-util.c'],
220 [['src/test/test-glob-util.c'],
224 [['src/test/test-fs-util.c'],
228 [['src/test/test-proc-cmdline.c'],
232 [['src/test/test-fd-util.c'],
236 [['src/test/test-web-util.c'],
240 [['src/test/test-cpu-set-util.c'],
244 [['src/test/test-stat-util.c'],
248 [['src/test/test-escape.c'],
252 [['src/test/test-string-util.c'],
256 [['src/test/test-extract-word.c'],
260 [['src/test/test-parse-util.c'],
264 [['src/test/test-user-util.c'],
268 [['src/test/test-hostname-util.c'],
272 [['src/test/test-process-util.c'],
276 [['src/test/test-terminal-util.c'],
280 [['src/test/test-path-lookup.c'],
284 [['src/test/test-uid-range.c'],
288 [['src/test/test-cap-list.c',
289 generated_gperf_headers],
293 [['src/test/test-socket-util.c'],
297 [['src/test/test-in-addr-util.c'],
301 [['src/test/test-barrier.c'],
305 [['src/test/test-tmpfiles.c'],
309 [['src/test/test-namespace.c'],
315 [['src/test/test-verbs.c'],
319 [['src/test/test-install-root.c'],
323 [['src/test/test-acl-util.c'],
328 [['src/test/test-seccomp.c'],
333 [['src/test/test-rlimit-util.c'],
337 [['src/test/test-ask-password-api.c'],
342 [['src/test/test-dissect-image.c'],
347 [['src/test/test-signal-util.c'],
351 [['src/test/test-selinux.c'],
355 [['src/test/test-sizeof.c'],
359 [['src/test/test-bpf.c',
360 'src/test/test-helper.c'],
370 [['src/test/test-hashmap.c',
371 'src/test/test-hashmap-plain.c',
372 test_hashmap_ordered_c],
377 [['src/test/test-set.c'],
381 [['src/test/test-bitmap.c'],
385 [['src/test/test-xml.c'],
389 [['src/test/test-list.c'],
393 [['src/test/test-unaligned.c'],
397 [['src/test/test-tables.c',
398 'src/shared/test-tables.h',
399 'src/journal/journald-server.c',
400 'src/journal/journald-server.h'],
413 '', '', [], libudev_core_includes],
415 [['src/test/test-prioq.c'],
419 [['src/test/test-fileio.c'],
423 [['src/test/test-time-util.c'],
427 [['src/test/test-clock.c'],
431 [['src/test/test-architecture.c'],
435 [['src/test/test-log.c'],
439 [['src/test/test-ipcrm.c'],
444 [['src/test/test-btrfs.c'],
450 [['src/test/test-firewall-util.c'],
455 [['src/test/test-netlink-manual.c'],
458 'HAVE_KMOD', 'manual'],
460 [['src/test/test-ellipsize.c'],
464 [['src/test/test-date.c'],
468 [['src/test/test-sleep.c'],
472 [['src/test/test-replace-var.c'],
476 [['src/test/test-calendarspec.c'],
480 [['src/test/test-strip-tab-ansi.c'],
484 [['src/test/test-daemon.c'],
488 [['src/test/test-cgroup.c'],
494 [['src/test/test-cgroup-mask.c',
495 'src/test/test-helper.c'],
505 [['src/test/test-cgroup-util.c'],
509 [['src/test/test-env-util.c'],
513 [['src/test/test-strbuf.c'],
517 [['src/test/test-strv.c'],
521 [['src/test/test-path-util.c'],
525 [['src/test/test-path.c',
526 'src/test/test-helper.c'],
536 [['src/test/test-execute.c',
537 'src/test/test-helper.c'],
547 [['src/test/test-siphash24.c'],
551 [['src/test/test-strxcpyx.c'],
555 [['src/test/test-install.c'],
561 [['src/test/test-watchdog.c'],
565 [['src/test/test-sched-prio.c',
566 'src/test/test-helper.c'],
576 [['src/test/test-conf-files.c'],
580 [['src/test/test-conf-parser.c'],
584 [['src/test/test-af-list.c',
585 generated_gperf_headers],
589 [['src/test/test-arphrd-list.c',
590 generated_gperf_headers],
594 [['src/test/test-journal-importer.c'],
598 [['src/test/test-libudev.c'],
602 [['src/test/test-udev.c'],
614 [['src/test/test-id128.c'],
618 [['src/test/test-hash.c'],
622 [['src/test/test-nss.c'],
628 ############################################################
630 # define some tests here, because the link_with deps were not defined earlier
633 [['src/journal/test-journal.c'],
640 [['src/journal/test-journal-send.c'],
647 [['src/journal/test-journal-syslog.c'],
655 [['src/journal/test-journal-match.c'],
662 [['src/journal/test-journal-enum.c'],
669 [['src/journal/test-journal-stream.c'],
676 [['src/journal/test-journal-flush.c'],
683 [['src/journal/test-journal-init.c'],
690 [['src/journal/test-journal-verify.c'],
697 [['src/journal/test-journal-interleaving.c'],
704 [['src/journal/test-mmap-cache.c'],
711 [['src/journal/test-catalog.c'],
717 '', '', '-DCATALOG_DIR="@0@"'.format(build_catalog_dir)],
719 [['src/journal/test-compress.c'],
725 [['src/journal/test-compress-benchmark.c'],
732 [['src/journal/test-audit-type.c'],
739 ############################################################
742 [['src/libsystemd/sd-bus/test-bus-marshal.c'],
750 [['src/libsystemd/sd-bus/test-bus-signature.c'],
754 [['src/libsystemd/sd-bus/test-bus-chat.c'],
758 [['src/libsystemd/sd-bus/test-bus-cleanup.c'],
763 [['src/libsystemd/sd-bus/test-bus-error.c'],
765 libsystemd_internal],
768 [['src/libsystemd/sd-bus/test-bus-track.c'],
772 [['src/libsystemd/sd-bus/test-bus-server.c'],
776 [['src/libsystemd/sd-bus/test-bus-objects.c'],
780 [['src/libsystemd/sd-bus/test-bus-vtable.c'],
784 [['src/libsystemd/sd-bus/test-bus-gvariant.c'],
790 [['src/libsystemd/sd-bus/test-bus-creds.c'],
794 [['src/libsystemd/sd-bus/test-bus-match.c'],
798 [['src/libsystemd/sd-bus/test-bus-benchmark.c'],
803 [['src/libsystemd/sd-bus/test-bus-introspect.c'],
807 [['src/libsystemd/sd-event/test-event.c'],
811 [['src/libsystemd/sd-netlink/test-netlink.c'],
815 [['src/libsystemd/sd-netlink/test-local-addresses.c'],
819 [['src/libsystemd/sd-resolve/test-resolve.c'],
823 [['src/libsystemd/sd-login/test-login.c'],
830 [['src/libsystemd/sd-bus/test-bus-vtable-cc.cc'],
836 ############################################################
839 [['src/libsystemd-network/test-dhcp-option.c',
840 'src/libsystemd-network/dhcp-protocol.h',
841 'src/libsystemd-network/dhcp-internal.h'],
846 [['src/libsystemd-network/test-sd-dhcp-lease.c',
847 'src/libsystemd-network/dhcp-lease-internal.h'],
852 [['src/libsystemd-network/test-dhcp-client.c',
853 'src/libsystemd-network/dhcp-protocol.h',
854 'src/libsystemd-network/dhcp-internal.h',
855 'src/systemd/sd-dhcp-client.h'],
860 [['src/libsystemd-network/test-dhcp-server.c'],
865 [['src/libsystemd-network/test-ipv4ll.c',
866 'src/libsystemd-network/arp-util.h',
867 'src/systemd/sd-ipv4ll.h'],
872 [['src/libsystemd-network/test-ipv4ll-manual.c',
873 'src/systemd/sd-ipv4ll.h'],
879 [['src/libsystemd-network/test-acd.c',
880 'src/systemd/sd-ipv4acd.h'],
886 [['src/libsystemd-network/test-ndisc-rs.c',
887 'src/libsystemd-network/dhcp-identifier.h',
888 'src/libsystemd-network/dhcp-identifier.c',
889 'src/libsystemd-network/icmp6-util.h',
890 'src/systemd/sd-dhcp6-client.h',
891 'src/systemd/sd-ndisc.h'],
896 [['src/libsystemd-network/test-ndisc-ra.c',
897 'src/libsystemd-network/icmp6-util.h',
898 'src/systemd/sd-ndisc.h'],
903 [['src/libsystemd-network/test-dhcp6-client.c',
904 'src/libsystemd-network/dhcp-identifier.h',
905 'src/libsystemd-network/dhcp-identifier.c',
906 'src/libsystemd-network/dhcp6-internal.h',
907 'src/systemd/sd-dhcp6-client.h'],
912 [['src/libsystemd-network/test-lldp.c'],
918 ############################################################
921 [['src/login/test-login-shared.c'],
925 [['src/login/test-inhibit.c'],
930 [['src/login/test-login-tables.c'],