2 # Copyright 2002-2007 Adrian Thurston <thurston@complang.org>
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
26 atoi awkemu clang concurrent cppscan format gotocallret mailbox params \
27 pullscan rlscan statechart
29 #########################################
34 # gcc $(CFLAGS) -Wall -g -c -O3 -o $@ $<
37 # g++ $(CXXFLAGS) -Wall -g -c -O3 -o $@ $<
39 #########################################
41 gotocallret: gotocallret.o
42 g++ -g -o gotocallret gotocallret.o
44 gotocallret.cpp: gotocallret.rl
45 $(RAGEL) -G2 -o gotocallret.cpp gotocallret.rl
47 gotocallret.o: gotocallret.cpp
48 g++ -Wall -g -c -O3 -o $@ $<
54 pullscan.c: pullscan.rl $(RAGEL)
55 $(RAGEL) -G2 -o $@ pullscan.rl
57 concurrent: concurrent.o
58 g++ -g -o concurrent concurrent.o
60 concurrent.cpp: concurrent.rl $(RAGEL)
61 $(RAGEL) -G2 -o concurrent.cpp concurrent.rl
64 g++ -g -o rlscan rlscan.o
67 $(RAGEL) -G2 -o rlscan.cpp rlscan.rl
69 statechart: statechart.o
70 g++ -g -o statechart statechart.o
72 statechart.cpp: statechart.rl
73 $(RAGEL) -G2 -o statechart.cpp statechart.rl
75 statechart.o: statechart.cpp
76 g++ -Wall -g -c -O3 -o $@ $<
79 gcc -g -o params params.o
82 $(RAGEL) -G2 -o params.c params.rl
85 gcc -g -o clang clang.o
88 $(RAGEL) -G2 -o clang.c clang.rl
90 optional: lex-cppscan re2c-cppscan
95 lex-cppscan: lex-cppscan.o
98 re2c-cppscan: re2c-cppscan.o
101 cppscan.cpp: cppscan.rl
102 $(RAGEL) -G2 -o $@ cppscan.rl
104 lex-cppscan.cpp: cppscan.lex
107 re2c-cppscan.cpp: cppscan.rec
110 example.cpp: example.rec
114 gcc -g -o format format.o
117 $(RAGEL) -G2 -o format.c format.rl
120 gcc -g -o awkemu awkemu.o
123 $(RAGEL) -G2 -o awkemu.c awkemu.rl
127 g++ -g -o mailbox mailbox.o
129 mailbox.cpp: mailbox.rl
130 $(RAGEL) -G2 -o mailbox.cpp mailbox.rl
133 g++ -g -o atoi atoi.o
136 $(RAGEL) -G2 -o atoi.cpp atoi.rl
139 g++ -Wall -g -c -O3 -o $@ $<