Enable back parser build
[scilab.git] / scilab / modules / ast / Makefile.am
1 ##
2 ##  Scilab ( http://www.scilab.org/ ) - This file is part of Scilab
3 ##  Copyright (C) 2007-2008 - DIGITEO - Bruno JOFRET
4 ##  Copyright (C) 2007-2008 - DIGITEO - Antoine ELIAS
5 ##
6 ##  This file must be used under the terms of the CeCILL.
7 ##  This source file is licensed as described in the file COPYING, which
8 ##  you should have received as part of this distribution.  The terms
9 ##  are also available at
10 ##  http://www.cecill.info/licences/Licence_CeCILL_V2-en.txt
11 ##
12 ##
13
14 pkglib_LTLIBRARIES      = libsciast.la
15
16 libsciast_la_SOURCES = \
17         src/cpp/ast/runvisitor.cpp \
18         src/cpp/ast/visitor_common.cpp \
19         src/cpp/ast/printvisitor.cpp \
20         src/cpp/ast/debugvisitor.cpp \
21         src/cpp/ast/mutevisitor.cpp \
22         src/cpp/ast/shortcutvisitor.cpp \
23         src/cpp/ast/macrovarvisitor.cpp \
24         src/cpp/ast/expHistory.cpp \
25     src/cpp/operations/interface_addition.cpp \
26     src/cpp/operations/types_finite.cpp \
27     src/cpp/operations/operations.cpp \
28     src/cpp/operations/types_kronecker.cpp \
29     src/cpp/operations/types_addition.cpp \
30     src/cpp/operations/types_ldivide.cpp \
31     src/cpp/operations/types_comparison_eq.cpp \
32     src/cpp/operations/types_multiplication.cpp \
33     src/cpp/operations/types_comparison_lt_le_gt_ge.cpp \
34     src/cpp/operations/types_or_and.cpp \
35     src/cpp/operations/types_comparison_ne.cpp \
36     src/cpp/operations/types_power.cpp \
37     src/cpp/operations/types_divide.cpp \
38     src/cpp/operations/types_substraction.cpp \
39     src/c/operations/matrix_multiplication.c \
40     src/c/operations/matrix_transpose.c \
41     src/c/operations/matrix_kronecker.c \
42     src/c/operations/operations_tools.c \
43     src/c/operations/matrix_substraction.c \
44     src/c/operations/invert_matrix.c \
45     src/c/operations/matrix_power.c \
46     src/c/operations/matrix_division.c \
47     src/c/operations/matrix_finite.c \
48     src/c/operations/matrix_addition.c \
49     src/c/operations/doublecomplex.c \
50     src/cpp/parse/parser.cpp \
51     src/cpp/parse/parsescilab.cpp \
52     src/cpp/parse/printerror.cpp \
53     src/cpp/parse/scanscilab.cpp \
54     src/cpp/symbol/context.cpp \
55     src/cpp/symbol/symbol.cpp \
56     src/cpp/types/arrayof.cpp \
57     src/cpp/types/int.cpp \
58     src/cpp/types/mlist.cpp \
59     src/cpp/types/threadId.cpp \
60     src/cpp/types/bool.cpp \
61     src/cpp/types/library.cpp \
62     src/cpp/types/overload.cpp \
63     src/cpp/types/tlist.cpp \
64     src/cpp/types/cell.cpp \
65     src/cpp/types/list.cpp \
66     src/cpp/types/polynom.cpp \
67     src/cpp/types/tostring_common.cpp \
68     src/cpp/types/double.cpp \
69     src/cpp/types/listdelete.cpp \
70     src/cpp/types/singlepoly.cpp \
71     src/cpp/types/types.cpp \
72     src/cpp/types/file.cpp \
73     src/cpp/types/listinsert.cpp \
74     src/cpp/types/singlestruct.cpp \
75     src/cpp/types/types_tools.cpp \
76     src/cpp/types/function.cpp \
77     src/cpp/types/listoperation.cpp \
78     src/cpp/types/sparse.cpp \
79     src/cpp/types/void.cpp \
80     src/cpp/types/graphichandle.cpp \
81     src/cpp/types/listundefined.cpp \
82     src/cpp/types/string.cpp \
83     src/cpp/types/implicitlist.cpp \
84     src/cpp/types/macro.cpp \
85     src/cpp/types/struct.cpp \
86     src/cpp/types/macrofile.cpp \
87     src/cpp/types/callable.cpp \
88     src/cpp/system_env/dynamic_module.cpp \
89     src/cpp/system_env/setenvvar.cpp \
90     src/cpp/system_env/sci_home.cpp \
91     src/cpp/system_env/context_get.cpp \
92     src/cpp/system_env/configvariable.cpp \
93     src/cpp/system_env/sci_path.cpp \
94     src/cpp/system_env/sci_ieee.cpp \
95     src/cpp/system_env/lasterror.cpp \
96     src/cpp/system_env/sci_mode.cpp \
97     src/cpp/system_env/promptmode.cpp \
98     src/cpp/system_env/sci_simpMode.cpp \
99     src/cpp/system_env/home.cpp \
100     src/cpp/system_env/sci_tmpdir.cpp \
101     src/cpp/system_env/reference_modules.cpp \
102     src/cpp/system_env/formatmode.cpp \
103     src/cpp/system_env/warningmode.cpp
104
105 if ENABLE_DEBUG
106 libsciast_la_SOURCES += src/cpp/types/inspector.cpp
107 endif
108
109
110 libsciast_la_CPPFLAGS = \
111         -Iincludes/ast \
112         -Iincludes/exps \
113         -Iincludes/operations \
114         -Iincludes/parse \
115         -Iincludes/symbol \
116         -Iincludes/system_env \
117         -Iincludes/types \
118         -Isrc/cpp \
119     -I$(top_srcdir)/modules/dynamic_link/includes \
120         -I$(top_srcdir)/modules/functions_manager/includes \
121         -I$(top_srcdir)/modules/console/includes \
122         -I$(top_srcdir)/modules/elementary_functions/includes \
123         -I$(top_srcdir)/modules/output_stream/includes \
124         -I$(top_srcdir)/modules/api_scilab/includes \
125         -I$(top_srcdir)/modules/string/includes \
126         -I$(top_srcdir)/modules/threads/includes \
127         -I$(top_srcdir)/modules/localization/includes \
128         -I$(top_srcdir)/modules/io/includes \
129         -I$(top_srcdir)/modules/fileio/includes \
130     $(EIGEN_CPPFLAGS) \
131         $(AM_CPPFLAGS)
132
133
134 libsciast_la_includedir=$(pkgincludedir)
135 libsciast_la_include_HEADERS =
136
137
138 #### Target ######
139 modulename=ast
140
141 ####io : init scripts ####
142 libsciast_la_etcdir = $(mydatadir)/etc
143 libsciast_la_etc_DATA = \
144     etc/ast.quit \
145     etc/ast.start
146
147
148 #### ast : include files ####
149 libsciast_scilab_la_includedir=$(pkgincludedir)
150 libsciast_scilab_la_include_HEADERS = \
151 includes/operations/matrix_power.h \
152 includes/operations/types_substraction.hxx \
153 includes/operations/types_addition.hxx \
154 includes/operations/types_kronecker.hxx \
155 includes/operations/generic_operations.hxx \
156 includes/operations/types_divide.hxx \
157 includes/operations/types_finite.hxx \
158 includes/operations/types_transposition.hxx \
159 includes/operations/matrix_addition.h \
160 includes/operations/matrix_substraction.h \
161 includes/operations/doublecomplex.h \
162 includes/operations/types_comparison_eq.hxx \
163 includes/operations/matrix_transpose.h \
164 includes/operations/matrix_kronecker.h \
165 includes/operations/matrix_right_division.h \
166 includes/operations/types_comparison_ne.hxx \
167 includes/operations/types_multiplication.hxx \
168 includes/operations/types_ldivide.hxx \
169 includes/operations/types_or_and.hxx \
170 includes/operations/matrix_left_division.h \
171 includes/operations/types_power.hxx \
172 includes/operations/matrix_finite.h \
173 includes/operations/operations_tools.h \
174 includes/operations/operations.hxx \
175 includes/operations/operation_f.h \
176 includes/operations/types_comparison_lt_le_gt_ge.hxx \
177 includes/operations/invert_matrix.h \
178 includes/operations/interface_addition.h \
179 includes/operations/matrix_multiplication.h \
180 includes/operations/matrix_division.h \
181 includes/exps/floatexp.hxx \
182 includes/exps/intexp.hxx \
183 includes/exps/returnexp.hxx \
184 includes/exps/doubleexp.hxx \
185 includes/exps/dollarvar.hxx \
186 includes/exps/commentexp.hxx \
187 includes/exps/simplevar.hxx \
188 includes/exps/continueexp.hxx \
189 includes/exps/matrixlineexp.hxx \
190 includes/exps/ast.hxx \
191 includes/exps/breakexp.hxx \
192 includes/exps/mathexp.hxx \
193 includes/exps/constexp.hxx \
194 includes/exps/seqexp.hxx \
195 includes/exps/boolexp.hxx \
196 includes/exps/dec.hxx \
197 includes/exps/logicalopexp.hxx \
198 includes/exps/decls.hxx \
199 includes/exps/decs.hxx \
200 includes/exps/transposeexp.hxx \
201 includes/exps/ifexp.hxx \
202 includes/exps/whileexp.hxx \
203 includes/exps/alldec.hxx \
204 includes/exps/callexp.hxx \
205 includes/exps/caseexp.hxx \
206 includes/exps/assignexp.hxx \
207 includes/exps/all.hxx \
208 includes/exps/location.hxx \
209 includes/exps/arraylistexp.hxx \
210 includes/exps/trycatchexp.hxx \
211 includes/exps/stringexp.hxx \
212 includes/exps/var.hxx \
213 includes/exps/cellcallexp.hxx \
214 includes/exps/exp.hxx \
215 includes/exps/arraylistvar.hxx \
216 includes/exps/colonvar.hxx \
217 includes/exps/vardec.hxx \
218 includes/exps/selectexp.hxx \
219 includes/exps/stepvisitor.hxx \
220 includes/exps/controlexp.hxx \
221 includes/exps/assignlistexp.hxx \
222 includes/exps/anydecs.hxx \
223 includes/exps/matrixexp.hxx \
224 includes/exps/allexp.hxx \
225 includes/exps/allvar.hxx \
226 includes/exps/notexp.hxx \
227 includes/exps/listexp.hxx \
228 includes/exps/cellexp.hxx \
229 includes/exps/fieldexp.hxx \
230 includes/exps/functiondec.hxx \
231 includes/exps/token.hxx \
232 includes/exps/nilexp.hxx \
233 includes/exps/forexp.hxx \
234 includes/exps/opexp.hxx \
235 includes/ast/printvisitor.hxx \
236 includes/ast/timedvisitor.hxx \
237 includes/ast/visitor.hxx \
238 includes/ast/mutevisitor.hxx \
239 includes/ast/serializervisitor.hxx \
240 includes/ast/expHistory.hxx \
241 includes/ast/scilabexception.hxx \
242 includes/ast/shortcutvisitor.hxx \
243 includes/ast/macrovarvisitor.hxx \
244 includes/ast/debugvisitor.hxx \
245 includes/ast/visitor_common.hxx \
246 includes/ast/stepvisitor.hxx \
247 includes/ast/runvisitor.hxx \
248 includes/ast/deserializervisitor.hxx \
249 includes/ast/dynlib_ast.h \
250 includes/ast/execvisitor.hxx \
251 includes/ast/dummyvisitor.hxx \
252 includes/types/dollar.hxx \
253 includes/types/user.hxx \
254 includes/types/bool.hxx \
255 includes/types/colon.hxx \
256 includes/types/listundefined.hxx \
257 includes/types/sparse.hxx \
258 includes/types/mlist.hxx \
259 includes/types/listinsert.hxx \
260 includes/types/listdelete.hxx \
261 includes/types/pointer.hxx \
262 includes/types/matrixiterator.hxx \
263 includes/types/function.hxx \
264 includes/types/c_gateway_prototype.h \
265 includes/types/macro.hxx \
266 includes/types/threadId.hxx \
267 includes/types/singlestruct.hxx \
268 includes/types/double.hxx \
269 includes/types/alltypes.hxx \
270 includes/types/int.hxx \
271 includes/types/tostring_common.hxx \
272 includes/types/inspector.hxx \
273 includes/types/type_traits.hxx \
274 includes/types/container.hxx \
275 includes/types/gatewaystruct.hxx \
276 includes/types/arrayof.hxx \
277 includes/types/typesdecl.hxx \
278 includes/types/overload.hxx \
279 includes/types/callable.hxx \
280 includes/types/void.hxx \
281 includes/types/graphichandle.hxx \
282 includes/types/cpp_gateway_prototype.hxx \
283 includes/types/types.hxx \
284 includes/types/implicitlist.hxx \
285 includes/types/library.hxx \
286 includes/types/list.hxx \
287 includes/types/cell.hxx \
288 includes/types/internal.hxx \
289 includes/types/polynom.hxx \
290 includes/types/singlepoly.hxx \
291 includes/types/struct.hxx \
292 includes/types/macrofile.hxx \
293 includes/types/file.hxx \
294 includes/types/tlist.hxx \
295 includes/types/listoperation.hxx \
296 includes/types/types_tools.hxx \
297 includes/types/sparseOp.hxx \
298 includes/types/string.hxx \
299 includes/parse/parsescilab.hxx \
300 includes/parse/parser_private.hxx \
301 includes/parse/parser.hxx \
302 includes/parse/isatty.hxx \
303 includes/parse/parse.hxx \
304 includes/symbol/symbol.hxx \
305 includes/symbol/context.hxx \
306 includes/symbol/variables.hxx \
307 includes/symbol/libraries.hxx \
308 includes/system_env/setenvvar.h \
309 includes/system_env/sci_simpMode.h \
310 includes/system_env/dynamic_module.h \
311 includes/system_env/reference_modules.h \
312 includes/system_env/sci_tmpdir.h \
313 includes/system_env/context_get.h \
314 includes/system_env/lasterror.h \
315 includes/system_env/promptmode.h \
316 includes/system_env/sci_path.h \
317 includes/system_env/sci_mode.h \
318 includes/system_env/sci_ieee.h \
319 includes/system_env/formatmode.h \
320 includes/system_env/sci_home.h \
321 includes/system_env/warningmode.h \
322 includes/system_env/configvariable.hxx \
323 includes/system_env/home.h
324
325
326 if BUILD_PARSER
327
328 BUILT_SOURCES = $(FLEX_SCANSCILAB_CXX) $(BISON_PARSESCILAB_CXX)
329
330 LFLAGS = --noline --nounistd -o $(FLEX_SCANSCILAB_CXX)
331 FLEX_SCANSCILAB_LL      = src/cpp/parse/flex/scanscilab.ll
332 FLEX_SCANSCILAB_CXX     = src/cpp/parse/scanscilab.cpp
333
334 BISON_FLAGS = --no-lines -dvy -ra
335 BISON_PARSESCILAB_YY    = src/cpp/parse/bison/parsescilab.yy
336 BISON_PARSESCILAB_OUTPUT= src/cpp/parse/bison/parsescilab.output
337 BISON_PARSESCILAB_HXX   = includes/parse/parsescilab.hxx
338 BISON_PARSESCILAB_CXX = src/cpp/parse/parsescilab.cpp
339
340 $(FLEX_SCANSCILAB_CXX): $(FLEX_SCANSCILAB_LL)
341         $(LEX) $(AM_FLAGS) $(LFLAGS) $(FLEX_SCANSCILAB_LL)
342
343 $(BISON_PARSESCILAB_CXX): $(BISON_PARSESCILAB_YY)
344         $(YACC) $(AM_FLAGS) $(BISON_FLAGS) $(YFLAGS) $(BISON_PARSESCILAB_YY) \
345         && mv y.tab.c $(BISON_PARSESCILAB_CXX) \
346         && mv y.tab.h $(BISON_PARSESCILAB_HXX) \
347         && mv y.output $(BISON_PARSESCILAB_OUTPUT)
348 endif
349
350
351 include $(top_srcdir)/Makefile.incl.am