Add internal maxsize macros
[openssl.git] / crypto / sha / build.info
1 LIBS=../../libcrypto
2
3 $SHA1ASM=
4 IF[{- !$disabled{asm} -}]
5   $SHA1ASM_x86=sha1-586.s sha256-586.s sha512-586.s
6   $SHA1DEF_x86=SHA1_ASM SHA256_ASM SHA512_ASM
7   $SHA1ASM_x86_64=\
8         sha1-x86_64.s sha256-x86_64.s sha512-x86_64.s sha1-mb-x86_64.s \
9         sha256-mb-x86_64.s
10   $SHA1DEF_x86_64=SHA1_ASM SHA256_ASM SHA512_ASM
11
12   $SHA1ASM_ia64=sha1-ia64.s sha256-ia64.s sha512-ia64.s
13   $SHA1DEF_ia64=SHA1_ASM SHA256_ASM SHA512_ASM
14
15   $SHA1ASM_sparcv9=sha1-sparcv9.S sha256-sparcv9.S sha512-sparcv9.S
16   $SHA1DEF_sparcv9=SHA1_ASM SHA256_ASM SHA512_ASM
17
18   $SHA1ASM_alpha=sha1-alpha.S
19   $SHA1DEF_alpha=SHA1_ASM
20
21   $SHA1ASM_mips32=sha1-mips.S sha256-mips.S
22   $SHA1DEF_mips32=SHA1_ASM SHA256_ASM
23   $SHA1ASM_mips64=$SHA1ASM_mips32 sha512-mips.S
24   $SHA1DEF_mips64=$SHA1DEF_mips32 SHA512_ASM
25
26   $SHA1ASM_s390x=sha1-s390x.S sha256-s390x.S sha512-s390x.S
27   $SHA1DEF_s390x=SHA1_ASM SHA256_ASM SHA512_ASM
28
29   $SHA1ASM_armv4=sha1-armv4-large.S sha256-armv4.S sha512-armv4.S
30   $SHA1DEF_armv4=SHA1_ASM SHA256_ASM SHA512_ASM
31   $SHA1ASM_aarch64=sha1-armv8.S sha256-armv8.S sha512-armv8.S
32   $SHA1DEF_aarch64=SHA1_ASM SHA256_ASM SHA512_ASM
33
34   $SHA1ASM_parisc11=sha1-parisc.s sha256-parisc.s sha512-parisc.s
35   $SHA1DEF_parisc11=SHA1_ASM SHA256_ASM SHA512_ASM
36   $SHA1ASM_parisc20_64=$SHA1ASM_parisc11
37   $SHA1DEF_parisc20_64=$SHA1DEF_parisc11
38
39   $SHA1ASM_ppc32=\
40         sha1-ppc.s sha256-ppc.s sha512-ppc.s sha256p8-ppc.s sha512p8-ppc.s
41   $SHA1DEF_ppc32=SHA1_ASM SHA256_ASM SHA512_ASM
42   $SHA1ASM_ppc64=$SHA1ASM_ppc32
43   $SHA1DEF_ppc64=$SHA1DEF_ppc32
44
45   $SHA1ASM_c64xplus=sha1-c64xplus.s sha256-c64xplus.s sha512-c64xplus.s
46   $SHA1DEF_c64xplus=SHA1_ASM SHA256_ASM SHA512_ASM
47
48   # Now that we have defined all the arch specific variables, use the
49   # appropriate one, and define the appropriate macros
50   IF[$SHA1ASM_{- $target{asm_arch} -}]
51     $SHA1ASM=$SHA1ASM_{- $target{asm_arch} -}
52     $SHA1DEF=$SHA1DEF_{- $target{asm_arch} -}
53   ENDIF
54 ENDIF
55
56 $KECCAK1600ASM=keccak1600.c
57 IF[{- !$disabled{asm} -}]
58   $KECCAK1600ASM_x86=
59   $KECCAK1600ASM_x86_64=keccak1600-x86_64.s
60
61   $KECCAK1600ASM_s390x=keccak1600-s390x.S
62
63   $KECCAK1600ASM_armv4=keccak1600-armv4.S
64   $KECCAK1600ASM_aarch64=keccak1600-armv8.S
65
66   $KECCAK1600ASM_ppc64=keccak1600-ppc64.s
67
68   # Now that we have defined all the arch specific variables, use the
69   # appropriate one, and define the appropriate macros
70   IF[$KECCAK1600ASM_{- $target{asm_arch} -}]
71     $KECCAK1600ASM=$KECCAK1600ASM_{- $target{asm_arch} -}
72     $KECCAK1600DEF=KECCAK1600_ASM
73   ENDIF
74 ENDIF
75
76 $COMMON=sha1dgst.c sha256.c sha512.c sha3.c $SHA1ASM $KECCAK1600ASM
77 SOURCE[../../libcrypto]=$COMMON sha1_one.c
78 SOURCE[../../providers/libfips.a]= $COMMON
79
80 # Implementations are now spread across several libraries, so the defines
81 # need to be applied to all affected libraries and modules.
82 DEFINE[../../libcrypto]=$SHA1DEF $KECCAK1600DEF
83 DEFINE[../../providers/libfips.a]=$SHA1DEF $KECCAK1600DEF
84 DEFINE[../../providers/libimplementations.a]=$SHA1DEF $KECCAK1600DEF
85
86 GENERATE[sha1-586.s]=asm/sha1-586.pl
87 DEPEND[sha1-586.s]=../perlasm/x86asm.pl
88 GENERATE[sha256-586.s]=asm/sha256-586.pl
89 DEPEND[sha256-586.s]=../perlasm/x86asm.pl
90 GENERATE[sha512-586.s]=asm/sha512-586.pl
91 DEPEND[sha512-586.s]=../perlasm/x86asm.pl
92
93 GENERATE[sha1-ia64.s]=asm/sha1-ia64.pl
94 GENERATE[sha256-ia64.s]=asm/sha512-ia64.pl
95 GENERATE[sha512-ia64.s]=asm/sha512-ia64.pl
96
97 GENERATE[sha1-alpha.S]=asm/sha1-alpha.pl
98
99 GENERATE[sha1-x86_64.s]=asm/sha1-x86_64.pl
100 GENERATE[sha1-mb-x86_64.s]=asm/sha1-mb-x86_64.pl
101 GENERATE[sha256-x86_64.s]=asm/sha512-x86_64.pl
102 GENERATE[sha256-mb-x86_64.s]=asm/sha256-mb-x86_64.pl
103 GENERATE[sha512-x86_64.s]=asm/sha512-x86_64.pl
104 GENERATE[keccak1600-x86_64.s]=asm/keccak1600-x86_64.pl
105
106 GENERATE[sha1-sparcv9a.S]=asm/sha1-sparcv9a.pl
107 GENERATE[sha1-sparcv9.S]=asm/sha1-sparcv9.pl
108 INCLUDE[sha1-sparcv9.o]=..
109 GENERATE[sha256-sparcv9.S]=asm/sha512-sparcv9.pl
110 INCLUDE[sha256-sparcv9.o]=..
111 GENERATE[sha512-sparcv9.S]=asm/sha512-sparcv9.pl
112 INCLUDE[sha512-sparcv9.o]=..
113
114 GENERATE[sha1-ppc.s]=asm/sha1-ppc.pl
115 GENERATE[sha256-ppc.s]=asm/sha512-ppc.pl
116 GENERATE[sha512-ppc.s]=asm/sha512-ppc.pl
117 GENERATE[sha256p8-ppc.s]=asm/sha512p8-ppc.pl
118 GENERATE[sha512p8-ppc.s]=asm/sha512p8-ppc.pl
119 GENERATE[keccak1600-ppc64.s]=asm/keccak1600-ppc64.pl
120
121 GENERATE[sha1-parisc.s]=asm/sha1-parisc.pl
122 GENERATE[sha256-parisc.s]=asm/sha512-parisc.pl
123 GENERATE[sha512-parisc.s]=asm/sha512-parisc.pl
124
125 GENERATE[sha1-mips.S]=asm/sha1-mips.pl
126 INCLUDE[sha1-mips.o]=..
127 GENERATE[sha256-mips.S]=asm/sha512-mips.pl
128 INCLUDE[sha256-mips.o]=..
129 GENERATE[sha512-mips.S]=asm/sha512-mips.pl
130 INCLUDE[sha512-mips.o]=..
131
132 GENERATE[sha1-armv4-large.S]=asm/sha1-armv4-large.pl
133 INCLUDE[sha1-armv4-large.o]=..
134 GENERATE[sha256-armv4.S]=asm/sha256-armv4.pl
135 INCLUDE[sha256-armv4.o]=..
136 GENERATE[sha512-armv4.S]=asm/sha512-armv4.pl
137 INCLUDE[sha512-armv4.o]=..
138 GENERATE[keccak1600-armv4.S]=asm/keccak1600-armv4.pl
139 INCLUDE[keccak1600-armv4.o]=..
140
141 GENERATE[sha1-armv8.S]=asm/sha1-armv8.pl
142 INCLUDE[sha1-armv8.o]=..
143 GENERATE[sha256-armv8.S]=asm/sha512-armv8.pl
144 INCLUDE[sha256-armv8.o]=..
145 GENERATE[sha512-armv8.S]=asm/sha512-armv8.pl
146 INCLUDE[sha512-armv8.o]=..
147 GENERATE[keccak1600-armv8.S]=asm/keccak1600-armv8.pl
148
149 GENERATE[sha1-s390x.S]=asm/sha1-s390x.pl
150 INCLUDE[sha1-s390x.o]=..
151 GENERATE[sha256-s390x.S]=asm/sha512-s390x.pl
152 INCLUDE[sha256-s390x.o]=..
153 GENERATE[sha512-s390x.S]=asm/sha512-s390x.pl
154 INCLUDE[sha512-s390x.o]=..
155 GENERATE[keccak1600-s390x.S]=asm/keccak1600-s390x.pl
156
157 GENERATE[sha1-c64xplus.S]=asm/sha1-c64xplus.pl
158 GENERATE[sha256-c64xplus.S]=asm/sha256-c64xplus.pl
159 GENERATE[sha512-c64xplus.S]=asm/sha512-c64xplus.pl
160 GENERATE[keccak1600-c64x.S]=asm/keccak1600-c64x.pl
161
162 # These are not yet used
163 GENERATE[keccak1600-avx2.S]=asm/keccak1600-avx2.pl
164 GENERATE[keccak1600-avx512.S]=asm/keccak1600-avx512.pl
165 GENERATE[keccak1600-avx512vl.S]=asm/keccak1600-avx512vl.pl
166 GENERATE[keccak1600-mmx.S]=asm/keccak1600-mmx.pl
167 GENERATE[keccak1600p8-ppc.S]=asm/keccak1600p8-ppc.pl
168 GENERATE[sha1-thumb.S]=asm/sha1-thumb.pl