wowana.me
website source; use git clone git://wowana.me/wowana.me.git to clone this repository.
Makefile (1238B)
1 .PHONY := all check clean upload 2 BLOGSRC := $(wildcard src/blog/*.md) 3 SRC := $(wildcard src/*.md src/pages/*.md src/mirrors/*.md) $(BLOGSRC) 4 XHT_OBJ := $(SRC:%.md=%.part.xht) src/blog/index.part.xht 5 OBJ := $(XHT_OBJ) 6 FINAL := $(XHT_OBJ:src/%.part.xht=out/%.xht) out/blog/index.xht out/blog/feed.atom 7 MARKDOWN := hoedown --xhtml 8 RSYNC_REMOTE := yululu:/mnt/www/wowana.me/ 9 10 .INTERMEDIATE: $(OBJ) 11 12 all: $(FINAL) 13 rm -f ./src/git.part.xht 14 15 check: $(FINAL) 16 xmllint --nonet --noout $^ 17 18 clean: 19 # only removes files we generated, not manually-created files 20 rm -f $(FINAL) $(OBJ) 21 22 upload: 23 rsync -Pauvz --exclude-from=rsync-ignore --delete out/ $(RSYNC_REMOTE) 24 25 src/%.part.xht: src/%.md 26 ./scripts/altnet < $< | $(MARKDOWN) > $@ 27 28 src/blog/index.part.xht: $(BLOGSRC) src/blog-header.inc 29 ( \ 30 cat src/blog-header.inc; \ 31 grep '^<!--\[time ' $(BLOGSRC) | sed -r 's/([^:]+):(.*)/\2:\1/' | \ 32 sort -r | cut -d: -f2 | scripts/blog-index) | $(MARKDOWN) > $@ 33 34 out/%.xht: src/%.part.xht src/header.inc src/footer.inc 35 mkdir -p `dirname $@` 36 ./scripts/postproc $< > $@ 37 38 out/blog/feed.atom: $(BLOGSRC:%.md=%.part.xht) 39 ./scripts/feed $$(ls -1t $^) > $@ 40 41 scripts/fp: CFLAGS += -Wno-implicit-int 42 scripts/fp: src/fp.c 43 $(CC) -o $@ $< $(CFLAGS) -lcrypto