[gnome-shell-extensions/wip/fmuellner/meson: 3/4] docs: Update instructions for extension additions for meson



commit 406f4cd170c7ca7133ef369567a2431bb5f6f1c3
Author: Florian Müllner <fmuellner gnome org>
Date:   Sun Apr 9 06:09:04 2017 +0200

    docs: Update instructions for extension additions for meson
    
    The steps for adding a new extension are clearly different in meson,
    so update the instructions accordingly. Don't bother with keeping
    the existing autotools steps - supporting both build systems in
    parallel is just temporary, autotools is on its way out.
    
    Fixes https://gitlab.gnome.org/GNOME/gnome-shell-extensions/issues/31

 HACKING.md                      | 16 ++++++++--------
 extensions/meson.build.template |  8 ++++++++
 2 files changed, 16 insertions(+), 8 deletions(-)
---
diff --git a/HACKING.md b/HACKING.md
index 217bd50..f878628 100644
--- a/HACKING.md
+++ b/HACKING.md
@@ -1,13 +1,13 @@
 ## Creating a New Extension
 
-To create a new extension, add a subdirectory in extensions.
-Then create a Makefile.am like the one in example, replacing
-the EXTENSION_ID with the basename of your extension, which
-must match the UUID in metadata.json.
-If you need additional files, add them to EXTENSION_EXTRA.
-
-Then modify extensions/Makefile.am and configure.ac. It should
-be pretty self-explanatory.
+To create a new extension, add a subdirectory in extensions. Then create
+a meson.build from the provided [template](extensions/meson.build.template).
+If you need additional sources, add them to extension_sources. Similarily add
+GSettings schemas to extension_schemas and other files to extension_data.
+
+Then modify the [toplevel Meson file](meson.build) to add the new
+extension name in the appropriate set (that is one of classic_extensions,
+default_extensions or all_extensions).
 
 Don't forget to add any translatable file to po/POTFILES.in, and
 then you're done.
diff --git a/extensions/meson.build.template b/extensions/meson.build.template
new file mode 100644
index 0000000..e83e528
--- /dev/null
+++ b/extensions/meson.build.template
@@ -0,0 +1,8 @@
+extension_data += configure_file(
+  input: metadata_name + '.in',
+  output: metadata_name,
+  configuration: metadata_conf
+)
+
+# extension_sources += files('prefs.js')
+# extension_schemas += files(metadata_conf.get('gschemaname') + '.gschema.xml')


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]