-
Notifications
You must be signed in to change notification settings - Fork 2
/
Makefile
51 lines (39 loc) · 1.2 KB
/
Makefile
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
IL=Il/Analyzer.hs Il/Typechecker.hs Il/AST.hs ${LEXPAR}
C=C/Analyzer.hs C/Functions.hs
SRC=Main.hs Advice.hs AllStructures.hs Recommend.hs Analyzer.hs CompileDriver.hs Defs/*.hs ${C}
LEXPAR=Il/Lexer.hs Il/Parser.hs
CDOPTS=-package-conf cabal-dev/packages-7*.conf
dsinf: ${SRC}
cabal sandbox init
cabal install --only-dependencies
cabal configure
cabal build
install -m755 dist/build/dsinf/dsinf .
tests: ${SRC} Tests.hs
ghci ${CDOPTS} -O Tests.hs
Il/Lexer.hs: Il/Lexer.x
alex -g Il/Lexer.x
Il/Parser.hs: Il/Parser.y
happy -g Il/Parser.y
todo:
-egrep "(TODO|HMMM|FIXME|BUG|HACK|STUB|undefined)" ${SRC}
doc: ${SRC}
haddock --ignore-all-exports -t"Data Structure Inferrer" -o doc -h Main.hs --optghc="-package-conf cabal-dev/packages-7.2.2.conf"
git checkout gh-pages
cp -r doc/* .
git add .
git commit -a -m "Automated doc push"
git push origin gh-pages
git checkout master
thesis: thesis.tex thesis-pics/*
rubber -d thesis.tex
rubber --clean thesis.tex
-@mplayer -really-quiet /opt/world-of-goo/res/sounds/fling01.ogg
clean:
rm -f Il/Lexer.hs Il/Parser.hs
rm -f *.o *.hi C/*.o C/*.hi Defs/*.o Defs/*.hi
rubber --clean thesis.tex
binclean: clean
rm -f dsinf
pdfclean: clean
rm -f thesis.pdf