summaryrefslogtreecommitdiff
path: root/Makefile
blob: 6861a0a271af06ff2a132a5ae1d34d379a686c0d (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
srcs = $(shell find public-src -name 3rd-party -prune -o -not -type d -not -name '*.log' -print)
outs = $(patsubst public-src/%,public/%,\
       $(patsubst %.scss,%.css,\
       $(patsubst %.gen,%,\
         $(srcs))))
all: $(outs)
all: public/3rd-party
.PHONY: all

NET-%:
	date > $@

.DELETE_ON_ERROR:
.SECONDARY:
.PHONY: FORCE

# bin/

bin/%: bin-src/%.go bin-src/util $(wildcard bin-src/util/*.go)
	go build -o $@ $<

bin/%: bin-src/%
	@mkdir -p '$(@D)'
	ln -srTf '$<' '$@'

# public/

# Normal pattern rules
public/%: public-src/%
	@mkdir -p '$(@D)'
	ln -srTf '$<' '$@'
public/%: public/%.gen
	$^ > $@
public/%.css: public/%.scss
	scss $< $@

# Specific stuff

public/index.html: public/tls.html.part public/crtsh.html.part public/diff.html.part public/jarmon.html.in

public/crtsh.pem: bin/crtsh-getcerts cfg/domains.txt NET-crtsh
	@mkdir -p '$(@D)'
	bin/crtsh-getcerts $$(sed 's/#.*//' cfg/domains.txt) > $@

public/tls.pem: bin/tls-getcerts cfg/sockets.txt NET-tls
	@mkdir -p '$(@D)'
	bin/tls-getcerts $$(sed 's/#.*//' cfg/sockets.txt) > $@

public/diff.pem: bin/pem-diff public/tls.pem public/crtsh.pem
	$^ > $@

public/tls.html.part public/crtsh.html.part public/diff.html.part: \
public/%.html.part: public/%.pem bin/%-pem2html
	bin/$*-pem2html < $< > $@

public-src/3rd-party/yarn.LICENSES.txt: bin/yarn-bower public-src/3rd-party/package.json $(wildcard public-src/3rd-party/yarn.lock)
	bin/yarn-bower install
	bin/yarn-bower licenses generate-disclaimer > $@
public/3rd-party: public-src/3rd-party/yarn.LICENSES.txt
public/3rd-party: public-src/3rd-party/jquery-1.6.3.js
public/3rd-party:
	@touch $@
public-src/jarmon-style/%.gif: public-src/3rd-party/yarn.LICENSES.txt
	@test -f $@
public-src/3rd-party/jquery-%.js:
	wget -O - 'http://code.jquery.com/jquery-$*.js' > $@