Gentoo Archives: gentoo-commits

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