diff --git a/data/meson.build b/data/meson.build index bada139..92bfa2e 100644 --- a/data/meson.build +++ b/data/meson.build @@ -11,15 +11,17 @@ configure_file( install_dir: dbus_service_dir, ) -configure_file( - configuration: configuration_data({ - 'libexecdir': fprintd_installdir, - }), - input: 'fprintd.service.in', - output: 'fprintd.service', - install: true, - install_dir: systemd_unit_dir, -) +if get_option('systemd') + configure_file( + configuration: configuration_data({ + 'libexecdir': fprintd_installdir, + }), + input: 'fprintd.service.in', + output: 'fprintd.service', + install: true, + install_dir: systemd_unit_dir, + ) +endif polkit_policy = 'net.reactivated.fprint.device.policy' polkit_policy_target = i18n.merge_file(polkit_policy, diff --git a/meson.build b/meson.build index 66aa2f7..858f1fc 100644 --- a/meson.build +++ b/meson.build @@ -94,13 +94,17 @@ pod2man = find_program('pod2man', required: get_option('man')) xsltproc = find_program('xsltproc', required: get_option('gtk_doc')) # StateDirectory was introduced in systemd 235 -systemd_dep = dependency('systemd', version: '>= 235') +systemd_dep = dependency('systemd', version: '>= 235', required: false) systemd_unit_dir = get_option('systemd_system_unit_dir') -if systemd_unit_dir == '' +if systemd_unit_dir == '' and systemd_dep.found() systemd_unit_dir = systemd_dep.get_pkgconfig_variable('systemdsystemunitdir') endif +if get_option('systemd') and systemd_unit_dir == '' + error('systemd development files or systemd_system_unit_dir is needed for systemd support.') +endif + dbus_service_dir = get_option('dbus_service_dir') dbus_data_dir = datadir dbus_interfaces_dir = '' diff --git a/meson_options.txt b/meson_options.txt index be31fe1..5daa9a4 100644 --- a/meson_options.txt +++ b/meson_options.txt @@ -6,6 +6,10 @@ option('man', description: 'Generate the man files', type: 'boolean', value: true) +option('systemd', + description: 'Install system service files', + type: 'boolean', + value: true) option('systemd_system_unit_dir', description: 'Directory for systemd service files', type: 'string')