aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAndrea Arteaga <andyspiros@gmail.com>2012-03-25 03:33:34 +0200
committerAndrea Arteaga <andyspiros@gmail.com>2012-03-25 03:33:34 +0200
commit8ad7de928590a948815fee83377ca33df3e32f53 (patch)
treec78729420e0e4fec9b27f4198b3796bc8329f1c7
parent[sci-libs/atlas] Version bump. (diff)
downloadsci-8ad7de928590a948815fee83377ca33df3e32f53.tar.gz
sci-8ad7de928590a948815fee83377ca33df3e32f53.tar.bz2
sci-8ad7de928590a948815fee83377ca33df3e32f53.zip
[dev-cpp/eigen] Added 3.1.0_alpha2 version. Uncomplete lapack implementation.
-rw-r--r--dev-cpp/eigen/ChangeLog7
-rw-r--r--dev-cpp/eigen/Manifest1
-rw-r--r--dev-cpp/eigen/eigen-3.1.0_alpha2.ebuild91
3 files changed, 98 insertions, 1 deletions
diff --git a/dev-cpp/eigen/ChangeLog b/dev-cpp/eigen/ChangeLog
index dab4e97ff..564da533b 100644
--- a/dev-cpp/eigen/ChangeLog
+++ b/dev-cpp/eigen/ChangeLog
@@ -2,12 +2,17 @@
# Copyright 1999-2011 Gentoo Foundation; Distributed under the GPL v2
# $Header: /var/cvsroot/gentoo-x86/dev-cpp/eigen/ChangeLog,v 1.44 2011/03/25 16:01:28 jlec Exp $
+* eigen-3.1.0_alpha2 (25 Feb 2012)
+
+ 25 Feb 2012; Andrea Arteaga <andyspiros@gmail.com> eigen-3.1.0_alpha2.ebuild
+ Version bump.
+
* eigen-3.0.5 (10 Feb 2012)
10 Feb 2012; Andrea Arteaga <andyspiros@gmail.com> eigen-3.0.5.ebuild
Version bump.
-*eigen-3.0.4 (20 Dec 2011)
+* eigen-3.0.4 (20 Dec 2011)
20 Dec 2011; SĂ©bastien Fabbro <bicatali@gentoo.org> -eigen-3.0.1-r2.ebuild,
-eigen-3.0.2.ebuild, -eigen-3.0.3.ebuild, +eigen-3.0.4.ebuild:
diff --git a/dev-cpp/eigen/Manifest b/dev-cpp/eigen/Manifest
index 26f2e75b8..ff96f44a2 100644
--- a/dev-cpp/eigen/Manifest
+++ b/dev-cpp/eigen/Manifest
@@ -1,2 +1,3 @@
DIST eigen-3.0.4.tar.bz2 957932 RMD160 2f2e2da8d906b7ac576e0b8d80bb2d983797b581 SHA1 fe17f6994e8bf7cec37ece58fe462a6d06e2e154 SHA256 23300291c29212d3b1dba7fc7bc4f2f7fbc272246e168e48cc622e5648ed92aa
DIST eigen-3.0.5.tar.bz2 960679 SHA256 eea706ea59b534d0c8dba6f94f022158e54f812f171c9956f89873ecb1ee577c SHA512 37d0bf932d97fc7315ef836976cdba7aaa9938aba6abf6ed7562bd0ef7de7f01b9bdb7980bae13f5432ff0342b230883f00aea5bcf96d3364007694b40fc566e WHIRLPOOL 5f0060cb80b6824782ab39274b8763288b90bfad0e446dfe3965b40b8502e7660986ac7924c6f1e127f57cbe6e37ed51cb374442b8d24e5babd7559d161e2b8b
+DIST eigen-3.1.0_alpha2.tar.bz2 1008576 SHA256 c9b4ac5aeea83b988bccf84eff9a04909ded519c843e22e471a66c132ce07d44 SHA512 59224891253a531e34469760f1f5626ad90d080d78039f05d7e8c37c19da5ee2230d4704c65218732ab712b3642512bffbc15e1d0374f1191c40c8017edbf142 WHIRLPOOL fade5a12b5e17a6852e079970f9d1766094542e884bd28c88a13f2d81ff2cd470585c67b32212f02a1a7c6ec9f07fe948fc194e8305c06c8f688dc87b3e0188f
diff --git a/dev-cpp/eigen/eigen-3.1.0_alpha2.ebuild b/dev-cpp/eigen/eigen-3.1.0_alpha2.ebuild
new file mode 100644
index 000000000..a8f69ba22
--- /dev/null
+++ b/dev-cpp/eigen/eigen-3.1.0_alpha2.ebuild
@@ -0,0 +1,91 @@
+# Copyright 1999-2011 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: $
+
+EAPI=4
+
+inherit cmake-utils alternatives-2
+
+DESCRIPTION="C++ template library for linear algebra"
+HOMEPAGE="http://eigen.tuxfamily.org/"
+
+MYPV=${PV/_/-}
+SRC_URI="http://bitbucket.org/eigen/eigen/get/${MYPV}.tar.bz2 -> ${P}.tar.bz2"
+
+LICENSE="|| ( LGPL-3 GPL-2 )"
+KEYWORDS=""
+SLOT="3"
+IUSE="adolc fortran fftw doc gmp sparse static-libs test"
+
+CDEPEND="adolc? ( sci-libs/adolc[sparse?] )
+ fftw? ( >=sci-libs/fftw-3 )
+ gmp? ( dev-libs/gmp dev-libs/mpfr )
+ sparse? ( dev-cpp/sparsehash
+ sci-libs/cholmod
+ sci-libs/superlu
+ sci-libs/umfpack )"
+
+DEPEND="doc? ( app-doc/doxygen )
+ test? ( ${CDEPEND} )"
+
+RDEPEND="!dev-cpp/eigen:0
+ ${CDEPEND}"
+
+src_unpack() {
+ unpack ${A} && mv ${PN}* ${P}
+}
+
+src_configure() {
+ #TOFIX: static-libs for blas are always built with PIC
+ #TOFIX: BTL benchmarks
+ #TOFIX: is it worth fixing all the automagic given no library is built?
+ mycmakeargs=(
+ -DEIGEN_BUILD_BTL=OFF
+ )
+ CMAKE_BUILD_TYPE="release" cmake-utils_src_configure
+ use fortran && FORTRAN_LIBS="blas lapack" # lapack not ready yet
+}
+
+src_compile() {
+ cmake-utils_src_compile
+ pushd "${S}_build" > /dev/null
+ use doc && emake doc
+ use fortran && emake ${FORTRAN_LIBS}
+ use test && emake buildtests
+ popd > /dev/null
+}
+
+src_install() {
+ cmake-utils_src_install
+ use doc && dohtml -r "${CMAKE_BUILD_DIR}"/doc/html/*
+ local x
+ for x in ${FORTRAN_LIBS}; do
+ local libname="eigen_${x}"
+ cd "${CMAKE_BUILD_DIR}"/${x}
+ dolib.so lib${libname}.so
+ use static-libs && newlib.a lib${libname}_static.a lib${libname}.a
+
+ if [[ $x = "lapack" ]]; then
+ requires="Requires: blas"
+ else
+ requires=""
+ fi
+
+ cat <<-EOF > ${libname}.pc
+ prefix="${EPREFIX}"/usr
+ libdir=\${prefix}/$(get_libdir)
+ includedir=\${prefix}/include
+ Name: ${PN}
+ Description: ${DESCRIPTION}
+ Version: ${PV}
+ URL: ${HOMEPAGE}
+ Libs: -L\${libdir} -l${libname}
+ Libs.private: -lm
+ ${requires}
+ EOF
+ alternatives_for ${x} eigen 0 \
+ /usr/$(get_libdir)/pkgconfig/${x}.pc ${libname}.pc
+ insinto /usr/$(get_libdir)/pkgconfig
+ doins ${libname}.pc
+ done
+}