aboutsummaryrefslogtreecommitdiff
path: root/secure/lib/libcrypto/Makefile.asm
diff options
context:
space:
mode:
authorJung-uk Kim <jkim@FreeBSD.org>2016-10-26 20:02:22 +0000
committerJung-uk Kim <jkim@FreeBSD.org>2016-10-26 20:02:22 +0000
commit7518a9bd2bd4ffc18171625bddede1c5e773f019 (patch)
tree5a3f2873e290baf06d50a8d3fe06d7c47b4363cd /secure/lib/libcrypto/Makefile.asm
parent726f4773ec261cac63e0c30a7b84059cafcb7511 (diff)
Notes
Diffstat (limited to 'secure/lib/libcrypto/Makefile.asm')
-rw-r--r--secure/lib/libcrypto/Makefile.asm39
1 files changed, 38 insertions, 1 deletions
diff --git a/secure/lib/libcrypto/Makefile.asm b/secure/lib/libcrypto/Makefile.asm
index a503920033545..076d4c1e69e7b 100644
--- a/secure/lib/libcrypto/Makefile.asm
+++ b/secure/lib/libcrypto/Makefile.asm
@@ -6,7 +6,44 @@
.include "Makefile.inc"
-.if defined(ASM_amd64)
+.if defined(ASM_aarch64)
+
+.PATH: ${LCRYPTO_SRC}/crypto \
+ ${LCRYPTO_SRC}/crypto/aes/asm \
+ ${LCRYPTO_SRC}/crypto/modes/asm \
+ ${LCRYPTO_SRC}/crypto/sha/asm
+
+PERLPATH= -I${LCRYPTO_SRC}/crypto/perlasm
+
+# aes
+SRCS= aesv8-armx.pl
+
+# modes
+SRCS+= ghashv8-armx.pl
+
+# sha
+SRCS+= sha1-armv8.pl sha512-armv8.pl
+
+ASM= ${SRCS:R:S/$/.S/} sha256-armv8.S
+
+all: ${ASM}
+
+CLEANFILES= ${ASM} ${SRCS:R:S/$/.s/} sha256-armv8.s
+.SUFFIXES: .pl
+
+sha256-armv8.S: sha512-armv8.pl
+ env CC=cc perl ${.ALLSRC} 64 ${.TARGET:R:S/$/.s/}
+ ( echo '/* $$'FreeBSD'$$ */' ;\
+ echo '/* Do not modify. This file is auto-generated from ${.ALLSRC:T:R:S/$/.pl/}. */' ;\
+ cat ${.TARGET:R:S/$/.s/}) > ${.TARGET}
+
+.pl.S:
+ env CC=cc perl ${.IMPSRC} 64 ${.TARGET:R:S/$/.s/}
+ ( echo '/* $$'FreeBSD'$$ */' ;\
+ echo '/* Do not modify. This file is auto-generated from ${.IMPSRC:T:R:S/$/.pl/}. */' ;\
+ cat ${.TARGET:R:S/$/.s/}) > ${.TARGET}
+
+.elif defined(ASM_amd64)
.PATH: ${LCRYPTO_SRC}/crypto \
${LCRYPTO_SRC}/crypto/aes/asm \