1*e0c4386eSCy Schubert{- use File::Spec::Functions; 2*e0c4386eSCy Schubert our $ex_inc = $withargs{fuzzer_include} && 3*e0c4386eSCy Schubert (file_name_is_absolute($withargs{fuzzer_include}) ? 4*e0c4386eSCy Schubert $withargs{fuzzer_include} : catdir(updir(), $withargs{fuzzer_include})); 5*e0c4386eSCy Schubert our $ex_lib = $withargs{fuzzer_lib} && 6*e0c4386eSCy Schubert (file_name_is_absolute($withargs{fuzzer_lib}) ? 7*e0c4386eSCy Schubert $withargs{fuzzer_lib} : catfile(updir(), $withargs{fuzzer_lib})); 8*e0c4386eSCy Schubert "" 9*e0c4386eSCy Schubert-} 10*e0c4386eSCy Schubert 11*e0c4386eSCy SchubertIF[{- !$disabled{"fuzz-afl"} || !$disabled{"fuzz-libfuzzer"} -}] 12*e0c4386eSCy Schubert PROGRAMS{noinst}=asn1 asn1parse bignum bndiv client conf crl server 13*e0c4386eSCy Schubert 14*e0c4386eSCy Schubert IF[{- !$disabled{"cmp"} -}] 15*e0c4386eSCy Schubert PROGRAMS{noinst}=cmp 16*e0c4386eSCy Schubert ENDIF 17*e0c4386eSCy Schubert 18*e0c4386eSCy Schubert IF[{- !$disabled{"cms"} -}] 19*e0c4386eSCy Schubert PROGRAMS{noinst}=cms 20*e0c4386eSCy Schubert ENDIF 21*e0c4386eSCy Schubert 22*e0c4386eSCy Schubert IF[{- !$disabled{"ct"} -}] 23*e0c4386eSCy Schubert PROGRAMS{noinst}=ct 24*e0c4386eSCy Schubert ENDIF 25*e0c4386eSCy Schubert 26*e0c4386eSCy Schubert IF[{- !$disabled{"ocsp"} -}] 27*e0c4386eSCy Schubert PROGRAMS{noinst}=x509 28*e0c4386eSCy Schubert ENDIF 29*e0c4386eSCy Schubert 30*e0c4386eSCy Schubert SOURCE[asn1]=asn1.c driver.c fuzz_rand.c 31*e0c4386eSCy Schubert INCLUDE[asn1]=../include {- $ex_inc -} 32*e0c4386eSCy Schubert DEPEND[asn1]=../libcrypto ../libssl {- $ex_lib -} 33*e0c4386eSCy Schubert 34*e0c4386eSCy Schubert SOURCE[asn1parse]=asn1parse.c driver.c 35*e0c4386eSCy Schubert INCLUDE[asn1parse]=../include {- $ex_inc -} 36*e0c4386eSCy Schubert DEPEND[asn1parse]=../libcrypto {- $ex_lib -} 37*e0c4386eSCy Schubert 38*e0c4386eSCy Schubert SOURCE[bignum]=bignum.c driver.c 39*e0c4386eSCy Schubert INCLUDE[bignum]=../include {- $ex_inc -} 40*e0c4386eSCy Schubert DEPEND[bignum]=../libcrypto {- $ex_lib -} 41*e0c4386eSCy Schubert 42*e0c4386eSCy Schubert SOURCE[bndiv]=bndiv.c driver.c 43*e0c4386eSCy Schubert INCLUDE[bndiv]=../include {- $ex_inc -} 44*e0c4386eSCy Schubert DEPEND[bndiv]=../libcrypto {- $ex_lib -} 45*e0c4386eSCy Schubert 46*e0c4386eSCy Schubert SOURCE[client]=client.c driver.c fuzz_rand.c 47*e0c4386eSCy Schubert INCLUDE[client]=../include {- $ex_inc -} 48*e0c4386eSCy Schubert DEPEND[client]=../libcrypto ../libssl {- $ex_lib -} 49*e0c4386eSCy Schubert 50*e0c4386eSCy Schubert SOURCE[cmp]=cmp.c driver.c fuzz_rand.c 51*e0c4386eSCy Schubert INCLUDE[cmp]=../include {- $ex_inc -} 52*e0c4386eSCy Schubert DEPEND[cmp]=../libcrypto {- $ex_lib -} 53*e0c4386eSCy Schubert 54*e0c4386eSCy Schubert SOURCE[cms]=cms.c driver.c 55*e0c4386eSCy Schubert INCLUDE[cms]=../include {- $ex_inc -} 56*e0c4386eSCy Schubert DEPEND[cms]=../libcrypto {- $ex_lib -} 57*e0c4386eSCy Schubert 58*e0c4386eSCy Schubert SOURCE[conf]=conf.c driver.c 59*e0c4386eSCy Schubert INCLUDE[conf]=../include {- $ex_inc -} 60*e0c4386eSCy Schubert DEPEND[conf]=../libcrypto {- $ex_lib -} 61*e0c4386eSCy Schubert 62*e0c4386eSCy Schubert SOURCE[crl]=crl.c driver.c 63*e0c4386eSCy Schubert INCLUDE[crl]=../include {- $ex_inc -} 64*e0c4386eSCy Schubert DEPEND[crl]=../libcrypto {- $ex_lib -} 65*e0c4386eSCy Schubert 66*e0c4386eSCy Schubert SOURCE[ct]=ct.c driver.c 67*e0c4386eSCy Schubert INCLUDE[ct]=../include {- $ex_inc -} 68*e0c4386eSCy Schubert DEPEND[ct]=../libcrypto {- $ex_lib -} 69*e0c4386eSCy Schubert 70*e0c4386eSCy Schubert SOURCE[server]=server.c driver.c fuzz_rand.c 71*e0c4386eSCy Schubert INCLUDE[server]=../include {- $ex_inc -} 72*e0c4386eSCy Schubert DEPEND[server]=../libcrypto ../libssl {- $ex_lib -} 73*e0c4386eSCy Schubert 74*e0c4386eSCy Schubert SOURCE[x509]=x509.c driver.c fuzz_rand.c 75*e0c4386eSCy Schubert INCLUDE[x509]=../include {- $ex_inc -} 76*e0c4386eSCy Schubert DEPEND[x509]=../libcrypto {- $ex_lib -} 77*e0c4386eSCy SchubertENDIF 78*e0c4386eSCy Schubert 79*e0c4386eSCy SchubertIF[{- !$disabled{tests} -}] 80*e0c4386eSCy Schubert PROGRAMS{noinst}=asn1-test asn1parse-test bignum-test bndiv-test client-test conf-test crl-test server-test 81*e0c4386eSCy Schubert 82*e0c4386eSCy Schubert IF[{- !$disabled{"cmp"} -}] 83*e0c4386eSCy Schubert PROGRAMS{noinst}=cmp-test 84*e0c4386eSCy Schubert ENDIF 85*e0c4386eSCy Schubert 86*e0c4386eSCy Schubert IF[{- !$disabled{"cms"} -}] 87*e0c4386eSCy Schubert PROGRAMS{noinst}=cms-test 88*e0c4386eSCy Schubert ENDIF 89*e0c4386eSCy Schubert 90*e0c4386eSCy Schubert IF[{- !$disabled{"ct"} -}] 91*e0c4386eSCy Schubert PROGRAMS{noinst}=ct-test 92*e0c4386eSCy Schubert ENDIF 93*e0c4386eSCy Schubert 94*e0c4386eSCy Schubert IF[{- !$disabled{"ocsp"} -}] 95*e0c4386eSCy Schubert PROGRAMS{noinst}=x509-test 96*e0c4386eSCy Schubert ENDIF 97*e0c4386eSCy Schubert 98*e0c4386eSCy Schubert SOURCE[asn1-test]=asn1.c test-corpus.c fuzz_rand.c 99*e0c4386eSCy Schubert INCLUDE[asn1-test]=../include 100*e0c4386eSCy Schubert DEPEND[asn1-test]=../libcrypto ../libssl 101*e0c4386eSCy Schubert 102*e0c4386eSCy Schubert SOURCE[asn1parse-test]=asn1parse.c test-corpus.c 103*e0c4386eSCy Schubert INCLUDE[asn1parse-test]=../include 104*e0c4386eSCy Schubert DEPEND[asn1parse-test]=../libcrypto 105*e0c4386eSCy Schubert 106*e0c4386eSCy Schubert SOURCE[bignum-test]=bignum.c test-corpus.c 107*e0c4386eSCy Schubert INCLUDE[bignum-test]=../include 108*e0c4386eSCy Schubert DEPEND[bignum-test]=../libcrypto 109*e0c4386eSCy Schubert 110*e0c4386eSCy Schubert SOURCE[bndiv-test]=bndiv.c test-corpus.c 111*e0c4386eSCy Schubert INCLUDE[bndiv-test]=../include 112*e0c4386eSCy Schubert DEPEND[bndiv-test]=../libcrypto 113*e0c4386eSCy Schubert 114*e0c4386eSCy Schubert SOURCE[client-test]=client.c test-corpus.c fuzz_rand.c 115*e0c4386eSCy Schubert INCLUDE[client-test]=../include 116*e0c4386eSCy Schubert DEPEND[client-test]=../libcrypto ../libssl 117*e0c4386eSCy Schubert 118*e0c4386eSCy Schubert SOURCE[cmp-test]=cmp.c test-corpus.c fuzz_rand.c 119*e0c4386eSCy Schubert INCLUDE[cmp-test]=../include 120*e0c4386eSCy Schubert DEPEND[cmp-test]=../libcrypto.a 121*e0c4386eSCy Schubert # referring to static lib allows using non-exported functions 122*e0c4386eSCy Schubert 123*e0c4386eSCy Schubert SOURCE[cms-test]=cms.c test-corpus.c 124*e0c4386eSCy Schubert INCLUDE[cms-test]=../include 125*e0c4386eSCy Schubert DEPEND[cms-test]=../libcrypto 126*e0c4386eSCy Schubert 127*e0c4386eSCy Schubert SOURCE[conf-test]=conf.c test-corpus.c 128*e0c4386eSCy Schubert INCLUDE[conf-test]=../include 129*e0c4386eSCy Schubert DEPEND[conf-test]=../libcrypto 130*e0c4386eSCy Schubert 131*e0c4386eSCy Schubert SOURCE[crl-test]=crl.c test-corpus.c 132*e0c4386eSCy Schubert INCLUDE[crl-test]=../include 133*e0c4386eSCy Schubert DEPEND[crl-test]=../libcrypto 134*e0c4386eSCy Schubert 135*e0c4386eSCy Schubert SOURCE[ct-test]=ct.c test-corpus.c 136*e0c4386eSCy Schubert INCLUDE[ct-test]=../include 137*e0c4386eSCy Schubert DEPEND[ct-test]=../libcrypto 138*e0c4386eSCy Schubert 139*e0c4386eSCy Schubert SOURCE[server-test]=server.c test-corpus.c fuzz_rand.c 140*e0c4386eSCy Schubert INCLUDE[server-test]=../include 141*e0c4386eSCy Schubert DEPEND[server-test]=../libcrypto ../libssl 142*e0c4386eSCy Schubert 143*e0c4386eSCy Schubert SOURCE[x509-test]=x509.c test-corpus.c fuzz_rand.c 144*e0c4386eSCy Schubert INCLUDE[x509-test]=../include 145*e0c4386eSCy Schubert DEPEND[x509-test]=../libcrypto 146*e0c4386eSCy SchubertENDIF 147