aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAdriaan de Groot <adridg@FreeBSD.org>2021-09-07 08:58:27 +0000
committerAdriaan de Groot <adridg@FreeBSD.org>2021-09-07 21:28:08 +0000
commitb41385d1aad52bf5e2e6f2bb65777e201d9e5cd7 (patch)
treec5d865a22e876b80d6a18ce0c13267dd8de1413b
parentdb3dbbe912eac5b0888752040ff4956b5cb033ef (diff)
downloadports-b41385d1aad52bf5e2e6f2bb65777e201d9e5cd7.tar.gz
ports-b41385d1aad52bf5e2e6f2bb65777e201d9e5cd7.zip
math/eigen3: massage OPTIONs
Existing OPTIONs pull in too many dependencies -- Eigen is a template library and doesn't **need** any of the libs -- and are overly-specific, like requiring a particular BLAS implementation. PR: 257321 251842 Reported by: alt2600@icloud.com
-rw-r--r--UPDATING18
-rw-r--r--math/eigen3/Makefile16
2 files changed, 28 insertions, 6 deletions
diff --git a/UPDATING b/UPDATING
index e8344ffec2bb..e02bc71348dd 100644
--- a/UPDATING
+++ b/UPDATING
@@ -5,6 +5,24 @@ they are unavoidable.
You should get into the habit of checking this file for changes each time
you update your ports collection, before attempting any port upgrades.
+20210907:
+ AFFECTS: consumers of math/eigen[23]
+ AUTHOR: adridg@FreeBSD.org
+
+ math/eigen2 has been marked deprecated. There do not seem to be any
+ consumers in FreeBSD ports.
+
+ math/eigen3 has had its options re-vamped. The default options previously
+ pulled in multiple useless library dependencies. The options also forced
+ a specific BLAS implementation. The new options depend only on the
+ default BLAS (whatever USES=blaslapack picks), but this can be turned
+ off. The previous multiple useless libraries -- which are not useless
+ when running the tests in Eigen -- are now hidden behind the default-off
+ TEST option.
+
+ Users of a carefully-tuned Eigen build should re-evaluate the options
+ available.
+
20210902:
AFFECTS: users of editors/vim
AUTHOR: adamw@FreeBSD.org
diff --git a/math/eigen3/Makefile b/math/eigen3/Makefile
index 712ff7e1f3a3..6d25013e6d27 100644
--- a/math/eigen3/Makefile
+++ b/math/eigen3/Makefile
@@ -12,17 +12,21 @@ LICENSE_FILE_LGPL21= ${WRKSRC}/COPYING.LGPL
LICENSE_FILE_MPL20= ${WRKSRC}/COPYING.MPL2
CMAKE_ARGS= -DPKGCONFIG_INSTALL_DIR:PATH="libdata/pkgconfig"
+# This is to set the C++ standard to C++11, instead of 03
+CMAKE_ON= EIGEN_TEST_CXX11
USES= cmake tar:bzip2
NO_BUILD= yes
NO_ARCH= yes
-OPTIONS_DEFINE= FULL
-OPTIONS_DEFAULT=FULL
+OPTIONS_DEFINE= BLAS TEST
+OPTIONS_DEFAULT=BLAS
-FULL_DESC= Add the support for math dependencies
-FULL_CMAKE_ON= -DBLAS_DIR:PATH="${LOCALBASE}"
-FULL_USES= blaslapack:openblas pkgconfig
-FULL_LIB_DEPENDS= libcholmod.so:math/suitesparse-cholmod \
+BLAS_DESC= Adds math dependencies
+BLAS_CMAKE_ARGS=-DBLAS_DIR:PATH="${LOCALBASE}"
+BLAS_USES= blaslapack pkgconfig
+
+TEST_CMAKE_ON= EIGEN_TEST_CUDA EIGEN_TEST_CUDA_CLANG
+TEST_LIB_DEPENDS= libcholmod.so:math/suitesparse-cholmod \
libumfpack.so:math/suitesparse-umfpack \
libsuperlu.so:math/superlu \
libadolc.so:math/adol-c \