1 # SPDX-License-Identifier: GPL-2.0-only
3 AM_CPPFLAGS += -I$(srcdir) -I$(builddir)
5 noinst_PROGRAMS = filter-grammar-test
6 noinst_LTLIBRARIES = libfilter.la
7 noinst_HEADERS = filter-ast.h \
10 BUILT_SOURCES = filter-parser.h
12 libfilter_la_SOURCES = \
13 filter-parser.y filter-lexer.l \
14 filter-visitor-xml.c \
15 filter-visitor-generate-ir.c \
16 filter-visitor-ir-check-binary-op-nesting.c \
17 filter-visitor-ir-validate-string.c \
18 filter-visitor-ir-validate-globbing.c \
19 filter-visitor-ir-normalize-glob-patterns.c \
20 filter-visitor-generate-bytecode.c \
24 libfilter_la_CFLAGS = -include filter-symbols.h $(AM_CFLAGS)
25 libfilter_la_LIBADD = $(top_builddir)/src/common/string-utils/libstring-utils.la
27 AM_YFLAGS = -t -d -v -Wno-yacc
29 # start with empty files to clean
33 # we have bison: we can clean the generated parser files
34 CLEANFILES += filter-parser.c filter-parser.h filter-parser.output
36 # create target used to stop the build if we want to build the parser,
37 # but we don't have the necessary tool to do so
38 ERR_MSG = "Error: Cannot build target because bison is missing."
39 ERR_MSG += "Make sure bison is installed and run the configure script again."
41 filter-parser.c filter-parser.h: filter-parser.y
45 all-local: filter-parser.c filter-parser.h
49 # we have flex: we can clean the generated lexer files
50 CLEANFILES += filter-lexer.c
52 # create target used to stop the build if we want to build the lexer,
53 # but we don't have the necessary tool to do so
54 ERR_MSG = "Error: Cannot build target because flex is missing."
55 ERR_MSG += "Make sure flex is installed and run the configure script again."
57 filter-lexer.c: filter-lexer.l
61 all-local: filter-lexer.c
64 filter_grammar_test_SOURCES = filter-grammar-test.c
65 filter_grammar_test_LDADD = \
67 ../bytecode/libbytecode.la