Add capability to build extension zip-files
Now, typing "make zip-file" will create a standard zip-file for each extension, with everything necessary, including translations and GSettings schemas. These files can then be installed with the tweak-tool or uploaded at extensions.gnome.org Based on an earlier patch by Jasper St. Pierre.
This commit is contained in:
21
Makefile.am
21
Makefile.am
@@ -3,3 +3,24 @@ ACLOCAL_AMFLAGS = -I m4 ${ACLOCAL_FLAGS}
|
||||
SUBDIRS = extensions po
|
||||
|
||||
DISTCHECK_CONFIGURE_FLAGS = --enable-extensions=all
|
||||
|
||||
include include.mk
|
||||
|
||||
zip-file: all
|
||||
-rm -fR $(builddir)/_build
|
||||
-rm -fR $(builddir)/zip-files
|
||||
mkdir $(builddir)/_build; \
|
||||
mkdir $(builddir)/zip-files; \
|
||||
$(MAKE) install DESTDIR="`pwd`/_build"; \
|
||||
for i in $(ENABLED_EXTENSIONS); do \
|
||||
mv "`pwd`/_build/$(topextensiondir)/$${i}$(extensionbase)" "`pwd`/_build/"; \
|
||||
cp -r "`pwd`/_build/$(datadir)/locale" "`pwd`/_build/$${i}$(extensionbase)"; \
|
||||
if [ -f "`pwd`/_build/$(datadir)/glib-2.0/schemas/$(gschemabase).$${i}.gschema.xml" ]; then \
|
||||
mkdir "`pwd`/_build/$${i}$(extensionbase)/schemas"; \
|
||||
mv "`pwd`/_build/$(datadir)/glib-2.0/schemas/$(gschemabase).$${i}.gschema.xml" "`pwd`/_build/$${i}$(extensionbase)/schemas"; \
|
||||
glib-compile-schemas "`pwd`/_build/$${i}$(extensionbase)/schemas"; \
|
||||
fi; \
|
||||
(cd "`pwd`/_build/$${i}$(extensionbase)"; \
|
||||
zip -qr "$(abs_builddir)/zip-files/$${i}$(extensionbase).shell-extension.zip" .; \
|
||||
); \
|
||||
done
|
||||
|
||||
10
extension.mk
10
extension.mk
@@ -1,12 +1,4 @@
|
||||
extensionurl = http://git.gnome.org/gnome-shell-extensions
|
||||
|
||||
# Change these to modify how installation is performed
|
||||
topextensiondir = $(datadir)/gnome-shell/extensions
|
||||
extensionbase = @gnome-shell-extensions.gcampax.github.com
|
||||
|
||||
uuid = $(EXTENSION_ID)$(extensionbase)
|
||||
|
||||
extensiondir = $(topextensiondir)/$(uuid)
|
||||
include $(top_srcdir)/include.mk
|
||||
|
||||
dist_extension_DATA = extension.js stylesheet.css
|
||||
nodist_extension_DATA = metadata.json $(EXTRA_EXTENSION)
|
||||
|
||||
@@ -2,7 +2,7 @@ EXTENSION_ID = alternate-tab
|
||||
|
||||
include ../../extension.mk
|
||||
|
||||
gschemas_in = org.gnome.shell.extensions.alternate-tab.gschema.xml.in
|
||||
gschemas_in = $(gschemabase).alternate-tab.gschema.xml.in
|
||||
|
||||
@INTLTOOL_XML_NOMERGE_RULE@
|
||||
|
||||
|
||||
@@ -2,7 +2,7 @@ EXTENSION_ID = auto-move-windows
|
||||
|
||||
include ../../extension.mk
|
||||
|
||||
gschemas_in = org.gnome.shell.extensions.auto-move-windows.gschema.xml.in
|
||||
gschemas_in = $(gschemabase).auto-move-windows.gschema.xml.in
|
||||
|
||||
@INTLTOOL_XML_NOMERGE_RULE@
|
||||
|
||||
|
||||
@@ -2,7 +2,7 @@ EXTENSION_ID = dock
|
||||
|
||||
include ../../extension.mk
|
||||
|
||||
gschemas_in = org.gnome.shell.extensions.dock.gschema.xml.in
|
||||
gschemas_in = $(gschemabase).dock.gschema.xml.in
|
||||
|
||||
@INTLTOOL_XML_NOMERGE_RULE@
|
||||
|
||||
|
||||
@@ -2,7 +2,7 @@ EXTENSION_ID = native-window-placement
|
||||
|
||||
include ../../extension.mk
|
||||
|
||||
gschemas_in = org.gnome.shell.extensions.native-window-placement.gschema.xml.in
|
||||
gschemas_in = $(gschemabase).native-window-placement.gschema.xml.in
|
||||
|
||||
@INTLTOOL_XML_NOMERGE_RULE@
|
||||
|
||||
|
||||
@@ -2,7 +2,7 @@ EXTENSION_ID = user-theme
|
||||
|
||||
include ../../extension.mk
|
||||
|
||||
gschemas_in = org.gnome.shell.extensions.user-theme.gschema.xml.in
|
||||
gschemas_in = $(gschemabase).user-theme.gschema.xml.in
|
||||
|
||||
@INTLTOOL_XML_NOMERGE_RULE@
|
||||
|
||||
|
||||
11
include.mk
Normal file
11
include.mk
Normal file
@@ -0,0 +1,11 @@
|
||||
extensionurl = http://git.gnome.org/gnome-shell-extensions
|
||||
|
||||
# Change these to modify how installation is performed
|
||||
topextensiondir = $(datadir)/gnome-shell/extensions
|
||||
extensionbase = @gnome-shell-extensions.gcampax.github.com
|
||||
|
||||
gschemabase = org.gnome.shell.extensions
|
||||
|
||||
uuid = $(EXTENSION_ID)$(extensionbase)
|
||||
|
||||
extensiondir = $(topextensiondir)/$(uuid)
|
||||
Reference in New Issue
Block a user