summaryrefslogtreecommitdiffstats
path: root/js/dbusServices/meson.build
diff options
context:
space:
mode:
Diffstat (limited to '')
-rw-r--r--js/dbusServices/meson.build48
1 files changed, 48 insertions, 0 deletions
diff --git a/js/dbusServices/meson.build b/js/dbusServices/meson.build
new file mode 100644
index 0000000..2f047bb
--- /dev/null
+++ b/js/dbusServices/meson.build
@@ -0,0 +1,48 @@
+launcherconf = configuration_data()
+launcherconf.set('PACKAGE_NAME', meson.project_name())
+launcherconf.set('prefix', prefix)
+launcherconf.set('libdir', libdir)
+
+dbus_services = {
+ 'org.gnome.Shell.Extensions': 'extensions',
+ 'org.gnome.Shell.Notifications': 'notifications',
+}
+
+if enable_recorder
+ dbus_services += {
+ 'org.gnome.Shell.Screencast': 'screencast',
+ }
+endif
+
+config_dir = '@0@/..'.format(meson.current_build_dir())
+
+foreach service, dir : dbus_services
+ configure_file(
+ input: 'dbus-service.in',
+ output: service,
+ configuration: launcherconf,
+ install_dir: pkgdatadir,
+ )
+
+ serviceconf = configuration_data()
+ serviceconf.set('service', service)
+ serviceconf.set('gjs', gjs.path())
+ serviceconf.set('pkgdatadir', pkgdatadir)
+
+ configure_file(
+ input: 'dbus-service.service.in',
+ output: service + '.service',
+ configuration: serviceconf,
+ install_dir: servicedir
+ )
+
+ gnome.compile_resources(
+ service + '.src',
+ service + '.src.gresource.xml',
+ dependencies: [config_js],
+ source_dir: ['.', '..', dir, config_dir],
+ gresource_bundle: true,
+ install: true,
+ install_dir: pkgdatadir
+ )
+endforeach