pkgsrc-Changes-HG archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
[pkgsrc/trunk]: pkgsrc/math/eigen3 Update eigen3 to 3.3.9
details: https://anonhg.NetBSD.org/pkgsrc/rev/96ca7a373361
branches: trunk
changeset: 448891:96ca7a373361
user: prlw1 <prlw1%pkgsrc.org@localhost>
date: Wed Mar 17 17:20:00 2021 +0000
description:
Update eigen3 to 3.3.9
Many fixes including a gcc10 compilation issue. Full list at
https://eigen.tuxfamily.org/index.php?title=ChangeLog#Eigen_3.3.9
diffstat:
math/eigen3/DESCR | 19 ++++----------
math/eigen3/Makefile | 19 ++++++--------
math/eigen3/distinfo | 11 +++----
math/eigen3/patches/patch-Eigen_src_Core_arch_CUDA_Half.h | 12 ---------
4 files changed, 19 insertions(+), 42 deletions(-)
diffs (111 lines):
diff -r 25362463fea1 -r 96ca7a373361 math/eigen3/DESCR
--- a/math/eigen3/DESCR Wed Mar 17 15:33:02 2021 +0000
+++ b/math/eigen3/DESCR Wed Mar 17 17:20:00 2021 +0000
@@ -1,10 +1,7 @@
-Eigen 3 is a C++ template library for linear algebra: vectors, matrices, and
-related algorithms. It is:
-* Versatile. Eigen handles, without code duplication, and in a completely
- integrated way:
+Eigen 3 is a C++ template library for linear algebra: It is:
+* Versatile. Eigen handles and in a completely integrated way:
o both fixed-size and dynamic-size matrices and vectors.
- o both dense and sparse (the latter is still experimental) matrices and
- vectors.
+ o both dense and sparse matrices and vectors.
o both plain matrices/vectors and abstract expressions.
o both column-major (the default) and row-major matrix storage.
o both basic matrix/vector manipulation and many more advanced, specialized
@@ -12,12 +9,9 @@
or advanced array manipulation.
* Fast.
o Expression templates allow to intelligently remove temporaries and enable
- lazy evaluation, when that is appropriate -- Eigen takes care of this
- automatically and handles aliasing too in most cases.
+ lazy evaluation, when that is appropriate.
o Explicit vectorization is performed for the SSE (2 and later) and AltiVec
instruction sets, with graceful fallback to non-vectorized code.
- Expression templates allow to perform these optimizations globally for
- whole expressions.
o With fixed-size objects, dynamic memory allocation is avoided, and the
loops are unrolled when that makes sense.
o For large matrices, special attention is paid to cache-friendliness.
@@ -26,6 +20,5 @@
pseudocode. You can use complex expressions and still rely on Eigen to
produce optimized code: there is no need for you to manually decompose
expressions into small steps.
-* Compiler-friendy. Eigen has very reasonable compilation times at least with
- GCC, compared to other C++ libraries based on expression templates and heavy
- metaprogramming. Eigen is also standard C++ and supports various compilers.
+* Compiler-friendy. Eigen has good compiler support, is standard C++98 and
+ maintains very reasonable compilation times.
diff -r 25362463fea1 -r 96ca7a373361 math/eigen3/Makefile
--- a/math/eigen3/Makefile Wed Mar 17 15:33:02 2021 +0000
+++ b/math/eigen3/Makefile Wed Mar 17 17:20:00 2021 +0000
@@ -1,26 +1,23 @@
-# $NetBSD: Makefile,v 1.13 2020/04/18 22:01:56 joerg Exp $
+# $NetBSD: Makefile,v 1.14 2021/03/17 17:20:00 prlw1 Exp $
-DISTNAME= 3.3.7
-PKGNAME= eigen3-${DISTNAME}
-PKGREVISION= 2
+DISTNAME= eigen-3.3.9
+PKGNAME= ${DISTNAME:S/eigen/eigen3/}
CATEGORIES= math
-MASTER_SITES= http://bitbucket.org/eigen/eigen/get/
-DIST_SUBDIR= eigen3
+MASTER_SITES= https://gitlab.com/libeigen/eigen/-/archive/3.3.9/
EXTRACT_SUFX= .tar.bz2
MAINTAINER= pkgsrc-users%NetBSD.org@localhost
-HOMEPAGE= http://eigen.tuxfamily.org/
+HOMEPAGE= https://eigen.tuxfamily.org/
COMMENT= C++ template library for linear algebra
LICENSE= mpl-2.0
-USE_LANGUAGES+= c c++
+USE_LANGUAGES= c c++
USE_CMAKE= yes
CMAKE_ARG_PATH= ..
CONFIGURE_DIRS= _build
-WRKSRC= ${WRKDIR}/eigen-eigen-323c052e1731
-CMAKE_ARGS+= -DCMAKEPACKAGE_INSTALL_DIR=${PREFIX}/lib/cmake/eigen3
-CMAKE_ARGS+= -DPKGCONFIG_INSTALL_DIR=${PREFIX}/lib/pkgconfig
+CMAKE_ARGS+= -DCMAKEPACKAGE_INSTALL_DIR=lib/cmake/eigen3
+CMAKE_ARGS+= -DPKGCONFIG_INSTALL_DIR=lib/pkgconfig
PKGCONFIG_OVERRIDE+= eigen3.pc.in
diff -r 25362463fea1 -r 96ca7a373361 math/eigen3/distinfo
--- a/math/eigen3/distinfo Wed Mar 17 15:33:02 2021 +0000
+++ b/math/eigen3/distinfo Wed Mar 17 17:20:00 2021 +0000
@@ -1,8 +1,7 @@
-$NetBSD: distinfo,v 1.12 2020/04/18 22:01:56 joerg Exp $
+$NetBSD: distinfo,v 1.13 2021/03/17 17:20:00 prlw1 Exp $
-SHA1 (eigen3/3.3.7.tar.bz2) = a06faa6f358d5d1ca0da7cddb95da39e436dc9e8
-RMD160 (eigen3/3.3.7.tar.bz2) = 3330627708f54055a282ccfbae395f2b2f0885e9
-SHA512 (eigen3/3.3.7.tar.bz2) = c12bfd034d0a1112bf2df3f773ad98f36b2b53fbbfceac5f143ee1793322746fb8a6546d7db7da2a1000da6a535bd8cea0c4125b549afc90a6570743b02dcf3d
-Size (eigen3/3.3.7.tar.bz2) = 1665168 bytes
+SHA1 (eigen-3.3.9.tar.bz2) = 516322dc3d98f7f6d20f11050da43084f68e6c71
+RMD160 (eigen-3.3.9.tar.bz2) = f100af009a9b72532653d0e90eb81f12379f97a1
+SHA512 (eigen-3.3.9.tar.bz2) = 6f222e27480d02d90f258c94a4a4787771491fc30c73d5fb025a8089484fdeb2c65d464172f5c29d0c3096b69ff98027a18a40c04b006da670733a2c75f55b65
+Size (eigen-3.3.9.tar.bz2) = 1667231 bytes
SHA1 (patch-Eigen_src_Core_IO.h) = 5798b47107799e4b8976af88630e8f79e5d2f18e
-SHA1 (patch-Eigen_src_Core_arch_CUDA_Half.h) = d346f21aeff79937ecc40ce621ef1c5f3cf93023
diff -r 25362463fea1 -r 96ca7a373361 math/eigen3/patches/patch-Eigen_src_Core_arch_CUDA_Half.h
--- a/math/eigen3/patches/patch-Eigen_src_Core_arch_CUDA_Half.h Wed Mar 17 15:33:02 2021 +0000
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,12 +0,0 @@
-$NetBSD: patch-Eigen_src_Core_arch_CUDA_Half.h,v 1.1 2020/04/18 22:01:57 joerg Exp $
-
---- Eigen/src/Core/arch/CUDA/Half.h.orig 2020-04-18 02:57:48.859229525 +0000
-+++ Eigen/src/Core/arch/CUDA/Half.h
-@@ -42,6 +42,7 @@
- #define EIGEN_EXPLICIT_CAST(tgt_type) operator tgt_type()
- #endif
-
-+#include <ostream>
-
- namespace Eigen {
-
Home |
Main Index |
Thread Index |
Old Index