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