source: trunk/yao/share/antlr-2.7.7/examples/cpp/calc/Makefile.in @ 1

Last change on this file since 1 was 1, checked in by lnalod, 15 years ago

Initial import of YAO sources

File size: 4.5 KB
Line 
1###############################################################################
2# $Id:$
3###############################################################################
4
5##xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
6@stdvars@
7##xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
8
9## do not change this value
10subdir=examples/cpp/calc
11
12
13srcdir = @abs_top_srcdir@/examples/cpp/calc
14objdir = @abs_this_builddir@/examples/cpp/calc
15
16this : test
17test : test1 test2 test3
18
19all: calc1 calc2 calc3 test
20
21g_FILES = \
22        $(srcdir)/calc.g \
23        $(eol)
24
25g_cxx_FILES = \
26  $(objdir)/CalcLexer.cpp \
27        $(objdir)/CalcParser.cpp \
28        $(objdir)/CalcTreeWalker.cpp \
29  $(eol)
30
31g_hpp_FILES = \
32        $(objdir)/CalcLexer.hpp \
33  $(objdir)/CalcParser.hpp \
34  $(objdir)/CalcParserTokenTypes.hpp \
35  $(objdir)/CalcTreeWalker.hpp \
36  $(eol)
37
38g_txt_FILES = \
39        $(objdir)/CalcParserTokenTypes.txt \
40        $(eol)
41
42g_gen_FILES = \
43        $(g_cxx_FILES) \
44        $(g_hpp_FILES) \
45        $(g_txt_FILES) \
46        $(eol)
47
48g_obj_FILES = \
49        $(objdir)/CalcLexer@OBJEXT@ \
50        $(objdir)/CalcParser@OBJEXT@ \
51        $(objdir)/CalcTreeWalker@OBJEXT@ \
52  $(eol)
53
54## Source files
55calc1_cxx_FILES = \
56        $(g_cxx_FILES) \
57        $(srcdir)/Main.cpp  \
58        $(eol)
59
60calc2_cxx_FILES = \
61        $(g_cxx_FILES) \
62        $(srcdir)/Main2.cpp \
63        $(eol)
64
65calc3_cxx_FILES = \
66        $(g_cxx_FILES) \
67        $(srcdir)/Main3.cpp \
68        $(eol)
69
70## Object files
71calc1_obj_FILES = \
72        $(g_obj_FILES) \
73        $(objdir)/Main@OBJEXT@  \
74        $(eol)
75
76calc2_obj_FILES = \
77        $(g_obj_FILES) \
78        $(objdir)/Main2@OBJEXT@ \
79        $(eol)
80
81calc3_obj_FILES = \
82        $(g_obj_FILES) \
83        $(objdir)/Main3@OBJEXT@ \
84        $(eol)
85
86## Test commands ..
87test1_cmd = $(objdir)/calc1 < $(srcdir)/test.in
88test2_cmd = $(objdir)/calc2 '1+1;'
89test3_cmd = $(objdir)/calc3 '1+2;'
90
91
92## Tests to be executed
93test1 : calc1
94        @ v="$(verbose)"; \
95    if test $$v -gt 0 ; then \
96      @ECHO@ "$(test1_cmd)" ; \
97    else \
98      @ECHO@ "exec test1 .."; \
99    fi
100        @ $(test1_cmd)
101
102test2 : calc2   
103        @ v="$(verbose)"; \
104    if test $$v -gt 0 ; then \
105      @ECHO@ "$(test2_cmd)" ; \
106    else \
107      @ECHO@ "exec test2 .."; \
108    fi
109        @ $(test2_cmd)
110
111test3 : calc3
112        @ v="$(verbose)"; \
113    if test $$v -gt 0 ; then \
114      @ECHO@ "$(test3_cmd)" ; \
115    else \
116      @ECHO@ "exec test3 .."; \
117    fi
118        @ $(test3_cmd)
119
120
121## How to make binaries
122calc1 : $(calc1_obj_FILES) @ANTLR_LIB@
123        @ @CXX_LINK_CMD@ $@ $(calc1_obj_FILES)
124
125calc2 : $(calc2_obj_FILES) @ANTLR_LIB@
126        @ @CXX_LINK_CMD@ $@ $(calc2_obj_FILES)
127
128calc3 : $(calc3_obj_FILES) @ANTLR_LIB@
129        @ @CXX_LINK_CMD@ $@ $(calc3_obj_FILES)
130
131## How to compile ANTLR grammar files
132$(g_gen_FILES) : $(g_FILES) @ANTLR_JAR@
133        @ANTLR_COMPILE_CMD@  $(g_FILES)
134
135## GNU make - how to make object file
136$(objdir)/%@OBJEXT@ : $(srcdir)/%.cpp
137        @ @CXX_COMPILE_CMD@ $<
138
139## GNU make - how to make object file
140$(objdir)/%@OBJEXT@ : $(objdir)/%.cpp
141        @ @CXX_COMPILE_CMD@ $<
142
143## GNU make - how to make object file
144%@OBJEXT@ : $(srcdir)/%.cpp
145        @ @CXX_COMPILE_CMD@ $<
146
147## GNU make - how to make object file
148%@OBJEXT@ : $(objdir)/%.cpp
149        @ @CXX_COMPILE_CMD@ $<
150
151## Housecleaning
152clean:
153        @RMF@ *.o *.obj *.exe calc1 calc2 calc3  $(g_gen_FILES) test1 test2 test3
154
155distclean: clean
156        @RMF@ Makefile
157
158# Dependencies
159$(objdir)/CalcLexer@OBJEXT@ :       \
160 $(objdir)/CalcLexer.hpp            \
161 $(objdir)/CalcParserTokenTypes.hpp
162
163$(objdir)/CalcParser@OBJEXT@     :  \
164 $(objdir)/CalcParser.hpp           \
165 $(objdir)/CalcParserTokenTypes.hpp
166
167$(objdir)/CalcTreeWalker@OBJEXT@ :  \
168 $(objdir)/CalcTreeWalker.hpp       \
169 $(objdir)/CalcParserTokenTypes.hpp
170
171$(objdir)/Main@OBJEXT@           :  \
172 $(objdir)/CalcLexer.hpp            \
173 $(objdir)/CalcParserTokenTypes.hpp \
174 $(objdir)/CalcParser.hpp \
175 $(objdir)/CalcTreeWalker.hpp
176
177$(objdir)/Main2@OBJEXT@          :  \
178 $(objdir)/CalcLexer.hpp            \
179 $(objdir)/CalcParserTokenTypes.hpp \
180 $(objdir)/CalcParser.hpp           \
181 $(objdir)/CalcTreeWalker.hpp
182
183$(objdir)/Main3@OBJEXT@          :  \
184 $(objdir)/CalcLexer.hpp            \
185 $(objdir)/CalcParserTokenTypes.hpp \
186 $(objdir)/CalcParser.hpp           \
187 $(objdir)/CalcTreeWalker.hpp
188
189## If cxx.sh script changed ..
190$(calc1_obj_FILES) : @abs_this_builddir@/scripts/cxx.sh
191$(calc2_obj_FILES) : @abs_this_builddir@/scripts/cxx.sh
192$(calc3_obj_FILES) : @abs_this_builddir@/scripts/cxx.sh
193
194## If link.sh script changed ..
195$(calc1_obj_FILES) : @abs_this_builddir@/scripts/link.sh
196$(calc2_obj_FILES) : @abs_this_builddir@/scripts/link.sh
197$(calc3_obj_FILES) : @abs_this_builddir@/scripts/link.sh
198
199### get configured dependencies - for example, just list
200### autoconf variable ANTLR_JAR as reference and it will
201### be  done  automatically  as stddeps contains appropr.
202### rule. For details, checkout scripts/config.vars[.in]
203@stddeps@
204
205
Note: See TracBrowser for help on using the repository browser.