svn commit: r338270 - head/lib/libmd
Alex Richardson
arichardson at FreeBSD.org
Thu Aug 23 18:19:34 UTC 2018
Author: arichardson
Date: Thu Aug 23 18:19:33 2018
New Revision: 338270
URL: https://svnweb.freebsd.org/changeset/base/338270
Log:
Don't build skein_block_asm.s if we don't have an as binary
This fixes building libmd on MacOS/Linux. The real fix is probably to
build it as a .S file with $CC instead. It might also be better to just
compile the C file in userspace since the compiler can the use SSE/AVX.
Reviewed By: emaste, brooks
Approved By: jhb (mentor)
Differential Revision: https://reviews.freebsd.org/D16844
Modified:
head/lib/libmd/Makefile
Modified: head/lib/libmd/Makefile
==============================================================================
--- head/lib/libmd/Makefile Thu Aug 23 18:19:21 2018 (r338269)
+++ head/lib/libmd/Makefile Thu Aug 23 18:19:33 2018 (r338270)
@@ -1,5 +1,7 @@
# $FreeBSD$
+.include <src.opts.mk>
+
PACKAGE=lib${LIB}
LIB= md
SHLIB_MAJOR= 6
@@ -114,11 +116,15 @@ SRCS+= rmd160.S
CFLAGS+= -DRMD160_ASM
.endif
.if exists(${MACHINE_ARCH}/skein_block_asm.s)
+.if defined(XAS) || ${MK_BINUTILS_BOOTSTRAP} != "no"
AFLAGS += --strip-local-absolute
# Fully unroll all loops in the assembly optimized version
AFLAGS+= --defsym SKEIN_LOOP=0
SRCS+= skein_block_asm.s
CFLAGS+= -DSKEIN_ASM -DSKEIN_USE_ASM=1792 # list of block functions to replace with assembly: 256+512+1024 = 1792
+.else
+.warning as not available: not using optimized Skein asm
+.endif
.endif
.if exists(${MACHINE_ARCH}/sha.S) || exists(${MACHINE_ARCH}/rmd160.S) || exists(${MACHINE_ARCH}/skein_block_asm.s)
ACFLAGS+= -DELF -Wa,--noexecstack
More information about the svn-src-all
mailing list