avoid circular dependency
[~bandali/bndl.org] / Makefile
1 SRC := $(filter-out $(wildcard meta_*), $(wildcard *.m4 fsf-internship/*.m4))
2 OUTPUTS := $(patsubst %.m4,out/%.html, $(SRC))
3 STATIC := $(patsubst static/%,out/%, $(wildcard static/* static/.*))
4
5 all: $(OUTPUTS) out/notes.atom out/notes.rss out/style.css $(STATIC)
6
7 out/%.html: %.m4 header.html footer.html
8 @mkdir -p $(@D)
9 m4 $< > $@
10 out/notes.atom: meta_feed_atom.m4 ; m4 $< > $@
11 out/notes.rss: meta_feed_rss.m4 ; m4 $< > $@
12 $(STATIC): ; ln -s $(PWD)/static/$(@F) $@
13
14 # publications bibliography
15 static/publications-partial.html: static/bandali.bib static/bandali-bib-*
16 static/publications-partial.html: $(filter-out static/publications-partial.html, $(wildcard static/publications-*))
17 static/publications-partial.html:
18 $(MAKE) -C $(@D) $(@F)
19 out/publications.html: static/publications-partial.html
20 out/bandali-bib.html: static/bandali-bib-partial.html
21
22 clean:
23 rm -rf out/
24
25 deploy:
26 rsync -avzLP out/ abandali@bndl.org:www/site/
27 ssh abandali@bndl.org mv www/site/.htaccess-www www/.htaccess
28
29 watch:
30 while true; do \
31 echo $(SRC) header.html footer.html \
32 static/bandali.bib static/bandali-bib-* static/publications-* \
33 Makefile static/Makefile | \
34 tr " " "\n" | entr -d make; done
35
36 .PHONY: deploy watch