continue
endif
+ exe_sources = dict.get('sources', []) + dict.get('extract', [])
+
kwargs = {}
foreach key, val : dict
if key in ['name', 'dbus', 'public', 'conditions',
'type', 'suite', 'timeout', 'parallel',
- 'objects', 'extract']
+ 'objects', 'sources', 'extract']
continue
endif
if is_fuzz
foreach key, val : fuzz_additional_kwargs
- kwargs += { key : [ kwargs.get(key, []), val ] }
+ if key == 'sources'
+ exe_sources += val
+ else
+ kwargs += { key : [ kwargs.get(key, []), val ] }
+ endif
endforeach
endif
exe = executable(
name,
+ sources : exe_sources,
kwargs : kwargs,
implicit_include_directories : false,
)
executables_by_name += { name : exe }
if not name.endswith('.standalone')
- sources += dict.get('sources', [])
+ sources += exe_sources
endif
if dict.has_key('extract')
executable_template + {
'name' : 'systemd-analyze',
'public' : conf.get('ENABLE_ANALYZE') == 1,
- 'sources' : systemd_analyze_sources + systemd_analyze_extract_sources,
+ 'sources' : systemd_analyze_sources,
'extract' : systemd_analyze_extract_sources,
'include_directories' : core_includes,
'link_with' : [
executable_template + {
'name' : 'busctl',
'public' : true,
- 'sources' : busctl_sources + busctl_extract_sources,
+ 'sources' : busctl_sources,
'extract' : busctl_extract_sources,
},
test_template + {
executables += [
libexec_template + {
'name' : 'systemd-coredump',
- 'sources' : systemd_coredump_sources + systemd_coredump_extract_sources,
+ 'sources' : systemd_coredump_sources,
'include_directories' : [libexec_template['include_directories'], include_directories('.')],
'extract' : systemd_coredump_extract_sources,
'link_with' : [libshared],
executables += [
libexec_template + {
'name' : 'systemd-hibernate-resume',
- 'sources' : files(
- 'hibernate-resume.c',
- 'hibernate-resume-config.c',
- ),
+ 'sources' : files('hibernate-resume.c'),
'extract' : files('hibernate-resume-config.c'),
},
generator_template + {
libexec_template + {
'name' : 'systemd-homed',
'dbus' : true,
- 'sources' : systemd_homed_sources + systemd_homed_extract_sources,
+ 'sources' : systemd_homed_sources,
+ 'extract' : systemd_homed_extract_sources,
'include_directories' : includes +
include_directories('.'),
- 'extract' : systemd_homed_extract_sources,
'dependencies' : [
libcrypt,
libm,
libexec_template + {
'name' : 'systemd-importd',
'dbus' : true,
- 'sources' : systemd_importd_sources + systemd_importd_extract_sources,
+ 'sources' : systemd_importd_sources,
'extract' : systemd_importd_extract_sources,
'dependencies' : [common_deps, threads],
},
executables += [
libexec_template + {
'name' : 'systemd-integritysetup',
- 'sources' : files(
- 'integrity-util.c',
- 'integritysetup.c',
- ),
+ 'sources' : files('integritysetup.c'),
'extract' : files('integrity-util.c'),
'dependencies' : libcryptsetup,
},
'ENABLE_REMOTE',
'HAVE_MICROHTTPD',
],
- 'sources' : systemd_journal_gatewayd_sources + systemd_journal_gatewayd_extract_sources,
+ 'sources' : systemd_journal_gatewayd_sources,
'extract' : systemd_journal_gatewayd_extract_sources,
'dependencies' : common_deps + [libmicrohttpd],
},
# fuzz-journal-remote even when --auto-features=disabled (see tools/oss-fuzz.sh for why).
# 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 + systemd_journal_remote_extract_sources,
- 'objects' : conf.get('HAVE_MICROHTTPD') == 1 ? ['systemd-journal-gatewayd'] : [],
+ 'sources' : systemd_journal_remote_sources,
'extract' : systemd_journal_remote_extract_sources,
+ 'objects' : conf.get('HAVE_MICROHTTPD') == 1 ? ['systemd-journal-gatewayd'] : [],
'dependencies' : common_deps + [libmicrohttpd],
},
libexec_template + {
'ENABLE_REMOTE',
'HAVE_LIBCURL',
],
- 'sources' : systemd_journal_upload_sources + systemd_journal_upload_extract_sources,
- 'objects' : ['systemd-journal-remote'],
+ 'sources' : systemd_journal_upload_sources,
'extract' : systemd_journal_upload_extract_sources,
+ 'objects' : ['systemd-journal-remote'],
'dependencies' : common_deps + [libcurl],
},
test_template + {
executables += [
libexec_template + {
'name' : 'systemd-journald',
- 'sources' : systemd_journald_sources + systemd_journald_extract_sources,
- 'include_directories' : [libexec_template['include_directories'], include_directories('.')],
+ 'sources' : systemd_journald_sources,
'extract' : systemd_journald_extract_sources,
+ 'include_directories' : [libexec_template['include_directories'], include_directories('.')],
'dependencies' : [
liblz4_cflags,
libselinux_cflags,
'sources' : files('test-lldp-rx.c'),
},
network_test_template + {
- 'sources' : files(
- 'test-ndisc-ra.c',
- 'icmp6-test-util.c',
- ),
+ 'sources' : files('test-ndisc-ra.c'),
'extract' : files('icmp6-test-util.c'),
},
network_test_template + {
libexec_template + {
'name' : 'systemd-localed',
'dbus' : true,
- 'sources' : systemd_localed_sources + systemd_localed_extract_sources,
+ 'sources' : systemd_localed_sources,
'extract' : systemd_localed_extract_sources,
'dependencies' : libxkbcommon_deps,
},
libexec_template + {
'name' : 'systemd-logind',
'dbus' : true,
- 'sources' : systemd_logind_sources + systemd_logind_extract_sources,
- 'include_directories' : [libexec_template['include_directories'], include_directories('.')],
+ 'sources' : systemd_logind_sources,
'extract' : systemd_logind_extract_sources,
+ 'include_directories' : [libexec_template['include_directories'], include_directories('.')],
'dependencies' : [
threads,
],
libexec_template + {
'name' : 'systemd-machined',
'dbus' : true,
- 'sources' : systemd_machined_sources + systemd_machined_extract_sources,
+ 'sources' : systemd_machined_sources,
'extract' : systemd_machined_extract_sources,
},
executable_template + {
'name' : 'systemd-networkd',
'dbus' : true,
'conditions' : ['ENABLE_NETWORKD'],
- 'sources' : systemd_networkd_sources + systemd_networkd_extract_sources,
+ 'sources' : systemd_networkd_sources,
'extract' : systemd_networkd_extract_sources,
'include_directories' : network_includes,
'link_with' : [
},
libexec_template + {
'name' : 'systemd-network-generator',
- 'sources' : files('generator/network-generator.c', 'generator/network-generator-main.c'),
+ 'sources' : files('generator/network-generator-main.c'),
'extract' : files('generator/network-generator.c'),
'link_with' : networkd_link_with,
},
executable_template + {
'name' : 'systemd-nspawn',
'public' : true,
- 'sources' : nspawn_sources + nspawn_extract_sources,
+ 'sources' : nspawn_sources,
+ 'extract' : nspawn_extract_sources,
'include_directories' : [
executable_template['include_directories'],
include_directories('.')
],
- 'extract' : nspawn_extract_sources,
'dependencies' : [
libseccomp_cflags,
libselinux_cflags,
executables += [
libexec_template + {
'name' : 'systemd-nsresourced',
- 'sources' : systemd_nsresourced_sources + systemd_nsresourced_extract_sources,
- 'include_directories' : [libexec_template['include_directories'], include_directories('.')],
+ 'sources' : systemd_nsresourced_sources,
'extract' : systemd_nsresourced_extract_sources,
+ 'include_directories' : [libexec_template['include_directories'], include_directories('.')],
'dependencies' : threads,
},
libexec_template + {
libexec_template + {
'name' : 'systemd-oomd',
'dbus' : true,
- 'sources' : systemd_oomd_sources + systemd_oomd_extract_sources,
+ 'sources' : systemd_oomd_sources,
'extract' : systemd_oomd_extract_sources,
'dependencies' : libatomic,
},
libexec_template + resolve_common_template + {
'name' : 'systemd-resolved',
'dbus' : true,
- 'sources' : systemd_resolved_sources + systemd_resolved_extract_sources,
- 'include_directories' : [libexec_template['include_directories'], include_directories('.')],
+ 'sources' : systemd_resolved_sources,
'extract' : systemd_resolved_extract_sources,
+ 'include_directories' : [libexec_template['include_directories'], include_directories('.')],
},
executable_template + resolve_common_template + {
'name' : 'resolvectl',
executables += [
libexec_template + {
'name' : 'systemd-shutdown',
- 'sources' : systemd_shutdown_sources + systemd_shutdown_extract_sources,
+ 'sources' : systemd_shutdown_sources,
'extract' : systemd_shutdown_extract_sources,
'dependencies' : libmount_cflags,
},
# SPDX-License-Identifier: LGPL-2.1-or-later
-sleep_sources = files(
- 'sleep.c',
-)
-sleep_extract_sources = files(
- 'battery-capacity.c',
-)
-
executables += [
libexec_template + {
'name' : 'systemd-sleep',
- 'sources' : sleep_sources + sleep_extract_sources,
+ 'sources' : files('sleep.c'),
+ 'extract' : files('battery-capacity.c'),
'include_directories' : [libexec_template['include_directories'], include_directories('.')],
- 'extract' : sleep_extract_sources,
},
test_template + {
'sources' : files('test-battery-capacity.c'),
executables += [
generator_template + {
'name' : 'systemd-ssh-generator',
- 'sources' : files(
- 'ssh-generator.c',
- 'ssh-util.c',
- ),
- 'extract' : files(
- 'ssh-util.c',
- ),
+ 'sources' : files('ssh-generator.c'),
+ 'extract' : files('ssh-util.c'),
},
libexec_template + {
'name' : 'systemd-ssh-proxy',
- 'sources' : files(
- 'ssh-proxy.c',
- ),
+ 'sources' : files('ssh-proxy.c'),
},
libexec_template + {
'name' : 'systemd-ssh-issue',
- 'sources' : files(
- 'ssh-issue.c',
- ),
+ 'sources' : files('ssh-issue.c'),
'objects' : ['systemd-ssh-generator'],
},
]
executable_template + {
'name' : 'systemctl',
'public' : true,
- 'sources' : systemctl_sources + systemctl_extract_sources,
+ 'sources' : systemctl_sources,
'extract' : systemctl_extract_sources,
'link_with' : systemctl_link_with,
'dependencies' : [
'name' : 'systemd-sysupdate',
'public' : true,
'conditions' : ['ENABLE_SYSUPDATE'],
- 'sources' : systemd_sysupdate_sources + systemd_sysupdate_extract_sources,
+ 'sources' : systemd_sysupdate_sources,
'extract' : systemd_sysupdate_extract_sources,
'link_with' : [
libshared,
'type' : 'manual',
},
test_template + {
- 'sources' : files(
- 'test-nss-hosts.c',
- 'nss-test-util.c',
- ),
+ 'sources' : files('test-nss-hosts.c'),
'extract' : files('nss-test-util.c'),
'dependencies' : [
libdl,
# Symbol tests
test_template + {
'name' : 'test-libsystemd-sym',
- 'sources' : test_libsystemd_sym_c,
+ 'sources' : [test_libsystemd_sym_c],
'link_with' : libsystemd,
'suite' : 'libsystemd',
},
test_template + {
'name' : 'test-libudev-sym',
- 'sources' : test_libudev_sym_c,
+ 'sources' : [test_libudev_sym_c],
'include_directories' : libudev_includes,
'c_args' : ['-Wno-deprecated-declarations'] + test_cflags,
'link_with' : libudev,
executables += [
test_template + {
'name' : 'test-libsystemd-static-sym',
- 'sources' : test_libsystemd_sym_c,
+ 'sources' : [test_libsystemd_sym_c],
'link_with' : install_libsystemd_static,
'build_by_default' : want_tests != 'false',
'install' : install_tests,
executables += [
test_template + {
'name' : 'test-libudev-static-sym',
- 'sources' : test_libudev_sym_c,
+ 'sources' : [test_libudev_sym_c],
'include_directories' : libudev_includes,
'c_args' : ['-Wno-deprecated-declarations'] + test_cflags,
'link_with' : install_libudev_static,
executables += [
libexec_template + {
'name' : 'systemd-timesyncd',
- 'sources' : timesyncd_sources + timesyncd_extract_sources,
- 'include_directories' : [libexec_template['include_directories'], include_directories('.')],
+ 'sources' : timesyncd_sources,
'extract' : timesyncd_extract_sources,
+ 'include_directories' : [libexec_template['include_directories'], include_directories('.')],
'link_with' : timesyncd_link_with,
'dependencies' : [
libm,
executable_template + {
'name' : 'systemd-tmpfiles',
'public' : true,
- 'sources' : systemd_tmpfiles_sources + systemd_tmpfiles_extract_sources,
+ 'sources' : systemd_tmpfiles_sources,
'extract' : systemd_tmpfiles_extract_sources,
'dependencies' : libacl_cflags,
},
'name' : 'udevadm',
'public' : true,
'sources' : udevadm_sources +
- udevadm_extract_sources +
keyboard_keys_from_name_inc,
+ 'extract' : udevadm_extract_sources,
'include_directories' : [
libexec_template['include_directories'],
include_directories('.', 'net'),
'link_with' : udev_link_with,
'install_rpath' : udev_rpath,
'install_tag' : 'udev',
- 'extract' : udevadm_extract_sources,
},
udev_plugin_template + {
'name' : 'ata_id',
},
udev_plugin_template + {
'name' : 'fido_id',
- 'sources' : files(
- 'fido_id/fido_id.c',
- 'fido_id/fido_id_desc.c',
- ),
+ 'sources' : files('fido_id/fido_id.c'),
'extract' : files('fido_id/fido_id_desc.c'),
},
udev_plugin_template + {
executable_template + {
'name' : 'systemd-vmspawn',
'public' : true,
- 'sources' : vmspawn_sources + vmspawn_extract_sources,
+ 'sources' : vmspawn_sources,
'extract' : vmspawn_extract_sources,
},
test_template + {
subdir_done()
endif
-systemd_xdg_autostart_generator_sources = files(
- 'xdg-autostart-generator.c',
-)
-systemd_xdg_autostart_generator_extract_sources = files(
- 'xdg-autostart-service.c',
-)
-
executables += [
executable_template + {
'name' : 'systemd-xdg-autostart-generator',
- 'sources' : systemd_xdg_autostart_generator_sources +
- systemd_xdg_autostart_generator_extract_sources,
- 'extract' : systemd_xdg_autostart_generator_extract_sources,
+ 'sources' : files('xdg-autostart-generator.c'),
+ 'extract' : files('xdg-autostart-service.c'),
'install_dir' : usergeneratordir,
},
libexec_template + {