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
This commit is contained in:
parent
32d2d68734
commit
4d41895019
4 changed files with 19 additions and 42 deletions
|
@ -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 @@ related algorithms. It is:
|
|||
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 @@ related algorithms. It is:
|
|||
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.
|
||||
|
|
|
@ -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
|
||||
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
|
||||
|
||||
|
|
|
@ -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
|
||||
|
|
|
@ -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 {
|
||||
|
Loading…
Reference in a new issue