xref: /openssl/crypto/modes/build.info (revision ebecf322)
1LIBS=../../libcrypto
2
3$MODESASM=
4IF[{- !$disabled{asm} -}]
5  $MODESASM_x86=ghash-x86.S
6  $MODESDEF_x86=GHASH_ASM
7  $MODESASM_x86_64=ghash-x86_64.s aesni-gcm-x86_64.s aes-gcm-avx512.s
8  $MODESDEF_x86_64=GHASH_ASM
9
10  # ghash-ia64.s doesn't work on VMS
11  IF[{- $config{target} !~ /^vms-/ -}]
12    $MODESASM_ia64=ghash-ia64.s
13    $MODESDEF_ia64=GHASH_ASM
14  ENDIF
15
16  $MODESASM_sparcv9=ghash-sparcv9.S
17  $MODESDEF_sparcv9=GHASH_ASM
18
19  $MODESASM_alpha=ghash-alpha.S
20  $MODESDEF_alpha=GHASH_ASM
21
22  $MODESASM_s390x=ghash-s390x.S
23  $MODESDEF_s390x=GHASH_ASM
24
25  $MODESASM_armv4=ghash-armv4.S ghashv8-armx.S
26  $MODESDEF_armv4=GHASH_ASM
27  $MODESASM_aarch64=ghashv8-armx.S aes-gcm-armv8_64.S aes-gcm-armv8-unroll8_64.S
28  $MODESDEF_aarch64=
29
30  $MODESASM_parisc11=ghash-parisc.s
31  $MODESDEF_parisc11=GHASH_ASM
32  $MODESASM_parisc20_64=$MODESASM_parisc11
33  $MODESDEF_parisc20_64=$MODESDEF_parisc11
34
35  $MODESASM_ppc32=ghashp8-ppc.s
36  $MODESDEF_ppc32=
37  $MODESASM_ppc64=$MODESASM_ppc32
38  IF[{- $target{sys_id} ne "AIX" && $target{sys_id} ne "MACOSX" -}]
39    $MODESASM_ppc64=$MODESASM_ppc32 aes-gcm-ppc.s
40  ENDIF
41  $MODESDEF_ppc64=$MODESDEF_ppc32
42
43  $MODESASM_c64xplus=ghash-c64xplus.s
44  $MODESDEF_c64xplus=GHASH_ASM
45
46  $MODESASM_riscv64=ghash-riscv64.s ghash-riscv64-zvkb-zvbc.s ghash-riscv64-zvkg.s aes-gcm-riscv64-zvkb-zvkg-zvkned.s
47  $MODESDEF_riscv64=GHASH_ASM
48
49  # Now that we have defined all the arch specific variables, use the
50  # appropriate one, and define the appropriate macros
51  IF[$MODESASM_{- $target{asm_arch} -}]
52    $MODESASM=$MODESASM_{- $target{asm_arch} -}
53    $MODESDEF=$MODESDEF_{- $target{asm_arch} -}
54  ENDIF
55ENDIF
56
57$COMMON=cbc128.c ctr128.c cfb128.c ofb128.c gcm128.c ccm128.c xts128.c \
58        wrap128.c xts128gb.c $MODESASM
59SOURCE[../../libcrypto]=$COMMON \
60        cts128.c ocb128.c siv128.c
61SOURCE[../../providers/libfips.a]=$COMMON
62
63# Implementations are now spread across several libraries, so the defines
64# need to be applied to all affected libraries and modules.
65DEFINE[../../libcrypto]=$MODESDEF
66DEFINE[../../providers/libfips.a]=$MODESDEF
67
68
69INCLUDE[gcm128.o]=..
70
71GENERATE[ghash-ia64.s]=asm/ghash-ia64.pl
72GENERATE[ghash-x86.S]=asm/ghash-x86.pl
73GENERATE[ghash-x86_64.s]=asm/ghash-x86_64.pl
74GENERATE[aesni-gcm-x86_64.s]=asm/aesni-gcm-x86_64.pl
75GENERATE[aes-gcm-avx512.s]=asm/aes-gcm-avx512.pl
76GENERATE[ghash-sparcv9.S]=asm/ghash-sparcv9.pl
77INCLUDE[ghash-sparcv9.o]=..
78GENERATE[ghash-alpha.S]=asm/ghash-alpha.pl
79GENERATE[ghash-parisc.s]=asm/ghash-parisc.pl
80GENERATE[ghashp8-ppc.s]=asm/ghashp8-ppc.pl
81GENERATE[aes-gcm-ppc.s]=asm/aes-gcm-ppc.pl
82GENERATE[ghash-armv4.S]=asm/ghash-armv4.pl
83INCLUDE[ghash-armv4.o]=..
84GENERATE[ghashv8-armx.S]=asm/ghashv8-armx.pl
85INCLUDE[ghashv8-armx.o]=..
86GENERATE[aes-gcm-armv8_64.S]=asm/aes-gcm-armv8_64.pl
87INCLUDE[aes-gcm-armv8_64.o]=..
88GENERATE[aes-gcm-armv8-unroll8_64.S]=asm/aes-gcm-armv8-unroll8_64.pl
89INCLUDE[aes-gcm-armv8-unroll8_64.o]=..
90GENERATE[ghash-s390x.S]=asm/ghash-s390x.pl
91INCLUDE[ghash-s390x.o]=..
92GENERATE[ghash-c64xplus.S]=asm/ghash-c64xplus.pl
93GENERATE[ghash-riscv64.s]=asm/ghash-riscv64.pl
94GENERATE[ghash-riscv64-zvkb-zvbc.s]=asm/ghash-riscv64-zvkb-zvbc.pl
95GENERATE[ghash-riscv64-zvkg.s]=asm/ghash-riscv64-zvkg.pl
96GENERATE[aes-gcm-riscv64-zvkb-zvkg-zvkned.s]=asm/aes-gcm-riscv64-zvkb-zvkg-zvkned.pl
97