-
Notifications
You must be signed in to change notification settings - Fork 2
/
Makefile
69 lines (49 loc) · 2.07 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
CABAL-CONFIGURE-FLAGS := --user
CABAL-BUILD-FLAGS :=
VERSION := 0.0.1
BASEAG := src/Language/LLVMIR/Grammar/Base.ag
PRINTAG := src/Language/LLVMIR/Printer/Module.ag
STYPEAG := src/Language/LLVMIR/Type/Standard.ag
CONVERTAG := src/Language/LLVMIR/Converter/Module.ag
PTHREADAG := src/Concurrent/Model/Domain/PThread.ag
VISUALCCFG := src/Concurrent/Model/Visualizer.ag
AUXAG := src/Concurrent/Model/Analysis/Util.ag
DFLOWAG := src/Concurrent/Model/Analysis/DataFlow.ag
ESENCODEAG := src/Concurrent/Model/ESEncoder/Model.ag
ENCODEAG := src/Concurrent/Model/Encoder/Model.ag
TENCODEAG := src/Concurrent/Model/Encoder/Threads.ag
SYSTEMCAG := src/Concurrent/Model/Analysis/SystemC.ag
ARCHSYSCAG := src/Concurrent/Model/Analysis/SystemC/Architecture.ag
AGFLAGS := -P src/Language/LLVMIR/Grammar -P src/Language/LLVMIR/Type
all : haskell
#ag : base printer pthread ppccfg encoder converter auxiliar
ag : base printer auxiliar pthread ppccfg encoder
base : $(BASEAG) $(TYPEAG)
uuagc -Hd --datarecords --self $(AGFLAGS) src/Language/LLVMIR.ag
printer : base $(PRINTAG)
uuagc -Hcfws --self $(AGFLAGS) $(PRINTAG)
converter : base $(CONVERTAG)
uuagc -Hcfws --self $(AGFLAGS) $(CONVERTAG)
esencoder : base
uuagc -Hcfws --self $(AGFLAGS) -P src/Concurrent/Model/ESEncoder $(ESENCODEAG)
encoder : base
uuagc -Hcfws --self $(AGFLAGS) -P src/Concurrent/Model/Encoder $(ENCODEAG)
uuagc -Hcfws --self $(AGFLAGS) -P src/Concurrent/Model/Encoder $(TENCODEAG)
pthread : base $(PTHREADAG)
uuagc -Hcfws --self $(AGFLAGS) $(PTHREADAG)
systemc : base $(SYSTEMCAG) $(ARCHSYSCAG)
uuagc -Hcfws --self $(AGFLAGS) -P src/Concurrent/Model/Analysis/SystemC $(SYSTEMCAG)
auxiliar : base $(AUXAG)
uuagc -Hcfws --self $(AGFLAGS) $(AUXAG)
dflow : base $(DFLOWAG)
uuagc -Hcfws --self $(AGFLAGS) $(DFLOWAG)
ppccfg : base $(VISUALCCFG)
uuagc -Hcfws --self -P src/Analysis $(AGFLAGS) -P src/Language/LLVMIR/Printer $(VISUALCCFG)
haskell : ag
cabal install
#doc : README
# asciidoc -a toc -a numbered README
dist:
tar tfz imp-$(VERSION).tar.gz $(AG)
.PHONY : haskell dist doc
# ghc -Wall -optl -w --make -o Parser Parser.hs