Blame view

fz/Makefile 1.14 KB
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...