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
8 sha1-x86_64.s sha256-x86_64.s sha512-x86_64.s sha1-mb-x86_64.s \
10 $SHA1DEF_x86_64=SHA1_ASM SHA256_ASM SHA512_ASM
12 $SHA1ASM_ia64=sha1-ia64.s sha256-ia64.s sha512-ia64.s
13 $SHA1DEF_ia64=SHA1_ASM SHA256_ASM SHA512_ASM
15 $SHA1ASM_sparcv9=sha1-sparcv9.S sha256-sparcv9.S sha512-sparcv9.S
16 $SHA1DEF_sparcv9=SHA1_ASM SHA256_ASM SHA512_ASM
18 $SHA1ASM_alpha=sha1-alpha.S
19 $SHA1DEF_alpha=SHA1_ASM
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
26 $SHA1ASM_s390x=sha1-s390x.S sha256-s390x.S sha512-s390x.S
27 $SHA1DEF_s390x=SHA1_ASM SHA256_ASM SHA512_ASM
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
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
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
45 $SHA1ASM_c64xplus=sha1-c64xplus.s sha256-c64xplus.s sha512-c64xplus.s
46 $SHA1DEF_c64xplus=SHA1_ASM SHA256_ASM SHA512_ASM
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} -}
56 $COMMON=sha1dgst.c sha256.c sha512.c sha3.c $SHA1ASM \
57 {- $target{keccak1600_asm_src} -}
58 SOURCE[../../libcrypto]=$COMMON sha1_one.c
59 DEFINE[../../libcrypto]=$SHA1DEF
60 SOURCE[../../providers/fips]= $COMMON
61 DEFINE[../../providers/fips]= $SHA1DEF
63 GENERATE[sha1-586.s]=asm/sha1-586.pl \
64 $(PERLASM_SCHEME) $(LIB_CFLAGS) $(LIB_CPPFLAGS) $(PROCESSOR)
65 DEPEND[sha1-586.s]=../perlasm/x86asm.pl
66 GENERATE[sha256-586.s]=asm/sha256-586.pl \
67 $(PERLASM_SCHEME) $(LIB_CFLAGS) $(LIB_CPPFLAGS) $(PROCESSOR)
68 DEPEND[sha256-586.s]=../perlasm/x86asm.pl
69 GENERATE[sha512-586.s]=asm/sha512-586.pl \
70 $(PERLASM_SCHEME) $(LIB_CFLAGS) $(LIB_CPPFLAGS) $(PROCESSOR)
71 DEPEND[sha512-586.s]=../perlasm/x86asm.pl
73 GENERATE[sha1-ia64.s]=asm/sha1-ia64.pl $(LIB_CFLAGS) $(LIB_CPPFLAGS)
74 GENERATE[sha256-ia64.s]=asm/sha512-ia64.pl $(LIB_CFLAGS) $(LIB_CPPFLAGS)
75 GENERATE[sha512-ia64.s]=asm/sha512-ia64.pl $(LIB_CFLAGS) $(LIB_CPPFLAGS)
77 GENERATE[sha1-alpha.S]=asm/sha1-alpha.pl $(PERLASM_SCHEME)
79 GENERATE[sha1-x86_64.s]=asm/sha1-x86_64.pl $(PERLASM_SCHEME)
80 GENERATE[sha1-mb-x86_64.s]=asm/sha1-mb-x86_64.pl $(PERLASM_SCHEME)
81 GENERATE[sha256-x86_64.s]=asm/sha512-x86_64.pl $(PERLASM_SCHEME)
82 GENERATE[sha256-mb-x86_64.s]=asm/sha256-mb-x86_64.pl $(PERLASM_SCHEME)
83 GENERATE[sha512-x86_64.s]=asm/sha512-x86_64.pl $(PERLASM_SCHEME)
84 GENERATE[keccak1600-x86_64.s]=asm/keccak1600-x86_64.pl $(PERLASM_SCHEME)
86 GENERATE[sha1-sparcv9a.S]=asm/sha1-sparcv9a.pl $(PERLASM_SCHEME)
87 GENERATE[sha1-sparcv9.S]=asm/sha1-sparcv9.pl $(PERLASM_SCHEME)
88 INCLUDE[sha1-sparcv9.o]=..
89 GENERATE[sha256-sparcv9.S]=asm/sha512-sparcv9.pl $(PERLASM_SCHEME)
90 INCLUDE[sha256-sparcv9.o]=..
91 GENERATE[sha512-sparcv9.S]=asm/sha512-sparcv9.pl $(PERLASM_SCHEME)
92 INCLUDE[sha512-sparcv9.o]=..
94 GENERATE[sha1-ppc.s]=asm/sha1-ppc.pl $(PERLASM_SCHEME)
95 GENERATE[sha256-ppc.s]=asm/sha512-ppc.pl $(PERLASM_SCHEME)
96 GENERATE[sha512-ppc.s]=asm/sha512-ppc.pl $(PERLASM_SCHEME)
97 GENERATE[sha256p8-ppc.s]=asm/sha512p8-ppc.pl $(PERLASM_SCHEME)
98 GENERATE[sha512p8-ppc.s]=asm/sha512p8-ppc.pl $(PERLASM_SCHEME)
99 GENERATE[keccak1600-ppc64.s]=asm/keccak1600-ppc64.pl $(PERLASM_SCHEME)
101 GENERATE[sha1-parisc.s]=asm/sha1-parisc.pl $(PERLASM_SCHEME)
102 GENERATE[sha256-parisc.s]=asm/sha512-parisc.pl $(PERLASM_SCHEME)
103 GENERATE[sha512-parisc.s]=asm/sha512-parisc.pl $(PERLASM_SCHEME)
105 GENERATE[sha1-mips.S]=asm/sha1-mips.pl $(PERLASM_SCHEME)
106 INCLUDE[sha1-mips.o]=..
107 GENERATE[sha256-mips.S]=asm/sha512-mips.pl $(PERLASM_SCHEME)
108 INCLUDE[sha256-mips.o]=..
109 GENERATE[sha512-mips.S]=asm/sha512-mips.pl $(PERLASM_SCHEME)
110 INCLUDE[sha512-mips.o]=..
112 GENERATE[sha1-armv4-large.S]=asm/sha1-armv4-large.pl $(PERLASM_SCHEME)
113 INCLUDE[sha1-armv4-large.o]=..
114 GENERATE[sha256-armv4.S]=asm/sha256-armv4.pl $(PERLASM_SCHEME)
115 INCLUDE[sha256-armv4.o]=..
116 GENERATE[sha512-armv4.S]=asm/sha512-armv4.pl $(PERLASM_SCHEME)
117 INCLUDE[sha512-armv4.o]=..
118 GENERATE[keccak1600-armv4.S]=asm/keccak1600-armv4.pl $(PERLASM_SCHEME)
119 INCLUDE[keccak1600-armv4.o]=..
121 GENERATE[sha1-armv8.S]=asm/sha1-armv8.pl $(PERLASM_SCHEME)
122 INCLUDE[sha1-armv8.o]=..
123 GENERATE[sha256-armv8.S]=asm/sha512-armv8.pl $(PERLASM_SCHEME)
124 INCLUDE[sha256-armv8.o]=..
125 GENERATE[sha512-armv8.S]=asm/sha512-armv8.pl $(PERLASM_SCHEME)
126 INCLUDE[sha512-armv8.o]=..
127 GENERATE[keccak1600-armv8.S]=asm/keccak1600-armv8.pl $(PERLASM_SCHEME)
129 GENERATE[sha1-s390x.S]=asm/sha1-s390x.pl $(PERLASM_SCHEME)
130 INCLUDE[sha1-s390x.o]=..
131 GENERATE[sha256-s390x.S]=asm/sha512-s390x.pl $(PERLASM_SCHEME)
132 INCLUDE[sha256-s390x.o]=..
133 GENERATE[sha512-s390x.S]=asm/sha512-s390x.pl $(PERLASM_SCHEME)
134 INCLUDE[sha512-s390x.o]=..
135 GENERATE[keccak1600-s390x.S]=asm/keccak1600-s390x.pl $(PERLASM_SCHEME)
137 GENERATE[sha1-c64xplus.S]=asm/sha1-c64xplus.pl $(PERLASM_SCHEME)
138 GENERATE[sha256-c64xplus.S]=asm/sha256-c64xplus.pl $(PERLASM_SCHEME)
139 GENERATE[sha512-c64xplus.S]=asm/sha512-c64xplus.pl $(PERLASM_SCHEME)
140 GENERATE[keccak1600-c64x.S]=asm/keccak1600-c64x.pl $(PERLASM_SCHEME)
142 # These are not yet used
143 GENERATE[keccak1600-avx2.S]=asm/keccak1600-avx2.pl $(PERLASM_SCHEME)
144 GENERATE[keccak1600-avx512.S]=asm/keccak1600-avx512.pl $(PERLASM_SCHEME)
145 GENERATE[keccak1600-avx512vl.S]=asm/keccak1600-avx512vl.pl $(PERLASM_SCHEME)
146 GENERATE[keccak1600-mmx.S]=asm/keccak1600-mmx.pl $(PERLASM_SCHEME)
147 GENERATE[keccak1600p8-ppc.S]=asm/keccak1600p8-ppc.pl $(PERLASM_SCHEME)
148 GENERATE[sha1-thumb.S]=asm/sha1-thumb.pl $(PERLASM_SCHEME)