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