2019-06-17 01:57:52 +08:00
|
|
|
$ECASM=
|
|
|
|
IF[{- !$disabled{asm} -}]
|
2022-05-20 04:09:50 +08:00
|
|
|
$ECASM_x86=ecp_nistz256.c ecp_nistz256-x86.S
|
2019-06-17 01:57:52 +08:00
|
|
|
$ECDEF_x86=ECP_NISTZ256_ASM
|
|
|
|
|
2023-04-17 16:20:31 +08:00
|
|
|
$ECASM_x86_64=ecp_nistz256.c ecp_nistz256-x86_64.s
|
|
|
|
$ECDEF_x86_64=ECP_NISTZ256_ASM
|
|
|
|
IF[{- !$disabled{'ecx'} -}]
|
|
|
|
$ECASM_x86_64=$ECASM_x86_64 x25519-x86_64.s
|
|
|
|
$ECDEF_x86_64=$ECDEF_x86_64 X25519_ASM
|
|
|
|
ENDIF
|
2019-06-17 01:57:52 +08:00
|
|
|
$ECASM_ia64=
|
|
|
|
|
|
|
|
$ECASM_sparcv9=ecp_nistz256.c ecp_nistz256-sparcv9.S
|
|
|
|
$ECDEF_sparcv9=ECP_NISTZ256_ASM
|
|
|
|
|
|
|
|
$ECASM_sparcv8=
|
|
|
|
|
|
|
|
$ECASM_alpha=
|
|
|
|
|
|
|
|
$ECASM_mips32=
|
|
|
|
$ECASM_mips64=
|
|
|
|
|
2023-04-17 16:20:31 +08:00
|
|
|
$ECASM_s390x=ecp_s390x_nistp.c
|
|
|
|
IF[{- !$disabled{'ecx'} -}]
|
|
|
|
$ECASM_s390x=$ECASM_s390x ecx_s390x.c
|
|
|
|
ENDIF
|
2019-09-19 21:31:27 +08:00
|
|
|
$ECDEF_s390x=S390X_EC_ASM
|
2019-06-17 01:57:52 +08:00
|
|
|
|
|
|
|
$ECASM_armv4=ecp_nistz256.c ecp_nistz256-armv4.S
|
|
|
|
$ECDEF_armv4=ECP_NISTZ256_ASM
|
|
|
|
$ECASM_aarch64=ecp_nistz256.c ecp_nistz256-armv8.S
|
|
|
|
$ECDEF_aarch64=ECP_NISTZ256_ASM
|
2023-08-23 17:30:09 +08:00
|
|
|
IF[{- !$disabled{'sm2'} -}]
|
|
|
|
$ECASM_aarch64=$ECASM_aarch64 ecp_sm2p256.c ecp_sm2p256-armv8.S
|
|
|
|
IF[{- !$disabled{'sm2-precomp'} -}]
|
|
|
|
$ECASM_aarch64=$ECASM_aarch64 ecp_sm2p256_table.c
|
|
|
|
ENDIF
|
|
|
|
$ECDEF_aarch64=$ECDEF_aarch64 ECP_SM2P256_ASM
|
|
|
|
ENDIF
|
2019-06-17 01:57:52 +08:00
|
|
|
|
|
|
|
$ECASM_parisc11=
|
|
|
|
$ECASM_parisc20_64=
|
|
|
|
|
|
|
|
$ECASM_ppc32=
|
2023-04-17 16:20:31 +08:00
|
|
|
$ECASM_ppc64=ecp_nistz256.c ecp_ppc.c ecp_nistz256-ppc64.s
|
|
|
|
$ECDEF_ppc64=ECP_NISTZ256_ASM
|
2021-06-18 09:10:16 +08:00
|
|
|
IF[{- !$disabled{'ec_nistp_64_gcc_128'} -}]
|
2023-05-31 12:32:26 +08:00
|
|
|
$ECASM_ppc64=$ECASM_ppc64 ecp_nistp384-ppc64.s ecp_nistp521-ppc64.s
|
|
|
|
$ECDEF_ppc64=$ECDEF_ppc64 ECP_NISTP384_ASM ECP_NISTP521_ASM
|
|
|
|
INCLUDE[ecp_nistp384.o]=..
|
2021-06-18 09:10:16 +08:00
|
|
|
INCLUDE[ecp_nistp521.o]=..
|
|
|
|
ENDIF
|
2023-04-17 16:20:31 +08:00
|
|
|
IF[{- !$disabled{'ecx'} -}]
|
|
|
|
$ECASM_ppc64=$ECASM_ppc64 x25519-ppc64.s
|
|
|
|
$ECDEF_ppc64=$ECDEF_ppc64 X25519_ASM
|
|
|
|
INCLUDE[ecx_s390x.o]=..
|
|
|
|
ENDIF
|
2019-06-17 01:57:52 +08:00
|
|
|
|
|
|
|
$ECASM_c64xplus=
|
|
|
|
|
|
|
|
# Now that we have defined all the arch specific variables, use the
|
|
|
|
# appropriate one, and define the appropriate macros
|
|
|
|
IF[$ECASM_{- $target{asm_arch} -}]
|
|
|
|
$ECASM=$ECASM_{- $target{asm_arch} -}
|
|
|
|
$ECDEF=$ECDEF_{- $target{asm_arch} -}
|
|
|
|
ENDIF
|
|
|
|
ENDIF
|
|
|
|
|
2019-07-04 00:30:03 +08:00
|
|
|
$COMMON=ec_lib.c ecp_smpl.c ecp_mont.c ecp_nist.c ec_cvt.c ec_mult.c \
|
2023-04-17 16:20:31 +08:00
|
|
|
ec_curve.c ec_check.c ec_key.c ec_kmeth.c ec_asn1.c \
|
2021-05-06 12:03:20 +08:00
|
|
|
ec2_smpl.c \
|
|
|
|
ecp_oct.c ec2_oct.c ec_oct.c ecdh_ossl.c \
|
2023-04-17 16:20:31 +08:00
|
|
|
ecdsa_ossl.c ecdsa_sign.c ecdsa_vrf.c \
|
|
|
|
$ECASM ec_backend.c ecdh_kdf.c
|
|
|
|
|
|
|
|
IF[{- !$disabled{'ecx'} -}]
|
|
|
|
$COMMON=$COMMON curve25519.c curve448/f_generic.c curve448/scalar.c \
|
|
|
|
curve448/arch_64/f_impl64.c ecx_backend.c curve448/arch_32/f_impl32.c \
|
|
|
|
curve448/curve448_tables.c curve448/eddsa.c curve448/curve448.c \
|
|
|
|
ecx_key.c
|
|
|
|
ENDIF
|
2021-01-19 11:14:25 +08:00
|
|
|
|
2020-03-06 01:50:31 +08:00
|
|
|
IF[{- !$disabled{'ec_nistp_64_gcc_128'} -}]
|
2023-07-12 10:25:22 +08:00
|
|
|
$COMMON=$COMMON ecp_nistp224.c ecp_nistp256.c ecp_nistp384.c ecp_nistp521.c ecp_nistputil.c
|
2020-03-06 01:50:31 +08:00
|
|
|
ENDIF
|
|
|
|
|
2023-04-17 16:20:31 +08:00
|
|
|
SOURCE[../../libcrypto]=$COMMON ec_ameth.c ec_pmeth.c \
|
2021-05-06 12:03:20 +08:00
|
|
|
ec_err.c eck_prn.c \
|
|
|
|
ec_deprecated.c ec_print.c
|
2023-04-17 16:20:31 +08:00
|
|
|
IF[{- !$disabled{'ecx'} -}]
|
|
|
|
SOURCE[../../libcrypto]=ecx_meth.c
|
|
|
|
ENDIF
|
2019-10-04 07:38:17 +08:00
|
|
|
SOURCE[../../providers/libfips.a]=$COMMON
|
2019-10-15 10:35:41 +08:00
|
|
|
|
|
|
|
# Implementations are now spread across several libraries, so the defines
|
|
|
|
# need to be applied to all affected libraries and modules.
|
|
|
|
DEFINE[../../libcrypto]=$ECDEF
|
2019-10-04 07:38:17 +08:00
|
|
|
DEFINE[../../providers/libfips.a]=$ECDEF
|
2022-07-13 17:15:43 +08:00
|
|
|
DEFINE[../../providers/libdefault.a]=$ECDEF
|
|
|
|
# We only need to include the ECDEF stuff in the legacy provider when
|
|
|
|
# it's a separate module and it's dynamically linked with libcrypto.
|
|
|
|
# Otherwise, it already gets everything that the static libcrypto.a
|
|
|
|
# has, and doesn't need it added again.
|
|
|
|
IF[{- !$disabled{module} && !$disabled{shared} -}]
|
2024-02-01 17:57:51 +08:00
|
|
|
DEFINE[../../providers/liblegacy.a]=$ECDEF
|
2022-07-13 17:15:43 +08:00
|
|
|
ENDIF
|
2016-01-30 10:25:40 +08:00
|
|
|
|
2022-05-20 04:09:50 +08:00
|
|
|
GENERATE[ecp_nistz256-x86.S]=asm/ecp_nistz256-x86.pl
|
2016-01-30 10:25:40 +08:00
|
|
|
|
2019-09-13 06:05:26 +08:00
|
|
|
GENERATE[ecp_nistz256-x86_64.s]=asm/ecp_nistz256-x86_64.pl
|
2016-01-30 10:25:40 +08:00
|
|
|
|
2019-09-13 06:05:26 +08:00
|
|
|
GENERATE[ecp_nistz256-avx2.s]=asm/ecp_nistz256-avx2.pl
|
2016-01-30 10:25:40 +08:00
|
|
|
|
2019-09-13 06:05:26 +08:00
|
|
|
GENERATE[ecp_nistz256-sparcv9.S]=asm/ecp_nistz256-sparcv9.pl
|
2016-03-11 03:05:52 +08:00
|
|
|
INCLUDE[ecp_nistz256-sparcv9.o]=..
|
2016-01-30 10:25:40 +08:00
|
|
|
|
2019-11-01 04:41:30 +08:00
|
|
|
INCLUDE[ecp_s390x_nistp.o]=..
|
2023-04-17 16:20:31 +08:00
|
|
|
IF[{- !$disabled{'ecx'} -}]
|
|
|
|
INCLUDE[ecx_meth.o]=..
|
|
|
|
INCLUDE[ecx_key.o]=..
|
|
|
|
ENDIF
|
2019-11-01 04:41:30 +08:00
|
|
|
|
2019-09-13 06:05:26 +08:00
|
|
|
GENERATE[ecp_nistz256-armv4.S]=asm/ecp_nistz256-armv4.pl
|
2016-03-11 20:44:46 +08:00
|
|
|
INCLUDE[ecp_nistz256-armv4.o]=..
|
2019-09-13 06:05:26 +08:00
|
|
|
GENERATE[ecp_nistz256-armv8.S]=asm/ecp_nistz256-armv8.pl
|
2016-03-11 20:44:46 +08:00
|
|
|
INCLUDE[ecp_nistz256-armv8.o]=..
|
2019-09-13 06:05:26 +08:00
|
|
|
GENERATE[ecp_nistz256-ppc64.s]=asm/ecp_nistz256-ppc64.pl
|
2016-03-11 20:44:46 +08:00
|
|
|
|
2023-05-31 12:32:26 +08:00
|
|
|
GENERATE[ecp_nistp384-ppc64.s]=asm/ecp_nistp384-ppc64.pl
|
2020-10-13 17:11:40 +08:00
|
|
|
GENERATE[ecp_nistp521-ppc64.s]=asm/ecp_nistp521-ppc64.pl
|
|
|
|
|
2023-04-17 16:20:31 +08:00
|
|
|
IF[{- !$disabled{'ecx'} -}]
|
2019-09-13 06:05:26 +08:00
|
|
|
GENERATE[x25519-x86_64.s]=asm/x25519-x86_64.pl
|
|
|
|
GENERATE[x25519-ppc64.s]=asm/x25519-ppc64.pl
|
2023-04-17 16:20:31 +08:00
|
|
|
ENDIF
|
2023-08-23 17:30:09 +08:00
|
|
|
|
|
|
|
IF[{- !$disabled{'sm2'} -}]
|
|
|
|
GENERATE[ecp_sm2p256-armv8.S]=asm/ecp_sm2p256-armv8.pl
|
|
|
|
INCLUDE[ecp_sm2p256-armv8.o]=..
|
|
|
|
ENDIF
|