1$ECASM= 2IF[{- !$disabled{asm} -}] 3 $ECASM_x86=ecp_nistz256.c ecp_nistz256-x86.S 4 $ECDEF_x86=ECP_NISTZ256_ASM 5 6 $ECASM_x86_64=ecp_nistz256.c ecp_nistz256-x86_64.s x25519-x86_64.s 7 $ECDEF_x86_64=ECP_NISTZ256_ASM X25519_ASM 8 9 $ECASM_ia64= 10 11 $ECASM_sparcv9=ecp_nistz256.c ecp_nistz256-sparcv9.S 12 $ECDEF_sparcv9=ECP_NISTZ256_ASM 13 14 $ECASM_sparcv8= 15 16 $ECASM_alpha= 17 18 $ECASM_mips32= 19 $ECASM_mips64= 20 21 $ECASM_s390x=ecp_s390x_nistp.c ecx_s390x.c 22 $ECDEF_s390x=S390X_EC_ASM 23 24 $ECASM_armv4=ecp_nistz256.c ecp_nistz256-armv4.S 25 $ECDEF_armv4=ECP_NISTZ256_ASM 26 $ECASM_aarch64=ecp_nistz256.c ecp_nistz256-armv8.S 27 $ECDEF_aarch64=ECP_NISTZ256_ASM 28 29 $ECASM_parisc11= 30 $ECASM_parisc20_64= 31 32 $ECASM_ppc32= 33 $ECASM_ppc64=ecp_nistz256.c ecp_ppc.c ecp_nistz256-ppc64.s x25519-ppc64.s 34 $ECDEF_ppc64=ECP_NISTZ256_ASM X25519_ASM 35 IF[{- !$disabled{'ec_nistp_64_gcc_128'} -}] 36 $ECASM_ppc64=$ECASM_ppc64 ecp_nistp521-ppc64.s 37 $ECDEF_ppc64=$ECDEF_ppc64 ECP_NISTP521_ASM 38 INCLUDE[ecp_nistp521.o]=.. 39 ENDIF 40 41 $ECASM_c64xplus= 42 43 # Now that we have defined all the arch specific variables, use the 44 # appropriate one, and define the appropriate macros 45 IF[$ECASM_{- $target{asm_arch} -}] 46 $ECASM=$ECASM_{- $target{asm_arch} -} 47 $ECDEF=$ECDEF_{- $target{asm_arch} -} 48 ENDIF 49ENDIF 50 51$COMMON=ec_lib.c ecp_smpl.c ecp_mont.c ecp_nist.c ec_cvt.c ec_mult.c \ 52 ec_curve.c ec_check.c ec_key.c ec_kmeth.c ecx_key.c ec_asn1.c \ 53 ec2_smpl.c \ 54 ecp_oct.c ec2_oct.c ec_oct.c ecdh_ossl.c \ 55 ecdsa_ossl.c ecdsa_sign.c ecdsa_vrf.c curve25519.c \ 56 curve448/f_generic.c curve448/scalar.c \ 57 curve448/curve448_tables.c curve448/eddsa.c curve448/curve448.c \ 58 $ECASM ec_backend.c ecx_backend.c ecdh_kdf.c curve448/arch_64/f_impl64.c \ 59 curve448/arch_32/f_impl32.c 60 61IF[{- !$disabled{'ec_nistp_64_gcc_128'} -}] 62 $COMMON=$COMMON ecp_nistp224.c ecp_nistp256.c ecp_nistp521.c ecp_nistputil.c 63ENDIF 64 65SOURCE[../../libcrypto]=$COMMON ec_ameth.c ec_pmeth.c ecx_meth.c \ 66 ec_err.c eck_prn.c \ 67 ec_deprecated.c ec_print.c 68SOURCE[../../providers/libfips.a]=$COMMON 69 70# Implementations are now spread across several libraries, so the defines 71# need to be applied to all affected libraries and modules. 72DEFINE[../../libcrypto]=$ECDEF 73DEFINE[../../providers/libfips.a]=$ECDEF 74DEFINE[../../providers/libdefault.a]=$ECDEF 75# We only need to include the ECDEF stuff in the legacy provider when 76# it's a separate module and it's dynamically linked with libcrypto. 77# Otherwise, it already gets everything that the static libcrypto.a 78# has, and doesn't need it added again. 79IF[{- !$disabled{module} && !$disabled{shared} -}] 80 DEFINE[../providers/liblegacy.a]=$ECDEF 81ENDIF 82 83GENERATE[ecp_nistz256-x86.S]=asm/ecp_nistz256-x86.pl 84 85GENERATE[ecp_nistz256-x86_64.s]=asm/ecp_nistz256-x86_64.pl 86 87GENERATE[ecp_nistz256-avx2.s]=asm/ecp_nistz256-avx2.pl 88 89GENERATE[ecp_nistz256-sparcv9.S]=asm/ecp_nistz256-sparcv9.pl 90INCLUDE[ecp_nistz256-sparcv9.o]=.. 91 92INCLUDE[ecp_s390x_nistp.o]=.. 93INCLUDE[ecx_s390x.o]=.. 94INCLUDE[ecx_meth.o]=.. 95 96GENERATE[ecp_nistz256-armv4.S]=asm/ecp_nistz256-armv4.pl 97INCLUDE[ecp_nistz256-armv4.o]=.. 98GENERATE[ecp_nistz256-armv8.S]=asm/ecp_nistz256-armv8.pl 99INCLUDE[ecp_nistz256-armv8.o]=.. 100GENERATE[ecp_nistz256-ppc64.s]=asm/ecp_nistz256-ppc64.pl 101 102GENERATE[ecp_nistp521-ppc64.s]=asm/ecp_nistp521-ppc64.pl 103 104GENERATE[x25519-x86_64.s]=asm/x25519-x86_64.pl 105GENERATE[x25519-ppc64.s]=asm/x25519-ppc64.pl 106