Unleashed v1.4
[unleashed.git] / lib / libcrypto / arch / amd64 / Makefile.inc
bloba42daab1c20ee72a93a7604f5e71d20ae3d5281a
1 # $OpenBSD: Makefile.inc,v 1.8 2017/08/20 17:53:13 espie Exp $
3 # amd64-specific libcrypto build rules
5 # all amd64 code generators use this
6 EXTRA_PL =      ${LCRYPTO_SRC}/perlasm/x86_64-xlate.pl
8 # aes
9 CFLAGS+= -DAES_ASM
10 SSLASM+= aes aes-x86_64
11 CFLAGS+= -DBSAES_ASM
12 SSLASM+= aes bsaes-x86_64
13 CFLAGS+= -DVPAES_ASM
14 SSLASM+= aes vpaes-x86_64
15 SSLASM+= aes aesni-x86_64
16 SSLASM+= aes aesni-sha1-x86_64
17 # bf
18 SRCS+= bf_enc.c
19 # bn
20 CFLAGS+= -DOPENSSL_IA32_SSE2
21 CFLAGS+= -DRSA_ASM
22 SSLASM+= bn modexp512-x86_64
23 CFLAGS+= -DOPENSSL_BN_ASM_MONT
24 SSLASM+= bn x86_64-mont
25 CFLAGS+= -DOPENSSL_BN_ASM_MONT5
26 SSLASM+= bn x86_64-mont5
27 CFLAGS+= -DOPENSSL_BN_ASM_GF2m
28 SSLASM+= bn x86_64-gf2m
29 # camellia
30 SRCS+=  cmll_misc.c
31 SSLASM+= camellia cmll-x86_64
32 # des
33 SRCS+= des_enc.c fcrypt_b.c
34 # ec
35 #CFLAGS+= -DECP_NISTZ256_ASM
36 #SRCS+= ecp_nistz256.c
37 #SSLASM+= ec ecp_nistz256-x86_64
38 # md5
39 CFLAGS+= -DMD5_ASM
40 SSLASM+= md5 md5-x86_64
41 # modes
42 CFLAGS+= -DGHASH_ASM
43 SSLASM+= modes ghash-x86_64
44 # rc4
45 CFLAGS+= -DRC4_MD5_ASM
46 SSLASM+= rc4 rc4-x86_64
47 SSLASM+= rc4 rc4-md5-x86_64
48 # ripemd
49 # sha
50 CFLAGS+= -DSHA1_ASM
51 SSLASM+= sha sha1-x86_64
52 CFLAGS+= -DSHA256_ASM
53 SRCS+= sha256-x86_64.S
54 GENERATED+= sha256-x86_64.S
55 sha256-x86_64.S: ${LCRYPTO_SRC}/sha/asm/sha512-x86_64.pl ${EXTRA_PL}
56         cd ${LCRYPTO_SRC}/sha/asm ; \
57                 /usr/bin/perl ./sha512-x86_64.pl ${.OBJDIR}/${.TARGET}
58 CFLAGS+= -DSHA512_ASM
59 SRCS+= sha512-x86_64.S
60 GENERATED+= sha512-x86_64.S
61 sha512-x86_64.S: ${LCRYPTO_SRC}/sha/asm/sha512-x86_64.pl ${EXTRA_PL}
62         cd ${LCRYPTO_SRC}/sha/asm ; \
63                 /usr/bin/perl ./sha512-x86_64.pl ${.OBJDIR}/${.TARGET}
64 # whrlpool
65 CFLAGS+= -DWHIRLPOOL_ASM
66 SSLASM+= whrlpool wp-x86_64
68 .for dir f in ${SSLASM}
69 SRCS+=  ${f}.S
70 GENERATED+=${f}.S
71 ${f}.S: ${LCRYPTO_SRC}/${dir}/asm/${f}.pl ${EXTRA_PL}
72         (cd ${LCRYPTO_SRC}/${dir} ; \
73                 /usr/bin/perl ./asm/${f}.pl elf) > ${.TARGET}
74 .endfor
76 CFLAGS+= -DOPENSSL_CPUID_OBJ
77 SRCS+=  x86_64cpuid.S x86_64-gcc.c
78 GENERATED+=x86_64cpuid.S
80 x86_64cpuid.S: ${LCRYPTO_SRC}/x86_64cpuid.pl ${EXTRA_PL}
81         (cd ${LCRYPTO_SRC}/${dir} ; \
82                 /usr/bin/perl ./x86_64cpuid.pl) > ${.TARGET}