Properly include tests directory - must use find, not ls.
[open-adventure.git] / Makefile
index 961332bb38d9b4b71249813c95658130026e6d37..f010ad99d829f0880b139ad172539811e8561f56 100644 (file)
--- a/Makefile
+++ b/Makefile
@@ -42,7 +42,7 @@ database.c database.h: compile adventure.text
 
 clean:
        rm -f *.o advent *.html database.[ch] compile *.gcno *.gcda
-       rm -f README advent.6 MANIFEST
+       rm -f README advent.6 MANIFEST *.tar.gz
        cd tests; $(MAKE) --quiet clean
 
 check: advent
@@ -58,11 +58,18 @@ check: advent
 .adoc:
        asciidoc $<
 
+html: advent.html history.html hints.html
+
 # README.adoc exists because that filename is magic on GitLab.
 DOCS=COPYING NEWS README.adoc TODO advent.adoc history.adoc hints.adoc advent.6
 
+# Can't use GNU tar's --transform, needs to build under Alpine Linux.
+# This is a requirement for testing dist in GitLab's CI pipeline
 advent-$(VERS).tar.gz: $(SOURCES) $(DOCS)
-       tar --transform='s:^:advent-$(VERS)/:' --show-transformed-names -cvzf advent-$(VERS).tar.gz $(SOURCES) $(DOCS)
+       @find $(SOURCES) $(DOCS) tests -print | sed s:^:advent-$(VERS)/: >MANIFEST
+       @(ln -s . advent-$(VERS))
+       (tar -T MANIFEST -czvf advent-$(VERS).tar.gz)
+       @(rm advent-$(VERS))
 
 release: advent-$(VERS).tar.gz advent.html history.html hints.html
        shipper version=$(VERS) | sh -e -x