diff --git a/meson.build b/meson.build index acab81df4c..eba5cf3739 100644 --- a/meson.build +++ b/meson.build @@ -2213,7 +2213,6 @@ subdir('src/fundamental') subdir('src/basic') subdir('src/libsystemd') subdir('src/shared') -subdir('src/udev') subdir('src/libudev') libsystemd = shared_library( @@ -2369,16 +2368,21 @@ subdir('src/core') subdir('src/journal') # systemd-networkd requires 'libsystemd_network' subdir('src/libsystemd-network') +# hwdb requires 'udev_link_with' and 'udev_rpath' +subdir('src/udev') subdir('src/ac-power') subdir('src/analyze') +subdir('src/ask-password') subdir('src/backlight') subdir('src/battery-check') subdir('src/binfmt') subdir('src/boot') subdir('src/boot/efi') subdir('src/busctl') +subdir('src/cgls') subdir('src/cgroups-agent') +subdir('src/cgtop') subdir('src/coredump') subdir('src/creds') subdir('src/cryptenroll') @@ -2397,8 +2401,10 @@ subdir('src/gpt-auto-generator') subdir('src/hibernate-resume') subdir('src/home') subdir('src/hostname') +subdir('src/hwdb') subdir('src/id128') subdir('src/import') +subdir('src/initctl') subdir('src/integritysetup') subdir('src/journal-remote') subdir('src/kernel-install') @@ -2406,6 +2412,8 @@ subdir('src/locale') subdir('src/login') subdir('src/machine') subdir('src/machine-id-setup') +subdir('src/modules-load') +subdir('src/mount') subdir('src/network') subdir('src/notify') subdir('src/nspawn') @@ -2418,25 +2426,35 @@ subdir('src/partition') subdir('src/path') subdir('src/portable') subdir('src/pstore') +subdir('src/quotacheck') subdir('src/random-seed') subdir('src/rc-local-generator') subdir('src/remount-fs') +subdir('src/reply-password') subdir('src/resolve') subdir('src/rfkill') subdir('src/rpm') +subdir('src/run') subdir('src/run-generator') subdir('src/shutdown') subdir('src/sleep') subdir('src/socket-activate') +subdir('src/socket-proxy') +subdir('src/stdio-bridge') +subdir('src/sulogin-shell') subdir('src/sysctl') subdir('src/sysext') subdir('src/system-update-generator') subdir('src/systemctl') subdir('src/sysupdate') +subdir('src/sysusers') subdir('src/sysv-generator') subdir('src/timedate') subdir('src/timesync') subdir('src/tmpfiles') +subdir('src/tty-ask-password-agent') +subdir('src/update-done') +subdir('src/update-utmp') subdir('src/user-sessions') subdir('src/userdb') subdir('src/vconsole') @@ -2597,10 +2615,6 @@ if conf.get('HAVE_BLKID') == 1 and conf.get('ENABLE_BOOTLOADER') == 1 endif endif -meson.add_install_script(meson_make_symlink, - bindir / 'udevadm', - libexecdir / 'systemd-udevd') - if want_tests != 'false' systemctl = executables_by_name.get('systemctl') systemd_id128 = executables_by_name.get('systemd-id128') @@ -2611,136 +2625,18 @@ if want_tests != 'false' systemd_id128.full_path()]) endif -public_programs += executable( - 'systemd-ask-password', - 'src/ask-password/ask-password.c', - include_directories : includes, - link_with : [libshared], - dependencies : [userspace], - install_rpath : pkglibdir, - install : true) - -executable( - 'systemd-reply-password', - 'src/reply-password/reply-password.c', - include_directories : includes, - link_with : [libshared], - dependencies : userspace, - install_rpath : pkglibdir, - install : true, - install_dir : libexecdir) - -public_programs += executable( - 'systemd-tty-ask-password-agent', - 'src/tty-ask-password-agent/tty-ask-password-agent.c', - include_directories : includes, - link_with : [libshared], - dependencies : [userspace], - install_rpath : pkglibdir, - install : true) - -public_programs += executable( - 'systemd-cgls', - 'src/cgls/cgls.c', - include_directories : includes, - link_with : [libshared], - dependencies : [userspace], - install_rpath : pkglibdir, - install : true) - -public_programs += executable( - 'systemd-cgtop', - 'src/cgtop/cgtop.c', - include_directories : includes, - link_with : [libshared], - dependencies : [userspace], - install_rpath : pkglibdir, - install : true) - -executable( - 'systemd-initctl', - 'src/initctl/initctl.c', - include_directories : includes, - link_with : [libshared], - dependencies : userspace, - install_rpath : pkglibdir, - install : (conf.get('HAVE_SYSV_COMPAT') == 1), - install_dir : libexecdir) - -public_programs += executable( - 'systemd-mount', - 'src/mount/mount-tool.c', - include_directories : includes, - link_with : [libshared], - dependencies: [libmount, - userspace], - install_rpath : pkglibdir, - install : true) - -meson.add_install_script(meson_make_symlink, - 'systemd-mount', bindir / 'systemd-umount') - -public_programs += executable( - 'systemd-run', - 'src/run/run.c', - include_directories : includes, - link_with : [libshared], - dependencies : [userspace], - install_rpath : pkglibdir, - install : true) - -public_programs += executable( - 'systemd-stdio-bridge', - 'src/stdio-bridge/stdio-bridge.c', - include_directories : includes, - link_with : [libshared], - dependencies : [userspace], - install_rpath : pkglibdir, - install : true) - -public_programs += executable( - 'busctl', - busctl_sources, - include_directories : includes, - link_with : [libshared], - dependencies : [userspace], - install_rpath : pkglibdir, - install : true) - if enable_sysusers - exe = executable( - 'systemd-sysusers', - 'src/sysusers/sysusers.c', - include_directories : includes, - link_with : [libshared], - dependencies : [userspace], - install_rpath : pkglibdir, - install : true) - public_programs += exe - if want_tests != 'false' + exe = executables_by_name.get('systemd-sysusers') test('test-sysusers', test_sysusers_sh, # https://github.com/mesonbuild/meson/issues/2681 args : exe.full_path()) endif - exe = executable( - 'systemd-sysusers.standalone', - 'src/sysusers/sysusers.c', - include_directories : includes, - c_args : '-DSTANDALONE', - link_with : [libshared_static, - libbasic, - libbasic_gcrypt, - libsystemd_static], - dependencies : [userspace], - build_by_default: have_standalone_binaries, - install : have_standalone_binaries) if have_standalone_binaries - public_programs += exe - if want_tests != 'false' + exe = executables_by_name.get('systemd-sysusers.standalone') test('test-sysusers.standalone', test_sysusers_sh, # https://github.com/mesonbuild/meson/issues/2681 @@ -2750,41 +2646,17 @@ if enable_sysusers endif if conf.get('ENABLE_TMPFILES') == 1 - exe = executable( - 'systemd-tmpfiles', - systemd_tmpfiles_sources, - include_directories : includes, - link_with : [libshared], - dependencies : [libacl, - userspace], - install_rpath : pkglibdir, - install : true) - public_programs += exe - if want_tests != 'false' + exe = executables_by_name.get('systemd-tmpfiles') test('test-systemd-tmpfiles', test_systemd_tmpfiles_py, # https://github.com/mesonbuild/meson/issues/2681 args : exe.full_path()) endif - exe = executable( - 'systemd-tmpfiles.standalone', - systemd_tmpfiles_sources, - include_directories : includes, - c_args : '-DSTANDALONE', - link_with : [libshared_static, - libbasic, - libbasic_gcrypt, - libsystemd_static], - dependencies : [libacl, - userspace], - build_by_default: have_standalone_binaries, - install : have_standalone_binaries) if have_standalone_binaries - public_programs += exe - if want_tests != 'false' + exe = executables_by_name.get('systemd-tmpfiles.standalone') test('test-systemd-tmpfiles.standalone', test_systemd_tmpfiles_py, # https://github.com/mesonbuild/meson/issues/2681 @@ -2794,195 +2666,26 @@ if conf.get('ENABLE_TMPFILES') == 1 endif if conf.get('ENABLE_HWDB') == 1 - systemd_hwdb = executable( - 'systemd-hwdb', - 'src/hwdb/hwdb.c', - include_directories : includes, - link_with : udev_link_with, - dependencies : [userspace], - install_rpath : udev_rpath, - install : true) - public_programs += systemd_hwdb - if want_tests != 'false' + exe = executables_by_name.get('systemd-hwdb') test('hwdb-test', hwdb_test_sh, suite : 'dist', - args : [systemd_hwdb.full_path()], + args : exe.full_path(), timeout : 90) endif endif -if conf.get('ENABLE_QUOTACHECK') == 1 - executable( - 'systemd-quotacheck', - 'src/quotacheck/quotacheck.c', - include_directories : includes, - link_with : [libshared], - dependencies : userspace, - install_rpath : pkglibdir, - install : true, - install_dir : libexecdir) -endif - -public_programs += executable( - 'systemd-socket-proxyd', - 'src/socket-proxy/socket-proxyd.c', - include_directories : includes, - link_with : [libshared], - dependencies : [threads, - userspace], - install_rpath : pkglibdir, - install : true, - install_dir : libexecdir) - -udevadm = executable( - 'udevadm', - udevadm_sources, - include_directories : includes, - link_with : [libudevd_core], - dependencies : [libacl, - libblkid, - libidn, - libkmod, - threads, - userspace], - install_rpath : udev_rpath, - install : true) -public_programs += udevadm - if want_tests != 'false' + exe = executables_by_name.get('udevadm') test('udev-rules-check', - udevadm, + exe, suite : 'dist', args : ['verify', '--resolve-names=never', all_rules]) endif -executable( - 'systemd-shutdown', - systemd_shutdown_sources, - include_directories : includes, - link_with : [libshared], - dependencies : [libmount, - userspace], - install_rpath : pkglibdir, - install : true, - install_dir : libexecdir) - -executable( - 'systemd-shutdown.standalone', - systemd_shutdown_sources, - include_directories : includes, - c_args : '-DSTANDALONE', - link_with : [libshared_static, - libbasic, - libsystemd_static], - dependencies : [libmount, - userspace], - build_by_default: have_standalone_binaries, - install_rpath : pkglibdir, - install : have_standalone_binaries, - install_dir : libexecdir) - -executable( - 'systemd-update-done', - 'src/update-done/update-done.c', - include_directories : includes, - link_with : [libshared], - dependencies : [userspace], - install_rpath : pkglibdir, - install : true, - install_dir : libexecdir) - -executable( - 'systemd-update-utmp', - 'src/update-utmp/update-utmp.c', - include_directories : includes, - link_with : [libshared], - dependencies : [libaudit, - userspace], - install_rpath : pkglibdir, - install : (conf.get('ENABLE_UTMP') == 1), - install_dir : libexecdir) - -if conf.get('HAVE_KMOD') == 1 - executable( - 'systemd-modules-load', - 'src/modules-load/modules-load.c', - include_directories : includes, - link_with : [libshared], - dependencies : [libkmod, - userspace], - install_rpath : pkglibdir, - install : true, - install_dir : libexecdir) - - meson.add_install_script('sh', '-c', - mkdir_p.format(modulesloaddir)) - if install_sysconfdir - meson.add_install_script('sh', '-c', - mkdir_p.format(sysconfdir / 'modules-load.d')) - endif -endif - -public_programs += executable( - 'systemd-nspawn', - systemd_nspawn_sources, - include_directories : includes, - link_with : [libnspawn_core, - libshared], - dependencies : [libblkid, - libseccomp, - userspace], - install_rpath : pkglibdir, - install : true) - -if conf.get('ENABLE_NETWORKD') == 1 - dbus_programs += executable( - 'systemd-networkd', - systemd_networkd_sources, - include_directories : network_includes, - link_with : [libnetworkd_core, - libsystemd_network, - networkd_link_with], - dependencies : [threads, - userspace], - install_rpath : pkglibdir, - install : true, - install_dir : libexecdir) - - public_programs += executable( - 'systemd-networkd-wait-online', - systemd_networkd_wait_online_sources, - include_directories : includes, - link_with : [networkd_link_with], - dependencies : [userspace], - install_rpath : pkglibdir, - install : true, - install_dir : libexecdir) - - public_programs += executable( - 'networkctl', - networkctl_sources, - include_directories : libsystemd_network_includes, - link_with : [libsystemd_network, - networkd_link_with], - dependencies : [userspace], - install_rpath : pkglibdir, - install : true) -endif - -exe = executable( - 'systemd-network-generator', - network_generator_sources, - include_directories : includes, - link_with : [networkd_link_with], - dependencies : [userspace], - install_rpath : pkglibdir, - install : true, - install_dir : libexecdir) - if want_tests != 'false' + exe = executables_by_name.get('systemd-network-generator') test('test-network-generator-conversion', test_network_generator_conversion_sh, # https://github.com/mesonbuild/meson/issues/2681 @@ -2990,26 +2693,6 @@ if want_tests != 'false' depends : exe) endif -executable( - 'systemd-sulogin-shell', - 'src/sulogin-shell/sulogin-shell.c', - include_directories : includes, - link_with : [libshared], - dependencies : [userspace], - install_rpath : pkglibdir, - install : true, - install_dir : libexecdir) - -kernel_install = executable( - 'kernel-install', - 'src/kernel-install/kernel-install.c', - include_directories : includes, - link_with : [libshared], - dependencies : [userspace], - install_rpath : pkglibdir, - install : want_kernel_install) -public_programs += kernel_install - ukify = custom_target( 'ukify', input : 'src/ukify/ukify.py', @@ -3022,7 +2705,8 @@ if want_ukify public_programs += ukify endif -if want_tests != 'false' and want_kernel_install +if want_tests != 'false' and conf.get('ENABLE_KERNEL_INSTALL') == 1 + kernel_install = executables_by_name.get('kernel-install') args = [kernel_install.full_path(), loaderentry_install.full_path(), uki_copy_install] deps = [kernel_install, loaderentry_install] if want_ukify and boot_stubs.length() > 0 diff --git a/src/ask-password/meson.build b/src/ask-password/meson.build new file mode 100644 index 0000000000..3197112ebc --- /dev/null +++ b/src/ask-password/meson.build @@ -0,0 +1,9 @@ +# SPDX-License-Identifier: LGPL-2.1-or-later + +executables += [ + executable_template + { + 'name' : 'systemd-ask-password', + 'public' : true, + 'sources' : files('ask-password.c'), + }, +] diff --git a/src/busctl/meson.build b/src/busctl/meson.build index dce0224c39..012d58c3a8 100644 --- a/src/busctl/meson.build +++ b/src/busctl/meson.build @@ -5,6 +5,14 @@ busctl_sources = files( 'busctl.c', ) +executables += [ + executable_template + { + 'name' : 'busctl', + 'public' : true, + 'sources' : busctl_sources, + }, +] + tests += [ { 'sources' : files( diff --git a/src/cgls/meson.build b/src/cgls/meson.build new file mode 100644 index 0000000000..f7eea5b9d9 --- /dev/null +++ b/src/cgls/meson.build @@ -0,0 +1,9 @@ +# SPDX-License-Identifier: LGPL-2.1-or-later + +executables += [ + executable_template + { + 'name' : 'systemd-cgls', + 'public' : true, + 'sources' : files('cgls.c'), + }, +] diff --git a/src/cgtop/meson.build b/src/cgtop/meson.build new file mode 100644 index 0000000000..afe6a33933 --- /dev/null +++ b/src/cgtop/meson.build @@ -0,0 +1,9 @@ +# SPDX-License-Identifier: LGPL-2.1-or-later + +executables += [ + executable_template + { + 'name' : 'systemd-cgtop', + 'public' : true, + 'sources' : files('cgtop.c'), + }, +] diff --git a/src/hwdb/meson.build b/src/hwdb/meson.build new file mode 100644 index 0000000000..385ed854d6 --- /dev/null +++ b/src/hwdb/meson.build @@ -0,0 +1,12 @@ +# SPDX-License-Identifier: LGPL-2.1-or-later + +executables += [ + executable_template + { + 'name' : 'systemd-hwdb', + 'public' : true, + 'conditions' : ['ENABLE_HWDB'], + 'sources' : files('hwdb.c'), + 'link_with' : udev_link_with, + 'install_rpath' : udev_rpath, + }, +] diff --git a/src/initctl/meson.build b/src/initctl/meson.build new file mode 100644 index 0000000000..c9fddc9903 --- /dev/null +++ b/src/initctl/meson.build @@ -0,0 +1,9 @@ +# SPDX-License-Identifier: LGPL-2.1-or-later + +executables += [ + libexec_template + { + 'name' : 'systemd-initctl', + 'conditions' : ['HAVE_SYSV_COMPAT'], + 'sources' : files('initctl.c'), + }, +] diff --git a/src/kernel-install/meson.build b/src/kernel-install/meson.build index 29a3d2c5f6..0fa0c37ae2 100644 --- a/src/kernel-install/meson.build +++ b/src/kernel-install/meson.build @@ -2,6 +2,15 @@ want_kernel_install = conf.get('ENABLE_KERNEL_INSTALL') == 1 +executables += [ + executable_template + { + 'name' : 'kernel-install', + 'public' : true, + 'conditions' : ['ENABLE_KERNEL_INSTALL'], + 'sources' : files('kernel-install.c'), + }, +] + ukify_install = custom_target( '60-ukify.install', input : '60-ukify.install.in', @@ -22,10 +31,9 @@ loaderentry_install = custom_target( uki_copy_install = files('90-uki-copy.install') -kernel_install_files = [ - files('50-depmod.install'), - uki_copy_install, -] +kernel_install_files = uki_copy_install + files( + '50-depmod.install', +) if want_kernel_install install_data(kernel_install_files, @@ -39,6 +47,6 @@ if want_kernel_install meson.add_install_script('sh', '-c', mkdir_p.format(sysconfdir / 'kernel/install.d')) endif - - test_kernel_install_sh = find_program('test-kernel-install.sh') endif + +test_kernel_install_sh = find_program('test-kernel-install.sh') diff --git a/src/modules-load/meson.build b/src/modules-load/meson.build new file mode 100644 index 0000000000..af5b4da384 --- /dev/null +++ b/src/modules-load/meson.build @@ -0,0 +1,19 @@ +# SPDX-License-Identifier: LGPL-2.1-or-later + +executables += [ + libexec_template + { + 'name' : 'systemd-modules-load', + 'conditions' : ['HAVE_KMOD'], + 'sources' : files('modules-load.c'), + 'dependencies' : libkmod, + }, +] + +if conf.get('HAVE_KMOD') == 1 + meson.add_install_script('sh', '-c', + mkdir_p.format(modulesloaddir)) + if install_sysconfdir + meson.add_install_script('sh', '-c', + mkdir_p.format(sysconfdir / 'modules-load.d')) + endif +endif diff --git a/src/mount/meson.build b/src/mount/meson.build new file mode 100644 index 0000000000..7b1af9ea57 --- /dev/null +++ b/src/mount/meson.build @@ -0,0 +1,13 @@ +# SPDX-License-Identifier: LGPL-2.1-or-later + +executables += [ + executable_template + { + 'name' : 'systemd-mount', + 'public' : true, + 'sources' : files('mount-tool.c'), + 'dependencies' : libmount, + }, +] + +meson.add_install_script(meson_make_symlink, + 'systemd-mount', bindir / 'systemd-umount') diff --git a/src/network/meson.build b/src/network/meson.build index dab77a0d22..23d9cefc26 100644 --- a/src/network/meson.build +++ b/src/network/meson.build @@ -150,6 +150,45 @@ libnetworkd_core = static_library( link_with : networkd_link_with, build_by_default : false) +executables += [ + libexec_template + { + 'name' : 'systemd-networkd', + 'dbus' : true, + 'conditions' : ['ENABLE_NETWORKD'], + 'sources' : systemd_networkd_sources, + 'include_directories' : network_includes, + 'link_with' : [ + libnetworkd_core, + libsystemd_network, + networkd_link_with, + ], + 'dependencies' : threads, + }, + libexec_template + { + 'name' : 'systemd-networkd-wait-online', + 'public' : true, + 'conditions' : ['ENABLE_NETWORKD'], + 'sources' : systemd_networkd_wait_online_sources, + 'link_with' : networkd_link_with, + }, + executable_template + { + 'name' : 'networkctl', + 'public' : true, + 'conditions' : ['ENABLE_NETWORKD'], + 'sources' : networkctl_sources, + 'include_directories' : libsystemd_network_includes, + 'link_with' : [ + libsystemd_network, + networkd_link_with, + ], + }, + libexec_template + { + 'name' : 'systemd-network-generator', + 'sources' : network_generator_sources, + 'link_with' : networkd_link_with, + }, +] + if conf.get('ENABLE_NETWORKD') == 1 install_data('org.freedesktop.network1.conf', install_dir : dbuspolicydir) diff --git a/src/nspawn/meson.build b/src/nspawn/meson.build index 9f00e88256..024a19a66b 100644 --- a/src/nspawn/meson.build +++ b/src/nspawn/meson.build @@ -35,7 +35,23 @@ libnspawn_core = static_library( userspace], build_by_default : false) -systemd_nspawn_sources = files('nspawn.c') +nspawn_libs = [ + libnspawn_core, + libshared, +] + +executables += [ + executable_template + { + 'name' : 'systemd-nspawn', + 'public' : true, + 'sources' : files('nspawn.c'), + 'link_with' : nspawn_libs, + 'dependencies' : [ + libblkid, + libseccomp, + ], + }, +] ############################################################ diff --git a/src/quotacheck/meson.build b/src/quotacheck/meson.build new file mode 100644 index 0000000000..0a3c3e366e --- /dev/null +++ b/src/quotacheck/meson.build @@ -0,0 +1,9 @@ +# SPDX-License-Identifier: LGPL-2.1-or-later + +executables += [ + libexec_template + { + 'name' : 'systemd-quotacheck', + 'conditions' : ['ENABLE_QUOTACHECK'], + 'sources' : files('quotacheck.c'), + }, +] diff --git a/src/reply-password/meson.build b/src/reply-password/meson.build new file mode 100644 index 0000000000..ace112c946 --- /dev/null +++ b/src/reply-password/meson.build @@ -0,0 +1,8 @@ +# SPDX-License-Identifier: LGPL-2.1-or-later + +executables += [ + libexec_template + { + 'name' : 'systemd-reply-password', + 'sources' : files('reply-password.c'), + }, +] diff --git a/src/run/meson.build b/src/run/meson.build new file mode 100644 index 0000000000..597a25abeb --- /dev/null +++ b/src/run/meson.build @@ -0,0 +1,9 @@ +# SPDX-License-Identifier: LGPL-2.1-or-later + +executables += [ + executable_template + { + 'name' : 'systemd-run', + 'public' : true, + 'sources' : files('run.c'), + }, +] diff --git a/src/shutdown/meson.build b/src/shutdown/meson.build index 6538882692..ca7ea3840d 100644 --- a/src/shutdown/meson.build +++ b/src/shutdown/meson.build @@ -9,6 +9,27 @@ systemd_shutdown_sources = files( 'umount.c', ) +executables += [ + libexec_template + { + 'name' : 'systemd-shutdown', + 'sources' : systemd_shutdown_sources, + 'dependencies' : libmount, + }, + libexec_template + { + 'name' : 'systemd-shutdown.standalone', + 'sources' : systemd_shutdown_sources, + 'c_args' : '-DSTANDALONE', + 'link_with' : [ + libbasic, + libshared_static, + libsystemd_static, + ], + 'dependencies' : libmount, + 'build_by_default' : have_standalone_binaries, + 'install' : have_standalone_binaries, + }, +] + tests += [ { 'sources' : files( diff --git a/src/socket-proxy/meson.build b/src/socket-proxy/meson.build new file mode 100644 index 0000000000..52d63a8440 --- /dev/null +++ b/src/socket-proxy/meson.build @@ -0,0 +1,10 @@ +# SPDX-License-Identifier: LGPL-2.1-or-later + +executables += [ + libexec_template + { + 'name' : 'systemd-socket-proxyd', + 'public' : true, + 'sources' : files('socket-proxyd.c'), + 'dependencies' : threads, + }, +] diff --git a/src/stdio-bridge/meson.build b/src/stdio-bridge/meson.build new file mode 100644 index 0000000000..99662b122e --- /dev/null +++ b/src/stdio-bridge/meson.build @@ -0,0 +1,9 @@ +# SPDX-License-Identifier: LGPL-2.1-or-later + +executables += [ + executable_template + { + 'name' : 'systemd-stdio-bridge', + 'public' : true, + 'sources' : files('stdio-bridge.c'), + }, +] diff --git a/src/sulogin-shell/meson.build b/src/sulogin-shell/meson.build new file mode 100644 index 0000000000..34b2b3262b --- /dev/null +++ b/src/sulogin-shell/meson.build @@ -0,0 +1,8 @@ +# SPDX-License-Identifier: LGPL-2.1-or-later + +executables += [ + libexec_template + { + 'name' : 'systemd-sulogin-shell', + 'sources' : files('sulogin-shell.c'), + }, +] diff --git a/src/sysusers/meson.build b/src/sysusers/meson.build new file mode 100644 index 0000000000..fcb291d02c --- /dev/null +++ b/src/sysusers/meson.build @@ -0,0 +1,25 @@ +# SPDX-License-Identifier: LGPL-2.1-or-later + +executables += [ + executable_template + { + 'name' : 'systemd-sysusers', + 'public' : true, + 'conditions' : ['ENABLE_SYSUSERS'], + 'sources' : files('sysusers.c'), + }, + executable_template + { + 'name' : 'systemd-sysusers.standalone', + 'public' : have_standalone_binaries, + 'conditions' : ['ENABLE_SYSUSERS'], + 'sources' : files('sysusers.c'), + 'c_args' : '-DSTANDALONE', + 'link_with' : [ + libbasic, + libbasic_gcrypt, + libshared_static, + libsystemd_static, + ], + 'build_by_default' : have_standalone_binaries, + 'install' : have_standalone_binaries, + }, +] diff --git a/src/tmpfiles/meson.build b/src/tmpfiles/meson.build index d0a1359501..892c09b168 100644 --- a/src/tmpfiles/meson.build +++ b/src/tmpfiles/meson.build @@ -5,6 +5,32 @@ systemd_tmpfiles_sources = files( 'offline-passwd.c', ) +executables += [ + executable_template + { + 'name' : 'systemd-tmpfiles', + 'public' : true, + 'conditions' : ['ENABLE_TMPFILES'], + 'sources' : systemd_tmpfiles_sources, + 'dependencies' : libacl, + }, + executable_template + { + 'name' : 'systemd-tmpfiles.standalone', + 'public' : have_standalone_binaries, + 'conditions' : ['ENABLE_TMPFILES'], + 'sources' : systemd_tmpfiles_sources, + 'c_args' : '-DSTANDALONE', + 'link_with' : [ + libbasic, + libbasic_gcrypt, + libshared_static, + libsystemd_static, + ], + 'dependencies' : libacl, + 'build_by_default' : have_standalone_binaries, + 'install' : have_standalone_binaries, + }, +] + tests += [ { 'sources' : files( diff --git a/src/tty-ask-password-agent/meson.build b/src/tty-ask-password-agent/meson.build new file mode 100644 index 0000000000..ad0c73bc4e --- /dev/null +++ b/src/tty-ask-password-agent/meson.build @@ -0,0 +1,9 @@ +# SPDX-License-Identifier: LGPL-2.1-or-later + +executables += [ + executable_template + { + 'name' : 'systemd-tty-ask-password-agent', + 'public' : true, + 'sources' : files('tty-ask-password-agent.c'), + }, +] diff --git a/src/udev/meson.build b/src/udev/meson.build index baedcaa2fe..932a718651 100644 --- a/src/udev/meson.build +++ b/src/udev/meson.build @@ -116,6 +116,23 @@ libudevd_core = static_library( userspace], build_by_default : false) +executables += [ + executable_template + { + 'name' : 'udevadm', + 'public' : true, + 'sources' : udevadm_sources, + 'link_with' : [libudevd_core], + 'dependencies' : [ + libacl, + libblkid, + libidn, + libkmod, + threads, + ], + 'install_rpath' : udev_rpath, + }, +] + udev_progs = [['ata_id/ata_id.c'], ['cdrom_id/cdrom_id.c'], ['fido_id/fido_id.c', @@ -150,6 +167,10 @@ foreach prog : udev_progs public_programs += exe endforeach +meson.add_install_script(meson_make_symlink, + bindir / 'udevadm', + libexecdir / 'systemd-udevd') + if install_sysconfdir_samples install_data('udev.conf', install_dir : sysconfdir / 'udev') diff --git a/src/update-done/meson.build b/src/update-done/meson.build new file mode 100644 index 0000000000..89a79b69d0 --- /dev/null +++ b/src/update-done/meson.build @@ -0,0 +1,8 @@ +# SPDX-License-Identifier: LGPL-2.1-or-later + +executables += [ + libexec_template + { + 'name' : 'systemd-update-done', + 'sources' : files('update-done.c'), + }, +] diff --git a/src/update-utmp/meson.build b/src/update-utmp/meson.build new file mode 100644 index 0000000000..1db4445155 --- /dev/null +++ b/src/update-utmp/meson.build @@ -0,0 +1,10 @@ +# SPDX-License-Identifier: LGPL-2.1-or-later + +executables += [ + libexec_template + { + 'name' : 'systemd-update-utmp', + 'conditions' : ['ENABLE_UTMP'], + 'sources' : files('update-utmp.c'), + 'dependencies' : libaudit, + }, +]