Gentoo Archives: gentoo-commits

From: Andrea Arteaga <andyspiros@×××××.com>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] proj/sci:master commit in: dev-cpp/eigen/
Date: Mon, 29 Aug 2011 13:52:32
Message-Id: be045212e8821bee3c21559120d177b4d4556250.spiros@gentoo
1 commit: be045212e8821bee3c21559120d177b4d4556250
2 Author: Andrea Arteaga <andyspiros <AT> gmail <DOT> com>
3 AuthorDate: Mon Aug 29 13:50:50 2011 +0000
4 Commit: Andrea Arteaga <andyspiros <AT> gmail <DOT> com>
5 CommitDate: Mon Aug 29 13:50:50 2011 +0000
6 URL: http://git.overlays.gentoo.org/gitweb/?p=proj/sci.git;a=commit;h=be045212
7
8 Version bump.
9
10 ---
11 dev-cpp/eigen/ChangeLog | 5 ++
12 dev-cpp/eigen/eigen-3.0.2.ebuild | 82 ++++++++++++++++++++++++++++++++++++++
13 2 files changed, 87 insertions(+), 0 deletions(-)
14
15 diff --git a/dev-cpp/eigen/ChangeLog b/dev-cpp/eigen/ChangeLog
16 index 3132ef4..1a25afe 100644
17 --- a/dev-cpp/eigen/ChangeLog
18 +++ b/dev-cpp/eigen/ChangeLog
19 @@ -2,6 +2,11 @@
20 # Copyright 1999-2011 Gentoo Foundation; Distributed under the GPL v2
21 # $Header: /var/cvsroot/gentoo-x86/dev-cpp/eigen/ChangeLog,v 1.44 2011/03/25 16:01:28 jlec Exp $
22
23 +* eigen-3.0.2 (29 Aug 2011)
24 +
25 + 29 Aug 2011; Andrea Arteaga <andyspiros@×××××.com> eigen-3.0.2.ebuild
26 + Version bump.
27 +
28 19 Aug 2011; Andrea Arteaga <andyspiros@×××××.com> eigen-9999.ebuild
29 Removed ~x86 and ~amd64 keyworkds (mask).
30
31
32 diff --git a/dev-cpp/eigen/eigen-3.0.2.ebuild b/dev-cpp/eigen/eigen-3.0.2.ebuild
33 new file mode 100644
34 index 0000000..9b21428
35 --- /dev/null
36 +++ b/dev-cpp/eigen/eigen-3.0.2.ebuild
37 @@ -0,0 +1,82 @@
38 +# Copyright 1999-2011 Gentoo Foundation
39 +# Distributed under the terms of the GNU General Public License v2
40 +# $Header: $
41 +
42 +EAPI=4
43 +
44 +inherit cmake-utils alternatives-2
45 +
46 +DESCRIPTION="C++ template library for linear algebra"
47 +HOMEPAGE="http://eigen.tuxfamily.org/"
48 +SRC_URI="http://bitbucket.org/eigen/eigen/get/${PV}.tar.bz2 -> ${P}.tar.bz2"
49 +
50 +LICENSE="|| ( LGPL-3 GPL-2 )"
51 +KEYWORDS="~amd64 ~x86"
52 +SLOT="3"
53 +IUSE="adolc fortran fftw doc gmp sparse static-libs test"
54 +
55 +CDEPEND="adolc? ( sci-libs/adolc[sparse?] )
56 + fftw? ( >=sci-libs/fftw-3 )
57 + gmp? ( dev-libs/gmp dev-libs/mpfr )
58 + sparse? ( dev-cpp/sparsehash
59 + sci-libs/cholmod
60 + sci-libs/superlu
61 + sci-libs/umfpack )"
62 +
63 +DEPEND="doc? ( app-doc/doxygen )
64 + test? ( ${CDEPEND} )"
65 +
66 +RDEPEND="!dev-cpp/eigen:0
67 + ${CDEPEND}"
68 +
69 +src_unpack() {
70 + unpack ${A} && mv ${PN}* ${P}
71 +}
72 +
73 +src_configure() {
74 + #TOFIX: static-libs for blas are always built with PIC
75 + #TOFIX: BTL benchmarks
76 + #TOFIX: is it worth fixing all the automagic given no library is built?
77 + mycmakeargs=(
78 + -DEIGEN_BUILD_BTL=OFF
79 + )
80 + CMAKE_BUILD_TYPE="release" cmake-utils_src_configure
81 + use fortran && FORTRAN_LIBS="blas" # lapack not ready yet
82 +}
83 +
84 +src_compile() {
85 + cmake-utils_src_compile
86 + pushd "${S}_build" > /dev/null
87 + use doc && emake doc
88 + use fortran && emake ${FORTRAN_LIBS}
89 + use test && emake buildtests
90 + popd > /dev/null
91 +}
92 +
93 +src_install() {
94 + cmake-utils_src_install
95 + use doc && dohtml -r "${CMAKE_BUILD_DIR}"/html/*
96 + local x
97 + for x in ${FORTRAN_LIBS}; do
98 + local libname="eigen_${x}"
99 + cd "${CMAKE_BUILD_DIR}"/${x}
100 + dolib.so lib${libname}.so
101 + use static-libs && newlib.a lib${libname}_static.a lib${libname}.a
102 + #TOFIX: lapack implementation needs a Requires: field in pc file.
103 + cat <<-EOF > ${libname}.pc
104 + prefix="${EPREFIX}"/usr
105 + libdir=\${prefix}/$(get_libdir)
106 + includedir=\${prefix}/include
107 + Name: ${PN}
108 + Description: ${DESCRIPTION}
109 + Version: ${PV}
110 + URL: ${HOMEPAGE}
111 + Libs: -L\${libdir} -l${libname}
112 + Libs.private: -lm
113 + EOF
114 + alternatives_for ${x} eigen 0 \
115 + /usr/$(get_libdir)/pkgconfig/${x}.pc ${libname}.pc
116 + insinto /usr/$(get_libdir)/pkgconfig
117 + doins ${libname}.pc
118 + done
119 +}