Make the EC code available from inside the FIPS provider
[openssl.git] / crypto / ec / build.info
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 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=
22
23   $ECASM_armv4=ecp_nistz256.c ecp_nistz256-armv4.S
24   $ECDEF_armv4=ECP_NISTZ256_ASM
25   $ECASM_aarch64=ecp_nistz256.c ecp_nistz256-armv8.S
26   $ECDEF_aarch64=ECP_NISTZ256_ASM
27
28   $ECASM_parisc11=
29   $ECASM_parisc20_64=
30
31   $ECASM_ppc32=
32   $ECASM_ppc64=ecp_nistz256.c ecp_nistz256-ppc64.s x25519-ppc64.s
33   $ECDEF_ppc64=ECP_NISTZ256_ASM X25519_ASM
34
35   $ECASM_c64xplus=
36
37   # Now that we have defined all the arch specific variables, use the
38   # appropriate one, and define the appropriate macros
39   IF[$ECASM_{- $target{asm_arch} -}]
40     $ECASM=$ECASM_{- $target{asm_arch} -}
41     $ECDEF=$ECDEF_{- $target{asm_arch} -}
42   ENDIF
43 ENDIF
44
45 LIBS=../../libcrypto
46
47 $COMMON=ec_lib.c ecp_smpl.c ecp_mont.c ecp_nist.c ec_cvt.c ec_mult.c \
48         ec_curve.c ec_check.c ec_print.c ec_key.c ec_asn1.c \
49         ec2_smpl.c \
50         ecp_nistp224.c ecp_nistp256.c ecp_nistp521.c ecp_nistputil.c \
51         ecp_oct.c ec2_oct.c ec_oct.c ec_kmeth.c ecdh_ossl.c \
52         ecdsa_ossl.c ecdsa_sign.c ecdsa_vrf.c curve25519.c \
53         curve448/arch_32/f_impl.c curve448/f_generic.c curve448/scalar.c \
54         curve448/curve448_tables.c curve448/eddsa.c curve448/curve448.c \
55         $ECASM
56 SOURCE[../../libcrypto]=$COMMON ec_ameth.c ec_pmeth.c ecx_meth.c ec_err.c \
57                         ecdh_kdf.c eck_prn.c
58 DEFINE[../../libcrypto]=$ECDEF
59 SOURCE[../../providers/fips]=$COMMON
60 DEFINE[../../providers/fips]=$ECDEF
61
62 GENERATE[ecp_nistz256-x86.s]=asm/ecp_nistz256-x86.pl \
63         $(PERLASM_SCHEME) $(LIB_CFLAGS) $(LIB_CPPFLAGS) $(PROCESSOR)
64
65 GENERATE[ecp_nistz256-x86_64.s]=asm/ecp_nistz256-x86_64.pl $(PERLASM_SCHEME)
66
67 GENERATE[ecp_nistz256-avx2.s]=asm/ecp_nistz256-avx2.pl $(PERLASM_SCHEME)
68
69 GENERATE[ecp_nistz256-sparcv9.S]=asm/ecp_nistz256-sparcv9.pl $(PERLASM_SCHEME)
70 INCLUDE[ecp_nistz256-sparcv9.o]=..
71
72 GENERATE[ecp_nistz256-armv4.S]=asm/ecp_nistz256-armv4.pl $(PERLASM_SCHEME)
73 INCLUDE[ecp_nistz256-armv4.o]=..
74 GENERATE[ecp_nistz256-armv8.S]=asm/ecp_nistz256-armv8.pl $(PERLASM_SCHEME)
75 INCLUDE[ecp_nistz256-armv8.o]=..
76 GENERATE[ecp_nistz256-ppc64.s]=asm/ecp_nistz256-ppc64.pl $(PERLASM_SCHEME)
77
78 GENERATE[x25519-x86_64.s]=asm/x25519-x86_64.pl $(PERLASM_SCHEME)
79 GENERATE[x25519-ppc64.s]=asm/x25519-ppc64.pl $(PERLASM_SCHEME)
80
81 INCLUDE[curve448/arch_32/f_impl.o]=curve448/arch_32 curve448
82 INCLUDE[curve448/f_generic.o]=curve448/arch_32 curve448
83 INCLUDE[curve448/scalar.o]=curve448/arch_32 curve448
84 INCLUDE[curve448/curve448_tables.o]=curve448/arch_32 curve448
85 INCLUDE[curve448/eddsa.o]=curve448/arch_32 curve448
86 INCLUDE[curve448/curve448.o]=curve448/arch_32 curve448