]> CyberLeo.Net >> Repos - FreeBSD/FreeBSD.git/blob - contrib/libxo/tests/core/Makefile.am
Import libc++ trunk r224926. This fixes a number of bugs, completes
[FreeBSD/FreeBSD.git] / contrib / libxo / tests / core / Makefile.am
1 #
2 # $Id$
3 #
4 # Copyright 2014, Juniper Networks, Inc.
5 # All rights reserved.
6 # This SOFTWARE is licensed under the LICENSE provided in the
7 # ../Copyright file. By downloading, installing, copying, or otherwise
8 # using the SOFTWARE, you agree to be bound by the terms of that
9 # LICENSE.
10
11 AM_CFLAGS = -I${top_srcdir} -I${top_srcdir}/libxo
12
13 # Ick: maintained by hand!
14 TEST_CASES = \
15 test_01.c \
16 test_02.c \
17 test_03.c \
18 test_04.c \
19 test_05.c \
20 test_06.c \
21 test_07.c
22
23 test_01_test_SOURCES = test_01.c
24 test_02_test_SOURCES = test_02.c
25 test_03_test_SOURCES = test_03.c
26 test_04_test_SOURCES = test_04.c
27 test_05_test_SOURCES = test_05.c
28 test_06_test_SOURCES = test_06.c
29 test_07_test_SOURCES = test_07.c
30
31 # TEST_CASES := $(shell cd ${srcdir} ; echo *.c )
32
33 noinst_PROGRAMS = ${TEST_CASES:.c=.test}
34
35 LDADD = \
36     ${top_builddir}/libxo/libxo.la
37
38 EXTRA_DIST = \
39     ${TEST_CASES} \
40     ${addprefix saved/, ${TEST_CASES:.c=.T.err}} \
41     ${addprefix saved/, ${TEST_CASES:.c=.T.out}} \
42     ${addprefix saved/, ${TEST_CASES:.c=.XP.err}} \
43     ${addprefix saved/, ${TEST_CASES:.c=.XP.out}} \
44     ${addprefix saved/, ${TEST_CASES:.c=.JP.err}} \
45     ${addprefix saved/, ${TEST_CASES:.c=.JP.out}} \
46     ${addprefix saved/, ${TEST_CASES:.c=.HP.err}} \
47     ${addprefix saved/, ${TEST_CASES:.c=.HP.out}} \
48     ${addprefix saved/, ${TEST_CASES:.c=.X.err}} \
49     ${addprefix saved/, ${TEST_CASES:.c=.X.out}} \
50     ${addprefix saved/, ${TEST_CASES:.c=.J.err}} \
51     ${addprefix saved/, ${TEST_CASES:.c=.J.out}} \
52     ${addprefix saved/, ${TEST_CASES:.c=.H.err}} \
53     ${addprefix saved/, ${TEST_CASES:.c=.H.out}} \
54     ${addprefix saved/, ${TEST_CASES:.c=.HIPx.err}} \
55     ${addprefix saved/, ${TEST_CASES:.c=.HIPx.out}}
56
57 S2O = | ${SED} '1,/@@/d'
58
59 all:
60
61 valgrind:
62         @echo '## Running the regression tests under Valgrind'
63         ${MAKE} CHECKER='valgrind -q' tests
64
65 #TEST_TRACE = set -x ; 
66
67 TEST_ONE = \
68   LIBXO_OPTIONS=:W$$fmt \
69       ${CHECKER} ./$$base.test ${TEST_OPTS} \
70       > out/$$base.$$fmt.out 2> out/$$base.$$fmt.err ; \
71  ${DIFF} -Nu ${srcdir}/saved/$$base.$$fmt.out out/$$base.$$fmt.out ${S2O} ; \
72  ${DIFF} -Nu ${srcdir}/saved/$$base.$$fmt.err out/$$base.$$fmt.err ${S2O}
73
74 TEST_FORMATS = T XP JP HP X J H HIPx
75
76 test tests: ${bin_PROGRAMS}
77         @${MKDIR} -p out
78         -@ ${TEST_TRACE} (for test in ${TEST_CASES} ; do \
79             base=`${BASENAME} $$test .c` ; \
80             (for fmt in ${TEST_FORMATS}; do \
81                 echo "... $$test ... $$fmt ..."; \
82                 ${TEST_ONE}; \
83                 true; \
84             done) \
85         done)
86
87 one:
88         -@(test=${TEST_CASE}; data=${TEST_DATA}; ${TEST_ONE} ; true)
89
90 accept:
91         -@(for test in ${TEST_CASES} ; do \
92             base=`${BASENAME} $$test .c` ; \
93             (for fmt in ${TEST_FORMATS}; do \
94                 echo "... $$test ... $$fmt ..."; \
95                 ${CP} out/$$base.$$fmt.out ${srcdir}/saved/$$base.$$fmt.out ; \
96                 ${CP} out/$$base.$$fmt.err ${srcdir}/saved/$$base.$$fmt.err ; \
97             done) \
98         done)
99
100 .c.test:
101         $(AM_V_CC)$(LTCOMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -o $@ $<
102
103 CLEANFILES = ${TEST_CASES:.c=.test}
104 CLEANDIRS = out
105
106 clean-local:
107         rm -rf ${CLEANDIRS}