aa862a87
Salvador Abreu
removed unused fz...
|
1
2
3
4
|
SRC =
OBJ = flatzinc.tab.o
GENCFILES = flatzinc.tab.c lex.yy.c
OTHER = flatzinc.output
|
e9654c4b
Salvador Abreu
added flatzinc pa...
|
5
|
|
2ae2c2a3
Salvador Abreu
allow for multipl...
|
6
7
8
|
PLFILES = $(filter-out out-%.pl,$(wildcard *.pl))
PLOFILES = $(patsubst %.pl,%.o,$(PLFILES))
|
e88c58ae
Salvador Abreu
new back-end-spec...
|
9
10
11
|
# XXX/output.pl produces fz-XXX, the flatzinc-to-XXX compiler
FZBACKS = $(patsubst %/output.pl,%,$(wildcard */output.pl))
FZSEM = $(patsubst %/output.pl,fz-%,$(wildcard */output.pl))
|
1fa8bcd2
Salvador Abreu
back-end specific...
|
12
13
14
|
FZOFILES = $(patsubst %,%/*.o,$(FZBACKS))
# NOTE: we need to pass the `-l' flag to ensure the scanner internal
|
e9654c4b
Salvador Abreu
added flatzinc pa...
|
15
|
# variable `yylineno' is available.
|
aa862a87
Salvador Abreu
removed unused fz...
|
16
17
18
19
20
21
|
#
LEX = flex
LEXFLAGS = -l
LEXLIB =
YACC = bison
|
e9654c4b
Salvador Abreu
added flatzinc pa...
|
22
|
YACCFLAGS = -v
|
aa862a87
Salvador Abreu
removed unused fz...
|
23
24
|
CC = gcc
|
e9654c4b
Salvador Abreu
added flatzinc pa...
|
25
|
CFLAGS = -g -O
|
aa862a87
Salvador Abreu
removed unused fz...
|
26
27
|
GPLC = gplc
|
e9654c4b
Salvador Abreu
added flatzinc pa...
|
28
|
|
aa862a87
Salvador Abreu
removed unused fz...
|
29
|
RM = /bin/rm -f
|
e9654c4b
Salvador Abreu
added flatzinc pa...
|
30
|
|
aa862a87
Salvador Abreu
removed unused fz...
|
31
32
33
34
35
|
%.ast:: %.fzn
fzp < $< > $@
all: fzp $(FZSEM) $(PLOFILES) $(FZOFILES)
|
1fa8bcd2
Salvador Abreu
back-end specific...
|
36
|
fzp: $(OBJ)
|
aa862a87
Salvador Abreu
removed unused fz...
|
37
38
39
40
|
$(CC) $(CFLAGS) -o $@ $(OBJ) $(LEXLIB)
fz-%: %/output.o $(PLOFILES)
$(GPLC) -o $@ $+
|
1fa8bcd2
Salvador Abreu
back-end specific...
|
41
|
|
2ae2c2a3
Salvador Abreu
allow for multipl...
|
42
43
|
%.o: %.pl
$(GPLC) $(GPLCFLAGS) -c $<
|
1fa8bcd2
Salvador Abreu
back-end specific...
|
44
45
46
|
flatzinc.tab.c: flatzinc.y lex.yy.c
$(YACC) $(YACCFLAGS) flatzinc.y
|
2ae2c2a3
Salvador Abreu
allow for multipl...
|
47
48
|
lex.yy.c: flatzinc.l
|
aa862a87
Salvador Abreu
removed unused fz...
|
49
50
|
$(LEX) $(LEXFLAGS) flatzinc.l
|
1fa8bcd2
Salvador Abreu
back-end specific...
|
51
|
clean:
|
aa862a87
Salvador Abreu
removed unused fz...
|
52
53
|
$(RM) $(OBJ) $(PLOFILES) $(FZOFILES) $(GENCFILES) $(OTHER) core
|
1fa8bcd2
Salvador Abreu
back-end specific...
|
54
|
clobber: clean
|
e9654c4b
Salvador Abreu
added flatzinc pa...
|
55
|
$(RM) $(EXE_FILE)
|
e9654c4b
Salvador Abreu
added flatzinc pa...
|
56
|
|
1fa8bcd2
Salvador Abreu
back-end specific...
|
57
58
|
.PHONY: distclean
distclean: clobber
|
aa862a87
Salvador Abreu
removed unused fz...
|
|
|
1fa8bcd2
Salvador Abreu
back-end specific...
|
|
|
e9654c4b
Salvador Abreu
added flatzinc pa...
|
|
|
aa862a87
Salvador Abreu
removed unused fz...
|
|
|