1 {- use File::Spec::Functions;
2 our $ex_inc = $withargs{fuzzer_include} &&
3 (file_name_is_absolute($withargs{fuzzer_include}) ?
4 $withargs{fuzzer_include} : catdir(updir(), $withargs{fuzzer_include}));
5 our $ex_lib = $withargs{fuzzer_lib} &&
6 (file_name_is_absolute($withargs{fuzzer_lib}) ?
7 $withargs{fuzzer_lib} : catfile(updir(), $withargs{fuzzer_lib}));
11 IF[{- !$disabled{"fuzz-afl"} || !$disabled{"fuzz-libfuzzer"} -}]
12 PROGRAMS{noinst}=asn1 asn1parse bignum bndiv client conf crl server smime
13 PROGRAMS{noinst}=punycode pem decoder hashtable acert
14 PROGRAMS{noinst}=v3name
16 IF[{- !$disabled{"cmp"} -}]
20 IF[{- !$disabled{"cms"} -}]
24 IF[{- !$disabled{"ct"} -}]
28 IF[{- !$disabled{"ocsp"} -}]
32 IF[{- !$disabled{"quic"} -}]
33 PROGRAMS{noinst}=quic-client quic-srtm quic-lcidm quic-rcidm
36 IF[{- !$disabled{"dtls"} -}]
37 PROGRAMS{noinst}=dtlsclient dtlsserver
40 SOURCE[asn1]=asn1.c driver.c fuzz_rand.c
41 INCLUDE[asn1]=../include {- $ex_inc -}
42 DEPEND[asn1]=../libcrypto ../libssl {- $ex_lib -}
44 SOURCE[asn1parse]=asn1parse.c driver.c
45 INCLUDE[asn1parse]=../include {- $ex_inc -}
46 DEPEND[asn1parse]=../libcrypto {- $ex_lib -}
48 SOURCE[bignum]=bignum.c driver.c
49 INCLUDE[bignum]=../include {- $ex_inc -}
50 DEPEND[bignum]=../libcrypto {- $ex_lib -}
52 SOURCE[bndiv]=bndiv.c driver.c
53 INCLUDE[bndiv]=../include {- $ex_inc -}
54 DEPEND[bndiv]=../libcrypto {- $ex_lib -}
56 SOURCE[client]=client.c driver.c fuzz_rand.c
57 INCLUDE[client]=../include {- $ex_inc -}
58 DEPEND[client]=../libcrypto ../libssl {- $ex_lib -}
60 SOURCE[cmp]=cmp.c driver.c fuzz_rand.c
61 INCLUDE[cmp]=../include {- $ex_inc -}
62 DEPEND[cmp]=../libcrypto {- $ex_lib -}
64 SOURCE[cms]=cms.c driver.c
65 INCLUDE[cms]=../include {- $ex_inc -}
66 DEPEND[cms]=../libcrypto {- $ex_lib -}
68 SOURCE[conf]=conf.c driver.c
69 INCLUDE[conf]=../include {- $ex_inc -}
70 DEPEND[conf]=../libcrypto {- $ex_lib -}
72 SOURCE[crl]=crl.c driver.c
73 INCLUDE[crl]=../include {- $ex_inc -}
74 DEPEND[crl]=../libcrypto {- $ex_lib -}
76 SOURCE[ct]=ct.c driver.c
77 INCLUDE[ct]=../include {- $ex_inc -}
78 DEPEND[ct]=../libcrypto {- $ex_lib -}
80 SOURCE[dtlsclient]=dtlsclient.c driver.c fuzz_rand.c
81 INCLUDE[dtlsclient]=../include {- $ex_inc -}
82 DEPEND[dtlsclient]=../libcrypto ../libssl {- $ex_lib -}
84 SOURCE[dtlsserver]=dtlsserver.c driver.c fuzz_rand.c
85 INCLUDE[dtlsserver]=../include {- $ex_inc -}
86 DEPEND[dtlsserver]=../libcrypto ../libssl {- $ex_lib -}
88 SOURCE[pem]=pem.c driver.c
89 INCLUDE[pem]=../include {- $ex_inc -}
90 DEPEND[pem]=../libcrypto.a {- $ex_lib -}
92 SOURCE[decoder]=decoder.c driver.c fuzz_rand.c
93 INCLUDE[decoder]=../include {- $ex_inc -}
94 DEPEND[decoder]=../libcrypto {- $ex_lib -}
96 SOURCE[hashtable]=hashtable.c driver.c
97 INCLUDE[hashtable]=../include {- $ex_inc -}
98 DEPEND[hashtable]=../libcrypto {- $ex_lib -}
100 SOURCE[acert]=acert.c driver.c
101 INCLUDE[acert]=../include {- $ex_inc -}
102 DEPEND[acert]=../libcrypto {- $ex_lib -}
104 SOURCE[punycode]=punycode.c driver.c
105 INCLUDE[punycode]=../include {- $ex_inc -}
106 DEPEND[punycode]=../libcrypto.a {- $ex_lib -}
108 SOURCE[smime]=smime.c driver.c
109 INCLUDE[smime]=../include {- $ex_inc -}
110 DEPEND[smime]=../libcrypto ../libssl {- $ex_lib -}
112 SOURCE[v3name]=v3name.c driver.c
113 INCLUDE[v3name]=../include {- $ex_inc -}
114 DEPEND[v3name]=../libcrypto.a {- $ex_lib -}
116 SOURCE[quic-client]=quic-client.c driver.c fuzz_rand.c
117 INCLUDE[quic-client]=../include {- $ex_inc -}
118 DEPEND[quic-client]=../libcrypto.a ../libssl.a {- $ex_lib -}
120 SOURCE[quic-srtm]=quic-srtm.c driver.c fuzz_rand.c
121 INCLUDE[quic-srtm]=../include {- $ex_inc -}
122 DEPEND[quic-srtm]=../libcrypto.a ../libssl.a {- $ex_lib -}
124 SOURCE[quic-lcidm]=quic-lcidm.c driver.c fuzz_rand.c
125 INCLUDE[quic-lcidm]=../include {- $ex_inc -}
126 DEPEND[quic-lcidm]=../libcrypto.a ../libssl.a {- $ex_lib -}
128 SOURCE[quic-rcidm]=quic-rcidm.c driver.c fuzz_rand.c
129 INCLUDE[quic-rcidm]=../include {- $ex_inc -}
130 DEPEND[quic-rcidm]=../libcrypto.a ../libssl.a {- $ex_lib -}
132 SOURCE[server]=server.c driver.c fuzz_rand.c
133 INCLUDE[server]=../include {- $ex_inc -}
134 DEPEND[server]=../libcrypto ../libssl {- $ex_lib -}
136 SOURCE[x509]=x509.c driver.c fuzz_rand.c
137 INCLUDE[x509]=../include {- $ex_inc -}
138 DEPEND[x509]=../libcrypto {- $ex_lib -}
141 IF[{- !$disabled{tests} -}]
142 PROGRAMS{noinst}=asn1-test asn1parse-test bignum-test bndiv-test client-test conf-test crl-test server-test smime-test
143 PROGRAMS{noinst}=punycode-test pem-test decoder-test hashtable-test acert-test
144 PROGRAMS{noinst}=v3name-test
146 IF[{- !$disabled{"cmp"} -}]
147 PROGRAMS{noinst}=cmp-test
150 IF[{- !$disabled{"cms"} -}]
151 PROGRAMS{noinst}=cms-test
154 IF[{- !$disabled{"ct"} -}]
155 PROGRAMS{noinst}=ct-test
158 IF[{- !$disabled{"ocsp"} -}]
159 PROGRAMS{noinst}=x509-test
162 IF[{- !$disabled{"quic"} -}]
163 PROGRAMS{noinst}=quic-client-test quic-srtm-test quic-lcidm-test
164 PROGRAMS{noinst}=quic-rcidm-test
167 IF[{- !$disabled{"dtls"} -}]
168 PROGRAMS{noinst}=dtlsclient-test dtlsserver-test
171 SOURCE[asn1-test]=asn1.c test-corpus.c fuzz_rand.c
172 INCLUDE[asn1-test]=../include
173 DEPEND[asn1-test]=../libcrypto ../libssl
175 SOURCE[asn1parse-test]=asn1parse.c test-corpus.c
176 INCLUDE[asn1parse-test]=../include
177 DEPEND[asn1parse-test]=../libcrypto
179 SOURCE[bignum-test]=bignum.c test-corpus.c
180 INCLUDE[bignum-test]=../include
181 DEPEND[bignum-test]=../libcrypto
183 SOURCE[bndiv-test]=bndiv.c test-corpus.c
184 INCLUDE[bndiv-test]=../include
185 DEPEND[bndiv-test]=../libcrypto
187 SOURCE[client-test]=client.c test-corpus.c fuzz_rand.c
188 INCLUDE[client-test]=../include
189 DEPEND[client-test]=../libcrypto ../libssl
191 SOURCE[cmp-test]=cmp.c test-corpus.c fuzz_rand.c
192 INCLUDE[cmp-test]=../include
193 DEPEND[cmp-test]=../libcrypto.a
194 # referring to static lib allows using non-exported functions
196 SOURCE[cms-test]=cms.c test-corpus.c
197 INCLUDE[cms-test]=../include
198 DEPEND[cms-test]=../libcrypto
200 SOURCE[conf-test]=conf.c test-corpus.c
201 INCLUDE[conf-test]=../include
202 DEPEND[conf-test]=../libcrypto
204 SOURCE[crl-test]=crl.c test-corpus.c
205 INCLUDE[crl-test]=../include
206 DEPEND[crl-test]=../libcrypto
208 SOURCE[ct-test]=ct.c test-corpus.c
209 INCLUDE[ct-test]=../include
210 DEPEND[ct-test]=../libcrypto
212 SOURCE[dtlsclient-test]=dtlsclient.c test-corpus.c fuzz_rand.c
213 INCLUDE[dtlsclient-test]=../include
214 DEPEND[dtlsclient-test]=../libcrypto ../libssl
216 SOURCE[dtlsserver-test]=dtlsserver.c test-corpus.c fuzz_rand.c
217 INCLUDE[dtlsserver-test]=../include
218 DEPEND[dtlsserver-test]=../libcrypto ../libssl
220 SOURCE[pem-test]=pem.c test-corpus.c
221 INCLUDE[pem-test]=../include
222 DEPEND[pem-test]=../libcrypto.a
224 SOURCE[decoder-test]=decoder.c test-corpus.c fuzz_rand.c
225 INCLUDE[decoder-test]=../include
226 DEPEND[decoder-test]=../libcrypto
228 SOURCE[hashtable-test]=hashtable.c test-corpus.c fuzz_rand.c
229 INCLUDE[hashtable-test]=../include
230 DEPEND[hashtable-test]=../libcrypto.a
232 SOURCE[acert-test]=acert.c test-corpus.c
233 INCLUDE[acert-test]=../include
234 DEPEND[acert-test]=../libcrypto
236 SOURCE[punycode-test]=punycode.c test-corpus.c
237 INCLUDE[punycode-test]=../include
238 DEPEND[punycode-test]=../libcrypto.a
240 SOURCE[smime-test]=smime.c test-corpus.c
241 INCLUDE[smime-test]=../include
242 DEPEND[smime-test]=../libcrypto ../libssl
244 SOURCE[v3name-test]=v3name.c test-corpus.c
245 INCLUDE[v3name-test]=../include
246 DEPEND[v3name-test]=../libcrypto.a
248 SOURCE[quic-client-test]=quic-client.c test-corpus.c fuzz_rand.c
249 INCLUDE[quic-client-test]=../include
250 DEPEND[quic-client-test]=../libcrypto.a ../libssl.a
252 SOURCE[quic-srtm-test]=quic-srtm.c test-corpus.c fuzz_rand.c
253 INCLUDE[quic-srtm-test]=../include
254 DEPEND[quic-srtm-test]=../libcrypto.a ../libssl.a
256 SOURCE[quic-lcidm-test]=quic-lcidm.c test-corpus.c fuzz_rand.c
257 INCLUDE[quic-lcidm-test]=../include
258 DEPEND[quic-lcidm-test]=../libcrypto.a ../libssl.a
260 SOURCE[quic-rcidm-test]=quic-rcidm.c test-corpus.c fuzz_rand.c
261 INCLUDE[quic-rcidm-test]=../include
262 DEPEND[quic-rcidm-test]=../libcrypto.a ../libssl.a
264 SOURCE[server-test]=server.c test-corpus.c fuzz_rand.c
265 INCLUDE[server-test]=../include
266 DEPEND[server-test]=../libcrypto ../libssl
268 SOURCE[x509-test]=x509.c test-corpus.c fuzz_rand.c
269 INCLUDE[x509-test]=../include
270 DEPEND[x509-test]=../libcrypto