aboutsummaryrefslogtreecommitdiffstats
path: root/sysutils
diff options
context:
space:
mode:
authorbapt <bapt@FreeBSD.org>2015-06-02 06:01:52 +0800
committerbapt <bapt@FreeBSD.org>2015-06-02 06:01:52 +0800
commitc1ccec06bd7a70c1933f4502295242ec7d3437c7 (patch)
tree934fcbe6f7078212926fbdfbd7390be0cb11600e /sysutils
parent52a7c4eee6335444bc1baf0e62125acb95332b1c (diff)
downloadfreebsd-ports-gnome-c1ccec06bd7a70c1933f4502295242ec7d3437c7.tar.gz
freebsd-ports-gnome-c1ccec06bd7a70c1933f4502295242ec7d3437c7.tar.zst
freebsd-ports-gnome-c1ccec06bd7a70c1933f4502295242ec7d3437c7.zip
Improve sysutils/b2sum:
Make SSE2+ instructions optinal (default ON for amd64, can be used on some i386) to alow buiding on any platform Add OpenMP option Patch to not crash when compiled with Clang Pass maintainership to submitter Bump portrevision PR: 200561 Submitted by: matthew@reztek.cz
Diffstat (limited to 'sysutils')
-rw-r--r--sysutils/b2sum/Makefile41
-rw-r--r--sysutils/b2sum/files/patch-blake2.h22
-rw-r--r--sysutils/b2sum/files/use_ref.patch13
3 files changed, 68 insertions, 8 deletions
diff --git a/sysutils/b2sum/Makefile b/sysutils/b2sum/Makefile
index 96365f4b03de..1bd3768f3cd5 100644
--- a/sysutils/b2sum/Makefile
+++ b/sysutils/b2sum/Makefile
@@ -1,25 +1,50 @@
# $FreeBSD$
PORTNAME= b2sum
-PORTVERSION= 0.0.d${DISTVERSION}
-DISTVERSION= 20150529
-DISTNAME= blake2_code_${DISTVERSION}${EXTRACT_SUFFX}
+PORTVERSION= 0.0.d${B2VERSION}
+PORTREVISION= 1
CATEGORIES= sysutils security
MASTER_SITES= http://blake2.net/
+DISTNAME= blake2_code_${B2VERSION}${EXTRACT_SUFFX}
-MAINTAINER= bapt@FreeBSD.org
-COMMENT= fast secure hashing
+MAINTAINER= matthew@reztek.cz
+COMMENT= Fast secure hashing
-USES= zip
+LICENSE= CC0-1.0
+LICENSE_FILE= ${WRKSRC}/../COPYING
-ONLY_FOR_ARCH= amd64
+B2VERSION= 20150529
-CFLAGS+= -I../sse
+USES= zip
+USE_CSTD= c99
WRKSRC_SUBDIR= b2sum
MAKEFILE= makefile
MAKE_ARGS= CC="${CC}" CFLAGS="${CFLAGS}"
PLIST_FILES= bin/b2sum
+OPTIONS_DEFINE= OPENMP OPTIMIZED_CFLAGS SSE
+OPTIONS_DEFAULT_amd64=SSE
+SSE_DESC= Use SSE2, SSSE3, SSE4.1, AVX or XOP instructions
+
+OPENMP_USES+= compiler:openmp
+OPENMP_CFLAGS+= -fopenmp
+
+.include <bsd.port.options.mk>
+
+.if ${PORT_OPTIONS:MOPTIMIZED_CFLAGS}
+CFLAGS+= -O3
+.if !${CFLAGS:M-march=*}
+CFLAGS+= -march=native
+.endif
+.endif
+
+.if (${PORT_OPTIONS:MSSE} && (${ARCH} == "i386" || ${ARCH} == "amd64"))
+CFLAGS+= -I../sse
+.else
+CFLAGS+= -I../ref
+EXTRA_PATCHES= ${PATCHDIR}/use_ref.patch
+.endif
+
do-install:
${INSTALL_PROGRAM} ${WRKSRC}/${PORTNAME} ${STAGEDIR}${PREFIX}/bin
diff --git a/sysutils/b2sum/files/patch-blake2.h b/sysutils/b2sum/files/patch-blake2.h
new file mode 100644
index 000000000000..dc74bfd9c395
--- /dev/null
+++ b/sysutils/b2sum/files/patch-blake2.h
@@ -0,0 +1,22 @@
+--- ../ref/blake2.h.orig 2015-06-01 01:10:19 UTC
++++ ../ref/blake2.h
+@@ -19,6 +19,8 @@
+
+ #if defined(_MSC_VER)
+ #define ALIGN(x) __declspec(align(x))
++#elif defined(__clang__)
++#define ALIGN(x) /* unaligned access in b2*p at -O >0 */
+ #else
+ #define ALIGN(x) __attribute__((aligned(x)))
+ #endif
+--- ../sse/blake2.h.orig 2015-05-29 08:02:54 UTC
++++ ../sse/blake2.h
+@@ -19,6 +19,8 @@
+
+ #if defined(_MSC_VER)
+ #define ALIGN(x) __declspec(align(x))
++#elif defined(__clang__)
++#define ALIGN(x) /* unaligned access in b2*p at -O >0 */
+ #else
+ #define ALIGN(x) __attribute__ ((__aligned__(x)))
+ #endif
diff --git a/sysutils/b2sum/files/use_ref.patch b/sysutils/b2sum/files/use_ref.patch
new file mode 100644
index 000000000000..7c3b032caa99
--- /dev/null
+++ b/sysutils/b2sum/files/use_ref.patch
@@ -0,0 +1,13 @@
+--- makefile.orig 2015-05-31 23:30:20 UTC
++++ makefile
+@@ -1,8 +1,8 @@
+ CC=gcc
+ CFLAGS=-std=c99 -O3 -march=native -I../sse -static -fopenmp
+ LIBS=
+-#FILES=blake2sum.c ../ref/blake2b-ref.c ../ref/blake2s-ref.c ../ref/blake2bp-ref.c ../ref/blake2sp-ref.c
+-FILES=b2sum.c ../sse/blake2b.c ../sse/blake2s.c ../sse/blake2bp.c ../sse/blake2sp.c
++FILES=b2sum.c ../ref/blake2b-ref.c ../ref/blake2s-ref.c ../ref/blake2bp-ref.c ../ref/blake2sp-ref.c
++#FILES=b2sum.c ../sse/blake2b.c ../sse/blake2s.c ../sse/blake2bp.c ../sse/blake2sp.c
+ all: $(FILES)
+ $(CC) $(FILES) $(CFLAGS) $(LIBS) -o b2sum
+