summaryrefslogtreecommitdiff
path: root/Makefile
diff options
context:
space:
mode:
Diffstat (limited to 'Makefile')
-rw-r--r--Makefile68
1 files changed, 68 insertions, 0 deletions
diff --git a/Makefile b/Makefile
new file mode 100644
index 0000000..8d535e7
--- /dev/null
+++ b/Makefile
@@ -0,0 +1,68 @@
+BINDIR := ./bin
+OUTDIR := ./public
+
+HTML_SCRIPTS := \
+ $(BINDIR)/make_html_index.sh \
+ $(BINDIR)/make_html_table.sh \
+ $(BINDIR)/make_html_archives.sh
+
+ARCHIVES_SCRIPT := $(BINDIR)/make_archives.sh
+THUMBNAILS_SCRIPT := $(BINDIR)/make_thumbnails.sh
+VIDEOS_SCRIPT := $(BINDIR)/copy_videos.sh
+DEMOS_SCRIPT := $(BINDIR)/copy_demos.sh
+
+VIDEO_FILES := $(wildcard videos/*)
+DEMO_FILES := $(wildcard demo/*)
+
+TRICKS_CSV := tricks.csv
+STYLE_CSS := style.css
+FAVICON := favicon.png
+
+site: $(OUTDIR)/index.html $(OUTDIR)/style.css $(OUTDIR)/favicon.png $(OUTDIR)/.archives_stamp $(OUTDIR)/.thumbnails_stamp $(OUTDIR)/.videos_stamp $(OUTDIR)/.demos_stamp
+
+index: $(OUTDIR)/index.html
+
+archives: $(OUTDIR)/.archives_stamp
+
+thumbnails: $(OUTDIR)/.thumbnails_stamp
+
+$(OUTDIR):
+ mkdir -p $(OUTDIR)
+
+$(OUTDIR)/index.html: $(OUTDIR)/style.css $(OUTDIR)/favicon.png $(OUTDIR)/.archives_stamp $(HTML_SCRIPTS) $(TRICKS_CSV) | $(OUTDIR)
+ @echo ">> Building index"
+ @$(BINDIR)/make_html_index.sh
+
+$(OUTDIR)/style.css: $(STYLE_CSS) | $(OUTDIR)
+ @echo ">> Copying $(STYLE_CSS)"
+ cp $< $@
+
+$(OUTDIR)/favicon.png: $(FAVICON) | $(OUTDIR)
+ @echo ">> Copying $(FAVICON)"
+ cp $< $@
+
+$(OUTDIR)/.archives_stamp: $(ARCHIVES_SCRIPT) $(TRICKS_CSV) | $(OUTDIR)
+ @echo ">> Generating archives"
+ @$(ARCHIVES_SCRIPT)
+ @touch $@
+
+$(OUTDIR)/.thumbnails_stamp: $(THUMBNAILS_SCRIPT) $(TRICKS_CSV) | $(OUTDIR)
+ @echo ">> Generating thumbnails"
+ @$(THUMBNAILS_SCRIPT)
+ @touch $@
+
+$(OUTDIR)/.videos_stamp: $(VIDEOS_SCRIPT) $(VIDEO_FILES) | $(OUTDIR)
+ @echo ">> Copying videos"
+ @$(VIDEOS_SCRIPT)
+ @touch $@
+
+$(OUTDIR)/.demos_stamp: $(DEMOS_SCRIPT) $(DEMO_FILES) | $(OUTDIR)
+ @echo ">> Copying demos"
+ @$(DEMOS_SCRIPT)
+ @touch $@
+
+clean:
+ @$(RM) -rv $(OUTDIR)
+
+.PHONY: site index archives thumbnails clean
+