[gnome-settings-daemon] build: Remove desktop generation duplicated commands
- From: Bastien Nocera <hadess src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [gnome-settings-daemon] build: Remove desktop generation duplicated commands
- Date: Mon, 5 Feb 2018 16:49:21 +0000 (UTC)
commit d5397729fc772a7223bc46c88876e9e9a85c5b76
Author: Iñigo Martínez <inigomartinez gmail com>
Date: Sat Feb 3 11:30:06 2018 +0100
build: Remove desktop generation duplicated commands
Every plugin generate an autostart desktop file, except `common`
and `dummy` that are special cases.
This desktop file generation is duplicated among the different
plugin's build files.
This code has been moved to the build file in the `plugins`
directory, avoiding any code duplication.
The downside of this is that meson is not able to generate files
in a different directory, so all the files will be generated in
the `plugin` directory, outside of the each plugin's directory.
This is something that it's worked on in a different feature and
it might be merged in the future.
See https://github.com/mesonbuild/meson/pull/2617
https://bugzilla.gnome.org/show_bug.cgi?id=793087
plugins/a11y-settings/meson.build | 10 ------
plugins/clipboard/meson.build | 10 ------
plugins/color/meson.build | 10 ------
plugins/datetime/meson.build | 10 ------
plugins/housekeeping/meson.build | 10 ------
plugins/keyboard/meson.build | 10 ------
plugins/media-keys/meson.build | 10 ------
plugins/meson.build | 52 +++++++++++++++++++-----------
plugins/mouse/meson.build | 10 ------
plugins/power/meson.build | 10 ------
plugins/print-notifications/meson.build | 10 ------
plugins/rfkill/meson.build | 10 ------
plugins/screensaver-proxy/meson.build | 10 ------
plugins/sharing/meson.build | 10 ------
plugins/smartcard/meson.build | 10 ------
plugins/sound/meson.build | 10 ------
plugins/wacom/meson.build | 10 ------
plugins/xsettings/meson.build | 10 ------
18 files changed, 33 insertions(+), 189 deletions(-)
---
diff --git a/plugins/a11y-settings/meson.build b/plugins/a11y-settings/meson.build
index f088466..8b8c52b 100644
--- a/plugins/a11y-settings/meson.build
+++ b/plugins/a11y-settings/meson.build
@@ -1,13 +1,3 @@
-desktop = 'org.gnome.SettingsDaemon.A11ySettings.desktop'
-
-configure_file(
- input: desktop + '.in',
- output: desktop,
- configuration: plugins_conf,
- install: true,
- install_dir: gsd_xdg_autostart
-)
-
sources = files(
'gsd-a11y-settings-manager.c',
'main.c'
diff --git a/plugins/clipboard/meson.build b/plugins/clipboard/meson.build
index df25cc7..8adc28e 100644
--- a/plugins/clipboard/meson.build
+++ b/plugins/clipboard/meson.build
@@ -1,13 +1,3 @@
-desktop = 'org.gnome.SettingsDaemon.Clipboard.desktop'
-
-configure_file(
- input: desktop + '.in',
- output: desktop,
- configuration: plugins_conf,
- install: true,
- install_dir: gsd_xdg_autostart
-)
-
sources = files(
'gsd-clipboard-manager.c',
'list.c',
diff --git a/plugins/color/meson.build b/plugins/color/meson.build
index f026c0a..969a17a 100644
--- a/plugins/color/meson.build
+++ b/plugins/color/meson.build
@@ -1,13 +1,3 @@
-desktop = 'org.gnome.SettingsDaemon.Color.desktop'
-
-configure_file(
- input: desktop + '.in',
- output: desktop,
- configuration: plugins_conf,
- install: true,
- install_dir: gsd_xdg_autostart
-)
-
sources = files(
'gcm-edid.c',
'gnome-datetime-source.c',
diff --git a/plugins/datetime/meson.build b/plugins/datetime/meson.build
index a21d48f..e5f614b 100644
--- a/plugins/datetime/meson.build
+++ b/plugins/datetime/meson.build
@@ -1,13 +1,3 @@
-desktop = 'org.gnome.SettingsDaemon.Datetime.desktop'
-
-configure_file(
- input: desktop + '.in',
- output: desktop,
- configuration: plugins_conf,
- install: true,
- install_dir: gsd_xdg_autostart
-)
-
install_data(
'backward',
install_dir: join_paths(gsd_pkgdatadir, 'datetime')
diff --git a/plugins/housekeeping/meson.build b/plugins/housekeeping/meson.build
index bc74370..f159347 100644
--- a/plugins/housekeeping/meson.build
+++ b/plugins/housekeeping/meson.build
@@ -1,13 +1,3 @@
-desktop = 'org.gnome.SettingsDaemon.Housekeeping.desktop'
-
-configure_file(
- input: desktop + '.in',
- output: desktop,
- configuration: plugins_conf,
- install: true,
- install_dir: gsd_xdg_autostart
-)
-
common_files = files(
'gsd-disk-space.c',
'gsd-disk-space-helper.c'
diff --git a/plugins/keyboard/meson.build b/plugins/keyboard/meson.build
index 413424a..cd203a0 100644
--- a/plugins/keyboard/meson.build
+++ b/plugins/keyboard/meson.build
@@ -1,13 +1,3 @@
-desktop = 'org.gnome.SettingsDaemon.Keyboard.desktop'
-
-configure_file(
- input: desktop + '.in',
- output: desktop,
- configuration: plugins_conf,
- install: true,
- install_dir: gsd_xdg_autostart
-)
-
sources = files(
'gsd-keyboard-manager.c',
'main.c'
diff --git a/plugins/media-keys/meson.build b/plugins/media-keys/meson.build
index 18696e9..f371d1f 100644
--- a/plugins/media-keys/meson.build
+++ b/plugins/media-keys/meson.build
@@ -1,13 +1,3 @@
-desktop = 'org.gnome.SettingsDaemon.MediaKeys.desktop'
-
-configure_file(
- input: desktop + '.in',
- output: desktop,
- configuration: plugins_conf,
- install: true,
- install_dir: gsd_xdg_autostart
-)
-
sources = files(
'bus-watch-namespace.c',
'gsd-media-keys-manager.c',
diff --git a/plugins/meson.build b/plugins/meson.build
index 6babd8e..3db69da 100644
--- a/plugins/meson.build
+++ b/plugins/meson.build
@@ -1,34 +1,34 @@
enabled_plugins = [
- 'a11y-settings',
- 'clipboard',
- 'color',
- 'datetime',
- 'dummy',
- 'power',
- 'housekeeping',
- 'keyboard',
- 'media-keys',
- 'mouse',
- 'screensaver-proxy',
- 'sharing',
- 'sound',
- 'xsettings'
+ ['a11y-settings', 'A11ySettings'],
+ ['clipboard', 'Clipboard'],
+ ['color', 'Color'],
+ ['datetime', 'Datetime'],
+ ['dummy', ''],
+ ['power', 'Power'],
+ ['housekeeping', 'Housekeeping'],
+ ['keyboard', 'Keyboard'],
+ ['media-keys', 'MediaKeys'],
+ ['mouse', 'Mouse'],
+ ['screensaver-proxy', 'ScreensaverProxy'],
+ ['sharing', 'Sharing'],
+ ['sound', 'Sound'],
+ ['xsettings', 'XSettings']
]
if enable_smartcard
- enabled_plugins += ['smartcard']
+ enabled_plugins += [['smartcard', 'Smartcard']]
endif
if enable_wacom
- enabled_plugins += ['wacom']
+ enabled_plugins += [['wacom', 'Wacom']]
endif
if enable_cups
- enabled_plugins += ['print-notifications']
+ enabled_plugins += [['print-notifications', 'PrintNotifications']]
endif
if enable_rfkill
- enabled_plugins += ['rfkill']
+ enabled_plugins += [['rfkill', 'Rfkill']]
endif
plugins_conf = configuration_data()
@@ -38,11 +38,25 @@ plugins_deps = [libgsd_dep]
plugins_cflags = ['-DGNOME_SETTINGS_LOCALEDIR="@0@"'.format(gsd_localedir)]
-foreach plugin_name: ['common'] + enabled_plugins
+foreach plugin: [['common', '']] + enabled_plugins
+ plugin_name = plugin[0]
+
cflags = [
'-DG_LOG_DOMAIN="@0@-plugin"'.format(plugin_name),
'-DPLUGIN_NAME="@0@"'.format(plugin_name),
] + plugins_cflags
+ if not ['common', 'dummy'].contains(plugin_name)
+ desktop = 'org.gnome.SettingsDaemon.@0@.desktop'.format(plugin[1])
+
+ configure_file(
+ input: join_paths(plugin_name, desktop + '.in'),
+ output: desktop,
+ configuration: plugins_conf,
+ install: true,
+ install_dir: gsd_xdg_autostart
+ )
+ endif
+
subdir(plugin_name)
endforeach
diff --git a/plugins/mouse/meson.build b/plugins/mouse/meson.build
index a01d275..7dc58ba 100644
--- a/plugins/mouse/meson.build
+++ b/plugins/mouse/meson.build
@@ -1,13 +1,3 @@
-desktop = 'org.gnome.SettingsDaemon.Mouse.desktop'
-
-configure_file(
- input: desktop + '.in',
- output: desktop,
- configuration: plugins_conf,
- install: true,
- install_dir: gsd_xdg_autostart
-)
-
sources = files(
'gsd-mouse-manager.c',
'main.c'
diff --git a/plugins/power/meson.build b/plugins/power/meson.build
index bada27f..e24ccd5 100644
--- a/plugins/power/meson.build
+++ b/plugins/power/meson.build
@@ -1,13 +1,3 @@
-desktop = 'org.gnome.SettingsDaemon.Power.desktop'
-
-configure_file(
- input: desktop + '.in',
- output: desktop,
- configuration: plugins_conf,
- install: true,
- install_dir: gsd_xdg_autostart
-)
-
sources = files(
'gpm-common.c',
'gsd-backlight-linux.c',
diff --git a/plugins/print-notifications/meson.build b/plugins/print-notifications/meson.build
index 241f305..dabd058 100644
--- a/plugins/print-notifications/meson.build
+++ b/plugins/print-notifications/meson.build
@@ -1,13 +1,3 @@
-desktop = 'org.gnome.SettingsDaemon.PrintNotifications.desktop'
-
-configure_file(
- input: desktop + '.in',
- output: desktop,
- configuration: plugins_conf,
- install: true,
- install_dir: gsd_xdg_autostart
-)
-
sources = files(
'gsd-print-notifications-manager.c',
'main.c'
diff --git a/plugins/rfkill/meson.build b/plugins/rfkill/meson.build
index 8a4d094..ef2dd7f 100644
--- a/plugins/rfkill/meson.build
+++ b/plugins/rfkill/meson.build
@@ -1,13 +1,3 @@
-desktop = 'org.gnome.SettingsDaemon.Rfkill.desktop'
-
-configure_file(
- input: desktop + '.in',
- output: desktop,
- configuration: plugins_conf,
- install: true,
- install_dir: gsd_xdg_autostart
-)
-
install_data(
'61-gnome-settings-daemon-rfkill.rules',
install_dir: join_paths(udev_dir, 'rules.d')
diff --git a/plugins/screensaver-proxy/meson.build b/plugins/screensaver-proxy/meson.build
index dda0fed..945a252 100644
--- a/plugins/screensaver-proxy/meson.build
+++ b/plugins/screensaver-proxy/meson.build
@@ -1,13 +1,3 @@
-desktop = 'org.gnome.SettingsDaemon.ScreensaverProxy.desktop'
-
-configure_file(
- input: desktop + '.in',
- output: desktop,
- configuration: plugins_conf,
- install: true,
- install_dir: gsd_xdg_autostart
-)
-
sources = files(
'gsd-screensaver-proxy-manager.c',
'main.c'
diff --git a/plugins/sharing/meson.build b/plugins/sharing/meson.build
index 5ab8265..5a40740 100644
--- a/plugins/sharing/meson.build
+++ b/plugins/sharing/meson.build
@@ -1,13 +1,3 @@
-desktop = 'org.gnome.SettingsDaemon.Sharing.desktop'
-
-configure_file(
- input: desktop + '.in',
- output: desktop,
- configuration: plugins_conf,
- install: true,
- install_dir: gsd_xdg_autostart
-)
-
sources = files(
'gsd-sharing-manager.c',
'main.c'
diff --git a/plugins/smartcard/meson.build b/plugins/smartcard/meson.build
index da256e2..f0219f3 100644
--- a/plugins/smartcard/meson.build
+++ b/plugins/smartcard/meson.build
@@ -1,13 +1,3 @@
-desktop = 'org.gnome.SettingsDaemon.Smartcard.desktop'
-
-configure_file(
- input: desktop + '.in',
- output: desktop,
- configuration: plugins_conf,
- install: true,
- install_dir: gsd_xdg_autostart
-)
-
sources = files(
'gsd-smartcard-manager.c',
'gsd-smartcard-service.c',
diff --git a/plugins/sound/meson.build b/plugins/sound/meson.build
index acba437..1b3940f 100644
--- a/plugins/sound/meson.build
+++ b/plugins/sound/meson.build
@@ -1,13 +1,3 @@
-desktop = 'org.gnome.SettingsDaemon.Sound.desktop'
-
-configure_file(
- input: desktop + '.in',
- output: desktop,
- configuration: plugins_conf,
- install: true,
- install_dir: gsd_xdg_autostart
-)
-
sources = files(
'gsd-sound-manager.c',
'main.c'
diff --git a/plugins/wacom/meson.build b/plugins/wacom/meson.build
index c150b3c..29d12dc 100644
--- a/plugins/wacom/meson.build
+++ b/plugins/wacom/meson.build
@@ -1,13 +1,3 @@
-desktop = 'org.gnome.SettingsDaemon.Wacom.desktop'
-
-configure_file(
- input: desktop + '.in',
- output: desktop,
- configuration: plugins_conf,
- install: true,
- install_dir: gsd_xdg_autostart
-)
-
policy = 'org.gnome.settings-daemon.plugins.wacom.policy'
policy_in = configure_file(
diff --git a/plugins/xsettings/meson.build b/plugins/xsettings/meson.build
index 6cfb8f7..8364d3b 100644
--- a/plugins/xsettings/meson.build
+++ b/plugins/xsettings/meson.build
@@ -1,13 +1,3 @@
-desktop = 'org.gnome.SettingsDaemon.XSettings.desktop'
-
-configure_file(
- input: desktop + '.in',
- output: desktop,
- configuration: plugins_conf,
- install: true,
- install_dir: gsd_xdg_autostart
-)
-
gsd_xsettings_gtk = files('gsd-xsettings-gtk.c')
fc_monitor = files('fc-monitor.c')
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]