summaryrefslogtreecommitdiff
path: root/monitor
diff options
context:
space:
mode:
authorIñigo Martínez <inigomartinez@gmail.com>2017-11-06 19:40:59 +0100
committerIñigo Martínez <inigomartinez@gmail.com>2017-11-07 13:19:35 +0100
commit327f1eee192a742a92e57345d25eda85cce630e6 (patch)
tree059667ec36f338bb0e00e058526ee50d01648802 /monitor
parentd1189c1bede6a6cd2b6e89dfe50d66fead49a47e (diff)
downloadgvfs-327f1eee192a742a92e57345d25eda85cce630e6.tar.gz
build: Make SystemdService entry conditional
When systemd user units installation is disabled, SystemdService entry should also not be present on D-Bus service files. This patch adds a common D-Bus service file template allowing, an homogeneus D-Bus service file generation and also a SystemService entry conditioned to the systemd user units installation option. https://bugzilla.gnome.org/show_bug.cgi?id=786149
Diffstat (limited to 'monitor')
-rw-r--r--monitor/afc/meson.build29
-rw-r--r--monitor/gdu/meson.build29
-rw-r--r--monitor/goa/meson.build29
-rw-r--r--monitor/gphoto2/meson.build28
-rw-r--r--monitor/mtp/meson.build29
-rw-r--r--monitor/udisks2/meson.build29
6 files changed, 114 insertions, 59 deletions
diff --git a/monitor/afc/meson.build b/monitor/afc/meson.build
index 830f8ccd..b4735fe9 100644
--- a/monitor/afc/meson.build
+++ b/monitor/afc/meson.build
@@ -5,18 +5,12 @@ install_data(
install_dir: gvfs_remote_volume_monitors_dir
)
-service = gvfs_namespace + '.AfcVolumeMonitor.service'
-
-afc_service = configure_file(
- input: service + '.in',
- output: service,
- install: true,
- install_dir: dbus_service_dir,
- configuration: service_conf
-)
+dbus_service = gvfs_namespace + '.AfcVolumeMonitor'
+dbus_exec = 'gvfs-afc-volume-monitor'
+dbus_systemd_service = ''
if install_systemd_user_unit_dir
- service = 'gvfs-afc-volume-monitor.service'
+ service = dbus_exec + '.service'
configure_file(
input: service + '.in',
@@ -25,8 +19,23 @@ if install_systemd_user_unit_dir
install_dir: systemd_user_unit_dir,
configuration: service_conf
)
+
+ dbus_systemd_service = 'SystemdService=' + service
endif
+dbus_service_conf = configuration_data()
+dbus_service_conf.set('service', dbus_service)
+dbus_service_conf.set('exec', join_paths(gvfs_libexecdir, dbus_exec))
+dbus_service_conf.set('systemd_service', dbus_systemd_service)
+
+afc_service = configure_file(
+ input: dbus_service_in,
+ output: dbus_service + '.service',
+ install: true,
+ install_dir: dbus_service_dir,
+ configuration: dbus_service_conf
+)
+
sources = files(
'afcvolumemonitordaemon.c',
'afcvolume.c',
diff --git a/monitor/gdu/meson.build b/monitor/gdu/meson.build
index 8ef28265..3117b1db 100644
--- a/monitor/gdu/meson.build
+++ b/monitor/gdu/meson.build
@@ -5,18 +5,12 @@ install_data(
install_dir: gvfs_remote_volume_monitors_dir
)
-service = gvfs_namespace + '.GduVolumeMonitor.service'
-
-gdu_service = configure_file(
- input: service + '.in',
- output: service,
- install: true,
- install_dir: dbus_service_dir,
- configuration: service_conf
-)
+dbus_service = gvfs_namespace + '.GduVolumeMonitor'
+dbus_exec = 'gvfs-gdu-volume-monitor'
+dbus_systemd_service = ''
if install_systemd_user_unit_dir
- service = 'gvfs-gdu-volume-monitor.service'
+ service = dbus_exec + '.service'
configure_file(
input: service + '.in',
@@ -25,8 +19,23 @@ if install_systemd_user_unit_dir
install_dir: systemd_user_unit_dir,
configuration: service_conf
)
+
+ dbus_systemd_service = 'SystemdService=' + service
endif
+dbus_service_conf = configuration_data()
+dbus_service_conf.set('service', dbus_service)
+dbus_service_conf.set('exec', join_paths(gvfs_libexecdir, dbus_exec))
+dbus_service_conf.set('systemd_service', dbus_systemd_service)
+
+gdu_service = configure_file(
+ input: dbus_service_in,
+ output: dbus_service + '.service',
+ install: true,
+ install_dir: dbus_service_dir,
+ configuration: dbus_service_conf
+)
+
sources = files(
'gdu-volume-monitor-daemon.c',
'ggdudrive.c',
diff --git a/monitor/goa/meson.build b/monitor/goa/meson.build
index b45007ce..da063088 100644
--- a/monitor/goa/meson.build
+++ b/monitor/goa/meson.build
@@ -3,18 +3,12 @@ install_data(
install_dir: gvfs_remote_volume_monitors_dir
)
-service = gvfs_namespace + '.GoaVolumeMonitor.service'
-
-configure_file(
- input: service + '.in',
- output: service,
- install: true,
- install_dir: dbus_service_dir,
- configuration: service_conf
-)
+dbus_service = gvfs_namespace + '.GoaVolumeMonitor'
+dbus_exec = 'gvfs-goa-volume-monitor'
+dbus_systemd_service = ''
if install_systemd_user_unit_dir
- service = 'gvfs-goa-volume-monitor.service'
+ service = dbus_exec + '.service'
configure_file(
input: service + '.in',
@@ -23,8 +17,23 @@ if install_systemd_user_unit_dir
install_dir: systemd_user_unit_dir,
configuration: service_conf
)
+
+ dbus_systemd_service = 'SystemdService=' + service
endif
+dbus_service_conf = configuration_data()
+dbus_service_conf.set('service', dbus_service)
+dbus_service_conf.set('exec', join_paths(gvfs_libexecdir, dbus_exec))
+dbus_service_conf.set('systemd_service', dbus_systemd_service)
+
+configure_file(
+ input: dbus_service_in,
+ output: dbus_service + '.service',
+ install: true,
+ install_dir: dbus_service_dir,
+ configuration: dbus_service_conf
+)
+
sources = files(
'goavolumemonitordaemon.c',
'goavolume.c',
diff --git a/monitor/gphoto2/meson.build b/monitor/gphoto2/meson.build
index 7400071b..e5527c39 100644
--- a/monitor/gphoto2/meson.build
+++ b/monitor/gphoto2/meson.build
@@ -5,18 +5,13 @@ install_data(
install_dir: gvfs_remote_volume_monitors_dir
)
-service = gvfs_namespace + '.GPhoto2VolumeMonitor.service'
-gphoto2_service = configure_file(
- input: service + '.in',
- output: service,
- install: true,
- install_dir: dbus_service_dir,
- configuration: service_conf
-)
+dbus_service = gvfs_namespace + '.GPhoto2VolumeMonitor'
+dbus_exec = 'gvfs-gphoto2-volume-monitor'
+dbus_systemd_service = ''
if install_systemd_user_unit_dir
- service = 'gvfs-gphoto2-volume-monitor.service'
+ service = dbus_exec + '.service'
configure_file(
input: service + '.in',
@@ -25,8 +20,23 @@ if install_systemd_user_unit_dir
install_dir: systemd_user_unit_dir,
configuration: service_conf
)
+
+ dbus_systemd_service = 'SystemdService=' + service
endif
+dbus_service_conf = configuration_data()
+dbus_service_conf.set('service', dbus_service)
+dbus_service_conf.set('exec', join_paths(gvfs_libexecdir, dbus_exec))
+dbus_service_conf.set('systemd_service', dbus_systemd_service)
+
+gphoto2_service = configure_file(
+ input: dbus_service_in,
+ output: dbus_service + '.service',
+ install: true,
+ install_dir: dbus_service_dir,
+ configuration: dbus_service_conf
+)
+
sources = files(
'gphoto2-volume-monitor-daemon.c',
'ggphoto2volume.c',
diff --git a/monitor/mtp/meson.build b/monitor/mtp/meson.build
index a3468765..d7879bc6 100644
--- a/monitor/mtp/meson.build
+++ b/monitor/mtp/meson.build
@@ -3,18 +3,12 @@ install_data(
install_dir: gvfs_remote_volume_monitors_dir
)
-service = gvfs_namespace + '.MTPVolumeMonitor.service'
-
-configure_file(
- input: service + '.in',
- output: service,
- install: true,
- install_dir: dbus_service_dir,
- configuration: service_conf
-)
+dbus_service = gvfs_namespace + '.MTPVolumeMonitor'
+dbus_exec = 'gvfs-mtp-volume-monitor'
+dbus_systemd_service = ''
if install_systemd_user_unit_dir
- service = 'gvfs-mtp-volume-monitor.service'
+ service = dbus_exec + '.service'
configure_file(
input: service + '.in',
@@ -23,8 +17,23 @@ if install_systemd_user_unit_dir
install_dir: systemd_user_unit_dir,
configuration: service_conf
)
+
+ dbus_systemd_service = 'SystemdService=' + service
endif
+dbus_service_conf = configuration_data()
+dbus_service_conf.set('service', dbus_service)
+dbus_service_conf.set('exec', join_paths(gvfs_libexecdir, dbus_exec))
+dbus_service_conf.set('systemd_service', dbus_systemd_service)
+
+configure_file(
+ input: dbus_service_in,
+ output: dbus_service + '.service',
+ install: true,
+ install_dir: dbus_service_dir,
+ configuration: dbus_service_conf
+)
+
sources = files(
'mtp-volume-monitor-daemon.c',
'gmtpvolume.c',
diff --git a/monitor/udisks2/meson.build b/monitor/udisks2/meson.build
index 50c928a3..bd9a359b 100644
--- a/monitor/udisks2/meson.build
+++ b/monitor/udisks2/meson.build
@@ -5,18 +5,12 @@ install_data(
install_dir: gvfs_remote_volume_monitors_dir
)
-service = gvfs_namespace + '.UDisks2VolumeMonitor.service'
-
-udisks2_service = configure_file(
- input: service + '.in',
- output: service,
- install: true,
- install_dir: dbus_service_dir,
- configuration: service_conf
-)
+dbus_service = gvfs_namespace + '.UDisks2VolumeMonitor'
+dbus_exec = 'gvfs-udisks2-volume-monitor'
+dbus_systemd_service = ''
if install_systemd_user_unit_dir
- service = 'gvfs-udisks2-volume-monitor.service'
+ service = dbus_exec + '.service'
configure_file(
input: service + '.in',
@@ -25,8 +19,23 @@ if install_systemd_user_unit_dir
install_dir: systemd_user_unit_dir,
configuration: service_conf
)
+
+ dbus_systemd_service = 'SystemdService=' + service
endif
+dbus_service_conf = configuration_data()
+dbus_service_conf.set('service', dbus_service)
+dbus_service_conf.set('exec', join_paths(gvfs_libexecdir, dbus_exec))
+dbus_service_conf.set('systemd_service', dbus_systemd_service)
+
+udisks2_service = configure_file(
+ input: dbus_service_in,
+ output: dbus_service + '.service',
+ install: true,
+ install_dir: dbus_service_dir,
+ configuration: dbus_service_conf
+)
+
sources = files(
'udisks2volumemonitordaemon.c',
'gvfsudisks2drive.c',