diff --git a/biology/bolt-lmm/Makefile b/biology/bolt-lmm/Makefile index 7302e3ef897b..a1f1d09f21eb 100644 --- a/biology/bolt-lmm/Makefile +++ b/biology/bolt-lmm/Makefile @@ -1,55 +1,52 @@ PORTNAME= bolt-lmm -DISTVERSION= 2.3.4 -PORTREVISION= 4 +DISTVERSION= 2.3.6 CATEGORIES= biology MASTER_SITES= https://data.broadinstitute.org/alkesgroup/BOLT-LMM/downloads/ DISTNAME= BOLT-LMM_v${PORTVERSION} MAINTAINER= jwb@FreeBSD.org COMMENT= Mixed model association testing and variance component analysis LICENSE= GPLv3 LICENSE_FILE= ${WRKSRC}/license.txt LIB_DEPENDS= libnlopt.so:math/nlopt \ libopenblas.so:math/openblas \ libboost_program_options.so:devel/boost-libs -# gcc-c++11-lib needed to link with boost. Also requires compiler:openmp, but -# both merely add a GCC requirement. -USES= compiler:gcc-c++11-lib gmake +USES= gmake BUILD_WRKSRC= ${WRKDIR}/${DISTNAME}/src INSTALL_WRKSRC= ${WRKDIR}/${DISTNAME}/src CXXFLAGS_i386= -DUSE_SSE -msse -msse2 CXXFLAGS_amd64= -DUSE_SSE CXXFLAGS_powerpc64= -DNO_WARN_X86_INTRINSICS -mvsx CXXFLAGS_powerpc64le= -DNO_WARN_X86_INTRINSICS -mvsx MAKE_ARGS= BOOST_INSTALL_DIR=${LOCALBASE} \ NLOPT_INSTALL_DIR=${LOCALBASE} \ ZLIB_STATIC_DIR=/usr/lib \ LIBSTDCXX_STATIC_DIR=/usr/lib \ GLIBC_STATIC_DIR=/usr/lib \ SSEFLAGS="" \ MEMCPY="" \ - LLAPACK="-lopenblas -lgfortran" + LLAPACK="-lopenblas" CONFLICTS_INSTALL= rubygem-bolt # bin/bolt PORTEXAMPLES= * OPTIONS_DEFINE= EXAMPLES pre-configure: @${RM} ${WRKSRC}/example/*.orig ${WRKSRC}/bolt @${REINPLACE_CMD} -e 's|tables/|${DATADIR}/tables/|g' \ ${BUILD_WRKSRC}/BoltParams.cpp @${REINPLACE_CMD} -e 's|../tables/|${DATADIR}/tables/|g' \ ${WRKSRC}/example/run_example.sh do-install: ${INSTALL_PROGRAM} ${INSTALL_WRKSRC}/bolt ${STAGEDIR}${PREFIX}/bin (cd ${WRKSRC}/example && ${COPYTREE_SHARE} . ${STAGEDIR}${EXAMPLESDIR}) (cd ${WRKSRC} && ${COPYTREE_SHARE} tables ${STAGEDIR}${DATADIR}) .include diff --git a/biology/bolt-lmm/distinfo b/biology/bolt-lmm/distinfo index 618a36d60050..4711694315b8 100644 --- a/biology/bolt-lmm/distinfo +++ b/biology/bolt-lmm/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1565528176 -SHA256 (BOLT-LMM_v2.3.4.tar.gz) = 2477faff5028ff8fee5d8f4e6b0cab6d0752b268fd508fe64530a66807d9b0c0 -SIZE (BOLT-LMM_v2.3.4.tar.gz) = 335128004 +TIMESTAMP = 1647782880 +SHA256 (BOLT-LMM_v2.3.6.tar.gz) = bc82a5166b3d2d480bcda1f4455c29e1018db733706d28c35d8bf8de7e1e85d5 +SIZE (BOLT-LMM_v2.3.6.tar.gz) = 335131602 diff --git a/biology/bolt-lmm/files/patch-src_MemoryUtils.cpp b/biology/bolt-lmm/files/patch-src_MemoryUtils.cpp new file mode 100644 index 000000000000..e6a2f20061f9 --- /dev/null +++ b/biology/bolt-lmm/files/patch-src_MemoryUtils.cpp @@ -0,0 +1,12 @@ +--- src/MemoryUtils.cpp.orig 2022-03-20 14:01:47 UTC ++++ src/MemoryUtils.cpp +@@ -26,7 +26,8 @@ void *ALIGNED_MALLOC(uint64 size) { + #ifdef USE_MKL_MALLOC + void *p = mkl_malloc(size, MEM_ALIGNMENT); + #else +- void *p = _mm_malloc(size, MEM_ALIGNMENT); ++ //void *p = _mm_malloc(size, MEM_ALIGNMENT); ++ void *p = aligned_alloc(MEM_ALIGNMENT, size); + #endif + // TODO: change to assert() or dispense with altogether and change ALIGNED_MALLOC to macro? + if (p == NULL) { diff --git a/biology/bolt-lmm/files/patch-src_MemoryUtils.hpp b/biology/bolt-lmm/files/patch-src_MemoryUtils.hpp new file mode 100644 index 000000000000..a9ccbd3d78e7 --- /dev/null +++ b/biology/bolt-lmm/files/patch-src_MemoryUtils.hpp @@ -0,0 +1,12 @@ +--- src/MemoryUtils.hpp.orig 2022-03-20 13:40:42 UTC ++++ src/MemoryUtils.hpp +@@ -31,8 +31,7 @@ void *ALIGNED_MALLOC(uint64 size); + #include + #define ALIGNED_FREE mkl_free + #else +-#include +-#define ALIGNED_FREE _mm_free ++#define ALIGNED_FREE free + #endif + + #define ALIGNED_MALLOC_DOUBLES(numDoubles) (double *) ALIGNED_MALLOC((numDoubles)*sizeof(double))