Update to 3.2
This commit is contained in:
parent
98e7e808c9
commit
25b49b2821
1
.gitignore
vendored
1
.gitignore
vendored
@ -5,3 +5,4 @@
|
|||||||
/eigen-3.0.6.tar.bz2
|
/eigen-3.0.6.tar.bz2
|
||||||
/eigen-3.1.2.tar.bz2
|
/eigen-3.1.2.tar.bz2
|
||||||
/eigen-3.1.3.tar.bz2
|
/eigen-3.1.3.tar.bz2
|
||||||
|
/eigen-3.2.tar.bz2
|
||||||
|
@ -1,41 +0,0 @@
|
|||||||
# HG changeset patch
|
|
||||||
# User Gael Guennebaud <g.gael@free.fr>
|
|
||||||
# Date 1372279754 -7200
|
|
||||||
# Node ID 21273ebd6b4d9137d29663c0ece1b683db7d3cc1
|
|
||||||
# Parent a72dae9e2650eac6f9b5be1c4e506560f8e2eb17
|
|
||||||
Fix bug 554: include unistd.h before checking the presence of posix_memalign.
|
|
||||||
|
|
||||||
diff --git a/Eigen/src/Core/util/Memory.h b/Eigen/src/Core/util/Memory.h
|
|
||||||
--- a/Eigen/src/Core/util/Memory.h
|
|
||||||
+++ b/Eigen/src/Core/util/Memory.h
|
|
||||||
@@ -53,9 +53,16 @@
|
|
||||||
#endif
|
|
||||||
|
|
||||||
-#if ((defined __QNXNTO__) || (defined _GNU_SOURCE) || ((defined _XOPEN_SOURCE) && (_XOPEN_SOURCE >= 600))) \
|
|
||||||
- && (defined _POSIX_ADVISORY_INFO) && (_POSIX_ADVISORY_INFO > 0)
|
|
||||||
- #define EIGEN_HAS_POSIX_MEMALIGN 1
|
|
||||||
-#else
|
|
||||||
+// See bug 554 (http://eigen.tuxfamily.org/bz/show_bug.cgi?id=554)
|
|
||||||
+// It seems to be unsafe to check _POSIX_ADVISORY_INFO without including unistd.h first.
|
|
||||||
+// Currently, let's include it only on unix systems:
|
|
||||||
+#if defined(__unix__) || defined(__unix)
|
|
||||||
+ #include <unistd.h>
|
|
||||||
+ #if ((defined __QNXNTO__) || (defined _GNU_SOURCE) || ((defined _XOPEN_SOURCE) && (_XOPEN_SOURCE >= 600))) && (defined _POSIX_ADVISORY_INFO) && (_POSIX_ADVISORY_INFO > 0)
|
|
||||||
+ #define EIGEN_HAS_POSIX_MEMALIGN 1
|
|
||||||
+ #endif
|
|
||||||
+#endif
|
|
||||||
+
|
|
||||||
+#ifndef EIGEN_HAS_POSIX_MEMALIGN
|
|
||||||
#define EIGEN_HAS_POSIX_MEMALIGN 0
|
|
||||||
#endif
|
|
||||||
|
|
||||||
@@ -209,7 +216,7 @@
|
|
||||||
if(posix_memalign(&result, 16, size)) result = 0;
|
|
||||||
#elif EIGEN_HAS_MM_MALLOC
|
|
||||||
result = _mm_malloc(size, 16);
|
|
||||||
-#elif defined(_MSC_VER) && (!defined(_WIN32_WCE))
|
|
||||||
+ #elif defined(_MSC_VER) && (!defined(_WIN32_WCE))
|
|
||||||
result = _aligned_malloc(size, 16);
|
|
||||||
#else
|
|
||||||
result = handmade_aligned_malloc(size);
|
|
||||||
|
|
16
eigen3.spec
16
eigen3.spec
@ -1,6 +1,6 @@
|
|||||||
Name: eigen3
|
Name: eigen3
|
||||||
Version: 3.1.3
|
Version: 3.2
|
||||||
Release: 2%{?dist}
|
Release: 1%{?dist}
|
||||||
Summary: A lightweight C++ template library for vector and matrix math
|
Summary: A lightweight C++ template library for vector and matrix math
|
||||||
|
|
||||||
Group: Development/Libraries
|
Group: Development/Libraries
|
||||||
@ -9,11 +9,6 @@ URL: http://eigen.tuxfamily.org/index.php?title=Main_Page
|
|||||||
# Source file is at: http://bitbucket.org/eigen/eigen/get/3.1.3.tar.bz2
|
# Source file is at: http://bitbucket.org/eigen/eigen/get/3.1.3.tar.bz2
|
||||||
# Renamed source file so it's not just a version number
|
# Renamed source file so it's not just a version number
|
||||||
Source0: eigen-%{version}.tar.bz2
|
Source0: eigen-%{version}.tar.bz2
|
||||||
Patch0: eigen3_unused-typedefs.patch
|
|
||||||
# Fix for Upstream bug 554: http://eigen.tuxfamily.org/bz/show_bug.cgi?id=554
|
|
||||||
# Derived from hg changeset https://bitbucket.org/eigen/eigen/commits/21273ebd6b4d/
|
|
||||||
# Should fix rhbz 978971
|
|
||||||
Patch1: eigen3-3.1.3-memalign.patch
|
|
||||||
BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
|
BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
|
||||||
BuildArch: noarch
|
BuildArch: noarch
|
||||||
|
|
||||||
@ -45,9 +40,7 @@ Provides: %{name}-static = %{version}-%{release}
|
|||||||
%{summary}
|
%{summary}
|
||||||
|
|
||||||
%prep
|
%prep
|
||||||
%setup -q -n eigen-eigen-2249f9c22fe8
|
%setup -q -n eigen-eigen-ffa86ffb5570
|
||||||
%patch0 -p1
|
|
||||||
%patch1 -p1
|
|
||||||
|
|
||||||
%build
|
%build
|
||||||
mkdir %{_target_platform}
|
mkdir %{_target_platform}
|
||||||
@ -75,6 +68,9 @@ rm -rf %{buildroot}
|
|||||||
%{_datadir}/pkgconfig/*
|
%{_datadir}/pkgconfig/*
|
||||||
|
|
||||||
%changelog
|
%changelog
|
||||||
|
* Wed Jul 24 2013 Sandro Mani <manisandro@gmail.com> - 3.2-1
|
||||||
|
- Update to release 3.2
|
||||||
|
|
||||||
* Sat Jun 29 2013 Rich Mattes <richmattes@gmail.com> - 3.1.3-2
|
* Sat Jun 29 2013 Rich Mattes <richmattes@gmail.com> - 3.1.3-2
|
||||||
- Add upstream patch to fix malloc/free bugs (rhbz#978971)
|
- Add upstream patch to fix malloc/free bugs (rhbz#978971)
|
||||||
|
|
||||||
|
@ -1,60 +0,0 @@
|
|||||||
diff -rupN eigen-eigen-2249f9c22fe8/Eigen/src/Core/products/SelfadjointMatrixVector.h eigen-eigen-2249f9c22fe8-new/Eigen/src/Core/products/SelfadjointMatrixVector.h
|
|
||||||
--- eigen-eigen-2249f9c22fe8/Eigen/src/Core/products/SelfadjointMatrixVector.h 2013-04-16 09:38:40.000000000 +0200
|
|
||||||
+++ eigen-eigen-2249f9c22fe8-new/Eigen/src/Core/products/SelfadjointMatrixVector.h 2013-04-19 14:31:27.620526893 +0200
|
|
||||||
@@ -35,7 +35,7 @@ static EIGEN_DONT_INLINE void run(
|
|
||||||
Scalar alpha)
|
|
||||||
{
|
|
||||||
typedef typename packet_traits<Scalar>::type Packet;
|
|
||||||
- typedef typename NumTraits<Scalar>::Real RealScalar;
|
|
||||||
+ // typedef typename NumTraits<Scalar>::Real RealScalar;
|
|
||||||
const Index PacketSize = sizeof(Packet)/sizeof(Scalar);
|
|
||||||
|
|
||||||
enum {
|
|
||||||
diff -rupN eigen-eigen-2249f9c22fe8/Eigen/src/Core/util/Memory.h eigen-eigen-2249f9c22fe8-new/Eigen/src/Core/util/Memory.h
|
|
||||||
--- eigen-eigen-2249f9c22fe8/Eigen/src/Core/util/Memory.h 2013-04-16 09:38:40.000000000 +0200
|
|
||||||
+++ eigen-eigen-2249f9c22fe8-new/Eigen/src/Core/util/Memory.h 2013-04-19 14:32:07.188032232 +0200
|
|
||||||
@@ -451,7 +451,7 @@ template<typename T, bool Align> inline
|
|
||||||
template<typename Scalar, typename Index>
|
|
||||||
static inline Index first_aligned(const Scalar* array, Index size)
|
|
||||||
{
|
|
||||||
- typedef typename packet_traits<Scalar>::type Packet;
|
|
||||||
+ // typedef typename packet_traits<Scalar>::type Packet;
|
|
||||||
enum { PacketSize = packet_traits<Scalar>::size,
|
|
||||||
PacketAlignedMask = PacketSize-1
|
|
||||||
};
|
|
||||||
diff -rupN eigen-eigen-2249f9c22fe8/Eigen/src/Eigenvalues/ComplexSchur.h eigen-eigen-2249f9c22fe8-new/Eigen/src/Eigenvalues/ComplexSchur.h
|
|
||||||
--- eigen-eigen-2249f9c22fe8/Eigen/src/Eigenvalues/ComplexSchur.h 2013-04-16 09:38:40.000000000 +0200
|
|
||||||
+++ eigen-eigen-2249f9c22fe8-new/Eigen/src/Eigenvalues/ComplexSchur.h 2013-04-19 14:33:01.652351334 +0200
|
|
||||||
@@ -309,7 +309,7 @@ struct complex_schur_reduce_to_hessenber
|
|
||||||
static void run(ComplexSchur<MatrixType>& _this, const MatrixType& matrix, bool computeU)
|
|
||||||
{
|
|
||||||
typedef typename ComplexSchur<MatrixType>::ComplexScalar ComplexScalar;
|
|
||||||
- typedef typename ComplexSchur<MatrixType>::ComplexMatrixType ComplexMatrixType;
|
|
||||||
+ // typedef typename ComplexSchur<MatrixType>::ComplexMatrixType ComplexMatrixType;
|
|
||||||
|
|
||||||
// Note: m_hess is over RealScalar; m_matT and m_matU is over ComplexScalar
|
|
||||||
_this.m_hess.compute(matrix);
|
|
||||||
diff -rupN eigen-eigen-2249f9c22fe8/Eigen/src/Eigenvalues/Tridiagonalization.h eigen-eigen-2249f9c22fe8-new/Eigen/src/Eigenvalues/Tridiagonalization.h
|
|
||||||
--- eigen-eigen-2249f9c22fe8/Eigen/src/Eigenvalues/Tridiagonalization.h 2013-04-16 09:38:40.000000000 +0200
|
|
||||||
+++ eigen-eigen-2249f9c22fe8-new/Eigen/src/Eigenvalues/Tridiagonalization.h 2013-04-19 14:33:30.100995677 +0200
|
|
||||||
@@ -425,7 +425,7 @@ struct tridiagonalization_inplace_select
|
|
||||||
template<typename MatrixType, typename DiagonalType, typename SubDiagonalType>
|
|
||||||
void tridiagonalization_inplace(MatrixType& mat, DiagonalType& diag, SubDiagonalType& subdiag, bool extractQ)
|
|
||||||
{
|
|
||||||
- typedef typename MatrixType::Index Index;
|
|
||||||
+ // typedef typename MatrixType::Index Index;
|
|
||||||
//Index n = mat.rows();
|
|
||||||
eigen_assert(mat.cols()==mat.rows() && diag.size()==mat.rows() && subdiag.size()==mat.rows()-1);
|
|
||||||
tridiagonalization_inplace_selector<MatrixType>::run(mat, diag, subdiag, extractQ);
|
|
||||||
diff -rupN eigen-eigen-2249f9c22fe8/Eigen/src/QR/HouseholderQR.h eigen-eigen-2249f9c22fe8-new/Eigen/src/QR/HouseholderQR.h
|
|
||||||
--- eigen-eigen-2249f9c22fe8/Eigen/src/QR/HouseholderQR.h 2013-04-16 09:38:40.000000000 +0200
|
|
||||||
+++ eigen-eigen-2249f9c22fe8-new/Eigen/src/QR/HouseholderQR.h 2013-04-19 14:33:56.147670049 +0200
|
|
||||||
@@ -232,7 +232,7 @@ void householder_qr_inplace_blocked(Matr
|
|
||||||
{
|
|
||||||
typedef typename MatrixQR::Index Index;
|
|
||||||
typedef typename MatrixQR::Scalar Scalar;
|
|
||||||
- typedef typename MatrixQR::RealScalar RealScalar;
|
|
||||||
+ // typedef typename MatrixQR::RealScalar RealScalar;
|
|
||||||
typedef Block<MatrixQR,Dynamic,Dynamic> BlockType;
|
|
||||||
|
|
||||||
Index rows = mat.rows();
|
|
Loading…
Reference in New Issue
Block a user