1 # SPDX-License-Identifier: MIT
3 AM_CPPFLAGS += -I$(builddir) -I$(srcdir)
4 AM_YFLAGS = -t -d -v -Wno-yacc
6 noinst_LTLIBRARIES = libctf-parser.la libctf-ast.la
8 BUILT_SOURCES = parser.hpp
10 libctf_parser_la_SOURCES = lexer.lpp parser.ypp objstack.cpp
11 # scanner-symbols.h is included to prefix generated yy_* symbols
13 libctf_parser_la_CPPFLAGS = $(AM_CPPFLAGS) \
14 -include $(srcdir)/scanner-symbols.hpp
16 # This library contains (mostly) generated code, silence some warnings that it
18 libctf_parser_la_CXXFLAGS = $(AM_CXXFLAGS) \
19 -Wno-unused-function \
22 libctf_ast_la_SOURCES = \
23 visitor-generate-ir.cpp \
24 visitor-semantic-validator.cpp \
25 visitor-parent-links.cpp \
34 decoder-packetized-file-stream-to-buf.cpp \
35 decoder-packetized-file-stream-to-buf.hpp \
39 ctf-meta-visitors.hpp \
40 ctf-meta-validate.cpp \
41 ctf-meta-update-meanings.cpp \
42 ctf-meta-update-in-ir.cpp \
43 ctf-meta-update-default-clock-classes.cpp \
44 ctf-meta-update-text-array-sequence.cpp \
45 ctf-meta-update-alignments.cpp \
46 ctf-meta-update-value-storing-indexes.cpp \
47 ctf-meta-update-stream-class-config.cpp \
48 ctf-meta-warn-meaningless-header-fields.cpp \
49 ctf-meta-translate.cpp \
50 ctf-meta-resolve.cpp \
51 ctf-meta-configure-ir-trace.cpp \
52 ctf-meta-configure-ir-trace.hpp
54 if BABELTRACE_BUILD_WITH_MINGW
55 libctf_ast_la_LIBADD = -lintl -liconv -lole32
58 # start with empty files to clean
62 # we have bison: we can clean the generated parser files
63 CLEANFILES += parser.cpp parser.hpp parser.output
65 # create target used to stop the build if we want to build the parser,
66 # but we don't have the necessary tool to do so
67 ERR_MSG = "Error: Cannot build target because bison is missing."
68 ERR_MSG += "Make sure bison is installed and run the configure script again."
70 parser.cpp parser.hpp: parser.ypp
74 all-local: parser.cpp parser.hpp
78 # we have flex: we can clean the generated lexer files
79 CLEANFILES += lexer.cpp
81 # create target used to stop the build if we want to build the lexer,
82 # but we don't have the necessary tool to do so
83 ERR_MSG = "Error: Cannot build target because flex is missing."
84 ERR_MSG += "Make sure flex is installed and run the configure script again."
86 filter-lexer.cpp: lexer.lpp