diff options
| -rw-r--r-- | dev-cpp/eigen/Manifest | 1 | ||||
| -rw-r--r-- | dev-cpp/eigen/eigen-3.2.0.ebuild | 70 | ||||
| -rw-r--r-- | dev-cpp/eigen/files/eigen-3.0.0-gcc46.patch | 16 |
3 files changed, 87 insertions, 0 deletions
diff --git a/dev-cpp/eigen/Manifest b/dev-cpp/eigen/Manifest new file mode 100644 index 00000000000..e686eaf732c --- /dev/null +++ b/dev-cpp/eigen/Manifest @@ -0,0 +1 @@ +DIST eigen-3.2.0.tar.bz2 1135851 SHA256 011f78960d939227f9276173d0c4cc0053bb9e0a7356539a9a6c7c89d984fab6 SHA512 ab30077c845b09aa3f652e4695f1e256c7c7ff1c0f850e38cf9867ab9659ec6008fa646c2796796ca718b996764e7e3d2811a2c6a24abacbe50a2513fc670ca5 WHIRLPOOL f1cbbc7405173ab1904a6f8272a0b7a558ec37060ce60f51b38e89f762e610844989dc99a3ba09cf34a0e94ca048ad56856adfbe69a4a54fe8c2abfd3d9ef24c diff --git a/dev-cpp/eigen/eigen-3.2.0.ebuild b/dev-cpp/eigen/eigen-3.2.0.ebuild new file mode 100644 index 00000000000..654090564d2 --- /dev/null +++ b/dev-cpp/eigen/eigen-3.2.0.ebuild @@ -0,0 +1,70 @@ +# Copyright 1999-2013 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: /var/cvsroot/gentoo-x86/dev-cpp/eigen/eigen-3.1.3.ebuild,v 1.1 2013/04/19 07:20:07 patrick Exp $ + +EAPI=5 + +inherit cmake-utils + +DESCRIPTION="C++ template library for linear algebra: vectors, matrices, and related algorithms" +HOMEPAGE="http://eigen.tuxfamily.org/" +SRC_URI="http://bitbucket.org/eigen/eigen/get/${PV}.tar.bz2 -> ${P}.tar.bz2" + +LICENSE="LGPL-2 GPL-3" +KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~ppc ~ppc64 ~sparc ~x86 ~amd64-linux ~x86-linux" +SLOT="3" +IUSE="debug doc" + +DEPEND="doc? ( app-doc/doxygen[dot,latex] )" +RDEPEND="!dev-cpp/eigen:0" + +src_unpack() { + default + mv ${PN}* ${P} || die +} + +src_prepare() { + epatch "${FILESDIR}"/${PN}-3.0.0-gcc46.patch + + sed -i CMakeLists.txt \ + -e "/add_subdirectory(demos/d" \ + -e "/add_subdirectory(blas/d" \ + -e "/add_subdirectory(lapack/d" \ + || die "sed disable unused bundles failed" +} + +src_configure() { + # benchmarks (BTL) brings up damn load of external deps including fortran + # compiler + CMAKE_BUILD_TYPE="release" + mycmakeargs=( + -DEIGEN_BUILD_BTL=OFF + ) + cmake-utils_src_configure +} + +src_compile() { + cmake-utils_src_compile + if use doc; then + cmake-utils_src_compile doc + fi +} + +src_test() { + mycmakeargs=( + -DEIGEN_BUILD_TESTS=ON + -DEIGEN_TEST_NO_FORTRAN=ON + -DEIGEN_TEST_NO_OPENGL=ON + ) + cmake-utils_src_configure + cmake-utils_src_compile buildtests + cmake-utils_src_test +} + +src_install() { + cmake-utils_src_install + if use doc; then + cd "${CMAKE_BUILD_DIR}"/doc + dohtml -r html/* + fi +} diff --git a/dev-cpp/eigen/files/eigen-3.0.0-gcc46.patch b/dev-cpp/eigen/files/eigen-3.0.0-gcc46.patch new file mode 100644 index 00000000000..ca4410be7dd --- /dev/null +++ b/dev-cpp/eigen/files/eigen-3.0.0-gcc46.patch @@ -0,0 +1,16 @@ + Eigen/src/StlSupport/details.h | 2 ++ + 1 files changed, 2 insertions(+), 0 deletions(-) + +diff --git a/Eigen/src/StlSupport/details.h b/Eigen/src/StlSupport/details.h +index 397c8ef..c1ac745 100644 +--- a/Eigen/src/StlSupport/details.h ++++ b/Eigen/src/StlSupport/details.h +@@ -30,6 +30,8 @@ + #define EIGEN_ALIGNED_ALLOCATOR Eigen::aligned_allocator + #endif + ++#include <cstddef> ++ + namespace Eigen { + + // This one is needed to prevent reimplementing the whole std::vector. |
