Gentoo Archives: gentoo-commits

From: Marius Brehler <marbre@××××××××××××××.de>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] proj/sci:master commit in: sci-libs/armadillo/
Date: Fri, 01 Apr 2016 14:09:07
Message-Id: 1459519368.d37f3e3ea912ce66fb2247fd7ffde1bafd782e75.marbre@gentoo
1 commit: d37f3e3ea912ce66fb2247fd7ffde1bafd782e75
2 Author: Marius Brehler <marbre <AT> linux <DOT> sungazer <DOT> de>
3 AuthorDate: Fri Apr 1 14:02:48 2016 +0000
4 Commit: Marius Brehler <marbre <AT> linux <DOT> sungazer <DOT> de>
5 CommitDate: Fri Apr 1 14:02:48 2016 +0000
6 URL: https://gitweb.gentoo.org/proj/sci.git/commit/?id=d37f3e3e
7
8 sci-libs/armadillo: Version bump to 6.600.5
9
10 Package-Manager: portage-2.2.26
11
12 sci-libs/armadillo/armadillo-6.600.5.ebuild | 121 ++++++++++++++++++++++++++++
13 1 file changed, 121 insertions(+)
14
15 diff --git a/sci-libs/armadillo/armadillo-6.600.5.ebuild b/sci-libs/armadillo/armadillo-6.600.5.ebuild
16 new file mode 100644
17 index 0000000..aba1f7b
18 --- /dev/null
19 +++ b/sci-libs/armadillo/armadillo-6.600.5.ebuild
20 @@ -0,0 +1,121 @@
21 +# Copyright 1999-2015 Gentoo Foundation
22 +# Distributed under the terms of the GNU General Public License v2
23 +# $Id$
24 +
25 +EAPI=5
26 +
27 +CMAKE_IN_SOURCE_BUILD=1
28 +
29 +inherit cmake-utils toolchain-funcs multilib eutils
30 +
31 +DESCRIPTION="Streamlined C++ linear algebra library"
32 +HOMEPAGE="http://arma.sourceforge.net/"
33 +SRC_URI="mirror://sourceforge/arma/${P}.tar.gz"
34 +
35 +LICENSE="MPL-2.0"
36 +SLOT="0/6"
37 +KEYWORDS="~amd64 ~x86 ~amd64-linux ~x86-linux"
38 +IUSE="arpack atlas blas debug doc examples hdf5 lapack mkl superlu tbb test"
39 +REQUIRED_USE="test? ( lapack )"
40 +
41 +RDEPEND="
42 + dev-libs/boost
43 + arpack? ( sci-libs/arpack )
44 + atlas? ( sci-libs/atlas[lapack] )
45 + blas? ( virtual/blas )
46 + lapack? ( virtual/lapack )
47 + superlu? ( sci-libs/superlu )
48 +"
49 +DEPEND="${RDEPEND}
50 + arpack? ( virtual/pkgconfig )
51 + atlas? ( virtual/pkgconfig )
52 + blas? ( virtual/pkgconfig )
53 + hdf5? ( sci-libs/hdf5 )
54 + lapack? ( virtual/pkgconfig )
55 + mkl? ( sci-libs/mkl )
56 + tbb? ( dev-cpp/tbb )"
57 +PDEPEND="${RDEPEND}
58 + hdf5? ( sci-libs/hdf5 )
59 + mkl? ( sci-libs/mkl )
60 + tbb? ( dev-cpp/tbb )"
61 +
62 +src_prepare() {
63 + # avoid the automagic cmake macros
64 + sed -i -e '/ARMA_Find/d' CMakeLists.txt || die
65 + cmake-utils_src_prepare
66 +}
67 +
68 +src_configure() {
69 + local mycmakeargs=(
70 + -DINSTALL_LIB_DIR="${EPREFIX}/usr/$(get_libdir)"
71 + $(cmake-utils_use debug ARMA_EXTRA_DEBUG)
72 + $(cmake-utils_use mkl ARMA_USE_MKL_ALLOC)
73 + $(cmake-utils_use tbb ARMA_USE_TBB_ALLOC)
74 + )
75 + if use arpack; then
76 + mycmakeargs+=(
77 + -DARPACK_FOUND=ON
78 + -DARPACK_LIBRARY="$($(tc-getPKG_CONFIG) --libs arpack)"
79 + )
80 + fi
81 + if use atlas; then
82 + local c=atlas-cblas l=atlas-clapack
83 + $(tc-getPKG_CONFIG) --exists ${c}-threads && c+=-threads
84 + $(tc-getPKG_CONFIG) --exists ${l}-threads && l+=-threads
85 + mycmakeargs+=(
86 + -DCBLAS_FOUND=ON
87 + -DCBLAS_INCLUDE_DIR="$($(tc-getPKG_CONFIG) --cflags-only-I ${c} | sed 's/-I//')"
88 + -DCBLAS_LIBRARIES="$($(tc-getPKG_CONFIG) --libs ${c})"
89 + -DCLAPACK_FOUND=ON
90 + -DCLAPACK_INCLUDE_DIR="$($(tc-getPKG_CONFIG) --cflags-only-I ${l} | sed 's/-I//')"
91 + -DCLAPACK_LIBRARIES="$($(tc-getPKG_CONFIG) --libs ${l})"
92 + )
93 + fi
94 + if use blas; then
95 + mycmakeargs+=(
96 + -DBLAS_FOUND=ON
97 + -DBLAS_LIBRARIES="$($(tc-getPKG_CONFIG) --libs blas)"
98 + )
99 + fi
100 + if use hdf5; then
101 + mycmakeargs+=(
102 + -DHDF5_FOUND=ON
103 + -DHDF5_LIBRARIES="-lhdf5"
104 + )
105 + fi
106 + if use lapack; then
107 + mycmakeargs+=(
108 + -DLAPACK_FOUND=ON
109 + -DLAPACK_LIBRARIES="$($(tc-getPKG_CONFIG) --libs lapack)"
110 + )
111 + fi
112 + if use superlu; then
113 + mycmakeargs+=(
114 + -DSuperLU_FOUND=ON
115 + -DSuperLU_LIBRARIES="$($(tc-getPKG_CONFIG) --libs superlu)"
116 + )
117 + fi
118 +
119 + cmake-utils_src_configure
120 +}
121 +
122 +src_test() {
123 + pushd examples > /dev/null
124 + emake \
125 + CXXFLAGS="-I../include ${CXXFLAGS} -DARMA_USE_BLAS -DARMA_USE_LAPACK" \
126 + EXTRA_LIB_FLAGS="-L.. $($(tc-getPKG_CONFIG) --libs blas lapack)"
127 + LD_LIBRARY_PATH="..:${LD_LIBRARY_PATH}" ./example1 || die
128 + LD_LIBRARY_PATH="..:${LD_LIBRARY_PATH}" ./example2 || die
129 + emake clean
130 + popd > /dev/null
131 +}
132 +
133 +src_install() {
134 + cmake-utils_src_install
135 + dodoc README.txt
136 + use doc && dodoc *pdf && dohtml *html
137 + if use examples; then
138 + insinto /usr/share/examples/${PF}
139 + doins -r examples/*
140 + fi
141 +}