3 # Β© 2023β2024 Lady [@ Ladyβs Computer].
5 # This Source Code Form is subject to the terms of the Mozilla Public
6 # License, v. 2.0. If a copy of the MPL was not distributed with this
7 # file, You can obtain one at https://mozilla.org/MPL/2.0/.
15 SHUSHEOPTS := SRCDIR='$(SRCDIR)' INCLUDEDIR='$(SRCDIR)/{include}' EXTRAPARSERS='$(wildcard parsers/*.xslt)' EXTRATRANSFORMS='$(wildcard transforms/*.xslt)'
18 YSEMEOPTS := BUILDTARGET='.grass' DESTDIR='$(DESTDIR)' SERVERPATH='lady/www'
20 # β Β§ Call out to β©π° δΉ¦η€Ύ ββββββββββββββββββββββββββββββββββββββββββ
22 build : $(SHUSHE)/GNUmakefile prebuild
23 @for publicfile in $(patsubst %,"%",$(wildcard $(DESTDIR)/*)); do if git check-ignore -q "$$publicfile"; then rm -rf "$$publicfile"; fi; done
24 @$(MAKE) -f '$<' install $(SHUSHEOPTS)
25 @touch '$(BUILDTARGET)'
27 prebuild : $(SHUSHE)/GNUmakefile
28 @$(MAKE) -f '$<' $(SHUSHEOPTS)
30 list : $(SHUSHE)/GNUmakefile
31 @$(MAKE) -f '$<' $@ $(SHUSHEOPTS)
33 $(BUILDDIR)/% $(DESTDIR)/% : $(SHUSHE)/GNUmakefile
34 @$(MAKE) -f '$<' $@ $(SHUSHEOPTS)
36 # β Β§ Call out to π₯π€ Yseme βββββββββββββββββββββββββββββββββββββββββ
38 dry-sync sync : $(YSEME)/GNUmakefile
39 $(MAKE) -f '$<' $@ $(YSEMEOPTS)
41 # β Β§ Special targets βββββββββββββββββββββββββββββββββββββββββββββββββ
44 @for publicfile in $(patsubst %,"%",$(wildcard $(DESTDIR)/*)); do if git check-ignore -q "$$publicfile"; then rm -rf "$$publicfile"; fi; done
48 .PHONY : FORCE build dry-sync gone list prebuild sync ;
50 # β Β§ MakeΒ·file targets βββββββββββββββββββββββββββββββββββββββββββββββ
52 $(SHUSHE)/GNUmakefile $(YSEME)/GNUmakefile : %/GNUmakefile : FORCE
53 git submodule update --init '$*'