forked from ucsd-progsys/liquidhaskell
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Makefile
110 lines (79 loc) · 3.17 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
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
THREADS=1
SMTSOLVER=z3
FASTOPTS=-O0
DISTOPTS=-O2
PROFOPTS=-O2 --enable-library-profiling --enable-executable-profiling
LIQUIDOPTS=
CABAL=cabal
CABALI=$(CABAL) install
CABALP=$(CABAL) install --enable-library-profiling
# to deal with cabal sandboxes using dist/dist-sandbox-xxxxxx/build/test/test
# TASTY=find dist -type f -name test | head -n1
TASTY=./dist/build/test/test
DEPS=--dependencies-only
##############################################################################
##############################################################################
##############################################################################
fast:
$(CABAL) install -fdevel $(FASTOPTS)
first:
$(CABAL) install $(FASTOPTS) --only-dependencies --enable-tests --enable-benchmarks
dist:
# $(CABAL) install $(DISTOPTS)
$(CABAL) configure -fdevel --enable-tests --disable-library-profiling -O2
$(CABAL) build
prof:
$(CABAL) install $(PROFOPTS)
igotgoto:
$(CABAL) build $(OPTS)
cp dist/build/liquid/liquid ~/.cabal/bin/
clean:
cabal clean
docs:
$(CABAL) hscolour
$(CABAL) haddock --hoogle
deps:
$(CABALI) $(DEPS)
pdeps:
$(CABALP) $(DEPS)
all-test-py:
cd tests && ./regrtest.py -a -t $(THREADS) && cd ../
test-py:
cd tests && ./regrtest.py -t $(THREADS) && cd ../
test:
$(CABAL) configure -fdevel --enable-tests --disable-library-profiling -O2
$(CABAL) build
$(CABAL) exec $(TASTY) -- --smtsolver $(SMTSOLVER) --hide-successes --rerun-update -p 'Unit/' -j$(THREADS) +RTS -N$(THREADS) -RTS
# $(CABAL) exec $(TASTY) -- --smtsolver $(SMTSOLVER) --liquid-opts='$(LIQUIDOPTS)' --hide-successes --rerun-update -p 'Unit/' -j$(THREADS) +RTS -N$(THREADS) -RTS
test710:
$(CABAL) configure -fdevel --enable-tests --disable-library-profiling -O2
$(CABAL) build
$(TASTY) --smtsolver $(SMTSOLVER) --hide-successes --rerun-update -p 'Unit/' -j$(THREADS) +RTS -N$(THREADS) -RTS
retest:
cabal configure -fdevel --enable-tests --disable-library-profiling -O2
cabal build
cabal exec $(TASTY) -- --smtsolver $(SMTSOLVER) --hide-successes --rerun-filter "exceptions,failures,new" --rerun-update -p 'Unit/' -j$(THREADS) +RTS -N$(THREADS) -RTS
all-test:
cabal configure -fdevel --enable-tests --disable-library-profiling -O2
cabal build
cabal exec $(TASTY) -- --smtsolver $(SMTSOLVER) --hide-successes --rerun-update -j$(THREADS) +RTS -N$(THREADS) -RTS
all-test-710:
cabal configure -fdevel --enable-tests --disable-library-profiling -O2
cabal build
$(TASTY) --smtsolver $(SMTSOLVER) --hide-successes --rerun-update -j$(THREADS) +RTS -N$(THREADS) -RTS
all-retest:
cabal configure -fdevel --enable-tests --disable-library-profiling -O2
cabal build
cabal exec $(TASTY) -- --smtsolver $(SMTSOLVER) --hide-successes --rerun-filter "exceptions,failures,new" --rerun-update -j$(THREADS) +RTS -N$(THREADS) -RTS
all-retest-710:
cabal configure -fdevel --enable-tests --disable-library-profiling -O2
cabal build
$(TASTY) --smtsolver $(SMTSOLVER) --hide-successes --rerun-filter "exceptions,failures,new" --rerun-update -j$(THREADS) +RTS -N$(THREADS) -RTS
lint:
hlint --colour --report .
tags:
hasktags -x -c src/
# hasktags -c src/
# hasktags -e src/
ghcid:
ghcid --command "stack ghci --main-is liquidhaskell:exe:liquid"