2 # Copyright 2002-2007 Adrian Thurston <thurston@cs.queensu.ca>
5 # This file is part of Ragel.
7 # Ragel is free software; you can redistribute it and/or modify
8 # it under the terms of the GNU General Public License as published by
9 # the Free Software Foundation; either version 2 of the License, or
10 # (at your option) any later version.
12 # Ragel is distributed in the hope that it will be useful,
13 # but WITHOUT ANY WARRANTY; without even the implied warranty of
14 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
15 # GNU General Public License for more details.
17 # You should have received a copy of the GNU General Public License
18 # along with Ragel; if not, write to the Free Software
19 # Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
21 RAGEL
= ..
/ragel
/ragel
27 atoi awkemu clang concurrent cppscan format gotocallret mailbox params \
28 pullscan rlscan statechart
30 #########################################
35 rm -Rf
*.o
*.c
*.
cpp $(TARGS
)
38 gcc
$(CFLAGS
) -Wall
-g
-c
-O3
-o
$@
$<
41 g
++ $(CFLAGS
) -Wall
-g
-c
-O3
-o
$@
$<
43 #########################################
45 gotocallret
: gotocallret.o
46 g
++ -g
-o gotocallret gotocallret.o
48 gotocallret.
cpp: gotocallret.rl
49 $(RAGEL
) -G2
-o gotocallret.
cpp gotocallret.rl
51 gotocallret.o
: gotocallret.
cpp
52 g
++ -Wall
-g
-c
-O3
-o
$@
$<
58 pullscan.c
: pullscan.rl
$(RAGEL
)
59 $(RAGEL
) -G2
-o
$@ pullscan.rl
61 concurrent
: concurrent.o
62 g
++ -g
-o concurrent concurrent.o
64 concurrent.
cpp: concurrent.rl
$(RAGEL
)
65 $(RAGEL
) -G2
-o concurrent.
cpp concurrent.rl
68 g
++ -g
-o rlscan rlscan.o
71 $(RAGEL
) -G2
-o rlscan.
cpp rlscan.rl
73 statechart
: statechart.o
74 g
++ -g
-o statechart statechart.o
76 statechart.
cpp: statechart.rl
77 $(RAGEL
) -G2
-o statechart.
cpp statechart.rl
79 statechart.o
: statechart.
cpp
80 g
++ -Wall
-g
-c
-O3
-o
$@
$<
83 gcc
-g
-o params params.o
86 $(RAGEL
) -G2
-o params.c params.rl
89 gcc
-g
-o clang clang.o
92 $(RAGEL
) -G2
-o clang.c clang.rl
94 optional
: lex-cppscan re2c-cppscan
99 lex-cppscan
: lex-cppscan.o
102 re2c-cppscan
: re2c-cppscan.o
105 cppscan.
cpp: cppscan.rl
106 $(RAGEL
) -G2
-o
$@ cppscan.rl
108 lex-cppscan.
cpp: cppscan.
lex
111 re2c-cppscan.
cpp: cppscan.rec
114 example.
cpp: example.rec
118 gcc
-g
-o format format.o
121 $(RAGEL
) -G2
-o format.c format.rl
124 gcc
-g
-o awkemu awkemu.o
127 $(RAGEL
) -G2
-o awkemu.c awkemu.rl
131 g
++ -g
-o mailbox mailbox.o
133 mailbox.
cpp: mailbox.rl
134 $(RAGEL
) -G2
-o mailbox.
cpp mailbox.rl
137 g
++ -g
-o atoi atoi.o
140 $(RAGEL
) -G2
-o atoi.
cpp atoi.rl
143 g
++ -Wall
-g
-c
-O3
-o
$@
$<