[gnome-shell/wip/fmuellner/build-cleanups: 5/5] build: Use dedicated resources for helper programs
- From: Florian Müllner <fmuellner src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [gnome-shell/wip/fmuellner/build-cleanups: 5/5] build: Use dedicated resources for helper programs
- Date: Tue, 14 Aug 2018 17:29:19 +0000 (UTC)
commit 95788c9834e81f4bbb4aa9a52900d395572b7f97
Author: Florian Müllner <fmuellner gnome org>
Date: Fri Aug 10 13:56:07 2018 +0200
build: Use dedicated resources for helper programs
Using a single resource file for all JS sources saves a couple of
build system instructions, but has some serious downsides:
- bundling the entire shell code with the tools blows
up their size unnecessarily
- the tools are rebuilt unnecessarily for any shell
code change
Autotools was painful enough to let this slip, but with meson we
don't have any excuses - using the actual dependencies speeds up
the build a tiny bit and reduces the tools' sizes from over 2M
to about 50k.
https://gitlab.gnome.org/GNOME/gnome-shell/merge_requests/192
js/js-resources.gresource.xml | 4 ----
js/meson.build | 14 ++++++++++++++
js/portal-resources.gresource.xml | 7 +++++++
js/prefs-resources.gresource.xml | 11 +++++++++++
src/meson.build | 4 ++--
5 files changed, 34 insertions(+), 6 deletions(-)
---
diff --git a/js/js-resources.gresource.xml b/js/js-resources.gresource.xml
index 3c0feab60..75a6c3b12 100644
--- a/js/js-resources.gresource.xml
+++ b/js/js-resources.gresource.xml
@@ -9,8 +9,6 @@
<file>gdm/realmd.js</file>
<file>gdm/util.js</file>
- <file>extensionPrefs/main.js</file>
-
<file>misc/config.js</file>
<file>misc/extensionUtils.js</file>
<file>misc/fileUtils.js</file>
@@ -33,8 +31,6 @@
<file>perf/core.js</file>
<file>perf/hwtest.js</file>
- <file>portalHelper/main.js</file>
-
<file>ui/accessDialog.js</file>
<file>ui/altTab.js</file>
<file>ui/animation.js</file>
diff --git a/js/meson.build b/js/meson.build
index dd8ca3f66..4a572c53f 100644
--- a/js/meson.build
+++ b/js/meson.build
@@ -6,3 +6,17 @@ js_resources = gnome.compile_resources(
c_name: 'shell_js_resources',
dependencies: [config_js]
)
+
+portal_resources = gnome.compile_resources(
+ 'portal-resources', 'portal-resources.gresource.xml',
+ source_dir: ['.', meson.current_build_dir()],
+ c_name: 'portal_js_resources',
+ dependencies: [config_js]
+)
+
+prefs_resources = gnome.compile_resources(
+ 'prefs-resources', 'prefs-resources.gresource.xml',
+ source_dir: ['.', meson.current_build_dir()],
+ c_name: 'prefs_js_resources',
+ dependencies: [config_js]
+)
diff --git a/js/portal-resources.gresource.xml b/js/portal-resources.gresource.xml
new file mode 100644
index 000000000..3a06747b0
--- /dev/null
+++ b/js/portal-resources.gresource.xml
@@ -0,0 +1,7 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<gresources>
+ <gresource prefix="/org/gnome/shell">
+ <file>misc/config.js</file>
+ <file>portalHelper/main.js</file>
+ </gresource>
+</gresources>
diff --git a/js/prefs-resources.gresource.xml b/js/prefs-resources.gresource.xml
new file mode 100644
index 000000000..653c4cb3f
--- /dev/null
+++ b/js/prefs-resources.gresource.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<gresources>
+ <gresource prefix="/org/gnome/shell">
+ <file>extensionPrefs/main.js</file>
+
+ <file>misc/config.js</file>
+ <file>misc/extensionUtils.js</file>
+ <file>misc/fileUtils.js</file>
+ <file>misc/params.js</file>
+ </gresource>
+</gresources>
diff --git a/src/meson.build b/src/meson.build
index 8cd7fe8cf..178e05899 100644
--- a/src/meson.build
+++ b/src/meson.build
@@ -261,7 +261,7 @@ executable('gnome-shell', 'main.c',
)
executable('gnome-shell-extension-prefs',
- 'gnome-shell-extension-prefs.c', js_resources,
+ 'gnome-shell-extension-prefs.c', prefs_resources,
c_args: tools_cflags,
dependencies: tools_deps,
include_directories: [conf_inc],
@@ -271,7 +271,7 @@ executable('gnome-shell-extension-prefs',
if have_networkmanager
executable('gnome-shell-portal-helper',
- 'gnome-shell-portal-helper.c', js_resources,
+ 'gnome-shell-portal-helper.c', portal_resources,
c_args: tools_cflags,
dependencies: tools_deps,
include_directories: [conf_inc],
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]