aboutsummaryrefslogtreecommitdiff
path: root/crypto/Makefile.am.macosx-x86_64
diff options
context:
space:
mode:
authorBrent Cook <bcook@openbsd.org>2014-12-06 18:43:58 -0600
committerBrent Cook <bcook@openbsd.org>2014-12-07 16:26:28 -0600
commit03cd45e2c78b0298ab006fb64a4cda4fe6ab5657 (patch)
treeb6169d60691749d3a8a27c366646f7ad34d5c7d1 /crypto/Makefile.am.macosx-x86_64
parente57d5d8be3fbab0aa2ffa87f79d5fb079a0af2e9 (diff)
downloadportable-03cd45e2c78b0298ab006fb64a4cda4fe6ab5657.tar.gz
portable-03cd45e2c78b0298ab006fb64a4cda4fe6ab5657.tar.bz2
portable-03cd45e2c78b0298ab006fb64a4cda4fe6ab5657.zip
Enable optimized crypto operations for x86_64
This adds initial support for assembly crypto acceleration on x86_64 for ELF (Linux, *BSD, Solaris) and Mach-O (OS-X) systems. The build method is a little different than OpenSSL and OpenBSD. All the .s files are generated ahead of time when the tarball is generated, so there are no complicated makefile rules at configure/build time. This also means the builds are faster and perl is not required on the build system. Thanks to Wouter Clarie for providing the initial cleanup and patch that this is based on.
Diffstat (limited to 'crypto/Makefile.am.macosx-x86_64')
-rw-r--r--crypto/Makefile.am.macosx-x86_6441
1 files changed, 41 insertions, 0 deletions
diff --git a/crypto/Makefile.am.macosx-x86_64 b/crypto/Makefile.am.macosx-x86_64
new file mode 100644
index 0000000..e361aae
--- /dev/null
+++ b/crypto/Makefile.am.macosx-x86_64
@@ -0,0 +1,41 @@
1
2ASM_X86_64_MACOSX = aes/aes-macosx-x86_64.s
3ASM_X86_64_MACOSX += aes/bsaes-macosx-x86_64.s
4ASM_X86_64_MACOSX += aes/vpaes-macosx-x86_64.s
5ASM_X86_64_MACOSX += aes/aesni-macosx-x86_64.s
6ASM_X86_64_MACOSX += aes/aesni-sha1-macosx-x86_64.s
7ASM_X86_64_MACOSX += bn/modexp512-macosx-x86_64.s
8ASM_X86_64_MACOSX += bn/mont-macosx-x86_64.s
9ASM_X86_64_MACOSX += bn/mont5-macosx-x86_64.s
10ASM_X86_64_MACOSX += bn/gf2m-macosx-x86_64.s
11ASM_X86_64_MACOSX += camellia/cmll-macosx-x86_64.s
12ASM_X86_64_MACOSX += md5/md5-macosx-x86_64.s
13ASM_X86_64_MACOSX += modes/ghash-macosx-x86_64.s
14ASM_X86_64_MACOSX += rc4/rc4-macosx-x86_64.s
15ASM_X86_64_MACOSX += rc4/rc4-md5-macosx-x86_64.s
16ASM_X86_64_MACOSX += sha/sha1-macosx-x86_64.s
17ASM_X86_64_MACOSX += sha/sha256-macosx-x86_64.S
18ASM_X86_64_MACOSX += sha/sha512-macosx-x86_64.S
19ASM_X86_64_MACOSX += whrlpool/wp-macosx-x86_64.s
20ASM_X86_64_MACOSX += cpuid-macosx-x86_64.S
21
22EXTRA_DIST += $(ASM_X86_64_MACOSX)
23
24if HOST_ASM_MACOSX_X86_64
25libcrypto_la_CFLAGS += -DAES_ASM
26libcrypto_la_CFLAGS += -DBSAES_ASM
27libcrypto_la_CFLAGS += -DVPAES_ASM
28libcrypto_la_CFLAGS += -DOPENSSL_IA32_SSE2
29libcrypto_la_CFLAGS += -DOPENSSL_BN_ASM_MONT
30libcrypto_la_CFLAGS += -DOPENSSL_BN_ASM_MONT5
31libcrypto_la_CFLAGS += -DOPENSSL_BN_ASM_GF2m
32libcrypto_la_CFLAGS += -DMD5_ASM
33libcrypto_la_CFLAGS += -DGHASH_ASM
34libcrypto_la_CFLAGS += -DRSA_ASM
35libcrypto_la_CFLAGS += -DSHA1_ASM
36libcrypto_la_CFLAGS += -DSHA256_ASM
37libcrypto_la_CFLAGS += -DSHA512_ASM
38libcrypto_la_CFLAGS += -DWHIRLPOOL_ASM
39libcrypto_la_CFLAGS += -DOPENSSL_CPUID_OBJ
40libcrypto_la_SOURCES += $(ASM_X86_64_MACOSX)
41endif