pull up r24469, r24530, r24533, r24534, r24535, r24537 from trunk
[krb5.git] / src / lib / crypto / crypto_tests / Makefile.in
1 mydir=lib$(S)crypto$(S)crypto_tests
2 BUILDTOP=$(REL)..$(S)..$(S)..
3 LOCALINCLUDES = -I$(srcdir)/../krb -I$(srcdir)/../$(CRYPTO_IMPL)/enc_provider \
4         -I$(srcdir)/../$(CRYPTO_IMPL)/hash_provider \
5         -I$(srcdir)/../krb/keyhash_provider -I$(srcdir)/../krb/dk \
6         -I$(srcdir)/../$(CRYPTO_IMPL) -I$(srcdir)/../krb/prng \
7         -I$(srcdir)/../krb/prng/$(PRNG_ALG) -I$(srcdir)/../krb/crc32 \
8         -I$(srcdir)/../krb/old -I$(srcdir)/../krb/raw \
9         -I$(srcdir)/../$(CRYPTO_IMPL)/aes -I$(srcdir)/../$(CRYPTO_IMPL)/des \
10         -I$(srcdir)/../$(CRYPTO_IMPL)/arcfour \
11         -I$(srcdir)/../$(CRYPTO_IMPL)/sha1 \
12         -I$(srcdir)/../$(CRYPTO_IMPL)/md5 -I$(srcdir)/../$(CRYPTO_IMPL)/md4 \
13         -I$(srcdir)/../$(CRYPTO_IMPL)/camellia
14 RUN_SETUP = @KRB5_RUN_ENV@
15 PROG_LIBPATH=-L$(TOPLIBD)
16 PROG_RPATH=$(KRB5_LIBDIR)
17 DEFS=
18
19 EXTRADEPSRCS=\
20         $(srcdir)/t_nfold.c     \
21         $(srcdir)/t_encrypt.c   \
22         $(srcdir)/t_decrypt.c   \
23         $(srcdir)/t_prf.c       \
24         $(srcdir)/t_prng.c      \
25         $(srcdir)/t_cmac.c      \
26         $(srcdir)/t_hmac.c      \
27         $(srcdir)/t_pkcs5.c     \
28         $(srcdir)/t_cts.c       \
29         $(srcdir)/vectors.c     \
30         $(srcdir)/aes-test.c    \
31         $(srcdir)/camellia-test.c       \
32         $(srcdir)/t_cksum.c     \
33         $(srcdir)/t_cksums.c    \
34         $(srcdir)/t_crc.c       \
35         $(srcdir)/t_mddriver.c  \
36         $(srcdir)/t_kperf.c     \
37         $(srcdir)/t_short.c     \
38         $(srcdir)/t_str2key.c   \
39         $(srcdir)/t_derive.c    \
40         $(srcdir)/t_fork.c      \
41         $(srcdir)/ytest.c       
42
43 ##DOS##BUILDTOP = ..\..\..
44
45 # NOTE: The t_cksum known checksum values are primarily for regression
46 # testing.  They are not derived a priori, but are known to produce
47 # checksums that interoperate.
48 #
49 # We use the NSS PRNG when NSS is the crypto back end, so don't test
50 # against the expected output for Yarrow.
51 check-unix:: t_nfold t_encrypt t_decrypt t_prf t_prng t_cmac t_hmac \
52                 t_cksum4 t_cksum5 t_cksums \
53                 aes-test  \
54                 camellia-test  \
55                 t_mddriver4 t_mddriver \
56                 t_crc t_cts t_short t_str2key t_derive t_fork
57         $(RUN_SETUP) $(VALGRIND) ./t_nfold
58         $(RUN_SETUP) $(VALGRIND) ./t_encrypt
59         $(RUN_SETUP) $(VALGRIND) ./t_decrypt
60         $(RUN_SETUP) $(VALGRIND) ./t_prng <$(srcdir)/t_prng.seed >t_prng.output
61         if [ $(PRNG_ALG) = yarrow ]; then \
62                 diff t_prng.output $(srcdir)/t_prng.expected; \
63         fi
64         $(RUN_SETUP) $(VALGRIND) ./t_cmac
65         $(RUN_SETUP) $(VALGRIND) ./t_hmac
66         $(RUN_SETUP) $(VALGRIND) ./t_prf <$(srcdir)/t_prf.in >t_prf.output
67         diff t_prf.output $(srcdir)/t_prf.expected
68         $(RUN_SETUP) $(VALGRIND) ./t_cksum4 "this is a test" e3f76a07f3401e3536b43a3f54226c39422c35682c354835
69         $(RUN_SETUP) $(VALGRIND) ./t_cksum5 "this is a test" e3f76a07f3401e351143ee6f4c09be1edb4264d55015db53
70         $(RUN_SETUP) $(VALGRIND) ./t_cksums
71         $(RUN_SETUP) $(VALGRIND) ./t_crc
72         $(RUN_SETUP) $(VALGRIND) ./t_cts
73         $(RUN_SETUP) $(VALGRIND) ./aes-test -k > vk.txt
74         cmp vk.txt $(srcdir)/expect-vk.txt
75         $(RUN_SETUP) $(VALGRIND) ./aes-test > vt.txt
76         cmp vt.txt $(srcdir)/expect-vt.txt
77         $(RUN_SETUP) $(VALGRIND) ./camellia-test > camellia-vt.txt
78 # Enable this when Camellia becomes unconditional.
79 #       cmp camellia-vt.txt $(srcdir)/camellia-expect-vt.txt
80         $(RUN_SETUP) $(VALGRIND) $(C)t_mddriver4 -x
81         $(RUN_SETUP) $(VALGRIND) $(C)t_mddriver -x
82         $(RUN_SETUP) $(VALGRIND) ./t_short
83         $(RUN_SETUP) $(VALGRIND) ./t_str2key
84         $(RUN_SETUP) $(VALGRIND) ./t_derive
85         $(RUN_SETUP) $(VALGRIND) ./t_fork
86
87
88
89
90 #       $(RUN_SETUP) $(VALGRIND) ./t_pkcs5
91
92 t_nfold$(EXEEXT): t_nfold.$(OBJEXT) nfold.$(OBJEXT) $(SUPPORT_DEPLIB)
93         $(CC_LINK) -o $@ t_nfold.$(OBJEXT) ../krb/nfold$(DYNOBJEXT) $(SUPPORT_LIB)
94
95 nfold.$(OBJEXT): $(srcdir)/../krb/nfold.c
96         $(CC) -c $(ALL_CFLAGS) $(srcdir)/../krb/nfold.c
97
98 t_encrypt$(EXEEXT): t_encrypt.$(OBJEXT) $(CRYPTO_DEPLIB) $(SUPPORT_DEPLIB)
99         $(CC_LINK) -o $@ t_encrypt.$(OBJEXT)  -lkrb5 -lk5crypto -lcom_err $(SUPPORT_LIB)
100
101 t_decrypt$(EXEEXT): t_decrypt.$(OBJEXT) $(CRYPTO_DEPLIB) $(SUPPORT_DEPLIB)
102         $(CC_LINK) -o $@ t_decrypt.$(OBJEXT)  -lkrb5 -lk5crypto -lcom_err $(SUPPORT_LIB)
103
104 t_prf$(EXEEXT): t_prf.$(OBJEXT) $(SUPPORT_DEPLIB)
105         $(CC_LINK) -o $@ t_prf.$(OBJEXT)  -lkrb5 -lk5crypto -lcom_err $(SUPPORT_LIB)
106
107 t_prng$(EXEEXT): t_prng.$(OBJEXT) $(SUPPORT_DEPLIB)
108         $(CC_LINK) -o $@ t_prng.$(OBJEXT)  -lk5crypto -lcom_err $(SUPPORT_LIB)
109
110 t_cmac$(EXEEXT): t_cmac.$(OBJEXT) $(CRYPTO_DEPLIB) $(SUPPORT_DEPLIB)
111         $(CC_LINK) -o $@ t_cmac.$(OBJEXT) $(K5CRYPTO_LIB) $(COM_ERR_LIB) $(SUPPORT_LIB)
112
113 t_hmac$(EXEEXT): t_hmac.$(OBJEXT) $(CRYPTO_DEPLIB) $(SUPPORT_DEPLIB)
114         $(CC_LINK) -o $@ t_hmac.$(OBJEXT) $(K5CRYPTO_LIB) $(COM_ERR_LIB) $(SUPPORT_LIB)
115
116 #t_pkcs5$(EXEEXT): t_pkcs5.$(OBJEXT) $(CRYPTO_DEPLIB) $(SUPPORT_DEPLIB)
117 #       $(CC_LINK) -o $@ t_pkcs5.$(OBJEXT) $(K5CRYPTO_LIB) $(COM_ERR_LIB) $(SUPPORT_LIB)
118
119 vectors$(EXEEXT): vectors.$(OBJEXT) $(CRYPTO_DEPLIB) $(SUPPORT_DEPLIB)
120         $(CC_LINK) -o $@ vectors.$(OBJEXT) $(K5CRYPTO_LIB) $(COM_ERR_LIB) $(SUPPORT_LIB)
121
122  t_cts$(EXEEXT): t_cts.$(OBJEXT) $(CRYPTO_DEPLIB) $(SUPPORT_DEPLIB)
123         $(CC_LINK) -o $@ t_cts.$(OBJEXT) \
124                 $(K5CRYPTO_LIB) $(COM_ERR_LIB) $(SUPPORT_LIB)
125
126 t_short$(EXEEXT): t_short.$(OBJEXT) $(CRYPTO_DEPLIB) $(SUPPORT_DEPLIB)
127         $(CC_LINK) -o $@ t_short.$(OBJEXT) \
128                 $(K5CRYPTO_LIB) $(COM_ERR_LIB) $(SUPPORT_LIB)
129
130 t_cksum4.o: $(srcdir)/t_cksum.c
131         $(CC) -DMD=4 $(ALL_CFLAGS) -o t_cksum4.o -c $(srcdir)/t_cksum.c
132
133 t_cksum5.o: $(srcdir)/t_cksum.c
134         $(CC) -DMD=5 $(ALL_CFLAGS) -o t_cksum5.o -c $(srcdir)/t_cksum.c
135
136 t_cksum4: t_cksum4.o $(CRYTPO_DEPLIB)
137         $(CC_LINK) -o t_cksum4 t_cksum4.o $(K5CRYPTO_LIB) $(COM_ERR_LIB) $(SUPPORT_LIB) $(LIBS)
138
139 t_cksum5: t_cksum5.o $(CRYPTO_DEPLIB)
140         $(CC_LINK) -o t_cksum5 t_cksum5.o $(K5CRYPTO_LIB) $(COM_ERR_LIB) $(SUPPORT_LIB) $(LIBS)
141
142 t_cksums: t_cksums.o $(CRYTPO_DEPLIB)
143         $(CC_LINK) -o t_cksums t_cksums.o -lkrb5 $(K5CRYPTO_LIB) $(COM_ERR_LIB) $(SUPPORT_LIB) $(LIBS)
144
145 t_crc: t_crc.o $(CRYPTO_DEPLIB) $(SUPPORT_DEPLIB)
146         $(CC_LINK) -o $@ t_crc.o $(K5CRYPTO_LIB) $(SUPPORT_LIB)
147
148 aes-test: aes-test.$(OBJEXT) $(CRYPTO_DEPLIB)
149         $(CC_LINK) -o aes-test aes-test.$(OBJEXT) $(K5CRYPTO_LIB) $(COM_ERR_LIB) $(SUPPORT_LIB)
150
151 camellia-test: camellia-test.$(OBJEXT) $(CRYPTO_DEPLIB)
152         $(CC_LINK) -o camellia-test camellia-test.$(OBJEXT) $(K5CRYPTO_LIB) $(COM_ERR_LIB) $(SUPPORT_LIB)
153
154 t_mddriver4.o: $(srcdir)/t_mddriver.c
155         $(CC) -DMD=4 $(ALL_CFLAGS) -o t_mddriver4.o -c $(srcdir)/t_mddriver.c
156
157 t_mddriver4: t_mddriver4.o  $(SUPPORT_DEPLIB) $(CRYPTO_DEPLIB)
158         $(CC_LINK) -DMD4  -o t_mddriver4 t_mddriver4.o -lk5crypto $(SUPPORT_LIB)
159
160 t_mddriver: t_mddriver.o  $(SUPPORT_DEPLIB) $(CRYPTO_DEPLIB)
161         $(CC_LINK) -o t_mddriver t_mddriver.o -lk5crypto $(SUPPORT_LIB)
162
163 t_kperf: t_kperf.o $(SUPPORT_DEPLIB) $(CRYPTO_DEPLIB)
164         $(CC_LINK) -o t_kperf t_kperf.o  $(SUPPORT_LIB) $(CRYPTO_DEPLIB)
165
166 t_str2key$(EXEEXT): t_str2key.$(OBJEXT) $(SUPPORT_DEPLIB)
167         $(CC_LINK) -o $@ t_str2key.$(OBJEXT)  -lkrb5 -lk5crypto -lcom_err $(SUPPORT_LIB)
168
169 t_derive$(EXEEXT): t_derive.$(OBJEXT) $(SUPPORT_DEPLIB)
170         $(CC_LINK) -o $@ t_derive.$(OBJEXT)  -lkrb5 -lk5crypto -lcom_err $(SUPPORT_LIB)
171
172 t_fork$(EXEEXT): t_fork.$(OBJEXT) $(SUPPORT_DEPLIB)
173         $(CC_LINK) -o $@ t_fork.$(OBJEXT) -lkrb5 -lk5crypto -lcom_err $(SUPPORT_LIB)
174
175 ytest: ytest.o shs.o $(SUPPORT_DEPLIB) $(CRYPTO_DEPLIB)
176         $(CC_LINK) -o ytest ytest.o  $(SUPPORT_LIB)  $(CRYPTO_DEPLIB)
177
178
179
180 clean::
181         $(RM) t_nfold.o t_nfold nfold.$(OBJEXT) t_encrypt t_encrypt.o \
182                 t_decrypt.o t_decrypt t_prng.o t_prng t_cmac.o t_cmac \
183                 t_hmac.o t_hmac t_pkcs5.o t_pkcs5 pbkdf2.o t_prf t_prf.o \
184                 aes-test.o aes-test vt.txt vk.txt kresults.out \
185                 t_crc.o t_crc t_cts.o t_cts \
186                 t_mddriver4.o t_mddriver4 t_mddriver.o t_mddriver \
187                 t_cksum4 t_cksum4.o t_cksum5 t_cksum5.o t_cksums t_cksums.o \
188                 t_kperf.o t_kperf t_short t_short.o t_str2key t_str2key.o \
189                 t_derive t_derive.o t_fork t_fork.o \
190                 t_mddriver$(EXEEXT) $(OUTPRE)t_mddriver.$(OBJEXT)
191
192         -$(RM) t_prng.output
193         -$(RM) t_prf.output
194
195 @lib_frag@
196 @libobj_frag@
197