aboutsummaryrefslogtreecommitdiffstats
path: root/Makefile
blob: 1a172af157c30f2abbc85bf3c4e94593d1766c37 (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
MODULES=$(wildcard alv-lib/*.moon) alv-lib/midi/launchctl.moon
MODREFS=$(MODULES:alv-lib/%.moon=docs/reference/%.html)
CORE=$(wildcard alv/*.moon alv/**/*.moon) $(wildcard alv/*.md)
DEPS=alv/version.moon $(wildcard docs/gen/*.moon)

.PHONY: docs test release clean reference internals

docs: docs/index.html docs/guide.html reference internals
	
test:
	busted

# docs parts
reference: $(MODREFS) docs/reference/index.html
internals: docs/internals/index.html

docs/%.html: docs/%.md $(DEPS)
	@echo "building page $<"
	docs/gen/md $@ $<

docs/reference/%.html: alv-lib/%.moon $(DEPS) 
	@echo "building docs for $<"
	@mkdir -p `dirname $@`
	docs/gen/module $@ alv-lib.$(subst /,.,$*) $(subst /,.,$*)

docs/reference/index.html: $(MODREFS) $(DEPS)
	docs/gen/index $@ $(MODULES)

docs/ldoc.ltp: $(DEPS)
	docs/gen/ldoc $@

docs/internals/index.html: alv/config.ld docs/ldoc.ltp $(CORE)
	ldoc alv

clean:
	rm -rf docs/reference
	rm -rf docs/internals/*/ docs/internals/*.css docs/internals/*.html
	rm -f docs/index.html docs/guide.html docs/ldoc.*