e330e8268f1f30823797d8ff0097f9e04c3db1fa
[petitboot] / test / parser / Makefile.am
1 #  This program is free software; you can redistribute it and/or modify
2 #  it under the terms of the GNU General Public License as published by
3 #  the Free Software Foundation; version 2 of the License.
4 #
5 #  This program is distributed in the hope that it will be useful,
6 #  but WITHOUT ANY WARRANTY; without even the implied warranty of
7 #  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
8 #  GNU General Public License for more details.
9 #
10 #  You should have received a copy of the GNU General Public License
11 #  along with this program; if not, write to the Free Software
12 #  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
13
14 AUTOMAKE_OPTIONS = parallel-tests
15
16 AM_CPPFLAGS = \
17         -I$(top_srcdir) \
18         -I$(top_srcdir)/lib \
19         -I$(top_srcdir)/discover \
20         -DLOCAL_STATE_DIR='"$(localstatedir)"' \
21         -DTEST_CONF_BASE='"$(srcdir)/data"' \
22         -DDEBUG -DPETITBOOT_TEST
23
24
25 AM_CFLAGS = -O0 -ggdb -Wall -Wextra -Werror
26
27 TESTS = test-null \
28         test-grub2-single \
29         test-grub2-multiple-resolve \
30         test-grub2-f18-ppc64 \
31         test-kboot-single \
32         test-yaboot-single \
33         test-yaboot-external \
34         test-yaboot-rh8-ppc64
35
36 check_PROGRAMS = $(TESTS)
37 check_LIBRARIES = $(test_libs)
38 check_DATA = data/grub2-f18-ppc64.conf \
39              data/yaboot-rh8-ppc64.conf
40
41 common_libs = $(top_builddir)/lib/libpbcore.la
42 test_libs = libtest.o
43
44 libtest.o: $(libtest_o_OBJECTS)
45         $(LD) -o $@ -r $^
46
47 # objects under test
48 parser_test_objs = $(top_srcdir)/discover/yaboot-parser.c \
49                    $(top_srcdir)/discover/kboot-parser.c \
50                    $(top_srcdir)/discover/grub2-parser.c \
51                    $(top_srcdir)/discover/resource.c \
52                    $(top_srcdir)/discover/paths.c \
53                    $(top_srcdir)/discover/device-handler.c \
54                    $(top_srcdir)/discover/parser-conf.c
55
56
57 LDADD = $(common_libs) $(test_libs)
58
59 libtest_o_SOURCES = utils.c parser-test.h handler.c main.c $(parser_test_objs)
60
61 $(check_PROGRAMS): %: %.embedded-config.o
62 $(check_PROGRAMS): LDADD += $@.embedded-config.o
63
64 extract_config = $(srcdir)/extract-config.awk
65
66 %.embedded-config.c: %.c $(extract_config)
67         gawk --file=$(extract_config) $^ > $@
68
69 EXTRA_DIST = $(check_DATA) $(extract_config)
70
71 CLEANFILES = $(foreach f, $(check_PROGRAMS), \
72                 $(f).embedded-config.c $(f).embedded-config.o)