Initial import of eigen3: A lightweight C++ template library for

vector and matrix math
This commit is contained in:
Rich Mattes 2011-07-09 19:33:13 -04:00
parent 1d3d148862
commit 0a5c254e32
4 changed files with 102 additions and 0 deletions

1
.gitignore vendored
View File

@ -0,0 +1 @@
/eigen-3.0.0.tar.bz2

12
eigen-3.0.0.ptrdiff.patch Normal file
View File

@ -0,0 +1,12 @@
diff -up ./Eigen/src/StlSupport/details.h.ptrdiff ./Eigen/src/StlSupport/details.h
--- ./Eigen/src/StlSupport/details.h.ptrdiff 2011-04-17 23:07:20.116801391 -0400
+++ ./Eigen/src/StlSupport/details.h 2011-04-17 23:07:49.699857645 -0400
@@ -30,6 +30,8 @@
#define EIGEN_ALIGNED_ALLOCATOR Eigen::aligned_allocator
#endif
+#include <cstddef> // for ptrdiff_t
+
namespace Eigen {
// This one is needed to prevent reimplementing the whole std::vector.

88
eigen3.spec Normal file
View File

@ -0,0 +1,88 @@
Name: eigen3
Version: 3.0.0
Release: 2%{?dist}
Summary: A lightweight C++ template library for vector and matrix math
Group: Development/Libraries
License: LGPLv3+ or GPLv2+
URL: http://eigen.tuxfamily.org/index.php?title=Main_Page
# Source file is at: http://bitbucket.org/eigen/eigen/get/3.0.0.tar.bz2
# Renamed source file so it's not just a version number
Source0: eigen-%{version}.tar.bz2
BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
BuildArch: noarch
# Fixes build by adding the cstdef to a source file.
# Not yet submitted upstream
Patch0: eigen-3.0.0.ptrdiff.patch
BuildRequires: atlas-devel
BuildRequires: fftw-devel
BuildRequires: glew-devel
BuildRequires: gmp-devel
BuildRequires: gsl-devel
BuildRequires: mpfr-devel
BuildRequires: sparsehash-devel
BuildRequires: suitesparse-devel
BuildRequires: cmake
BuildRequires: doxygen
BuildRequires: graphviz
BuildRequires: tex(latex)
%description
%package devel
Summary: A lightweight C++ template library for vector and matrix math
Group: Development/Libraries
# -devel subpkg only atm, compat with other distros
Provides: %{name} = %{version}-%{release}
# not *strictly* a -static pkg, but the results are the same
Provides: %{name}-static = %{version}-%{release}
%description devel
%{summary}
%prep
%setup -q -n eigen-eigen-65ee2328342f
%patch0 -p0
%build
mkdir %{_target_platform}
pushd %{_target_platform}
%cmake .. -DBLAS_LIBRARIES="cblas" -DBLAS_LIBRARIES_DIR=%{_libdir}/atlas
popd
make -C %{_target_platform} %{?_smp_mflags}
make doc -C %{_target_platform} %{?_smp_mflags}
rm -f %{_target_platform}/doc/html/installdox
rm -f %{_target_platform}/doc/html/unsupported/installdox
%install
rm -rf %{buildroot}
make install DESTDIR=%{buildroot} -C %{_target_platform}
%clean
rm -rf %{buildroot}
%files devel
%defattr(-,root,root,-)
%doc COPYING.GPL COPYING.LGPL
%doc %{_target_platform}/doc/html
%{_includedir}/eigen3
%{_datadir}/pkgconfig/*
%changelog
* Sun Apr 17 2011 Rich Mattes <richmattes@gmail.com> - 3.0.0-2
- Patched sources to fix build failure
- Removed fixes made upstream
- Added project name to source tarball filename
* Sat Mar 26 2011 Rich Mattes <richmattes@gmail.com> - 3.0.0-1
- Update to release 3.0.0
* Tue Jan 25 2011 Rich Mattes <richmattes@gmail.com> - 3.0-0.2.beta2
- Change blas-devel buildrequirement to atlas-devel
- Don't make the built-in experimental blas library
* Mon Jan 24 2011 Rich Mattes <richmattes@gmail.com> - 3.0-0.1.beta2
- Initial package

View File

@ -0,0 +1 @@
046baf7072f008653361f8321560a26f eigen-3.0.0.tar.bz2