From b373a3a6e1702e7514bb405122a2311d16d85fcd Mon Sep 17 00:00:00 2001 From: Luke Shumaker Date: Sat, 27 Aug 2016 17:36:46 -0400 Subject: Teach it to make atom:entry files --- Makefile | 30 +++++++++++++++++++++++------- 1 file changed, 23 insertions(+), 7 deletions(-) (limited to 'Makefile') diff --git a/Makefile b/Makefile index de1cfa9..b144c89 100644 --- a/Makefile +++ b/Makefile @@ -5,11 +5,27 @@ articles = $(filter-out public/index,$(patsubst %.md,%,$(wildcard public/*.md))) all: public/index.html $(addsuffix .html,$(articles)) -public/%.html: public/%.md pagerender.rb template.erb Makefile - ./pagerender.rb $< > $@ -public/index.md: public/ $(addsuffix .md,$(articles)) index.rb Makefile - ./index.rb $(filter-out public/ index.rb Makefile $@,$^) > $@ - touch public/ - touch $@ +public/%.html: public/%.md pagerender.rb template.html.erb util.rb Makefile + ./pagerender.rb html $< > $@ +public/%.atom: public/%.md pagerender.rb template.atom.erb util.rb Makefile + ./pagerender.rb atom $< > $@ +public/index.md: .var.articles $(addsuffix .md,$(articles)) index.rb Makefile + ./index.rb $(filter %.md,$^) > $@ + +.var.%: FORCE + @printf '%s' $(call quote.shell,$($*)) | sed 's/^/#/' | ./write-ifchanged $@ +-include $(wildcard .var.*) + clean: - rm -f -- public/*.html public/index.md + rm -f -- public/*.html public/*.atom public/index.md .var* .tmp* + +.PHONY: FORCE +.PHONY: all clean + +define nl + + +endef +# I put this as the last line in the file because it confuses Emacs syntax +# highlighting and makes the remainder of the file difficult to edit. +quote.shell = $(subst $(nl),'$$'\n'','$(subst ','\'',$1)') -- cgit v1.2.3