1# TODO: use ../apps/libapps.a instead of direct ../apps/lib source.
2# This can't currently be done, because some of its units drag in too many
3# unresolved references that don't apply here.
4# Most of all, ../apps/lib/apps.c needs to be divided in smaller pieces to
5# be useful here.
6#
7# Auxiliary program source (copied from ../apps/build.info)
8IF[{- $config{target} =~ /^(?:VC-|mingw|BC-)/ -}]
9  # It's called 'init', but doesn't have much 'init' in it...
10  $AUXLIBAPPSSRC=../apps/lib/win32_init.c
11ENDIF
12IF[{- $config{target} =~ /^vms-/ -}]
13  $AUXLIBAPPSSRC=../apps/lib/vms_term_sock.c ../apps/lib/vms_decc_argv.c
14ENDIF
15# Program init source, that don't have direct linkage with the rest of the
16# source, and can therefore not be part of a library.
17IF[{- !$disabled{uplink} -}]
18  $INITSRC=../ms/applink.c
19ENDIF
20$LIBAPPSSRC=../apps/lib/opt.c $AUXLIBAPPSSRC
21
22IF[{- !$disabled{tests} -}]
23  LIBS{noinst,has_main}=libtestutil.a
24  SOURCE[libtestutil.a]=testutil/basic_output.c testutil/output.c \
25          testutil/driver.c testutil/tests.c testutil/cb.c testutil/stanza.c \
26          testutil/format_output.c testutil/load.c testutil/fake_random.c \
27          testutil/test_cleanup.c testutil/main.c testutil/testutil_init.c \
28          testutil/options.c testutil/test_options.c testutil/provider.c \
29          testutil/apps_shims.c testutil/random.c $LIBAPPSSRC
30  INCLUDE[libtestutil.a]=../include ../apps/include ..
31  DEPEND[libtestutil.a]=../libcrypto
32
33  PROGRAMS{noinst}= \
34          confdump \
35          versions \
36          aborttest test_test pkcs12_format_test \
37          sanitytest rsa_complex exdatatest bntest \
38          ecstresstest gmdifftest pbelutest \
39          destest mdc2test sha_test \
40          exptest pbetest localetest evp_pkey_ctx_new_from_name\
41          evp_pkey_provided_test evp_test evp_extra_test evp_extra_test2 \
42          evp_fetch_prov_test evp_libctx_test ossl_store_test \
43          v3nametest v3ext punycode_test \
44          crltest danetest bad_dtls_test lhash_test sparse_array_test \
45          conf_include_test params_api_test params_conversion_test \
46          constant_time_test verify_extra_test clienthellotest \
47          packettest asynctest secmemtest srptest memleaktest stack_test \
48          dtlsv1listentest ct_test threadstest afalgtest d2i_test \
49          ssl_test_ctx_test ssl_test x509aux cipherlist_test asynciotest \
50          bio_callback_test bio_memleak_test bio_core_test param_build_test \
51          bioprinttest sslapitest dtlstest sslcorrupttest \
52          bio_enc_test pkey_meth_test pkey_meth_kdf_test evp_kdf_test uitest \
53          cipherbytes_test threadstest_fips \
54          asn1_encode_test asn1_decode_test asn1_string_table_test asn1_stable_parse_test \
55          x509_time_test x509_dup_cert_test x509_check_cert_pkey_test \
56          recordlentest drbgtest rand_status_test sslbuffertest \
57          time_offset_test pemtest ssl_cert_table_internal_test ciphername_test \
58          http_test servername_test ocspapitest fatalerrtest tls13ccstest \
59          sysdefaulttest errtest ssl_ctx_test \
60          context_internal_test aesgcmtest params_test evp_pkey_dparams_test \
61          keymgmt_internal_test hexstr_test provider_status_test defltfips_test \
62          bio_readbuffer_test user_property_test pkcs7_test upcallstest \
63          provfetchtest prov_config_test rand_test fips_version_test \
64          nodefltctxtest
65
66  IF[{- !$disabled{'deprecated-3.0'} -}]
67    PROGRAMS{noinst}=enginetest
68  ENDIF
69
70  SOURCE[confdump]=confdump.c
71  INCLUDE[confdump]=../include ../apps/include
72  DEPEND[confdump]=../libcrypto
73
74  SOURCE[versions]=versions.c
75  INCLUDE[versions]=../include ../apps/include
76  DEPEND[versions]=../libcrypto
77
78  SOURCE[aborttest]=aborttest.c
79  INCLUDE[aborttest]=../include ../apps/include
80  DEPEND[aborttest]=../libcrypto
81
82  SOURCE[sanitytest]=sanitytest.c
83  INCLUDE[sanitytest]=../include ../apps/include
84  DEPEND[sanitytest]=../libcrypto libtestutil.a
85
86  SOURCE[rand_test]=rand_test.c
87  INCLUDE[rand_test]=../include ../apps/include
88  DEPEND[rand_test]=../libcrypto libtestutil.a
89
90  SOURCE[rsa_complex]=rsa_complex.c
91  INCLUDE[rsa_complex]=../include ../apps/include
92
93  SOURCE[test_test]=test_test.c
94  INCLUDE[test_test]=../include ../apps/include
95  DEPEND[test_test]=../libcrypto libtestutil.a
96
97  SOURCE[exdatatest]=exdatatest.c
98  INCLUDE[exdatatest]=../include ../apps/include
99  DEPEND[exdatatest]=../libcrypto libtestutil.a
100
101  SOURCE[bntest]=bntest.c
102  INCLUDE[bntest]=../include ../apps/include
103  DEPEND[bntest]=../libcrypto libtestutil.a
104
105  SOURCE[ectest]=ectest.c
106  INCLUDE[ectest]=../include ../apps/include
107  DEPEND[ectest]=../libcrypto.a libtestutil.a
108
109  SOURCE[ecstresstest]=ecstresstest.c
110  INCLUDE[ecstresstest]=../include ../apps/include
111  DEPEND[ecstresstest]=../libcrypto libtestutil.a
112
113  SOURCE[gmdifftest]=gmdifftest.c
114  INCLUDE[gmdifftest]=../include ../apps/include
115  DEPEND[gmdifftest]=../libcrypto libtestutil.a
116
117  SOURCE[pbelutest]=pbelutest.c
118  INCLUDE[pbelutest]=../include ../apps/include
119  DEPEND[pbelutest]=../libcrypto libtestutil.a
120
121  SOURCE[mdc2test]=mdc2test.c
122  INCLUDE[mdc2test]=../include ../apps/include
123  DEPEND[mdc2test]=../libcrypto libtestutil.a
124
125  SOURCE[sha_test]=sha_test.c
126  INCLUDE[sha_test]=../include ../apps/include
127  DEPEND[sha_test]=../libcrypto libtestutil.a
128
129  SOURCE[enginetest]=enginetest.c
130  INCLUDE[enginetest]=../include ../apps/include
131  DEPEND[enginetest]=../libcrypto libtestutil.a
132
133  SOURCE[exptest]=exptest.c
134  INCLUDE[exptest]=../include ../apps/include
135  DEPEND[exptest]=../libcrypto libtestutil.a
136
137  SOURCE[localetest]=localetest.c
138  INCLUDE[localetest]=../include ../apps/include
139  DEPEND[localetest]=../libcrypto libtestutil.a
140
141  SOURCE[evp_pkey_ctx_new_from_name]=evp_pkey_ctx_new_from_name.c
142  INCLUDE[evp_pkey_ctx_new_from_name]=../include ../apps/include
143  DEPEND[evp_pkey_ctx_new_from_name]=../libcrypto
144
145  SOURCE[pbetest]=pbetest.c
146  INCLUDE[pbetest]=../include ../apps/include
147  DEPEND[pbetest]=../libcrypto libtestutil.a
148
149  SOURCE[fatalerrtest]=fatalerrtest.c helpers/ssltestlib.c
150  INCLUDE[fatalerrtest]=../include ../apps/include
151  DEPEND[fatalerrtest]=../libcrypto ../libssl libtestutil.a
152
153  SOURCE[tls13ccstest]=tls13ccstest.c helpers/ssltestlib.c
154  INCLUDE[tls13ccstest]=../include ../apps/include
155  DEPEND[tls13ccstest]=../libcrypto ../libssl libtestutil.a
156
157  SOURCE[upcallstest]=upcallstest.c
158  INCLUDE[upcallstest]=../include ../apps/include
159  DEPEND[upcallstest]=../libcrypto libtestutil.a
160
161  SOURCE[user_property_test]=user_property_test.c
162  INCLUDE[user_property_test]=../include ../apps/include
163  DEPEND[user_property_test]=../libcrypto libtestutil.a
164
165  SOURCE[evp_test]=evp_test.c
166  INCLUDE[evp_test]=../include ../apps/include
167  DEPEND[evp_test]=../libcrypto libtestutil.a
168  IF[{- $disabled{legacy} || !$target{dso_scheme} -}]
169    DEFINE[evp_test]=NO_LEGACY_MODULE
170  ENDIF
171
172  SOURCE[evp_extra_test]=evp_extra_test.c
173  INCLUDE[evp_extra_test]=../include ../apps/include
174  DEPEND[evp_extra_test]=../libcrypto.a libtestutil.a
175  IF[{- !$disabled{module} && !$disabled{legacy} -}]
176    DEFINE[evp_extra_test]=STATIC_LEGACY
177    SOURCE[evp_extra_test]=../providers/legacyprov.c
178    INCLUDE[evp_extra_test]=../providers/common/include \
179                            ../providers/implementations/include
180    DEPEND[evp_extra_test]=../providers/liblegacy.a \
181                           ../providers/libcommon.a
182  ENDIF
183
184  SOURCE[evp_extra_test2]=evp_extra_test2.c
185  INCLUDE[evp_extra_test2]=../include ../apps/include
186  DEPEND[evp_extra_test2]=../libcrypto libtestutil.a
187
188  SOURCE[evp_libctx_test]=evp_libctx_test.c
189  INCLUDE[evp_libctx_test]=../include ../apps/include
190  DEPEND[evp_libctx_test]=../libcrypto.a libtestutil.a
191
192  SOURCE[evp_fetch_prov_test]=evp_fetch_prov_test.c
193  INCLUDE[evp_fetch_prov_test]=../include ../apps/include
194  DEPEND[evp_fetch_prov_test]=../libcrypto libtestutil.a
195
196  SOURCE[provfetchtest]=provfetchtest.c
197  INCLUDE[provfetchtest]=../include ../apps/include
198  DEPEND[provfetchtest]=../libcrypto.a libtestutil.a
199
200  SOURCE[prov_config_test]=prov_config_test.c
201  INCLUDE[prov_config_test]=../include ../apps/include
202  DEPEND[prov_config_test]=../libcrypto.a libtestutil.a
203
204  SOURCE[evp_pkey_provided_test]=evp_pkey_provided_test.c
205  INCLUDE[evp_pkey_provided_test]=../include ../apps/include
206  DEPEND[evp_pkey_provided_test]=../libcrypto.a libtestutil.a
207
208  IF[{- !$disabled{'acvp-tests'} -}]
209    PROGRAMS{noinst}=acvp_test
210
211    SOURCE[acvp_test]=acvp_test.c
212    INCLUDE[acvp_test]=../include ../apps/include
213    DEPEND[acvp_test]=../libcrypto.a libtestutil.a
214  ENDIF
215
216  SOURCE[ossl_store_test]=ossl_store_test.c
217  INCLUDE[ossl_store_test]=../include ../apps/include
218  DEPEND[ossl_store_test]=../libcrypto.a libtestutil.a
219
220  SOURCE[provider_status_test]=provider_status_test.c
221  INCLUDE[provider_status_test]=../include ../apps/include
222  DEPEND[provider_status_test]=../libcrypto.a libtestutil.a
223
224  SOURCE[nodefltctxtest]=nodefltctxtest.c
225  INCLUDE[nodefltctxtest]=../include ../apps/include
226  DEPEND[nodefltctxtest]=../libcrypto.a libtestutil.a
227
228  IF[{- !$disabled{'deprecated-3.0'} -}]
229    PROGRAMS{noinst}=igetest bftest casttest
230
231    SOURCE[igetest]=igetest.c
232    INCLUDE[igetest]=../include ../apps/include
233    DEPEND[igetest]=../libcrypto libtestutil.a
234
235    SOURCE[bftest]=bftest.c
236    INCLUDE[bftest]=../include ../apps/include
237    DEPEND[bftest]=../libcrypto libtestutil.a
238
239    SOURCE[casttest]=casttest.c
240    INCLUDE[casttest]=../include ../apps/include
241    DEPEND[casttest]=../libcrypto libtestutil.a
242  ENDIF
243
244  SOURCE[v3nametest]=v3nametest.c
245  INCLUDE[v3nametest]=../include ../apps/include
246  DEPEND[v3nametest]=../libcrypto libtestutil.a
247
248  SOURCE[crltest]=crltest.c
249  INCLUDE[crltest]=../include ../apps/include
250  DEPEND[crltest]=../libcrypto libtestutil.a
251
252  SOURCE[v3ext]=v3ext.c
253  INCLUDE[v3ext]=../include ../apps/include
254  DEPEND[v3ext]=../libcrypto libtestutil.a
255
256  SOURCE[danetest]=danetest.c
257  INCLUDE[danetest]=../include ../apps/include
258  DEPEND[danetest]=../libcrypto ../libssl libtestutil.a
259
260  SOURCE[constant_time_test]=constant_time_test.c
261  INCLUDE[constant_time_test]=../include ../apps/include
262  DEPEND[constant_time_test]=../libcrypto libtestutil.a
263
264  SOURCE[verify_extra_test]=verify_extra_test.c
265  INCLUDE[verify_extra_test]=../include ../apps/include
266  DEPEND[verify_extra_test]=../libcrypto libtestutil.a
267
268  SOURCE[clienthellotest]=clienthellotest.c
269  INCLUDE[clienthellotest]=../include ../apps/include
270  DEPEND[clienthellotest]=../libcrypto ../libssl libtestutil.a
271
272  SOURCE[bad_dtls_test]=bad_dtls_test.c
273  INCLUDE[bad_dtls_test]=../include ../apps/include
274  DEPEND[bad_dtls_test]=../libcrypto ../libssl libtestutil.a
275
276  SOURCE[packettest]=packettest.c
277  INCLUDE[packettest]=../include ../apps/include
278  DEPEND[packettest]=../libcrypto libtestutil.a
279
280  SOURCE[asynctest]=asynctest.c
281  INCLUDE[asynctest]=../include ../apps/include
282  DEPEND[asynctest]=../libcrypto
283
284  SOURCE[secmemtest]=secmemtest.c
285  INCLUDE[secmemtest]=../include ../apps/include
286  DEPEND[secmemtest]=../libcrypto libtestutil.a
287
288  SOURCE[srptest]=srptest.c
289  INCLUDE[srptest]=../include ../apps/include
290  DEPEND[srptest]=../libcrypto libtestutil.a
291
292  SOURCE[memleaktest]=memleaktest.c
293  INCLUDE[memleaktest]=../include ../apps/include
294  DEPEND[memleaktest]=../libcrypto libtestutil.a
295
296  SOURCE[pkcs12_format_test]=pkcs12_format_test.c helpers/pkcs12.c
297  INCLUDE[pkcs12_format_test]=../include ../apps/include
298  DEPEND[pkcs12_format_test]=../libcrypto libtestutil.a
299
300  SOURCE[pkcs7_test]=pkcs7_test.c
301  INCLUDE[pkcs7_test]=../include ../apps/include
302  DEPEND[pkcs7_test]=../libcrypto libtestutil.a
303
304  SOURCE[punycode_test]=punycode_test.c
305  INCLUDE[punycode_test]=../include ../apps/include
306  DEPEND[punycode_test]=../libcrypto.a libtestutil.a
307
308  SOURCE[stack_test]=stack_test.c
309  INCLUDE[stack_test]=../include ../apps/include
310  DEPEND[stack_test]=../libcrypto libtestutil.a
311
312  SOURCE[lhash_test]=lhash_test.c
313  INCLUDE[lhash_test]=../include ../apps/include
314  DEPEND[lhash_test]=../libcrypto libtestutil.a
315
316  SOURCE[dtlsv1listentest]=dtlsv1listentest.c
317  INCLUDE[dtlsv1listentest]=../include ../apps/include
318  DEPEND[dtlsv1listentest]=../libssl libtestutil.a
319
320  SOURCE[ct_test]=ct_test.c
321  INCLUDE[ct_test]=../include ../apps/include
322  DEPEND[ct_test]=../libcrypto libtestutil.a
323
324  SOURCE[threadstest]=threadstest.c
325  INCLUDE[threadstest]=../include ../apps/include
326  DEPEND[threadstest]=../libcrypto libtestutil.a
327
328  SOURCE[threadstest_fips]=threadstest_fips.c
329  INCLUDE[threadstest_fips]=../include ../apps/include
330  DEPEND[threadstest_fips]=../libcrypto libtestutil.a
331
332  SOURCE[afalgtest]=afalgtest.c
333  INCLUDE[afalgtest]=../include ../apps/include
334  DEPEND[afalgtest]=../libcrypto libtestutil.a
335
336  SOURCE[d2i_test]=d2i_test.c
337  INCLUDE[d2i_test]=../include ../apps/include
338  DEPEND[d2i_test]=../libcrypto libtestutil.a
339
340  SOURCE[ssl_test_ctx_test]=ssl_test_ctx_test.c helpers/ssl_test_ctx.c
341  INCLUDE[ssl_test_ctx_test]=../include ../apps/include
342  DEPEND[ssl_test_ctx_test]=../libcrypto ../libssl libtestutil.a
343
344  SOURCE[ssl_test]=ssl_test.c helpers/ssl_test_ctx.c helpers/handshake.c
345  IF[{- !$disabled{'srp'} -}]
346    SOURCE[ssl_test]=helpers/handshake_srp.c
347  ENDIF
348  INCLUDE[ssl_test]=../include ../apps/include
349  DEPEND[ssl_test]=../libcrypto ../libssl libtestutil.a
350
351  SOURCE[cipherlist_test]=cipherlist_test.c
352  INCLUDE[cipherlist_test]=../include ../apps/include
353  DEPEND[cipherlist_test]=../libcrypto ../libssl libtestutil.a
354
355  INCLUDE[helpers/ssl_test_ctx.o]=../include
356  INCLUDE[helpers/handshake.o]=.. ../include
357  INCLUDE[helpers/pkcs12.o]=.. ../include
358  INCLUDE[helpers/ssltestlib.o]=.. ../include
359  INCLUDE[helpers/cmp_testlib.o]=.. ../include ../apps/include
360
361  SOURCE[x509aux]=x509aux.c
362  INCLUDE[x509aux]=../include ../apps/include
363  DEPEND[x509aux]=../libcrypto libtestutil.a
364
365  SOURCE[asynciotest]=asynciotest.c helpers/ssltestlib.c
366  INCLUDE[asynciotest]=../include ../apps/include
367  DEPEND[asynciotest]=../libcrypto ../libssl libtestutil.a
368
369  SOURCE[bio_callback_test]=bio_callback_test.c
370  INCLUDE[bio_callback_test]=../include ../apps/include
371  DEPEND[bio_callback_test]=../libcrypto libtestutil.a
372
373  SOURCE[bio_readbuffer_test]=bio_readbuffer_test.c
374  INCLUDE[bio_readbuffer_test]=../include ../apps/include
375  DEPEND[bio_readbuffer_test]=../libcrypto libtestutil.a
376
377  SOURCE[bio_memleak_test]=bio_memleak_test.c
378  INCLUDE[bio_memleak_test]=../include ../apps/include
379  DEPEND[bio_memleak_test]=../libcrypto libtestutil.a
380
381  SOURCE[bioprinttest]=bioprinttest.c
382  INCLUDE[bioprinttest]=../include ../apps/include
383  DEPEND[bioprinttest]=../libcrypto libtestutil.a
384
385  SOURCE[bio_core_test]=bio_core_test.c
386  INCLUDE[bio_core_test]=../include ../apps/include
387  DEPEND[bio_core_test]=../libcrypto libtestutil.a
388
389  SOURCE[params_api_test]=params_api_test.c
390  INCLUDE[params_api_test]=../include ../apps/include
391  DEPEND[params_api_test]=../libcrypto libtestutil.a
392
393  SOURCE[params_conversion_test]=params_conversion_test.c
394  INCLUDE[params_conversion_test]=../include ../apps/include
395  DEPEND[params_conversion_test]=../libcrypto libtestutil.a
396
397  SOURCE[param_build_test]=param_build_test.c
398  INCLUDE[param_build_test]=../include ../apps/include
399  DEPEND[param_build_test]=../libcrypto.a libtestutil.a
400
401  SOURCE[sslapitest]=sslapitest.c helpers/ssltestlib.c filterprov.c tls-provider.c
402  INCLUDE[sslapitest]=../include ../apps/include ..
403  DEPEND[sslapitest]=../libcrypto ../libssl libtestutil.a
404
405  SOURCE[defltfips_test]=defltfips_test.c
406  INCLUDE[defltfips_test]=../include  ../apps/include
407  DEPEND[defltfips_test]=../libcrypto libtestutil.a
408
409  SOURCE[fips_version_test]=fips_version_test.c
410  INCLUDE[fips_version_test]=../include  ../apps/include
411  DEPEND[fips_version_test]=../libcrypto libtestutil.a
412
413  SOURCE[ocspapitest]=ocspapitest.c
414  INCLUDE[ocspapitest]=../include ../apps/include
415  DEPEND[ocspapitest]=../libcrypto libtestutil.a
416
417  IF[{- !$disabled{sock} -}]
418    PROGRAMS{noinst}=http_test
419  ENDIF
420
421  SOURCE[http_test]=http_test.c
422  INCLUDE[http_test]=../include ../apps/include
423  DEPEND[http_test]=../libcrypto libtestutil.a
424
425  SOURCE[dtlstest]=dtlstest.c helpers/ssltestlib.c
426  INCLUDE[dtlstest]=../include ../apps/include
427  DEPEND[dtlstest]=../libcrypto ../libssl libtestutil.a
428
429  SOURCE[sslcorrupttest]=sslcorrupttest.c helpers/ssltestlib.c
430  INCLUDE[sslcorrupttest]=../include ../apps/include
431  DEPEND[sslcorrupttest]=../libcrypto ../libssl libtestutil.a
432
433  SOURCE[bio_enc_test]=bio_enc_test.c
434  INCLUDE[bio_enc_test]=../include ../apps/include
435  DEPEND[bio_enc_test]=../libcrypto libtestutil.a
436
437  SOURCE[pkey_meth_test]=pkey_meth_test.c
438  INCLUDE[pkey_meth_test]=../include ../apps/include
439  DEPEND[pkey_meth_test]=../libcrypto libtestutil.a
440
441  SOURCE[pkey_meth_kdf_test]=pkey_meth_kdf_test.c
442  INCLUDE[pkey_meth_kdf_test]=../include ../apps/include
443  DEPEND[pkey_meth_kdf_test]=../libcrypto libtestutil.a
444
445  SOURCE[evp_kdf_test]=evp_kdf_test.c
446  INCLUDE[evp_kdf_test]=../include ../apps/include
447  DEPEND[evp_kdf_test]=../libcrypto libtestutil.a
448
449  SOURCE[evp_pkey_dparams_test]=evp_pkey_dparams_test.c
450  INCLUDE[evp_pkey_dparams_test]=../include ../apps/include
451  DEPEND[evp_pkey_dparams_test]=../libcrypto libtestutil.a
452
453  SOURCE[x509_time_test]=x509_time_test.c
454  INCLUDE[x509_time_test]=../include ../apps/include
455  DEPEND[x509_time_test]=../libcrypto libtestutil.a
456
457  SOURCE[recordlentest]=recordlentest.c helpers/ssltestlib.c
458  INCLUDE[recordlentest]=../include ../apps/include
459  DEPEND[recordlentest]=../libcrypto ../libssl libtestutil.a
460
461  SOURCE[drbgtest]=drbgtest.c
462  INCLUDE[drbgtest]=../include ../apps/include ../providers/common/include
463  DEPEND[drbgtest]=../libcrypto.a libtestutil.a
464
465  SOURCE[rand_status_test]=rand_status_test.c
466  INCLUDE[rand_status_test]=../include ../apps/include
467  DEPEND[rand_status_test]=../libcrypto libtestutil.a
468
469  SOURCE[x509_dup_cert_test]=x509_dup_cert_test.c
470  INCLUDE[x509_dup_cert_test]=../include ../apps/include
471  DEPEND[x509_dup_cert_test]=../libcrypto libtestutil.a
472
473  SOURCE[x509_check_cert_pkey_test]=x509_check_cert_pkey_test.c
474  INCLUDE[x509_check_cert_pkey_test]=../include ../apps/include
475  DEPEND[x509_check_cert_pkey_test]=../libcrypto libtestutil.a
476
477  SOURCE[pemtest]=pemtest.c
478  INCLUDE[pemtest]=../include ../apps/include
479  DEPEND[pemtest]=../libcrypto libtestutil.a
480
481  SOURCE[ssl_cert_table_internal_test]=ssl_cert_table_internal_test.c
482  INCLUDE[ssl_cert_table_internal_test]=.. ../include ../apps/include
483  DEPEND[ssl_cert_table_internal_test]=../libcrypto libtestutil.a
484
485  SOURCE[ciphername_test]=ciphername_test.c
486  INCLUDE[ciphername_test]=../include ../apps/include
487  DEPEND[ciphername_test]=../libcrypto ../libssl libtestutil.a
488
489  SOURCE[http_test]=http_test.c
490  INCLUDE[http_test]=../include ../apps/include
491  DEPEND[http_test]=../libcrypto libtestutil.a
492
493  SOURCE[servername_test]=servername_test.c helpers/ssltestlib.c
494  INCLUDE[servername_test]=../include ../apps/include
495  DEPEND[servername_test]=../libcrypto ../libssl libtestutil.a
496
497  IF[{- !$disabled{cms} -}]
498    PROGRAMS{noinst}=cmsapitest
499    SOURCE[cmsapitest]=cmsapitest.c
500    INCLUDE[cmsapitest]=../include ../apps/include
501    DEPEND[cmsapitest]=../libcrypto libtestutil.a
502  ENDIF
503
504  IF[{- !$disabled{psk} -}]
505    PROGRAMS{noinst}=dtls_mtu_test
506    SOURCE[dtls_mtu_test]=dtls_mtu_test.c helpers/ssltestlib.c
507    INCLUDE[dtls_mtu_test]=.. ../include ../apps/include
508    DEPEND[dtls_mtu_test]=../libcrypto ../libssl libtestutil.a
509  ENDIF
510
511  IF[{- !$disabled{shared} -}]
512    PROGRAMS{noinst}=shlibloadtest
513    SOURCE[shlibloadtest]=shlibloadtest.c simpledynamic.c
514    INCLUDE[shlibloadtest]=../include ../apps/include
515
516    PROGRAMS{noinst}=moduleloadtest
517    SOURCE[moduleloadtest]=moduleloadtest.c simpledynamic.c
518    INCLUDE[moduleloadtest]=../include ../apps/include
519  ENDIF
520
521  # cipher_overhead_test uses internal symbols, so it must be linked with
522  # the static libraries
523  PROGRAMS{noinst}=cipher_overhead_test
524  SOURCE[cipher_overhead_test]=cipher_overhead_test.c
525  INCLUDE[cipher_overhead_test]=.. ../include ../apps/include
526  DEPEND[cipher_overhead_test]=../libcrypto.a ../libssl.a libtestutil.a
527
528  SOURCE[uitest]=uitest.c ../apps/lib/apps_ui.c
529  INCLUDE[uitest]=.. ../include ../apps/include
530  DEPEND[uitest]=../libcrypto ../libssl libtestutil.a
531
532  SOURCE[cipherbytes_test]=cipherbytes_test.c
533  INCLUDE[cipherbytes_test]=../include ../apps/include
534  DEPEND[cipherbytes_test]=../libcrypto ../libssl libtestutil.a
535
536  SOURCE[asn1_encode_test]=asn1_encode_test.c
537  INCLUDE[asn1_encode_test]=../include ../apps/include
538  DEPEND[asn1_encode_test]=../libcrypto libtestutil.a
539
540  SOURCE[asn1_decode_test]=asn1_decode_test.c
541  INCLUDE[asn1_decode_test]=../include ../apps/include
542  DEPEND[asn1_decode_test]=../libcrypto libtestutil.a
543
544  SOURCE[asn1_string_table_test]=asn1_string_table_test.c
545  INCLUDE[asn1_string_table_test]=../include ../apps/include
546  DEPEND[asn1_string_table_test]=../libcrypto libtestutil.a
547
548  SOURCE[asn1_stable_parse_test]=asn1_stable_parse_test.c
549  INCLUDE[asn1_stable_parse_test]=../include ../apps/include
550  DEPEND[asn1_stable_parse_test]=../libcrypto libtestutil.a
551
552  SOURCE[time_offset_test]=time_offset_test.c
553  INCLUDE[time_offset_test]=../include ../apps/include
554  DEPEND[time_offset_test]=../libcrypto libtestutil.a
555
556  SOURCE[conf_include_test]=conf_include_test.c
557  INCLUDE[conf_include_test]=../include ../apps/include
558  DEPEND[conf_include_test]=../libcrypto libtestutil.a
559
560  IF[{- !$disabled{cmp} -}]
561    PROGRAMS{noinst}=cmp_asn_test cmp_ctx_test cmp_status_test cmp_hdr_test \
562                     cmp_protect_test cmp_msg_test cmp_vfy_test \
563                     cmp_server_test cmp_client_test
564  ENDIF
565
566  SOURCE[cmp_asn_test]=cmp_asn_test.c helpers/cmp_testlib.c
567  INCLUDE[cmp_asn_test]=.. ../include ../apps/include
568  DEPEND[cmp_asn_test]=../libcrypto.a libtestutil.a
569
570  SOURCE[cmp_ctx_test]=cmp_ctx_test.c helpers/cmp_testlib.c
571  INCLUDE[cmp_ctx_test]=.. ../include ../apps/include
572  DEPEND[cmp_ctx_test]=../libcrypto.a libtestutil.a
573
574  SOURCE[cmp_hdr_test]=cmp_hdr_test.c helpers/cmp_testlib.c
575  INCLUDE[cmp_hdr_test]=.. ../include ../apps/include
576  DEPEND[cmp_hdr_test]=../libcrypto.a libtestutil.a
577
578  SOURCE[cmp_status_test]=cmp_status_test.c helpers/cmp_testlib.c
579  INCLUDE[cmp_status_test]=.. ../include ../apps/include
580  DEPEND[cmp_status_test]=../libcrypto.a libtestutil.a
581
582  SOURCE[cmp_protect_test]=cmp_protect_test.c helpers/cmp_testlib.c
583  INCLUDE[cmp_protect_test]=.. ../include ../apps/include
584  DEPEND[cmp_protect_test]=../libcrypto.a libtestutil.a
585
586  SOURCE[cmp_msg_test]=cmp_msg_test.c helpers/cmp_testlib.c
587  INCLUDE[cmp_msg_test]=.. ../include ../apps/include
588  DEPEND[cmp_msg_test]=../libcrypto.a libtestutil.a
589
590  SOURCE[cmp_vfy_test]=cmp_vfy_test.c helpers/cmp_testlib.c
591  INCLUDE[cmp_vfy_test]=.. ../include ../apps/include
592  DEPEND[cmp_vfy_test]=../libcrypto.a libtestutil.a
593
594  SOURCE[cmp_server_test]=cmp_server_test.c helpers/cmp_testlib.c
595  INCLUDE[cmp_server_test]=.. ../include ../apps/include
596  DEPEND[cmp_server_test]=../libcrypto.a libtestutil.a
597
598  SOURCE[cmp_client_test]=cmp_client_test.c helpers/cmp_testlib.c ../apps/lib/cmp_mock_srv.c
599  INCLUDE[cmp_client_test]=.. ../include ../apps/include
600  DEPEND[cmp_client_test]=../libcrypto.a libtestutil.a
601
602  # Internal test programs.  These are essentially a collection of internal
603  # test routines.  Some of them need to reach internal symbols that aren't
604  # available through the shared library (at least on Linux, Solaris, Windows
605  # and VMS, where the exported symbols are those listed in util/*.num), these
606  # programs are forcibly linked with the static libraries, where all symbols
607  # are always available.
608  IF[1]
609    PROGRAMS{noinst}=asn1_internal_test modes_internal_test x509_internal_test \
610                     tls13encryptiontest wpackettest ctype_internal_test \
611                     rdrand_sanitytest property_test ideatest rsa_mp_test \
612                     rsa_sp800_56b_test bn_internal_test ecdsatest rsa_test \
613                     rc2test rc4test rc5test hmactest ffc_internal_test \
614                     asn1_dsa_internal_test dsatest dsa_no_digest_size_test \
615                     dhtest ssl_old_test
616
617    IF[{- !$disabled{poly1305} -}]
618      PROGRAMS{noinst}=poly1305_internal_test
619    ENDIF
620    IF[{- !$disabled{chacha} -}]
621      PROGRAMS{noinst}=chacha_internal_test
622    ENDIF
623    IF[{- !$disabled{siphash} -}]
624      PROGRAMS{noinst}=siphash_internal_test
625    ENDIF
626    IF[{- !$disabled{sm2} -}]
627      PROGRAMS{noinst}=sm2_internal_test
628    ENDIF
629    IF[{- !$disabled{sm3} -}]
630      PROGRAMS{noinst}=sm3_internal_test
631    ENDIF
632    IF[{- !$disabled{sm4} -}]
633      PROGRAMS{noinst}=sm4_internal_test
634    ENDIF
635    IF[{- !$disabled{ec} -}]
636      PROGRAMS{noinst}=ectest ec_internal_test curve448_internal_test
637    ENDIF
638    IF[{- !$disabled{cmac} -}]
639      PROGRAMS{noinst}=cmactest
640    ENDIF
641
642    SOURCE[poly1305_internal_test]=poly1305_internal_test.c
643    INCLUDE[poly1305_internal_test]=.. ../include ../apps/include
644    DEPEND[poly1305_internal_test]=../libcrypto.a libtestutil.a
645
646    SOURCE[chacha_internal_test]=chacha_internal_test.c
647    INCLUDE[chacha_internal_test]=.. ../include ../apps/include
648    DEPEND[chacha_internal_test]=../libcrypto.a libtestutil.a
649
650    SOURCE[asn1_internal_test]=asn1_internal_test.c
651    INCLUDE[asn1_internal_test]=.. ../include ../apps/include
652    DEPEND[asn1_internal_test]=../libcrypto.a libtestutil.a
653
654    SOURCE[modes_internal_test]=modes_internal_test.c
655    INCLUDE[modes_internal_test]=.. ../include ../apps/include
656    DEPEND[modes_internal_test]=../libcrypto.a libtestutil.a
657
658    SOURCE[x509_internal_test]=x509_internal_test.c
659    INCLUDE[x509_internal_test]=.. ../include ../apps/include
660    DEPEND[x509_internal_test]=../libcrypto.a libtestutil.a
661
662    SOURCE[rsa_test]=rsa_test.c
663    INCLUDE[rsa_test]=../include ../apps/include
664    DEPEND[rsa_test]=../libcrypto.a libtestutil.a
665
666    SOURCE[rsa_mp_test]=rsa_mp_test.c
667    INCLUDE[rsa_mp_test]=../include ../apps/include
668    DEPEND[rsa_mp_test]=../libcrypto.a libtestutil.a
669
670    SOURCE[ecdsatest]=ecdsatest.c
671    INCLUDE[ecdsatest]=../include ../apps/include
672    DEPEND[ecdsatest]=../libcrypto.a libtestutil.a
673
674    SOURCE[dsatest]=dsatest.c
675    INCLUDE[dsatest]=../include ../apps/include
676    DEPEND[dsatest]=../libcrypto.a libtestutil.a
677
678    SOURCE[dsa_no_digest_size_test]=dsa_no_digest_size_test.c
679    INCLUDE[dsa_no_digest_size_test]=../include ../apps/include
680    DEPEND[dsa_no_digest_size_test]=../libcrypto.a libtestutil.a
681
682    SOURCE[tls13encryptiontest]=tls13encryptiontest.c
683    INCLUDE[tls13encryptiontest]=.. ../include ../apps/include
684    DEPEND[tls13encryptiontest]=../libcrypto.a ../libssl.a libtestutil.a
685
686    SOURCE[ideatest]=ideatest.c
687    INCLUDE[ideatest]=../include ../apps/include
688    DEPEND[ideatest]=../libcrypto.a libtestutil.a
689
690    SOURCE[wpackettest]=wpackettest.c
691    INCLUDE[wpackettest]=../include ../apps/include
692    DEPEND[wpackettest]=../libcrypto.a ../libssl.a libtestutil.a
693
694    SOURCE[property_test]=property_test.c
695    INCLUDE[property_test]=.. ../include ../apps/include
696    DEPEND[property_test]=../libcrypto.a libtestutil.a
697
698    SOURCE[ctype_internal_test]=ctype_internal_test.c
699    INCLUDE[ctype_internal_test]=.. ../include ../apps/include
700    DEPEND[ctype_internal_test]=../libcrypto.a libtestutil.a
701
702    SOURCE[sparse_array_test]=sparse_array_test.c
703    INCLUDE[sparse_array_test]=../include ../apps/include
704    DEPEND[sparse_array_test]=../libcrypto.a libtestutil.a
705
706    SOURCE[dhtest]=dhtest.c
707    INCLUDE[dhtest]=../include ../apps/include
708    DEPEND[dhtest]=../libcrypto.a libtestutil.a
709
710    SOURCE[hmactest]=hmactest.c
711    INCLUDE[hmactest]=../include ../apps/include
712    DEPEND[hmactest]=../libcrypto.a libtestutil.a
713
714    IF[{- !$disabled{cmac} -}]
715      SOURCE[cmactest]=cmactest.c
716      INCLUDE[cmactest]=../include ../apps/include
717      DEPEND[cmactest]=../libcrypto.a libtestutil.a
718    ENDIF
719
720    SOURCE[siphash_internal_test]=siphash_internal_test.c
721    INCLUDE[siphash_internal_test]=.. ../include ../apps/include
722    DEPEND[siphash_internal_test]=../libcrypto.a libtestutil.a
723
724    SOURCE[sm2_internal_test]=sm2_internal_test.c
725    INCLUDE[sm2_internal_test]=../include ../apps/include
726    DEPEND[sm2_internal_test]=../libcrypto.a libtestutil.a
727
728    SOURCE[sm3_internal_test]=sm3_internal_test.c
729    INCLUDE[sm3_internal_test]=../include ../apps/include
730    DEPEND[sm3_internal_test]=../libcrypto.a libtestutil.a
731
732    SOURCE[sm4_internal_test]=sm4_internal_test.c
733    INCLUDE[sm4_internal_test]=.. ../include ../apps/include
734    DEPEND[sm4_internal_test]=../libcrypto.a libtestutil.a
735
736    SOURCE[destest]=destest.c
737    INCLUDE[destest]=../include ../apps/include
738    DEPEND[destest]=../libcrypto.a libtestutil.a
739
740    SOURCE[rc2test]=rc2test.c
741    INCLUDE[rc2test]=../include ../apps/include
742    DEPEND[rc2test]=../libcrypto.a libtestutil.a
743
744    SOURCE[rc4test]=rc4test.c
745    INCLUDE[rc4test]=../include ../apps/include
746    DEPEND[rc4test]=../libcrypto.a libtestutil.a
747
748    SOURCE[rc5test]=rc5test.c
749    INCLUDE[rc5test]=../include ../apps/include
750    DEPEND[rc5test]=../libcrypto.a libtestutil.a
751
752    SOURCE[ec_internal_test]=ec_internal_test.c $INITSRC
753    INCLUDE[ec_internal_test]=../include ../crypto/ec ../apps/include
754    DEPEND[ec_internal_test]=../libcrypto.a libtestutil.a
755
756    SOURCE[curve448_internal_test]=curve448_internal_test.c
757    INCLUDE[curve448_internal_test]=.. ../include ../apps/include ../crypto/ec/curve448
758    DEPEND[curve448_internal_test]=../libcrypto.a libtestutil.a
759
760    SOURCE[rc4test]=rc4test.c
761    INCLUDE[rc4test]=../include ../apps/include
762    DEPEND[rc4test]=../libcrypto.a libtestutil.a
763
764    SOURCE[rdrand_sanitytest]=rdrand_sanitytest.c
765    INCLUDE[rdrand_sanitytest]=../include ../apps/include
766    DEPEND[rdrand_sanitytest]=../libcrypto.a libtestutil.a
767
768    SOURCE[rsa_sp800_56b_test]=rsa_sp800_56b_test.c
769    INCLUDE[rsa_sp800_56b_test]=.. ../include ../crypto/rsa ../apps/include
770    DEPEND[rsa_sp800_56b_test]=../libcrypto.a libtestutil.a
771
772    SOURCE[bn_internal_test]=bn_internal_test.c
773    INCLUDE[bn_internal_test]=.. ../include ../crypto/bn ../apps/include
774    DEPEND[bn_internal_test]=../libcrypto.a libtestutil.a
775
776    SOURCE[asn1_dsa_internal_test]=asn1_dsa_internal_test.c
777    INCLUDE[asn1_dsa_internal_test]=.. ../include ../apps/include
778    DEPEND[asn1_dsa_internal_test]=../libcrypto.a libtestutil.a
779
780    SOURCE[keymgmt_internal_test]=keymgmt_internal_test.c
781    INCLUDE[keymgmt_internal_test]=.. ../include ../apps/include
782    DEPEND[keymgmt_internal_test]=../libcrypto.a libtestutil.a
783
784    SOURCE[ffc_internal_test]=ffc_internal_test.c
785    INCLUDE[ffc_internal_test]=.. ../include ../apps/include
786    DEPEND[ffc_internal_test]=../libcrypto.a libtestutil.a
787
788    IF[{- !$disabled{mdc2} -}]
789      PROGRAMS{noinst}=mdc2_internal_test
790    ENDIF
791
792    SOURCE[mdc2_internal_test]=mdc2_internal_test.c
793    INCLUDE[mdc2_internal_test]=.. ../include ../apps/include
794    DEPEND[mdc2_internal_test]=../libcrypto.a libtestutil.a
795
796    SOURCE[ssl_old_test]=ssl_old_test.c helpers/predefined_dhparams.c
797    INCLUDE[ssl_old_test]=.. ../include ../apps/include
798    DEPEND[ssl_old_test]=../libcrypto.a ../libssl.a libtestutil.a
799
800    PROGRAMS{noinst}=ext_internal_test
801    SOURCE[ext_internal_test]=ext_internal_test.c
802    INCLUDE[ext_internal_test]=.. ../include ../apps/include
803    DEPEND[ext_internal_test]=../libcrypto.a ../libssl.a libtestutil.a
804
805    PROGRAMS{noinst}=algorithmid_test
806    SOURCE[algorithmid_test]=algorithmid_test.c
807    INCLUDE[algorithmid_test]=../include ../apps/include
808    DEPEND[algorithmid_test]=../libcrypto.a libtestutil.a
809  ENDIF
810
811  PROGRAMS{noinst}=asn1_time_test
812  SOURCE[asn1_time_test]=asn1_time_test.c
813  INCLUDE[asn1_time_test]=../include ../apps/include
814  DEPEND[asn1_time_test]=../libcrypto libtestutil.a
815
816  # We disable this test completely in a shared build because it deliberately
817  # redefines some internal libssl symbols. This doesn't work in a non-shared
818  # build
819  IF[{- !$disabled{shared} -}]
820    PROGRAMS{noinst}=tls13secretstest
821    SOURCE[tls13secretstest]=tls13secretstest.c
822    DEFINE[tls13secretstest]=OPENSSL_NO_KTLS
823    SOURCE[tls13secretstest]= ../ssl/tls13_enc.c ../crypto/packet.c
824    INCLUDE[tls13secretstest]=.. ../include ../apps/include
825    DEPEND[tls13secretstest]=../libcrypto ../libssl libtestutil.a
826  ENDIF
827
828  SOURCE[sslbuffertest]=sslbuffertest.c helpers/ssltestlib.c
829  INCLUDE[sslbuffertest]=../include ../apps/include
830  DEPEND[sslbuffertest]=../libcrypto ../libssl libtestutil.a
831
832  SOURCE[sysdefaulttest]=sysdefaulttest.c
833  INCLUDE[sysdefaulttest]=../include ../apps/include
834  DEPEND[sysdefaulttest]=../libcrypto ../libssl libtestutil.a
835
836  SOURCE[errtest]=errtest.c
837  INCLUDE[errtest]=../include ../apps/include
838  DEPEND[errtest]=../libcrypto libtestutil.a
839
840  SOURCE[aesgcmtest]=aesgcmtest.c
841  INCLUDE[aesgcmtest]=../include ../apps/include ..
842  DEPEND[aesgcmtest]=../libcrypto libtestutil.a
843
844  PROGRAMS{noinst}=context_internal_test
845  SOURCE[context_internal_test]=context_internal_test.c
846  INCLUDE[context_internal_test]=.. ../include ../apps/include
847  DEPEND[context_internal_test]=../libcrypto.a libtestutil.a
848
849  PROGRAMS{noinst}=provider_internal_test
850  DEFINE[provider_internal_test]=PROVIDER_INIT_FUNCTION_NAME=p_test_init
851  SOURCE[provider_internal_test]=provider_internal_test.c p_test.c
852  INCLUDE[provider_internal_test]=../include ../apps/include ..
853  DEPEND[provider_internal_test]=../libcrypto.a libtestutil.a
854  PROGRAMS{noinst}=provider_test
855  DEFINE[provider_test]=PROVIDER_INIT_FUNCTION_NAME=p_test_init
856  SOURCE[provider_test]=provider_test.c p_test.c
857  INCLUDE[provider_test]=../include ../apps/include ..
858  DEPEND[provider_test]=../libcrypto.a libtestutil.a
859  IF[{- !$disabled{module} -}]
860    MODULES{noinst}=p_test
861    SOURCE[p_test]=p_test.c
862    INCLUDE[p_test]=../include ..
863    IF[{- defined $target{shared_defflag} -}]
864      SOURCE[p_test]=p_test.ld
865      GENERATE[p_test.ld]=../util/providers.num
866    ENDIF
867    MODULES{noinst}=p_minimal
868    SOURCE[p_minimal]=p_minimal.c
869    INCLUDE[p_minimal]=../include ..
870    IF[{- defined $target{shared_defflag} -}]
871      SOURCE[p_minimal]=p_minimal.ld
872      GENERATE[p_minimal.ld]=../util/providers.num
873    ENDIF
874  ENDIF
875  IF[{- $disabled{module} || !$target{dso_scheme} -}]
876    DEFINE[provider_test]=NO_PROVIDER_MODULE
877    DEFINE[provider_internal_test]=NO_PROVIDER_MODULE
878  ENDIF
879  DEPEND[]=provider_internal_test.cnf
880  GENERATE[provider_internal_test.cnf]=provider_internal_test.cnf.in
881
882  PROGRAMS{noinst}=provider_fallback_test
883  SOURCE[provider_fallback_test]=provider_fallback_test.c
884  INCLUDE[provider_fallback_test]=../include ../apps/include
885  DEPEND[provider_fallback_test]=../libcrypto libtestutil.a
886
887  PROGRAMS{noinst}=provider_pkey_test
888  SOURCE[provider_pkey_test]=provider_pkey_test.c fake_rsaprov.c
889  INCLUDE[provider_pkey_test]=../include ../apps/include
890  DEPEND[provider_pkey_test]=../libcrypto libtestutil.a
891
892  PROGRAMS{noinst}=params_test
893  SOURCE[params_test]=params_test.c
894  INCLUDE[params_test]=.. ../include ../apps/include
895  DEPEND[params_test]=../libcrypto.a libtestutil.a
896
897  PROGRAMS{noinst}=hexstr_test
898  SOURCE[hexstr_test]=hexstr_test.c
899  INCLUDE[hexstr_test]=.. ../include ../apps/include
900  DEPEND[hexstr_test]=../libcrypto.a libtestutil.a
901
902  PROGRAMS{noinst}=trace_api_test
903  SOURCE[trace_api_test]=trace_api_test.c
904  INCLUDE[trace_api_test]=.. ../include ../apps/include
905  DEPEND[trace_api_test]=../libcrypto.a libtestutil.a
906
907  PROGRAMS{noinst}=endecode_test
908  SOURCE[endecode_test]=endecode_test.c helpers/predefined_dhparams.c
909  INCLUDE[endecode_test]=.. ../include ../apps/include
910  DEPEND[endecode_test]=../libcrypto.a libtestutil.a
911
912  IF[{- !$disabled{'deprecated-3.0'} -}]
913    PROGRAMS{noinst}=endecoder_legacy_test
914    SOURCE[endecoder_legacy_test]=endecoder_legacy_test.c
915    INCLUDE[endecoder_legacy_test]=.. ../include ../apps/include
916    DEPEND[endecoder_legacy_test]=../libcrypto.a libtestutil.a
917  ENDIF
918
919  PROGRAMS{noinst}=namemap_internal_test
920  SOURCE[namemap_internal_test]=namemap_internal_test.c
921  INCLUDE[namemap_internal_test]=.. ../include ../apps/include
922  DEPEND[namemap_internal_test]=../libcrypto.a libtestutil.a
923
924  PROGRAMS{noinst}=bio_prefix_text
925  SOURCE[bio_prefix_text]=bio_prefix_text.c
926  INCLUDE[bio_prefix_text]=.. ../include ../apps/include
927  DEPEND[bio_prefix_text]=../libcrypto libtestutil.a
928
929  IF[{- !$disabled{'deprecated-3.0'} -}]
930    PROGRAMS{noinst}=pem_read_depr_test
931    SOURCE[pem_read_depr_test]=pem_read_depr_test.c
932    INCLUDE[pem_read_depr_test]=../include ../apps/include
933    DEPEND[pem_read_depr_test]=../libcrypto libtestutil.a
934  ENDIF
935ENDIF
936
937  SOURCE[ssl_ctx_test]=ssl_ctx_test.c
938  INCLUDE[ssl_ctx_test]=../include ../apps/include
939  DEPEND[ssl_ctx_test]=../libcrypto ../libssl libtestutil.a
940
941{-
942   use File::Spec::Functions;
943   use File::Basename;
944   use OpenSSL::Glob;
945
946   my @nogo_headers = ( "asn1_mac.h",
947                        "opensslconf.h",
948                        "__decc_include_prologue.h",
949                        "__decc_include_epilogue.h" );
950   my @nogo_headers_re = ( qr/.*err\.h/ );
951   my @headerfiles = glob catfile($sourcedir,
952                                  updir(), "include", "openssl", "*.h");
953
954   foreach my $headerfile (@headerfiles) {
955       my $name = basename($headerfile, ".h");
956       next if $disabled{$name};
957       next if grep { $_ eq lc("$name.h") } @nogo_headers;
958       next if grep { lc("$name.h") =~ m/$_/i } @nogo_headers_re;
959       $OUT .= <<"_____";
960
961  PROGRAMS{noinst}=buildtest_c_$name
962  SOURCE[buildtest_c_$name]=buildtest_$name.c
963  GENERATE[buildtest_$name.c]=generate_buildtest.pl $name
964  INCLUDE[buildtest_c_$name]=../include
965  DEPEND[buildtest_c_$name]=../libssl ../libcrypto
966_____
967       $OUT .= <<"_____" if $config{CXX} && !$disabled{"buildtest-c++"};
968
969  PROGRAMS{noinst}=buildtest_cc_$name
970  SOURCE[buildtest_cc_$name]=buildtest_$name.cc
971  GENERATE[buildtest_$name.cc]=generate_buildtest.pl $name
972  INCLUDE[buildtest_cc_$name]=../include
973  DEPEND[buildtest_cc_$name]=../libssl ../libcrypto
974_____
975   }
976-}
977