summaryrefslogtreecommitdiff
path: root/makefile
blob: ee646c2b5488db66cb3ef0b71cecaa5cd1ecf1d0 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69

ALL_ARTICLES=$(wildcard article/*.md)
ALL_ARTICLES_OUT=$(ALL_ARTICLES:.md=.html)
ALL_ARTICLES_INTRO_OUT=$(ALL_ARTICLES:.md=_intro.html)
BASE_HTML=left.htm headers.htm articles.htm

all: $(ALL_ARTICLES_OUT) index.html contact/index.html bin/articleFilter bin/introFilter bin/titleFilter


bin/titleFilter : src/titleFilter.hs
	mkdir -p bin
	mkdir -p /tmp/titleFilter
	ghc -dynamic $< -isrc -outputdir /tmp/titleFilter -o $@



bin/articleFilter: src/articleFilter.hs src/Id.hs
	mkdir -p bin
	mkdir -p /tmp/articleFilter
	ghc -dynamic $< -isrc -outputdir /tmp/articleFilter -o $@

bin/introFilter: src/introFilter.hs src/Id.hs
	mkdir -p bin
	mkdir -p /tmp/introFilter
	ghc -dynamic $< -isrc -outputdir /tmp/introFilter -o $@
	

article/%.html: article/%.md bin/articleFilter $(BASE_HTML)
	pandoc --filter bin/articleFilter $< > ${@:.html=.htm}
	m4 -D TITLE_TITLE="`pandoc --filter bin/titleFilter $<`" headers.m4  > ${basename $@}_header.html
	m4 -D tmpFileNameArticle=${@:.html=.htm} -D linkFileNameArticle=${<:.md=.html} -D HEADER_HEADER=${basename $@}_header.html article/article.m4 > $@

contact/index.html: contact/index.md
	pandoc $< > ${@:.html=.htm}
	m4 -D TITLE_TITLE="`pandoc --filter bin/titleFilter $<`" headers.m4  > ${basename $@}_header.html
	m4 -D tmpFileNameArticle=${@:.html=.htm} -D linkFileNameArticle=${<:.md=.html} -D HEADER_HEADER=${basename $@}_header.html article/article.m4 > $@

article/%_intro.html: article/%.md bin/introFilter
	pandoc --filter bin/introFilter $< > ${@:.html=.htm}
	m4 -D tmpFileNameArticle=${@:.html=.htm} -D linkFileNameArticle=${<:.md=.html} article/intro.m4 > $@

articles.htm: $(ALL_ARTICLES_INTRO_OUT) bin/introFilter
	cat $(ALL_ARTICLES_INTRO_OUT) > $@



index.html: index.m4 $(BASE_HTML)
	m4 $< > $@

left.htm: res/twitterLogo.svg res/mastoLogo.svg res/gitLogo.svg res/acheLogo.svg left.m4
	m4 left.m4 > left.htm

headers.htm: headers.m4
	m4 headers.m4 > headers.htm

clean:
	rm -f $(BASE_HTML)
	rm -f articles.html
	rm -f $(ALL_ARTICLES:.md=_intro.htm)
	rm -f $(ALL_ARTICLES:.md=.htm)

mrproper:
	rm -f bin/*
	rm -f index.html
	rm -f $(ALL_ARTICLES_OUT)
	rm -f $(ALL_ARTICLES_INTRO_OUT)