Improved transaction handling in PulleyBack plugin (poolback)
[tlspool] / test / Makefile
1
2 TARGETS_OFFLINE = valexprun testvalexp pulleybacksimu
3 TARGETS = $(TARGETS_OFFLINE) onlinecheck testonline pulleybacksimu
4
5 PKG_CONFIG ?= pkg-config
6
7 OBJS = *.o
8
9 CFLAGS += -pthread -I ../include
10
11 # Hey... this is testing code, so c'mon let's DEBUG
12 CFLAGS += -DDEBUG -O0
13
14 LDFLAGS =
15
16 LIBS = 
17
18 PREFIX = /usr/local
19
20 valexprun_CFLAGS = -ggdb3
21 valexprun_LIBS =
22
23 config_CFLAGS = -DCONFIG_PARSE_ONLY
24
25 VALEXP_TESTS = $(shell cd data-valexp-in ; ls -1)
26
27 GNUTLS_CFLAGS = $(shell $(PKG_CONFIG) --cflags gnutls)
28 GNUTLS_LIBS   = $(shell $(PKG_CONFIG) --libs   gnutls)
29
30 P11KIT_CFLAGS = $(shell $(PKG_CONFIG) --cflags p11-kit-1)
31 P11KIT_LIBS   = $(shell $(PKG_CONFIG) --libs   p11-kit-1)
32
33 BDB_CFLAGS = 
34 BDB_LDFLAGS = -ldb
35
36 QUICKDER_CFLAGS = $(shell $(PKG_CONFIG) --cflags quick-der) -ggdb3
37 QUICKDER_LIBS   = $(shell $(PKG_CONFIG) --libs   quick-der)
38
39 all: $(TARGETS)
40
41 valexprun: valexprun.c ../src/validate.c
42         gcc $(CFLAGS) $(valexprun_CFLAGS) -o "$@" "$<" $(valexprun_LIBS)
43
44 testvalexp: valexprun
45         @ mkdir -p 'data-valexp-out'
46         @ [ ! -r ../.git ] && git init && echo 'Created local .git for testing' || true
47         @ [   -r    .git ] && git add data-valexp-in/* data-valexp-out/* || true
48         @ $(foreach test,$(VALEXP_TESTS),./valexprun $$(cat 'data-valexp-in/$(test)') > 'data-valexp-out/$(test)' && ) echo 'All validation expression test output was generated'
49         @ echo -n '[ #FINAL == #SIGNAL ] test: '
50         [ $(shell grep ^FINAL data-valexp-out/* | wc -l) -eq $(shell grep ^SIGNAL data-valexp-out/* | wc -l) ]
51         @ echo -n '[ #Starting == #Stopping ] test: '
52         [ $(shell grep ^Starting data-valexp-out/* | wc -l) -eq $(shell grep ^Stopping data-valexp-out/* | wc -l) ]
53         @ git diff --stat --exit-code data-valexp-out
54         @ git ls-files --error-unmatch data-valexp-in/* >/dev/null
55         @ git ls-files --error-unmatch data-valexp-out/* >/dev/null
56         @ echo All validation expression tests succeeded
57
58 onlinecheck: onlinecheck.c ../src/online.c ../src/config.c ../src/pgp.c
59         gcc $(CFLAGS) $(GNUTLS_CFLAGS) $(QUICKDER_CFLAGS) $(config_CFLAGS) -o "$@" "$<" ../src/pgp.c ../src/config.c -lunbound -lldns -lldap $(GNUTLS_LIBS) $(QUICKDER_LIBS)
60
61 testonline: onlinecheck
62         ./onlinecheck ../etc/tlspool.conf | tee | grep -v 'UNEXPECTED OUTPUT FAILURE'
63
64 pulleybacksimu: pulleybacksimu.c
65         @# gcc $(CFLAGS) -o "$@" "$<" ../pulleyback/api.o ../pulleyback/parse.o ../pulleyback/connect.o ../pulleyback/update.o -lquickder -ldb
66         gcc $(CFLAGS) -o "$@" "$<" ../pulleyback/pulleyback_tlspool.so
67
68 clean:
69         rm -f $(OBJS) $(TARGETS)
70         rm -f valexp/*.gen
71         rm -rf .git
72
73 anew: clean all
74
75 anew: clean all
76
77 install:
78
79 uninstall:
80