1 | LIBS=../../libcrypto
|
---|
2 |
|
---|
3 | $MODESASM=
|
---|
4 | IF[{- !$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
|
---|
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
|
---|
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 | $MODESDEF_ppc64=$MODESDEF_ppc32
|
---|
39 |
|
---|
40 | $MODESASM_c64xplus=ghash-c64xplus.s
|
---|
41 | $MODESDEF_c64xplus=GHASH_ASM
|
---|
42 |
|
---|
43 | # Now that we have defined all the arch specific variables, use the
|
---|
44 | # appropriate one, and define the appropriate macros
|
---|
45 | IF[$MODESASM_{- $target{asm_arch} -}]
|
---|
46 | $MODESASM=$MODESASM_{- $target{asm_arch} -}
|
---|
47 | $MODESDEF=$MODESDEF_{- $target{asm_arch} -}
|
---|
48 | ENDIF
|
---|
49 | ENDIF
|
---|
50 |
|
---|
51 | $COMMON=cbc128.c ctr128.c cfb128.c ofb128.c gcm128.c ccm128.c xts128.c \
|
---|
52 | wrap128.c $MODESASM
|
---|
53 | SOURCE[../../libcrypto]=$COMMON \
|
---|
54 | cts128.c ocb128.c siv128.c
|
---|
55 | SOURCE[../../providers/libfips.a]=$COMMON
|
---|
56 |
|
---|
57 | # Implementations are now spread across several libraries, so the defines
|
---|
58 | # need to be applied to all affected libraries and modules.
|
---|
59 | DEFINE[../../libcrypto]=$MODESDEF
|
---|
60 | DEFINE[../../providers/libfips.a]=$MODESDEF
|
---|
61 |
|
---|
62 |
|
---|
63 | INCLUDE[gcm128.o]=..
|
---|
64 |
|
---|
65 | GENERATE[ghash-ia64.s]=asm/ghash-ia64.pl
|
---|
66 | GENERATE[ghash-x86.s]=asm/ghash-x86.pl
|
---|
67 | GENERATE[ghash-x86_64.s]=asm/ghash-x86_64.pl
|
---|
68 | GENERATE[aesni-gcm-x86_64.s]=asm/aesni-gcm-x86_64.pl
|
---|
69 | GENERATE[ghash-sparcv9.S]=asm/ghash-sparcv9.pl
|
---|
70 | INCLUDE[ghash-sparcv9.o]=..
|
---|
71 | GENERATE[ghash-alpha.S]=asm/ghash-alpha.pl
|
---|
72 | GENERATE[ghash-parisc.s]=asm/ghash-parisc.pl
|
---|
73 | GENERATE[ghashp8-ppc.s]=asm/ghashp8-ppc.pl
|
---|
74 | GENERATE[ghash-armv4.S]=asm/ghash-armv4.pl
|
---|
75 | INCLUDE[ghash-armv4.o]=..
|
---|
76 | GENERATE[ghashv8-armx.S]=asm/ghashv8-armx.pl
|
---|
77 | INCLUDE[ghashv8-armx.o]=..
|
---|
78 | GENERATE[aes-gcm-armv8_64.S]=asm/aes-gcm-armv8_64.pl
|
---|
79 | INCLUDE[aes-gcm-armv8_64.o]=..
|
---|
80 | GENERATE[ghash-s390x.S]=asm/ghash-s390x.pl
|
---|
81 | INCLUDE[ghash-s390x.o]=..
|
---|
82 | GENERATE[ghash-c64xplus.S]=asm/ghash-c64xplus.pl
|
---|