svn commit: r388393 - in head/math/librsb: . files
Stephen Montgomery-Smith
stephen at FreeBSD.org
Tue Jun 2 23:05:36 UTC 2015
Author: stephen
Date: Tue Jun 2 23:05:35 2015
New Revision: 388393
URL: https://svnweb.freebsd.org/changeset/ports/388393
Log:
- Make user of port understand information about memory heirarchy needs to
be provided.
- Bump portrevision.
Added:
head/math/librsb/files/memhinfo.txt (contents, props changed)
head/math/librsb/files/patch-rsb__init.c (contents, props changed)
Modified:
head/math/librsb/Makefile
Modified: head/math/librsb/Makefile
==============================================================================
--- head/math/librsb/Makefile Tue Jun 2 22:15:48 2015 (r388392)
+++ head/math/librsb/Makefile Tue Jun 2 23:05:35 2015 (r388393)
@@ -3,6 +3,7 @@
PORTNAME= librsb
PORTVERSION= 1.2.0r1
+PORTREVISION= 1
CATEGORIES= math
MASTER_SITES= SF/librsb
DISTNAME= ${PORTNAME}-${PORTVERSION:S/r/-rc/}
@@ -17,12 +18,24 @@ BUILD_DEPENDS= gsed:${PORTSDIR}/textproc
USES= fortran compiler:openmp gmake shebangfix
GNU_CONFIGURE= yes
-CFLAGS= -fPIC
+CFLAGS+= -fPIC
CONFIGURE_ARGS= --enable-fortran-module-install \
- --enable-matrix-types="double, double complex"
+ --enable-matrix-types="double, double complex" \
+ --with-memhinfo="${RSB_USER_SET_MEM_HIERARCHY_INFO}"
SHEBANG_FILES= scripts/*.sh
+MANUAL_PACKAGE_BUILD= Optimizes for the local machine
+
+pre-configure:
+ @if [ -z "${RSB_USER_SET_MEM_HIERARCHY_INFO}" ]; then \
+ ${CAT} ${FILESDIR}/memhinfo.txt; \
+ exit 1; \
+ fi
+
post-patch:
@${REINPLACE_CMD} -E s/sed/gsed/g ${WRKSRC}/scripts/*.sh
+check regression-test test: build
+ cd ${WRKSRC} && ${SETENV} ${MAKE_ENV} ${GMAKE} qtests
+
.include <bsd.port.mk>
Added: head/math/librsb/files/memhinfo.txt
==============================================================================
--- /dev/null 00:00:00 1970 (empty, because file is newly added)
+++ head/math/librsb/files/memhinfo.txt Tue Jun 2 23:05:35 2015 (r388393)
@@ -0,0 +1,11 @@
+
+This port needs information about the memory cache system before building.
+You can set this in the variable RSB_USER_SET_MEM_HIERARCHY_INFO, for example
+make RSB_USER_SET_MEM_HIERARCHY_INFO="L2:12/64/3M,L1:64/8/32K"
+Finding these values is tricky, but the following steps will help:
+ 1. read the README file in the source code
+ 2. build the port misc/cpuid
+ 3. run the program cpuid
+You are on your own in figuring out how to convert the information from the
+program cpuid to the value of RSB_USER_SET_MEM_HIERARCHY_INFO.
+
Added: head/math/librsb/files/patch-rsb__init.c
==============================================================================
--- /dev/null 00:00:00 1970 (empty, because file is newly added)
+++ head/math/librsb/files/patch-rsb__init.c Tue Jun 2 23:05:35 2015 (r388393)
@@ -0,0 +1,21 @@
+--- rsb_init.c.orig 2015-05-01 21:04:42 UTC
++++ rsb_init.c
+@@ -50,13 +50,15 @@ const rsb_char_t * rsb__init_get_mem_hie
+ if((usmhi = getenv("RSB_USER_SET_MEM_HIERARCHY_INFO"))!=NULL && *usmhi)
+ goto done;
+ #endif /* RSB_HAVE_GETENV */
++#ifdef RSB_DETECTED_MEM_HIERARCHY_INFO
++ if(verbose) RSB_INFO("Checking hardcoded RSB_DETECTED_MEM_HIERARCHY_INFO symbol\n");
++ usmhi = RSB_DETECTED_MEM_HIERARCHY_INFO;
++ if (*usmhi)
++ goto done;
+ #ifdef RSB_USER_SET_MEM_HIERARCHY_INFO
+ if(verbose) RSB_INFO("Checking hardcoded RSB_USER_SET_MEM_HIERARCHY_INFO symbol\n");
+ usmhi = RSB_USER_SET_MEM_HIERARCHY_INFO;
+ #endif /* RSB_USER_SET_MEM_HIERARCHY_INFO */
+-#ifdef RSB_DETECTED_MEM_HIERARCHY_INFO
+- if(verbose) RSB_INFO("Checking hardcoded RSB_DETECTED_MEM_HIERARCHY_INFO symbol\n");
+- usmhi = RSB_DETECTED_MEM_HIERARCHY_INFO;
+ #endif /* RSB_USER_SET_MEM_HIERARCHY_INFO */
+ done:
+ if(verbose) RSB_INFO("Available memory hierarchy info string: \"%s\"\n",usmhi);
More information about the svn-ports-all
mailing list