Files
Simple-Tiling/Makefile
T
2025-07-31 09:59:54 +02:00

108 lines
4.0 KiB
Makefile
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
###############################################################################
# Simple-Tiling Makefile
#
# make build → Erzeugt beide ZIP-Pakete
# make build-legacy → Erzeugt Legacy-ZIP (Shell 3.38-44)
# make build-modern → Erzeugt Modern-ZIP (Shell 45-48)
# make build-legacy-go → Installiert Legacy Erweiterung
# make build-modern-go → Installiert Modern Erweiterung
# make clean → Räumt das Verzeichnis auf
###############################################################################
UUID := simple-tiling@domoel
VERSION := 6
EXTDIR := $(HOME)/.local/share/gnome-shell/extensions
COMMON_FILES := schemas exceptions.txt locale *.css README.md LICENSE
LEGACY_PREFS := prefs_legacy.js
MODERN_PREFS := prefs_modern.js
###############################################################################
define copies
@for f in $(1) ; do \
if [ -e $$f ] ; then \
cp -r $$f $(2)/ ; \
fi ; \
done
endef
.PHONY: build build-legacy build-modern \
build-legacy-go build-modern-go \
clean
build: build-legacy build-modern
###############################################################################
# Legacy-ZIP (3.38-44)
###############################################################################
build-legacy:
@echo "==> Building LEGACY zip …"
@rm -rf build && mkdir -p build/$(UUID)
$(call copies,$(COMMON_FILES),build/$(UUID))
@glib-compile-schemas build/$(UUID)/schemas
@cp legacy.js build/$(UUID)/extension.js
@cp $(LEGACY_PREFS) build/$(UUID)/prefs.js
@sed -e "s/__UUID__/$(UUID)/g" \
-e "s/__VERSION__/$(VERSION)/g" \
metadata_legacy.json.in > build/$(UUID)/metadata.json
@cd build && zip -qr ../$(UUID)-legacy-v$(VERSION).zip .
@rm -rf build
@echo "$(UUID)-legacy-v$(VERSION).zip created"
###############################################################################
# Modern-ZIP (45-48)
###############################################################################
build-modern:
@echo "==> Building MODERN zip …"
@rm -rf build && mkdir -p build/$(UUID)
$(call copies,$(COMMON_FILES),build/$(UUID))
@glib-compile-schemas build/$(UUID)/schemas
@cp modern.js build/$(UUID)/extension.js
@cp $(MODERN_PREFS) build/$(UUID)/prefs.js
@sed -e "s/__UUID__/$(UUID)/g" \
-e "s/__VERSION__/$(VERSION)/g" \
metadata_modern.json.in > build/$(UUID)/metadata.json
@cd build && zip -qr ../$(UUID)-modern-v$(VERSION).zip .
@rm -rf build
@echo "$(UUID)-modern-v$(VERSION).zip created"
###############################################################################
# “Go”-Targets Ordner direkt installieren
###############################################################################
build-legacy-go:
@echo "==> Building & installing LEGACY folder …"
@rm -rf build && mkdir -p build/$(UUID)
$(call copies,$(COMMON_FILES),build/$(UUID))
@glib-compile-schemas build/$(UUID)/schemas
@cp legacy.js build/$(UUID)/extension.js
@cp $(LEGACY_PREFS) build/$(UUID)/prefs.js
@sed -e "s/__UUID__/$(UUID)/g" \
-e "s/__VERSION__/$(VERSION)/g" \
metadata_legacy.json.in > build/$(UUID)/metadata.json
@rm -rf $(EXTDIR)/$(UUID)
@mkdir -p $(EXTDIR)
@mv build/$(UUID) $(EXTDIR)/
@rm -rf build
@echo "✓ Installed to $(EXTDIR)/$(UUID)"
build-modern-go:
@echo "==> Building & installing MODERN folder …"
@rm -rf build && mkdir -p build/$(UUID)
$(call copies,$(COMMON_FILES),build/$(UUID))
@glib-compile-schemas build/$(UUID)/schemas
@cp modern.js build/$(UUID)/extension.js
@cp $(MODERN_PREFS) build/$(UUID)/prefs.js
@sed -e "s/__UUID__/$(UUID)/g" \
-e "s/__VERSION__/$(VERSION)/g" \
metadata_modern.json.in > build/$(UUID)/metadata.json
@rm -rf $(EXTDIR)/$(UUID)
@mkdir -p $(EXTDIR)
@mv build/$(UUID) $(EXTDIR)/
@rm -rf build
@echo "✓ Installed to $(EXTDIR)/$(UUID)"
###############################################################################
clean:
@rm -rf build $(UUID)-legacy-v$(VERSION).zip $(UUID)-modern-v$(VERSION).zip
@echo "Build directory and ZIPs removed."