test/Makefile.am: Distribute `bad.sod' and `bad.ref'.
[sod] / test / Makefile.am
CommitLineData
8d1d7d3e
MW
1### -*-makefile-*-
2###
3### Build script for SOD examples and tests
4###
5### (c) 2015 Straylight/Edgeware
6###
7
8###----- Licensing notice ---------------------------------------------------
9###
e0808c47 10### This file is part of the Sensible Object Design, an object system for C.
8d1d7d3e
MW
11###
12### SOD is free software; you can redistribute it and/or modify
13### it under the terms of the GNU General Public License as published by
14### the Free Software Foundation; either version 2 of the License, or
15### (at your option) any later version.
16###
17### SOD is distributed in the hope that it will be useful,
18### but WITHOUT ANY WARRANTY; without even the implied warranty of
19### MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
20### GNU General Public License for more details.
21###
22### You should have received a copy of the GNU General Public License
23### along with SOD; if not, write to the Free Software Foundation,
24### Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
25
26include $(top_srcdir)/vars.am
27
28###--------------------------------------------------------------------------
29### The silly Chimaera example.
30
31check_PROGRAMS += chimaera
e05aabbb 32-include chimaera.c-dep chimaera.h-dep
8d1d7d3e
MW
33
34EXTRA_DIST += chimaera.sod
35nodist_chimaera_SOURCES = chimaera.c chimaera.h
36BUILT_SOURCES += $(nodist_chimaera_SOURCES)
37
38EXTRA_DIST += chimaera.ref
39CLEANFILES += chimaera.out
40check-local:: chimaera chimaera.ref
41 ./chimaera >chimaera.out
42 diff -u $(srcdir)/chimaera.ref chimaera.out
43
4a83289a
MW
44###--------------------------------------------------------------------------
45### Other tests.
46
47TESTS += test
48check_PROGRAMS += test
e05aabbb 49-include test.c-dep test.h-dep
388ca1cd 50
43706814 51EXTRA_DIST += bad.sod bad.ref
deef4956
MW
52bad.out: bad.sod $(SOD)
53 $(SOD) -tc $(srcdir)/bad.sod >bad.raw-out 2>bad.raw-err; rc=$$?; \
54 { sed 's/^/| /' bad.raw-out; \
55 sed 's/^/* /; s,$(srcdir)/,test/,' bad.raw-err; \
56 echo "; rc = $$rc"; } >$@.new && \
57 mv $@.new $@
58check-local:: bad.out
59 diff -u $(srcdir)/bad.ref bad.out
60CLEANFILES += bad.raw-out bad.raw-err bad.out
61
388ca1cd 62EXTRA_DIST += test.sod
4a83289a
MW
63nodist_test_SOURCES = test.c test.h
64BUILT_SOURCES += $(nodist_test_SOURCES)
65
9e91c8e7
MW
66check_PROGRAMS += kwtest
67
68EXTRA_DIST += kwtest.ref
69CLEANFILES += kwtest.out
70check-local:: kwtest kwtest.ref
71 ./kwtest >kwtest.out
72 diff -u $(srcdir)/kwtest.ref kwtest.out
73
e9be9d86 74check_PROGRAMS += rat
e05aabbb 75-include rat.c-dep rat.h-dep
e9be9d86 76
118ae0a7
MW
77check_PROGRAMS += kwbench
78kwbench_SOURCES = kwbench.c kwbench-back.c kwbench.h
79
e9be9d86
MW
80EXTRA_DIST += rat.sod rat.ref
81nodist_rat_SOURCES = rat.c rat.h
82BUILT_SOURCES += $(nodist_rat_SOURCES)
83check-local:: rat rat.ref
84 ./rat >rat.out
85 diff -u $(srcdir)/rat.ref rat.out
86
8d1d7d3e 87###----- That's all, folks --------------------------------------------------