-DTEST_CONF_BASE='"$(srcdir)/data"' \
-DDEBUG -DPETITBOOT_TEST
-
AM_CFLAGS = -O0 -ggdb -Wall -Wextra -Werror
-TESTS = test-null
+LDADD = $(top_builddir)/lib/libpbcore.la libtest.ro
-check_PROGRAMS = $(TESTS)
-check_LIBRARIES = $(test_libs)
-check_DATA =
+TESTS = \
+ test-null \
+ test-grub2-single \
+ test-grub2-default \
+ test-grub2-default-index \
+ test-grub2-default-multiword \
+ test-grub2-multiple-resolve \
+ test-grub2-single-line-if \
+ test-grub2-load-env \
+ test-grub2-save-env \
+ test-grub2-f18-ppc64 \
+ test-grub2-ubuntu-13_04-x86 \
+ test-grub2-lexer-error \
+ test-grub2-parser-error \
+ test-kboot-single \
+ test-yaboot-single \
+ test-yaboot-partition \
+ test-yaboot-partition-override \
+ test-yaboot-external \
+ test-yaboot-root-global \
+ test-yaboot-root-override \
+ test-yaboot-device-override \
+ test-yaboot-default \
+ test-yaboot-rh8-ppc64 \
+ test-pxe-empty \
+ test-pxe-single \
+ test-pxe-initrd-in-append \
+ test-pxe-default
-common_libs = $(top_builddir)/lib/libpbcore.la
-test_libs = libtest.o
+$(TESTS): %: %.embedded-config.o
+$(TESTS): LDADD += $@.embedded-config.o
-libtest.o: $(libtest_o_OBJECTS)
- $(LD) -o $@ -r $^
+extract_config = $(srcdir)/extract-config.awk
+
+%.embedded-config.c: %.c $(extract_config)
+ $(AWK) -f $(extract_config) $< > $@
# objects under test
-parser_test_objs = $(top_srcdir)/discover/resource.c \
- $(top_srcdir)/discover/paths.c \
- $(top_srcdir)/discover/device-handler.c \
- $(top_srcdir)/discover/parser-conf.c
+parser_objs = \
+ $(top_srcdir)/discover/yaboot-parser.c \
+ $(top_srcdir)/discover/kboot-parser.c \
+ $(top_srcdir)/discover/pxe-parser.c \
+ $(top_srcdir)/discover/resource.c \
+ $(top_srcdir)/discover/paths.c \
+ $(top_srcdir)/discover/device-handler.c \
+ $(top_srcdir)/discover/parser-conf.c
+
+libtest_ro_SOURCES = \
+ main.c \
+ utils.c \
+ handler.c \
+ parser-test.h \
+ $(parser_objs)
+
+libtest_ro_LDADD = \
+ ../../discover/grub2/grub2-parser.ro
+
+libtest.ro$(EXEEXT): $(libtest_ro_OBJECTS) $(libtest_ro_LDADD)
+ $(LD) -o $@ -r $^
+check_PROGRAMS = $(TESTS) libtest.ro
-LDADD = $(common_libs) $(test_libs)
+check_DATA = \
+ data/grub2-f18-ppc64.conf \
+ data/grub2-ubuntu-13_04-x86.conf \
+ data/yaboot-rh8-ppc64.conf
-libtest_o_SOURCES = utils.c parser-test.h handler.c main.c $(parser_test_objs)
+EXTRA_DIST = $(check_DATA) $(extract_config)
+CLEANFILES = \
+ $(foreach f, $(TESTS), $(f).embedded-config.c $(f).embedded-config.o)
-EXTRA_DIST = $(check_DATA)
+MAINTAINERCLEANFILES = Makefile.in