Makefile.in 2.33 KB
Newer Older
1
2
3
4
5
6
7
8
9
@SET_MAKE@

srcdir = @srcdir@
VPATH = @srcdir@

top_srcdir = @top_srcdir@

include ../config.make

10
11
PRE_CPPFLAGS = -I.. -I$(top_srcdir)
PRE_LDFLAGS = -L..
12

13
14
15
16
17
18
19
20
21
22
TS_SOURCES = aes-test.c arcfour-test.c arctwo-test.c \
	     blowfish-test.c cast128-test.c \
             base16-test.c base64-test.c \
	     des-test.c des3-test.c des-compat-test.c \
	     md2-test.c md4-test.c md5-test.c md5-compat-test.c \
	     sha1-test.c sha256-test.c \
	     serpent-test.c twofish-test.c \
	     buffer-test.c sexp-test.c sexp-format-test.c \
	     rsa2sexp-test.c sexp2rsa-test.c \
	     knuth-lfib-test.c \
23
	     cbc-test.c ctr-test.c hmac-test.c bignum-test.c \
24
25
26
27
28
	     pkcs1-test.c \
	     rsa-test.c rsa-encrypt-test.c rsa-keygen-test.c \
	     dsa-test.c dsa-keygen-test.c \
	     yarrow-test.c
TARGETS = $(TS_SOURCES:.c=$(EXEEXT))
29
TS_SH = sexp-conv-test pkcs1-conv-test symbols-test
30
TS_ALL = $(TARGETS) $(TS_SH)
31
32
EXTRA_SOURCES = sha1-huge-test.c
EXTRA_TARGETS = $(EXTRA_SOURCES:.c=$(EXEEXT))
33
34
35

SOURCES = $(TS_SOURCES) testutils.c

36
37
DISTFILES = $(SOURCES) $(EXTRA_SOURCES) Makefile.in .test-rules.make \
	$(TS_SH) run-tests teardown-env \
38
	rfc1750.txt testutils.h
39

40
all: $(TARGETS) $(EXTRA_TARGETS)
41
42

.c.$(OBJEXT):
43
44
	$(COMPILE) -c $< && $(DEP_PROCESS)

45
46
47
48
# BSD (and Solaris) make doesn't allow extra dependencies together one
# single-suffix rules, which makes it impossible or almost impossible
# to use suffix rules to build the test executables. So we use an
# explicit rule for each and every executable.
49

50
TEST_OBJS = testutils.$(OBJEXT) -lnettle $(LIBS)
51

52
53
54
55
56
57
58
.PHONY: test-rules
test-rules:
	for f in $(TARGETS) $(EXTRA_TARGETS) ; do \
	  echo $$f'$$(EXEEXT): '$$f'.$$(OBJEXT)' ; \
	  echo '	$$(LINK) '$$f'.$$(OBJEXT) $$(TEST_OBJS) -o '$$f'$$(EXEEXT)' ; \
	  echo ; \
	done > $(srcdir)/.test-rules.make
Niels Möller's avatar
Niels Möller committed
59

60
include $(srcdir)/.test-rules.make
61

62
$(TARGETS) $(EXTRA_TARGETS) : testutils.$(OBJEXT) ../libnettle.a
63
64
65
66
67
68
69
70
71

check: $(TS_ALL) $(srcdir)/run-tests
	LD_LIBRARY_PATH=../.lib srcdir="$(srcdir)" \
	  $(srcdir)/run-tests $(TS_ALL)


Makefile: $(srcdir)/Makefile.in ../config.status
	cd .. && $(SHELL) ./config.status testsuite/$@

72
install uninstall:
73
74
75
	true

distdir: $(DISTFILES)
76
	cp $? $(distdir)
77
78

clean:
79
	-rm -f $(TARGETS) $(EXTRA_TARGETS) *.o test.in test1.out test2.out
80
81

distclean: clean
82
	-rm -f Makefile *.d
83

84
85
86
tags:
	etags --include $(top_srcdir) $(srcdir)/*.c $(srcdir)/*.h

87
@DEP_INCLUDE@ $(SOURCES:.c=.$(OBJEXT).d)