diff --git a/meson.build b/meson.build index 9231f681722..d200b422fb9 100644 --- a/meson.build +++ b/meson.build @@ -2581,38 +2581,6 @@ meson.add_install_script(meson_make_symlink, bindir / 'udevadm', libexecdir / 'systemd-udevd') -if conf.get('ENABLE_COREDUMP') == 1 - executable( - 'systemd-coredump', - systemd_coredump_sources, - include_directories : includes, - link_with : [libshared, - libbasic_compress], - dependencies : [libacl, - liblz4, - libxz, - libzstd, - threads, - userspace], - install_rpath : pkglibdir, - install : true, - install_dir : libexecdir) - - public_programs += executable( - 'coredumpctl', - coredumpctl_sources, - include_directories : includes, - link_with : [libshared, - libbasic_compress], - dependencies : [liblz4, - libxz, - libzstd, - threads, - userspace], - install_rpath : pkglibdir, - install : true) -endif - if conf.get('ENABLE_PSTORE') == 1 executable( 'systemd-pstore', diff --git a/src/coredump/meson.build b/src/coredump/meson.build index fb31a2148fc..89468b1fbce 100644 --- a/src/coredump/meson.build +++ b/src/coredump/meson.build @@ -5,7 +5,35 @@ systemd_coredump_sources = files( 'coredump-vacuum.c', ) -coredumpctl_sources = files('coredumpctl.c') +common_link_with = [ + libshared, + libbasic_compress, +] + +common_dependencies = [ + liblz4, + libxz, + libzstd, + threads, +] + +executables += [ + libexec_template + { + 'name' : 'systemd-coredump', + 'conditions' : ['ENABLE_COREDUMP'], + 'sources' : systemd_coredump_sources, + 'link_with' : common_link_with, + 'dependencies' : common_dependencies + [libacl], + }, + executable_template + { + 'name' : 'coredumpctl', + 'public' : true, + 'conditions' : ['ENABLE_COREDUMP'], + 'sources' : files('coredumpctl.c'), + 'link_with' : common_link_with, + 'dependencies' : common_dependencies, + }, +] if conf.get('ENABLE_COREDUMP') == 1 and install_sysconfdir_samples install_data('coredump.conf',