modules = [] # nss, pam, and other plugins
executables = []
executables_by_name = {}
-objects_by_name = {}
+exported_by_name = {}
fuzzer_exes = []
sources = []
continue
endif
- exe_sources = dict.get('sources', []) + dict.get('extract', [])
+ exe_sources = dict.get('sources', []) + dict.get('export', [])
foreach bpf_name : dict.get('bpf_programs', [])
if bpf_name in bpf_programs_by_name
kwargs = {}
foreach key, val : dict
if key in ['name', 'dbus', 'public', 'conditions', 'type', 'suite',
- 'timeout', 'parallel', 'objects', 'sources', 'extract',
+ 'timeout', 'parallel', 'sources', 'import', 'export',
'include_directories', 'build_by_default', 'install',
'bpf_programs']
continue
include_directories += fs.parent(exe_sources[0])
endif
- foreach val : dict.get('objects', [])
- obj = objects_by_name[val]
- kwargs += { 'objects' : kwargs.get('objects', []) + obj['objects'] }
+ foreach val : dict.get('import', [])
+ obj = exported_by_name[val]
+ kwargs += { 'objects' : kwargs.get('objects', []) + obj['exported'] }
include_directories += obj['include_directories']
endforeach
sources += exe_sources
endif
- if dict.has_key('extract')
- objects_by_name += {
+ if dict.has_key('export')
+ exported_by_name += {
name : {
- 'objects' : exe.extract_objects(dict['extract']),
- 'include_directories' : fs.parent(dict['extract'][0]),
+ 'exported' : exe.extract_objects(dict['export']),
+ 'include_directories' : fs.parent(dict['export'][0]),
}
}
endif
'name' : 'systemd-analyze',
'public' : conf.get('ENABLE_ANALYZE') == 1,
'sources' : systemd_analyze_sources,
- 'extract' : systemd_analyze_extract_sources,
+ 'export' : systemd_analyze_extract_sources,
'include_directories' : core_includes,
'link_with' : [
libcore,
},
core_test_template + {
'sources' : files('test-verify.c'),
- 'objects' : ['systemd-analyze'],
+ 'import' : ['systemd-analyze'],
},
]
'name' : 'busctl',
'public' : true,
'sources' : busctl_sources,
- 'extract' : busctl_extract_sources,
+ 'export' : busctl_extract_sources,
},
test_template + {
'sources' : files('test-busctl-introspect.c'),
- 'objects' : ['busctl'],
+ 'import' : ['busctl'],
},
]
libexec_template + {
'name' : 'systemd-coredump',
'sources' : systemd_coredump_sources,
- 'extract' : systemd_coredump_extract_sources,
+ 'export' : systemd_coredump_extract_sources,
'link_with' : [libshared],
'dependencies' : [
common_dependencies,
},
test_template + {
'sources' : files('test-coredump-vacuum.c'),
- 'objects' : ['systemd-coredump'],
+ 'import' : ['systemd-coredump'],
'type' : 'manual',
},
]
libexec_template + {
'name' : 'systemd-hibernate-resume',
'sources' : files('hibernate-resume.c'),
- 'extract' : files('hibernate-resume-config.c'),
+ 'export' : files('hibernate-resume-config.c'),
},
generator_template + {
'name' : 'systemd-hibernate-resume-generator',
'sources' : files('hibernate-resume-generator.c'),
- 'objects' : ['systemd-hibernate-resume'],
+ 'import' : ['systemd-hibernate-resume'],
},
]
'name' : 'systemd-homed',
'dbus' : true,
'sources' : systemd_homed_sources,
- 'extract' : systemd_homed_extract_sources,
+ 'export' : systemd_homed_extract_sources,
'dependencies' : libopenssl_cflags,
},
libexec_template + {
'name' : 'systemd-homework',
'sources' : systemd_homework_sources,
- 'objects' : ['systemd-homed'],
+ 'import' : ['systemd-homed'],
'dependencies' : [
libblkid_cflags,
libcryptsetup_cflags,
'name' : 'homectl',
'public' : true,
'sources' : homectl_sources,
- 'extract' : homectl_extract,
- 'objects' : ['systemd-homed'],
+ 'export' : homectl_extract,
+ 'import' : ['systemd-homed'],
'dependencies' : [
libfido2_cflags,
libopenssl_cflags,
},
test_template + {
'sources' : files('test-homectl-prompts.c'),
- 'objects' : ['homectl'],
+ 'import' : ['homectl'],
'type' : 'manual',
},
test_template + {
'name' : 'systemd-imdsd',
'public' : true,
'sources' : files('imdsd.c'),
- 'extract' : files('imds-util.c'),
+ 'export' : files('imds-util.c'),
'dependencies' : [
libcurl_cflags,
],
'sources' : files(
'imds-tool.c',
'imds-tool-metrics.c'),
- 'objects' : ['systemd-imdsd'],
+ 'import' : ['systemd-imdsd'],
},
generator_template + {
'name' : 'systemd-imds-generator',
'sources' : files('imds-generator.c'),
- 'objects' : ['systemd-imdsd'],
+ 'import' : ['systemd-imdsd'],
},
]
'importd.c',
'oci-util.c',
),
- 'extract' : files(
+ 'export' : files(
'oci-util.c',
'import-common.c',
'qcow2-util.c',
'pull-raw.c',
'pull-tar.c',
),
- 'objects' : ['systemd-importd'],
+ 'import' : ['systemd-importd'],
'dependencies' : [
libcurl_cflags,
libopenssl_cflags,
'import-raw.c',
'import-tar.c',
),
- 'objects' : ['systemd-importd'],
+ 'import' : ['systemd-importd'],
},
libexec_template + {
'name' : 'systemd-import-fs',
'sources' : files(
'import-fs.c',
),
- 'objects' : ['systemd-importd'],
+ 'import' : ['systemd-importd'],
},
libexec_template + {
'name' : 'systemd-export',
'export-tar.c',
'export-raw.c',
),
- 'objects' : ['systemd-importd'],
+ 'import' : ['systemd-importd'],
},
executable_template + {
'name' : 'importctl',
'public' : true,
'sources' : files('importctl.c'),
- 'objects': ['systemd-importd'],
+ 'import' : ['systemd-importd'],
},
generator_template + {
'name' : 'systemd-import-generator',
},
test_template + {
'sources' : files('test-qcow2.c'),
- 'objects' : ['systemd-importd'],
+ 'import' : ['systemd-importd'],
'type' : 'manual',
},
test_template + {
'sources' : files('test-oci-util.c'),
- 'objects': ['systemd-importd'],
+ 'import' : ['systemd-importd'],
},
]
libexec_template + {
'name' : 'systemd-integritysetup',
'sources' : files('integritysetup.c'),
- 'extract' : files('integrity-util.c'),
+ 'export' : files('integrity-util.c'),
'dependencies' : libcryptsetup_cflags,
},
generator_template + {
'name' : 'systemd-integritysetup-generator',
'sources' : files('integritysetup-generator.c'),
- 'objects' : ['systemd-integritysetup'],
+ 'import' : ['systemd-integritysetup'],
},
]
# Instead, we make sure we don't install it when the remote feature is disabled.
'install' : conf.get('ENABLE_REMOTE') == 1,
'sources' : systemd_journal_remote_sources,
- 'extract' : systemd_journal_remote_extract_sources,
+ 'export' : systemd_journal_remote_extract_sources,
'dependencies' : common_deps + [libmicrohttpd_cflags],
},
libexec_template + {
'HAVE_LIBCURL',
],
'sources' : systemd_journal_upload_sources,
- 'extract' : systemd_journal_upload_extract_sources,
- 'objects' : ['systemd-journal-remote'],
+ 'export' : systemd_journal_upload_extract_sources,
+ 'import' : ['systemd-journal-remote'],
'dependencies' : [
common_deps,
libcurl_cflags,
test_template + {
'sources' : files('test-journal-header-util.c'),
'conditions' : ['ENABLE_REMOTE', 'HAVE_LIBCURL'],
- 'objects' : ['systemd-journal-upload'],
+ 'import' : ['systemd-journal-upload'],
},
fuzz_template + {
'sources' : files('fuzz-journal-remote.c'),
- 'objects' : ['systemd-journal-remote'],
+ 'import' : ['systemd-journal-remote'],
'dependencies' : common_deps + [libmicrohttpd_cflags],
},
]
endif
journal_test_template = test_template + {
- 'objects' : ['systemd-journald'],
+ 'import' : ['systemd-journald'],
}
journal_fuzz_template = fuzz_template + {
- 'objects' : [
+ 'import' : [
'fuzz-journald-audit',
'systemd-journald',
],
libexec_template + {
'name' : 'systemd-journald',
'sources' : systemd_journald_sources,
- 'extract' : systemd_journald_extract_sources,
+ 'export' : systemd_journald_extract_sources,
'dependencies' : [
libacl_cflags,
libaudit_cflags,
'name' : 'systemd-cat',
'public' : true,
'sources' : files('cat.c'),
- 'objects' : ['systemd-journald'],
+ 'import' : ['systemd-journald'],
},
executable_template + {
'name' : 'journalctl',
fuzz_template + {
'sources' : files('fuzz-journald-audit.c'),
# fuzz-journald-util.c is shared with the other fuzzers below.
- 'extract' : files('fuzz-journald-util.c'),
- 'objects' : ['systemd-journald'],
+ 'export' : files('fuzz-journald-util.c'),
+ 'import' : ['systemd-journald'],
},
journal_fuzz_template + {
'sources' : files('fuzz-journald-kmsg.c'),
},
network_test_template + {
'sources' : files('test-ndisc-ra.c'),
- 'extract' : files('icmp6-test-util.c'),
+ 'export' : files('icmp6-test-util.c'),
},
network_test_template + {
'sources' : files('test-ndisc-rs.c'),
- 'objects' : ['test-ndisc-ra'],
+ 'import' : ['test-ndisc-ra'],
},
network_test_template + {
'sources' : files('test-ndisc-send.c'),
},
network_fuzz_template + {
'sources' : files('fuzz-ndisc-rs.c'),
- 'objects' : ['test-ndisc-ra'],
+ 'import' : ['test-ndisc-ra'],
},
]
'name' : 'systemd-localed',
'dbus' : true,
'sources' : systemd_localed_sources,
- 'extract' : systemd_localed_extract_sources,
+ 'export' : systemd_localed_extract_sources,
'dependencies' : libxkbcommon_deps,
},
executable_template + {
},
test_template + {
'sources' : files('test-localed-util.c'),
- 'objects' : ['systemd-localed'],
+ 'import' : ['systemd-localed'],
'dependencies' : libxkbcommon_deps,
},
]
'name' : 'systemd-logind',
'dbus' : true,
'sources' : systemd_logind_sources,
- 'extract' : systemd_logind_extract_sources,
+ 'export' : systemd_logind_extract_sources,
'dependencies' : [
libacl_cflags,
],
},
test_template + {
'sources' : files('test-login-tables.c'),
- 'objects' : ['systemd-logind'],
+ 'import' : ['systemd-logind'],
},
test_template + {
'sources' : files('test-session-properties.c'),
'name' : 'systemd-machined',
'dbus' : true,
'sources' : systemd_machined_sources,
- 'extract' : systemd_machined_extract_sources,
+ 'export' : systemd_machined_extract_sources,
},
executable_template + {
'name' : 'machinectl',
},
test_template + {
'sources' : files('test-machine-tables.c'),
- 'objects' : ['systemd-machined'],
+ 'import' : ['systemd-machined'],
},
]
networkd_link_with,
libsystemd_network,
],
- 'objects' : ['systemd-networkd'],
+ 'import' : ['systemd-networkd'],
'include_directories' : network_includes,
}
networkd_link_with,
libsystemd_network,
],
- 'objects' : ['systemd-networkd'],
+ 'import' : ['systemd-networkd'],
'include_directories' : network_includes,
}
'dbus' : true,
'conditions' : ['ENABLE_NETWORKD'],
'sources' : systemd_networkd_sources,
- 'extract' : systemd_networkd_extract_sources,
+ 'export' : systemd_networkd_extract_sources,
'include_directories' : network_includes,
'link_with' : [
libsystemd_network,
libexec_template + {
'name' : 'systemd-network-generator',
'sources' : files('generator/network-generator-main.c'),
- 'extract' : files('generator/network-generator.c'),
+ 'export' : files('generator/network-generator.c'),
'link_with' : networkd_link_with,
},
test_template + {
'sources' : files('generator/test-network-generator.c'),
- 'objects' : ['systemd-network-generator'],
+ 'import' : ['systemd-network-generator'],
'suite' : 'network',
},
network_test_template + {
nspawn_common_template = {
'dependencies' : libseccomp_cflags,
- 'objects' : ['systemd-nspawn'],
+ 'import' : ['systemd-nspawn'],
}
nspawn_test_template = test_template + nspawn_common_template
nspawn_fuzz_template = fuzz_template + nspawn_common_template
'name' : 'systemd-nspawn',
'public' : true,
'sources' : nspawn_sources,
- 'extract' : nspawn_extract_sources,
+ 'export' : nspawn_extract_sources,
'include_directories' : [
include_directories('.'),
executable_template['include_directories'],
libexec_template + {
'name' : 'systemd-nsresourced',
'sources' : systemd_nsresourced_sources,
- 'extract' : systemd_nsresourced_extract_sources,
+ 'export' : systemd_nsresourced_extract_sources,
'dependencies' : [
libbpf_cflags,
],
libexec_template + {
'name' : 'systemd-nsresourcework',
'sources' : systemd_nsresourcework_sources,
- 'objects' : ['systemd-nsresourced'],
+ 'import' : ['systemd-nsresourced'],
'bpf_programs': ['userns-restrict'],
},
test_template + {
'sources' : test_userns_restrict_sources,
'conditions' : ['HAVE_VMLINUX_H'],
- 'objects' : ['systemd-nsresourced'],
+ 'import' : ['systemd-nsresourced'],
'bpf_programs': ['userns-restrict'],
},
]
'name' : 'systemd-oomd',
'dbus' : true,
'sources' : systemd_oomd_sources,
- 'extract' : systemd_oomd_extract_sources,
+ 'export' : systemd_oomd_extract_sources,
'dependencies' : libatomic,
},
executable_template + {
},
test_template + {
'sources' : files('test-oomd-util.c'),
- 'objects' : ['systemd-oomd'],
+ 'import' : ['systemd-oomd'],
'dependencies' : libatomic,
},
]
executable_template + {
'name' : 'systemd-repart',
'public' : true,
- 'extract' : files(
+ 'export' : files(
'iso9660.c',
'repart.c',
'repart-list-candidate-devices.c',
executable_template + {
'name' : 'systemd-repart.standalone',
'public' : true,
- 'objects' : ['systemd-repart'],
+ 'import' : ['systemd-repart'],
'link_with' : [
libc_wrapper_static,
libbasic_static,
],
}
-resolve_test_template = test_template + resolve_common_template + {'objects' : ['systemd-resolved']}
-resolve_fuzz_template = fuzz_template + resolve_common_template + {'objects' : ['systemd-resolved']}
+resolve_test_template = test_template + resolve_common_template + {'import' : ['systemd-resolved']}
+resolve_fuzz_template = fuzz_template + resolve_common_template + {'import' : ['systemd-resolved']}
executables += [
libexec_template + resolve_common_template + {
'name' : 'systemd-resolved',
'dbus' : true,
'sources' : systemd_resolved_sources,
- 'extract' : systemd_resolved_extract_sources,
+ 'export' : systemd_resolved_extract_sources,
},
executable_template + resolve_common_template + {
'name' : 'resolvectl',
'resolvconf-compat.c',
'resolvectl.c',
),
- 'objects' : ['systemd-resolved'],
+ 'import' : ['systemd-resolved'],
},
resolve_test_template + {
'sources' : files('test-resolve-tables.c'),
executables += [
libexec_template + {
'name' : 'systemd-shutdown',
- 'extract' : files(
+ 'export' : files(
'detach-dm.c',
'detach-loopback.c',
'detach-md.c',
},
libexec_template + {
'name' : 'systemd-shutdown.standalone',
- 'objects' : ['systemd-shutdown'],
+ 'import' : ['systemd-shutdown'],
'link_with' : [
libc_wrapper_static,
libbasic_static,
libexec_template + {
'name' : 'systemd-sleep',
'sources' : files('sleep.c'),
- 'extract' : files('battery-capacity.c'),
+ 'export' : files('battery-capacity.c'),
},
test_template + {
'sources' : files('test-battery-capacity.c'),
- 'objects' : ['systemd-sleep'],
+ 'import' : ['systemd-sleep'],
},
]
generator_template + {
'name' : 'systemd-ssh-generator',
'sources' : files('ssh-generator.c'),
- 'extract' : files('ssh-util.c'),
+ 'export' : files('ssh-util.c'),
},
libexec_template + {
'name' : 'systemd-ssh-proxy',
libexec_template + {
'name' : 'systemd-ssh-issue',
'sources' : files('ssh-issue.c'),
- 'objects' : ['systemd-ssh-generator'],
+ 'import' : ['systemd-ssh-generator'],
},
]
'name' : 'systemctl',
'public' : true,
'sources' : systemctl_sources,
- 'extract' : systemctl_extract_sources,
+ 'export' : systemctl_extract_sources,
'link_with' : systemctl_link_with,
'dependencies' : [
liblz4_cflags,
},
fuzz_template + {
'sources' : files('fuzz-systemctl-parse-argv.c'),
- 'objects' : ['systemctl'],
+ 'import' : ['systemctl'],
'link_with' : systemctl_link_with,
'dependencies' : [
libselinux_cflags,
'public' : true,
'conditions' : ['ENABLE_SYSUPDATE'],
'sources' : systemd_sysupdate_sources,
- 'extract' : systemd_sysupdate_extract_sources,
+ 'export' : systemd_sysupdate_extract_sources,
'dependencies' : [
libfdisk_cflags,
libopenssl_cflags,
'name' : 'updatectl',
'public' : true,
'sources' : systemd_updatectl_sources,
- 'objects' : ['systemd-sysupdate'],
+ 'import' : ['systemd-sysupdate'],
'conditions' : ['ENABLE_SYSUPDATED'],
},
test_template + {
'sources' : files('test-sysupdate-util.c'),
- 'objects' : ['systemd-sysupdate'],
+ 'import' : ['systemd-sysupdate'],
'conditions' : ['ENABLE_SYSUPDATE'],
},
]
executable_template + {
'name' : 'systemd-sysusers',
'public' : true,
- 'extract' : files('sysusers.c'),
+ 'export' : files('sysusers.c'),
'dependencies' : libaudit_cflags,
},
executable_template + {
'name' : 'systemd-sysusers.standalone',
'public' : true,
- 'objects' : ['systemd-sysusers'],
+ 'import' : ['systemd-sysusers'],
'link_with' : [
libc_wrapper_static,
libbasic_static,
},
test_template + {
'sources' : files('test-nss-hosts.c'),
- 'extract' : files('nss-test-util.c'),
+ 'export' : files('nss-test-util.c'),
'dependencies' : libseccomp_cflags,
'conditions' : ['ENABLE_NSS'],
'timeout' : 120,
},
test_template + {
'sources' : files('test-nss-users.c'),
- 'objects' : ['test-nss-hosts'],
+ 'import' : ['test-nss-hosts'],
'conditions' : ['ENABLE_NSS'],
},
test_template + {
},
test_template + {
'sources' : files('test-qmp-client-qemu.c'),
- 'objects' : ['systemd-vmspawn'],
+ 'import' : ['systemd-vmspawn'],
'conditions' : ['ENABLE_VMSPAWN'],
},
test_template + {
},
test_template + {
'sources' : files('test-varlink-idl-machine.c'),
- 'objects' : ['systemd-machined'],
+ 'import' : ['systemd-machined'],
'conditions' : ['ENABLE_MACHINED'],
},
test_template + {
'sources' : files('test-varlink-idl-login.c'),
- 'objects' : ['systemd-logind'],
+ 'import' : ['systemd-logind'],
'conditions' : ['ENABLE_LOGIND'],
},
test_template + {
libexec_template + {
'name' : 'systemd-timesyncd',
'sources' : timesyncd_sources,
- 'extract' : timesyncd_extract_sources,
+ 'export' : timesyncd_extract_sources,
'link_with' : timesyncd_link_with,
'dependencies' : libm,
},
libexec_template + {
'name' : 'systemd-time-wait-sync',
'sources' : files('wait-sync.c'),
- 'objects' : ['systemd-timesyncd'],
+ 'import' : ['systemd-timesyncd'],
'dependencies' : libm,
},
test_template + {
'sources' : files('test-timesync.c'),
- 'objects' : ['systemd-timesyncd'],
+ 'import' : ['systemd-timesyncd'],
'dependencies' : libm,
},
]
executable_template + {
'name' : 'systemd-tmpfiles',
'public' : true,
- 'extract' : files('tmpfiles.c') +
+ 'export' : files('tmpfiles.c') +
offline_passwd_c,
'dependencies' : [
libacl_cflags,
executable_template + {
'name' : 'systemd-tmpfiles.standalone',
'public' : true,
- 'objects' : ['systemd-tmpfiles'],
+ 'import' : ['systemd-tmpfiles'],
'link_with' : [
libc_wrapper_static,
libbasic_static,
}
udev_common_template = {
- 'objects' : ['udevadm'],
+ 'import' : ['udevadm'],
'dependencies' : [
libacl_cflags,
libblkid_cflags,
'public' : true,
'sources' : udevadm_sources +
keyboard_keys_from_name_inc,
- 'extract' : udevadm_extract_sources,
+ 'export' : udevadm_extract_sources,
'include_directories' : [
include_directories('.', 'net'),
libexec_template['include_directories'],
udev_plugin_template + {
'name' : 'fido_id',
'sources' : files('fido_id/fido_id.c'),
- 'extract' : files('fido_id/fido_id_desc.c'),
+ 'export' : files('fido_id/fido_id_desc.c'),
},
udev_plugin_template + {
'name' : 'iocost',
executables += [
test_template + {
'sources' : files('fido_id/test-fido-id-desc.c'),
- 'objects' : ['fido_id'],
+ 'import' : ['fido_id'],
'suite' : 'udev',
},
udev_test_template + {
},
fuzz_template + {
'sources' : files('fido_id/fuzz-fido-id-desc.c'),
- 'objects' : ['fido_id'],
+ 'import' : ['fido_id'],
},
udev_fuzz_template + {
'sources' : files('net/fuzz-link-parser.c'),
'name' : 'systemd-vmspawn',
'public' : true,
'sources' : vmspawn_sources,
- 'extract' : vmspawn_extract_sources,
+ 'export' : vmspawn_extract_sources,
},
test_template + {
'sources' : files('test-vmspawn-util.c'),
- 'objects' : ['systemd-vmspawn'],
+ 'import' : ['systemd-vmspawn'],
},
test_template + {
'sources' : files('test-vmspawn-qemu-config.c'),
- 'objects' : ['systemd-vmspawn'],
+ 'import' : ['systemd-vmspawn'],
},
]
executable_template + {
'name' : 'systemd-xdg-autostart-generator',
'sources' : files('xdg-autostart-generator.c'),
- 'extract' : files('xdg-autostart-service.c'),
+ 'export' : files('xdg-autostart-service.c'),
'install_dir' : usergeneratordir,
},
libexec_template + {
},
test_template + {
'sources' : files('test-xdg-autostart.c'),
- 'objects' : ['systemd-xdg-autostart-generator'],
+ 'import' : ['systemd-xdg-autostart-generator'],
},
fuzz_template + {
'sources' : files('fuzz-xdg-desktop.c'),
- 'objects' : ['systemd-xdg-autostart-generator'],
+ 'import' : ['systemd-xdg-autostart-generator'],
},
]