Create Makefile

This commit is contained in:
2025-07-29 23:48:26 +02:00
committed by GitHub
parent 1afeb816c4
commit f7a86e51b1
+87
View File
@@ -0,0 +1,87 @@
###############################################################################
# SimpleTiling  Makefile
#
# make build → baut beide ZIPPakete
# make build-legacy → nur LegacyZIP (Shell 3.3844)
# make build-modern → nur ModernZIP (Shell 4548)
# make clean → räumt auf
###############################################################################
UUID := simple-tiling@domoel
VERSION := 6
# Dateien/Ordner, die in *beide* Pakete gehören
COMMON_FILES := schemas exceptions.txt locale *.css README.md LICENSE
# PrefDateien (zwei Varianten)
LEGACY_PREFS := prefs_legacy.js
MODERN_PREFS := prefs_modern.js
###############################################################################
# Helfer: copies <file list> <dest>
###############################################################################
define copies
@for f in $(1) ; do \
if [ -e $$f ] ; then \
cp -r $$f $(2)/ ; \
fi ; \
done
endef
.PHONY: build build-legacy build-modern clean
build: build-legacy build-modern
###############################################################################
# LegacyBuild
###############################################################################
build-legacy:
@echo "==> Building LEGACY package (3.3844)…"
@rm -rf build && mkdir -p build/$(UUID)
$(call copies,$(COMMON_FILES),build/$(UUID))
# Schema kompilieren
@glib-compile-schemas build/$(UUID)/schemas
# Haupt und PrefSkript
@cp legacy.js build/$(UUID)/extension.js
@cp $(LEGACY_PREFS) build/$(UUID)/prefs.js
# metadata.json anpassen
@sed -e "s/__UUID__/$(UUID)/g" \
-e "s/__VERSION__/$(VERSION)/g" \
metadata_legacy.json.in > build/$(UUID)/metadata.json
# ZipPaket
@cd build && zip -qr ../$(UUID)-legacy-v$(VERSION).zip .
@rm -rf build
@echo "✓ created $(UUID)-legacy-v$(VERSION).zip"
###############################################################################
# ModernBuild
###############################################################################
build-modern:
@echo "==> Building MODERN package (4548)…"
@rm -rf build && mkdir -p build/$(UUID)
$(call copies,$(COMMON_FILES),build/$(UUID))
# Schema kompilieren
@glib-compile-schemas build/$(UUID)/schemas
# Haupt und PrefSkript
@cp modern.js build/$(UUID)/extension.js
@cp $(MODERN_PREFS) build/$(UUID)/prefs.js
# metadata.json anpassen
@sed -e "s/__UUID__/$(UUID)/g" \
-e "s/__VERSION__/$(VERSION)/g" \
metadata_modern.json.in > build/$(UUID)/metadata.json
# ZipPaket
@cd build && zip -qr ../$(UUID)-modern-v$(VERSION).zip .
@rm -rf build
@echo "✓ created $(UUID)-modern-v$(VERSION).zip"
###############################################################################
clean:
@rm -rf build $(UUID)-legacy-v$(VERSION).zip $(UUID)-modern-v$(VERSION).zip
@echo "BuildOrdner und ZIPs entfernt."