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