xref: /openssl/crypto/sm4/build.info (revision 4908787f)
1LIBS=../../libcrypto
2
3IF[{- !$disabled{asm} -}]
4  $SM4DEF_aarch64=SM4_ASM VPSM4_ASM
5  $SM4ASM_aarch64=sm4-armv8.S vpsm4-armv8.S
6
7  # Now that we have defined all the arch specific variables, use the
8  # appropriate one, and define the appropriate macros
9  IF[$SM4ASM_{- $target{asm_arch} -}]
10    $SM4ASM=$SM4ASM_{- $target{asm_arch} -}
11    $SM4DEF=$SM4DEF_{- $target{asm_arch} -}
12  ENDIF
13ENDIF
14
15SOURCE[../../libcrypto]= $SM4ASM sm4.c
16
17
18# Implementations are now spread across several libraries, so the defines
19# need to be applied to all affected libraries and modules.
20DEFINE[../../libcrypto]=$SM4DEF
21DEFINE[../../providers/libfips.a]=$SM4DEF
22DEFINE[../../providers/libdefault.a]=$SM4DEF
23# We only need to include the SM4DEF stuff in the legacy provider when it's a
24# separate module and it's dynamically linked with libcrypto.  Otherwise, it
25# already gets everything that the static libcrypto.a has, and doesn't need it
26# added again.
27IF[{- !$disabled{module} && !$disabled{shared} -}]
28  DEFINE[../providers/liblegacy.a]=$SM4DEF
29ENDIF
30
31GENERATE[sm4-armv8.S]=asm/sm4-armv8.pl
32GENERATE[vpsm4-armv8.S]=asm/vpsm4-armv8.pl
33INCLUDE[sm4-armv8.o]=..
34INCLUDE[vpsm4-armv8.o]=..
35