DH: add some basic tests (and comments)
[openssl.git] / test / build.info
1 {-
2      use File::Spec::Functions;
3      sub rebase_files
4      {
5          my ($base, $files) = @_;
6          return join(" ", map { "$base/$_" } split(/\s+/, $files));
7      }
8      ""
9 -}
10 IF[{- !$disabled{tests} -}]
11   LIBS_NO_INST=libtestutil.a
12   SOURCE[libtestutil.a]=testutil/basic_output.c testutil/output_helpers.c \
13           testutil/driver.c testutil/tests.c testutil/cb.c testutil/stanza.c \
14           testutil/format_output.c testutil/tap_bio.c \
15           testutil/test_cleanup.c testutil/main.c testutil/init.c
16   INCLUDE[libtestutil.a]=../include
17   DEPEND[libtestutil.a]=../libcrypto
18
19   # Special hack for descrip.mms to include the MAIN object module
20   # explicitly.  This will only be done if there isn't a MAIN in the
21   # program's object modules already.
22   BEGINRAW[descrip.mms]
23 INCLUDE_MAIN___test_libtestutil_OLB = /INCLUDE=MAIN
24   ENDRAW[descrip.mms]
25
26   PROGRAMS_NO_INST=\
27           versions \
28           aborttest test_test \
29           sanitytest exdatatest bntest \
30           ectest ecstresstest ecdsatest gmdifftest pbelutest ideatest \
31           sm2sigtest sm2crypttest \
32           md2test \
33           hmactest \
34           rc2test rc4test rc5test \
35           destest mdc2test \
36           dhtest enginetest casttest \
37           bftest ssltest_old dsatest exptest rsa_test \
38           evp_test evp_extra_test igetest v3nametest v3ext \
39           crltest danetest bad_dtls_test lhash_test \
40           conf_include_test \
41           constant_time_test verify_extra_test clienthellotest \
42           packettest asynctest secmemtest srptest memleaktest stack_test \
43           dtlsv1listentest ct_test threadstest afalgtest d2i_test \
44           ssl_test_ctx_test ssl_test x509aux cipherlist_test asynciotest \
45           bio_callback_test \
46           bioprinttest sslapitest dtlstest sslcorrupttest bio_enc_test \
47           pkey_meth_test pkey_meth_kdf_test uitest cipherbytes_test \
48           asn1_encode_test asn1_string_table_test \
49           x509_time_test x509_dup_cert_test x509_check_cert_pkey_test \
50           recordlentest drbgtest sslbuffertest \
51           recordlentest drbgtest drbg_cavs_test sslbuffertest \
52           time_offset_test pemtest ssl_cert_table_internal_test ciphername_test \
53           servername_test ocspapitest rsa_mp_test fatalerrtest tls13ccstest \
54           sysdefaulttest
55
56   SOURCE[versions]=versions.c
57   INCLUDE[versions]=../include
58   DEPEND[versions]=../libcrypto
59
60   SOURCE[aborttest]=aborttest.c
61   INCLUDE[aborttest]=../include
62   DEPEND[aborttest]=../libcrypto
63
64   SOURCE[sanitytest]=sanitytest.c
65   INCLUDE[sanitytest]=../include
66   DEPEND[sanitytest]=../libcrypto libtestutil.a
67
68   SOURCE[test_test]=test_test.c
69   INCLUDE[test_test]=../include
70   DEPEND[test_test]=../libcrypto libtestutil.a
71
72   SOURCE[exdatatest]=exdatatest.c
73   INCLUDE[exdatatest]=../include
74   DEPEND[exdatatest]=../libcrypto libtestutil.a
75
76   SOURCE[bntest]=bntest.c
77   INCLUDE[bntest]=../include
78   DEPEND[bntest]=../libcrypto libtestutil.a
79
80   SOURCE[ectest]=ectest.c
81   INCLUDE[ectest]=../include
82   DEPEND[ectest]=../libcrypto libtestutil.a
83
84   SOURCE[ecstresstest]=ecstresstest.c
85   INCLUDE[ecstresstest]=../include
86   DEPEND[ecstresstest]=../libcrypto libtestutil.a
87
88   SOURCE[ecdsatest]=ecdsatest.c
89   INCLUDE[ecdsatest]=../include
90   DEPEND[ecdsatest]=../libcrypto libtestutil.a
91
92   SOURCE[sm2sigtest]=sm2sigtest.c
93   INCLUDE[sm2sigtest]=../include
94   DEPEND[sm2sigtest]=../libcrypto libtestutil.a
95
96   SOURCE[sm2crypttest]=sm2crypttest.c
97   INCLUDE[sm2crypttest]=../include
98   DEPEND[sm2crypttest]=../libcrypto libtestutil.a
99
100   SOURCE[gmdifftest]=gmdifftest.c
101   INCLUDE[gmdifftest]=../include
102   DEPEND[gmdifftest]=../libcrypto libtestutil.a
103
104   SOURCE[pbelutest]=pbelutest.c
105   INCLUDE[pbelutest]=../include
106   DEPEND[pbelutest]=../libcrypto libtestutil.a
107
108   SOURCE[ideatest]=ideatest.c
109   INCLUDE[ideatest]=../include
110   DEPEND[ideatest]=../libcrypto libtestutil.a
111
112   SOURCE[md2test]=md2test.c
113   INCLUDE[md2test]=../include
114   DEPEND[md2test]=../libcrypto libtestutil.a
115
116   SOURCE[hmactest]=hmactest.c
117   INCLUDE[hmactest]=../include
118   DEPEND[hmactest]=../libcrypto libtestutil.a
119
120   SOURCE[rc2test]=rc2test.c
121   INCLUDE[rc2test]=../include
122   DEPEND[rc2test]=../libcrypto libtestutil.a
123
124   SOURCE[rc4test]=rc4test.c
125   INCLUDE[rc4test]=../include
126   DEPEND[rc4test]=../libcrypto libtestutil.a
127
128   SOURCE[rc5test]=rc5test.c
129   INCLUDE[rc5test]=../include
130   DEPEND[rc5test]=../libcrypto libtestutil.a
131
132   SOURCE[destest]=destest.c
133   INCLUDE[destest]=../include
134   DEPEND[destest]=../libcrypto libtestutil.a
135
136   SOURCE[mdc2test]=mdc2test.c
137   INCLUDE[mdc2test]=../include
138   DEPEND[mdc2test]=../libcrypto libtestutil.a
139
140   SOURCE[dhtest]=dhtest.c
141   INCLUDE[dhtest]=../include
142   DEPEND[dhtest]=../libcrypto libtestutil.a
143
144   SOURCE[enginetest]=enginetest.c
145   INCLUDE[enginetest]=../include
146   DEPEND[enginetest]=../libcrypto libtestutil.a
147
148   SOURCE[casttest]=casttest.c
149   INCLUDE[casttest]=../include
150   DEPEND[casttest]=../libcrypto libtestutil.a
151
152   SOURCE[bftest]=bftest.c
153   INCLUDE[bftest]=../include
154   DEPEND[bftest]=../libcrypto libtestutil.a
155
156   SOURCE[ssltest_old]=ssltest_old.c
157   INCLUDE[ssltest_old]=.. ../include
158   DEPEND[ssltest_old]=../libcrypto ../libssl
159
160   SOURCE[dsatest]=dsatest.c
161   INCLUDE[dsatest]=../include
162   DEPEND[dsatest]=../libcrypto libtestutil.a
163
164   SOURCE[exptest]=exptest.c
165   INCLUDE[exptest]=../include
166   DEPEND[exptest]=../libcrypto libtestutil.a
167
168   SOURCE[rsa_test]=rsa_test.c
169   INCLUDE[rsa_test]=../include
170   DEPEND[rsa_test]=../libcrypto libtestutil.a
171
172   SOURCE[rsa_mp_test]=rsa_mp_test.c
173   INCLUDE[rsa_mp_test]=../include
174   DEPEND[rsa_mp_test]=../libcrypto libtestutil.a
175
176   SOURCE[fatalerrtest]=fatalerrtest.c ssltestlib.c
177   INCLUDE[fatalerrtest]=../include
178   DEPEND[fatalerrtest]=../libcrypto ../libssl libtestutil.a
179
180   SOURCE[tls13ccstest]=tls13ccstest.c ssltestlib.c
181   INCLUDE[tls13ccstest]=../include
182   DEPEND[tls13ccstest]=../libcrypto ../libssl libtestutil.a
183
184   SOURCE[evp_test]=evp_test.c
185   INCLUDE[evp_test]=../include
186   DEPEND[evp_test]=../libcrypto libtestutil.a
187
188   SOURCE[evp_extra_test]=evp_extra_test.c
189   INCLUDE[evp_extra_test]=../include ../crypto/include
190   DEPEND[evp_extra_test]=../libcrypto libtestutil.a
191
192   SOURCE[igetest]=igetest.c
193   INCLUDE[igetest]=../include
194   DEPEND[igetest]=../libcrypto libtestutil.a
195
196   SOURCE[v3nametest]=v3nametest.c
197   INCLUDE[v3nametest]=../include
198   DEPEND[v3nametest]=../libcrypto libtestutil.a
199
200   SOURCE[crltest]=crltest.c
201   INCLUDE[crltest]=../include
202   DEPEND[crltest]=../libcrypto libtestutil.a
203
204   SOURCE[v3ext]=v3ext.c
205   INCLUDE[v3ext]=../include
206   DEPEND[v3ext]=../libcrypto libtestutil.a
207
208   SOURCE[danetest]=danetest.c
209   INCLUDE[danetest]=../include
210   DEPEND[danetest]=../libcrypto ../libssl libtestutil.a
211
212   SOURCE[constant_time_test]=constant_time_test.c
213   INCLUDE[constant_time_test]=../include
214   DEPEND[constant_time_test]=../libcrypto libtestutil.a
215
216   SOURCE[verify_extra_test]=verify_extra_test.c
217   INCLUDE[verify_extra_test]=../include
218   DEPEND[verify_extra_test]=../libcrypto libtestutil.a
219
220   SOURCE[clienthellotest]=clienthellotest.c
221   INCLUDE[clienthellotest]=../include
222   DEPEND[clienthellotest]=../libcrypto ../libssl libtestutil.a
223
224   SOURCE[bad_dtls_test]=bad_dtls_test.c
225   INCLUDE[bad_dtls_test]=../include
226   DEPEND[bad_dtls_test]=../libcrypto ../libssl libtestutil.a
227
228   SOURCE[packettest]=packettest.c
229   INCLUDE[packettest]=../include
230   DEPEND[packettest]=../libcrypto libtestutil.a
231
232   SOURCE[asynctest]=asynctest.c
233   INCLUDE[asynctest]=../include
234   DEPEND[asynctest]=../libcrypto
235
236   SOURCE[secmemtest]=secmemtest.c
237   INCLUDE[secmemtest]=../include
238   DEPEND[secmemtest]=../libcrypto libtestutil.a
239
240   SOURCE[srptest]=srptest.c
241   INCLUDE[srptest]=../include
242   DEPEND[srptest]=../libcrypto libtestutil.a
243
244   SOURCE[memleaktest]=memleaktest.c
245   INCLUDE[memleaktest]=../include
246   DEPEND[memleaktest]=../libcrypto libtestutil.a
247
248   SOURCE[stack_test]=stack_test.c
249   INCLUDE[stack_test]=../include
250   DEPEND[stack_test]=../libcrypto libtestutil.a
251
252   SOURCE[lhash_test]=lhash_test.c
253   INCLUDE[lhash_test]=../include
254   DEPEND[lhash_test]=../libcrypto libtestutil.a
255
256   SOURCE[dtlsv1listentest]=dtlsv1listentest.c
257   INCLUDE[dtlsv1listentest]=../include
258   DEPEND[dtlsv1listentest]=../libssl libtestutil.a
259
260   SOURCE[ct_test]=ct_test.c
261   INCLUDE[ct_test]=../include
262   DEPEND[ct_test]=../libcrypto libtestutil.a
263
264   SOURCE[threadstest]=threadstest.c
265   INCLUDE[threadstest]=../include
266   DEPEND[threadstest]=../libcrypto libtestutil.a
267
268   SOURCE[afalgtest]=afalgtest.c
269   INCLUDE[afalgtest]=../include
270   DEPEND[afalgtest]=../libcrypto libtestutil.a
271
272   SOURCE[d2i_test]=d2i_test.c
273   INCLUDE[d2i_test]=../include
274   DEPEND[d2i_test]=../libcrypto libtestutil.a
275
276   SOURCE[ssl_test_ctx_test]=ssl_test_ctx_test.c ssl_test_ctx.c
277   INCLUDE[ssl_test_ctx_test]=../include
278   DEPEND[ssl_test_ctx_test]=../libcrypto ../libssl libtestutil.a
279
280   SOURCE[ssl_test]=ssl_test.c ssl_test_ctx.c handshake_helper.c
281   INCLUDE[ssl_test]=../include
282   DEPEND[ssl_test]=../libcrypto ../libssl libtestutil.a
283
284   SOURCE[cipherlist_test]=cipherlist_test.c
285   INCLUDE[cipherlist_test]=../include
286   DEPEND[cipherlist_test]=../libcrypto ../libssl libtestutil.a
287
288   INCLUDE[ssl_test_ctx.o]=../include
289   INCLUDE[handshake_helper.o]=.. ../include
290   INCLUDE[ssltestlib.o]=.. ../include
291
292   SOURCE[x509aux]=x509aux.c
293   INCLUDE[x509aux]=../include
294   DEPEND[x509aux]=../libcrypto libtestutil.a
295
296   SOURCE[asynciotest]=asynciotest.c ssltestlib.c
297   INCLUDE[asynciotest]=../include
298   DEPEND[asynciotest]=../libcrypto ../libssl libtestutil.a
299
300   SOURCE[bio_callback_test]=bio_callback_test.c
301   INCLUDE[bio_callback_test]=../include
302   DEPEND[bio_callback_test]=../libcrypto libtestutil.a
303
304   SOURCE[bioprinttest]=bioprinttest.c
305   INCLUDE[bioprinttest]=../include
306   DEPEND[bioprinttest]=../libcrypto libtestutil.a
307
308   SOURCE[sslapitest]=sslapitest.c ssltestlib.c
309   INCLUDE[sslapitest]=../include ..
310   DEPEND[sslapitest]=../libcrypto ../libssl libtestutil.a
311
312   SOURCE[ocspapitest]=ocspapitest.c
313   INCLUDE[ocspapitest]=../include
314   DEPEND[ocspapitest]=../libcrypto libtestutil.a
315
316   SOURCE[dtlstest]=dtlstest.c ssltestlib.c
317   INCLUDE[dtlstest]=../include
318   DEPEND[dtlstest]=../libcrypto ../libssl libtestutil.a
319
320   SOURCE[sslcorrupttest]=sslcorrupttest.c ssltestlib.c
321   INCLUDE[sslcorrupttest]=../include
322   DEPEND[sslcorrupttest]=../libcrypto ../libssl libtestutil.a
323
324   SOURCE[bio_enc_test]=bio_enc_test.c
325   INCLUDE[bio_enc_test]=../include
326   DEPEND[bio_enc_test]=../libcrypto libtestutil.a
327
328   SOURCE[pkey_meth_test]=pkey_meth_test.c
329   INCLUDE[pkey_meth_test]=../include
330   DEPEND[pkey_meth_test]=../libcrypto libtestutil.a
331
332   SOURCE[pkey_meth_kdf_test]=pkey_meth_kdf_test.c
333   INCLUDE[pkey_meth_kdf_test]=../include
334   DEPEND[pkey_meth_kdf_test]=../libcrypto libtestutil.a
335
336   SOURCE[x509_time_test]=x509_time_test.c
337   INCLUDE[x509_time_test]=../include
338   DEPEND[x509_time_test]=../libcrypto libtestutil.a
339
340   SOURCE[recordlentest]=recordlentest.c ssltestlib.c
341   INCLUDE[recordlentest]=../include
342   DEPEND[recordlentest]=../libcrypto ../libssl libtestutil.a
343
344   SOURCE[drbgtest]=drbgtest.c
345   INCLUDE[drbgtest]=../include
346   DEPEND[drbgtest]=../libcrypto libtestutil.a
347
348   SOURCE[drbg_cavs_test]=drbg_cavs_test.c drbg_cavs_data.c
349   INCLUDE[drbg_cavs_test]=../include . ..
350   DEPEND[drbg_cavs_test]=../libcrypto libtestutil.a
351
352   SOURCE[x509_dup_cert_test]=x509_dup_cert_test.c
353   INCLUDE[x509_dup_cert_test]=../include
354   DEPEND[x509_dup_cert_test]=../libcrypto libtestutil.a
355
356   SOURCE[x509_check_cert_pkey_test]=x509_check_cert_pkey_test.c
357   INCLUDE[x509_check_cert_pkey_test]=../include
358   DEPEND[x509_check_cert_pkey_test]=../libcrypto libtestutil.a
359
360   SOURCE[pemtest]=pemtest.c
361   INCLUDE[pemtest]=../include
362   DEPEND[pemtest]=../libcrypto libtestutil.a
363
364   SOURCE[ssl_cert_table_internal_test]=ssl_cert_table_internal_test.c
365   INCLUDE[ssl_cert_table_internal_test]=.. ../include
366   DEPEND[ssl_cert_table_internal_test]=../libcrypto libtestutil.a
367
368   SOURCE[ciphername_test]=ciphername_test.c
369   INCLUDE[ciphername_test]=../include
370   DEPEND[ciphername_test]=../libcrypto ../libssl libtestutil.a
371
372   SOURCE[servername_test]=servername_test.c
373   INCLUDE[servername_test]=../include
374   DEPEND[servername_test]=../libcrypto ../libssl libtestutil.a
375
376   IF[{- !$disabled{cms} -}]
377     PROGRAMS_NO_INST=cmsapitest
378     SOURCE[cmsapitest]=cmsapitest.c
379     INCLUDE[cmsapitest]=../include
380     DEPEND[cmsapitest]=../libcrypto libtestutil.a
381   ENDIF
382
383   IF[{- !$disabled{psk} -}]
384     PROGRAMS_NO_INST=dtls_mtu_test
385     SOURCE[dtls_mtu_test]=dtls_mtu_test.c ssltestlib.c
386     INCLUDE[dtls_mtu_test]=.. ../include
387     DEPEND[dtls_mtu_test]=../libcrypto ../libssl libtestutil.a
388   ENDIF
389
390   IF[{- !$disabled{shared} -}]
391     PROGRAMS_NO_INST=shlibloadtest
392     SOURCE[shlibloadtest]=shlibloadtest.c
393     INCLUDE[shlibloadtest]=../include ../crypto/include
394     DEPEND[shlibloadtest]=libtestutil.a
395   ENDIF
396
397   IF[{- $disabled{shared} -}]
398     PROGRAMS_NO_INST=cipher_overhead_test
399     SOURCE[cipher_overhead_test]=cipher_overhead_test.c
400     INCLUDE[cipher_overhead_test]=.. ../include
401     DEPEND[cipher_overhead_test]=../libcrypto ../libssl libtestutil.a
402   ENDIF
403
404   SOURCE[uitest]=uitest.c \
405                  {- rebase_files("../apps",
406                                  split(/\s+/, $target{apps_init_src})) -}
407   INCLUDE[uitest]=.. ../include ../apps
408   DEPEND[uitest]=../apps/libapps.a ../libcrypto ../libssl libtestutil.a
409
410   SOURCE[cipherbytes_test]=cipherbytes_test.c
411   INCLUDE[cipherbytes_test]=../include
412   DEPEND[cipherbytes_test]=../libcrypto ../libssl libtestutil.a
413
414   SOURCE[asn1_encode_test]=asn1_encode_test.c
415   INCLUDE[asn1_encode_test]=../include
416   DEPEND[asn1_encode_test]=../libcrypto libtestutil.a
417
418   SOURCE[asn1_string_table_test]=asn1_string_table_test.c
419   INCLUDE[asn1_string_table_test]=../include
420   DEPEND[asn1_string_table_test]=../libcrypto libtestutil.a
421
422   SOURCE[time_offset_test]=time_offset_test.c
423   INCLUDE[time_offset_test]=../include
424   DEPEND[time_offset_test]=../libcrypto libtestutil.a
425
426   SOURCE[conf_include_test]=conf_include_test.c
427   INCLUDE[conf_include_test]=../include
428   DEPEND[conf_include_test]=../libcrypto libtestutil.a
429
430   # Internal test programs.  These are essentially a collection of internal
431   # test routines.  Some of them need to reach internal symbols that aren't
432   # available through the shared library (at least on Linux, Solaris, Windows
433   # and VMS, where the exported symbols are those listed in util/*.num), these
434   # programs are forcibly linked with the static libraries, where all symbols
435   # are always available.  This excludes linking these programs natively on
436   # Windows when building shared libraries, since the static libraries share
437   # names with the DLL import libraries.
438   IF[{- $disabled{shared} || $target{build_scheme}->[1] ne 'windows' -}]
439     PROGRAMS_NO_INST=asn1_internal_test modes_internal_test x509_internal_test \
440                      tls13encryptiontest wpackettest ctype_internal_test \
441                      rdrand_sanitytest
442     IF[{- !$disabled{poly1305} -}]
443       PROGRAMS_NO_INST=poly1305_internal_test
444     ENDIF
445     IF[{- !$disabled{chacha} -}]
446       PROGRAMS_NO_INST=chacha_internal_test
447     ENDIF
448     IF[{- !$disabled{siphash} -}]
449       PROGRAMS_NO_INST=siphash_internal_test
450     ENDIF
451     IF[{- !$disabled{sm4} -}]
452       PROGRAMS_NO_INST=sm4_internal_test
453     ENDIF
454     IF[{- !$disabled{ec} -}]
455       PROGRAMS_NO_INST=curve448_internal_test
456     ENDIF
457
458     SOURCE[poly1305_internal_test]=poly1305_internal_test.c
459     INCLUDE[poly1305_internal_test]=.. ../include ../crypto/include
460     DEPEND[poly1305_internal_test]=../libcrypto.a libtestutil.a
461
462     SOURCE[chacha_internal_test]=chacha_internal_test.c
463     INCLUDE[chacha_internal_test]=.. ../include ../crypto/include
464     DEPEND[chacha_internal_test]=../libcrypto.a libtestutil.a
465
466     SOURCE[asn1_internal_test]=asn1_internal_test.c
467     INCLUDE[asn1_internal_test]=.. ../include ../crypto/include
468     DEPEND[asn1_internal_test]=../libcrypto.a libtestutil.a
469
470     SOURCE[modes_internal_test]=modes_internal_test.c
471     INCLUDE[modes_internal_test]=.. ../include
472     DEPEND[modes_internal_test]=../libcrypto.a libtestutil.a
473
474     SOURCE[x509_internal_test]=x509_internal_test.c
475     INCLUDE[x509_internal_test]=.. ../include
476     DEPEND[x509_internal_test]=../libcrypto.a libtestutil.a
477
478     SOURCE[tls13encryptiontest]=tls13encryptiontest.c
479     INCLUDE[tls13encryptiontest]=.. ../include
480     DEPEND[tls13encryptiontest]=../libcrypto ../libssl.a libtestutil.a
481
482     SOURCE[wpackettest]=wpackettest.c
483     INCLUDE[wpackettest]=../include
484     DEPEND[wpackettest]=../libcrypto ../libssl.a libtestutil.a
485
486     SOURCE[ctype_internal_test]=ctype_internal_test.c
487     INCLUDE[ctype_internal_test]=.. ../crypto/include ../include
488     DEPEND[ctype_internal_test]=../libcrypto.a libtestutil.a
489
490     SOURCE[siphash_internal_test]=siphash_internal_test.c
491     INCLUDE[siphash_internal_test]=.. ../include ../crypto/include
492     DEPEND[siphash_internal_test]=../libcrypto.a libtestutil.a
493
494     SOURCE[sm4_internal_test]=sm4_internal_test.c
495     INCLUDE[sm4_internal_test]=.. ../include ../crypto/include
496     DEPEND[sm4_internal_test]=../libcrypto.a libtestutil.a
497
498     SOURCE[curve448_internal_test]=curve448_internal_test.c
499     INCLUDE[curve448_internal_test]=.. ../include ../crypto/ec/curve448
500     DEPEND[curve448_internal_test]=../libcrypto.a libtestutil.a
501
502     SOURCE[rdrand_sanitytest]=rdrand_sanitytest.c
503     INCLUDE[rdrand_sanitytest]=../include
504     DEPEND[rdrand_sanitytest]=../libcrypto.a libtestutil.a
505   ENDIF
506
507   IF[{- !$disabled{mdc2} -}]
508     PROGRAMS_NO_INST=mdc2_internal_test
509   ENDIF
510
511   SOURCE[mdc2_internal_test]=mdc2_internal_test.c
512   INCLUDE[mdc2_internal_test]=.. ../include
513   DEPEND[mdc2_internal_test]=../libcrypto libtestutil.a
514
515   PROGRAMS_NO_INST=asn1_time_test
516   SOURCE[asn1_time_test]=asn1_time_test.c
517   INCLUDE[asn1_time_test]=../include
518   DEPEND[asn1_time_test]=../libcrypto libtestutil.a
519
520   # We disable this test completely in a shared build because it deliberately
521   # redefines some internal libssl symbols. This doesn't work in a non-shared
522   # build
523   IF[{- !$disabled{shared} -}]
524     PROGRAMS_NO_INST=tls13secretstest
525     SOURCE[tls13secretstest]=tls13secretstest.c
526     SOURCE[tls13secretstest]= ../ssl/tls13_enc.c ../ssl/packet.c
527     INCLUDE[tls13secretstest]=.. ../include
528     DEPEND[tls13secretstest]=../libcrypto ../libssl libtestutil.a
529   ENDIF
530
531   SOURCE[sslbuffertest]=sslbuffertest.c ssltestlib.c
532   INCLUDE[sslbuffertest]=../include
533   DEPEND[sslbuffertest]=../libcrypto ../libssl libtestutil.a
534
535   SOURCE[sysdefaulttest]=sysdefaulttest.c
536   INCLUDE[sysdefaulttest]=../include
537   DEPEND[sysdefaulttest]=../libcrypto ../libssl libtestutil.a
538 ENDIF
539
540 {-
541    use File::Spec::Functions;
542    use File::Basename;
543    use OpenSSL::Glob;
544
545    my @nogo_headers = ( "asn1_mac.h",
546                         "opensslconf.h",
547                         "__decc_include_prologue.h",
548                         "__decc_include_epilogue.h" );
549    my @nogo_headers_re = ( qr/.*err\.h/ );
550    my @headerfiles = glob catfile($sourcedir,
551                                   updir(), "include", "openssl", "*.h");
552
553    foreach my $headerfile (@headerfiles) {
554        my $name = basename($headerfile, ".h");
555        next if $disabled{$name};
556        next if grep { $_ eq lc("$name.h") } @nogo_headers;
557        next if grep { lc("$name.h") =~ m/$_/i } @nogo_headers_re;
558        $OUT .= <<"_____";
559
560   PROGRAMS_NO_INST=buildtest_$name
561   GENERATE[buildtest_$name.c]=generate_buildtest.pl $name
562   SOURCE[buildtest_$name]=buildtest_$name.c
563   INCLUDE[buildtest_$name]=../include
564   DEPEND[buildtest_$name]=../libssl ../libcrypto
565 _____
566    }
567 -}