forked from gentoo/gentoo
-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
sci-libs/armadillo: version bump plus fixes for superlu deps and testing
Package-Manager: Portage-2.3.6, Repoman-2.3.2
- Loading branch information
Showing
2 changed files
with
144 additions
and
0 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,3 +1,4 @@ | ||
DIST armadillo-6.200.3.tar.gz 5442342 SHA256 4e436704a3b0824be6286ffa7c71c91ef783699889fa0992897d446b7ed82b28 SHA512 598ba8be19971fc0e44703b17be922568e697c592ed85d0148c31f8476ecd7b5a0e6185918763bc063ba68244330b17594333c1453e9c1cfd39b9fefe85be222 WHIRLPOOL b774fd736a55c6bad44f26ed839ef7539784be494e9379b2c9fd7ff47363cfe304c23baedd24fa0c990fb94f73ce10db77a32dab77b2d6cc549e61ec83a6e33e | ||
DIST armadillo-7.800.2.tar.xz 4001664 SHA256 efd70600ab6f30449d90a3e58ff7499937985209bb0a03ce4e322474dbf11fe3 SHA512 bd6a718d9aff5d87ae3bb792405e634e58249e74c8b49e31e6c3a1d77f7537b3e2f04f9fb10fc34279673126a1069cd43e991fb03fdf82ce77a00541ab6bd2fc WHIRLPOOL 93b4459dc941634b9bf4290f7bd839bc8a872091a52c7f554ad7ba6b2d01891e7290fe0bccf442d602927094369050da375690ec8931bcce33270893b3f56342 | ||
DIST armadillo-7.950.0.tar.xz 4022536 SHA256 da89281959d48c60ce546dd370ef712ec1e24714e1e9afadad17dd2fbbc5876e SHA512 e92d5f75000a978381aa279485f35371388ae0812d1116fb79cc902a68037ef96a48aa5954598959e9c88ab74d569d7b6984537f8514e4cc507e07ec8fe3d26b WHIRLPOOL 0d824ee675cc76dded450de7d93e01c33e2baea295b9c6067e45a536fcbbf46490228a639df573695ef099bfe8b02c19f2f1c575e9bbe6314f52c30fa3a575f0 | ||
DIST armadillo-7.950.1.tar.xz 4022716 SHA256 a32da32a0ea420b8397a53e4b40ed279c1a5fc791dd492a2ced81ffb14ad0d1b SHA512 e061a09ba45359c6a1d422cbb1586b2c1d3d5edaec8a0a885030c4aa3295eb5b90b45df6e4d5bec6ca57d290020a33afc8ed9a940a08b3ec0f0736a278b0484d WHIRLPOOL 52cb30d1086eb59851fd4ec3bb11f67067b6aeb0cecc2b9fda3860f3b888d1871df58fdc876a63b63eecad33142aa41488753f524b771b34b7d44926fbf7aea7 |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,143 @@ | ||
# Copyright 1999-2017 Gentoo Foundation | ||
# Distributed under the terms of the GNU General Public License v2 | ||
|
||
EAPI=6 | ||
|
||
CMAKE_IN_SOURCE_BUILD=1 | ||
|
||
inherit cmake-utils toolchain-funcs multilib eutils | ||
|
||
DESCRIPTION="Streamlined C++ linear algebra library" | ||
HOMEPAGE="http://arma.sourceforge.net/" | ||
SRC_URI="mirror://sourceforge/arma/${P}.tar.xz" | ||
|
||
LICENSE="Apache-2.0" | ||
SLOT="0/7" | ||
KEYWORDS="~amd64 ~arm ~ppc64 ~x86 ~amd64-linux ~x86-linux" | ||
IUSE="arpack blas debug doc examples hdf5 lapack mkl superlu tbb test" | ||
REQUIRED_USE="test? ( lapack )" | ||
|
||
# atlas? ( sci-libs/atlas[lapack] ) | ||
|
||
RDEPEND=" | ||
dev-libs/boost | ||
arpack? ( sci-libs/arpack ) | ||
blas? ( virtual/blas ) | ||
lapack? ( virtual/lapack ) | ||
superlu? ( >=sci-libs/superlu-5 ) | ||
" | ||
|
||
DEPEND="${RDEPEND} | ||
arpack? ( virtual/pkgconfig ) | ||
blas? ( virtual/pkgconfig ) | ||
hdf5? ( sci-libs/hdf5 ) | ||
lapack? ( virtual/pkgconfig ) | ||
mkl? ( sci-libs/mkl ) | ||
tbb? ( dev-cpp/tbb )" | ||
PDEPEND="${RDEPEND} | ||
hdf5? ( sci-libs/hdf5 ) | ||
mkl? ( sci-libs/mkl ) | ||
tbb? ( dev-cpp/tbb )" | ||
|
||
src_prepare() { | ||
# avoid the automagic cmake macros | ||
sed -i -e '/ARMA_Find/d' CMakeLists.txt || die | ||
cmake-utils_src_prepare | ||
} | ||
|
||
src_configure() { | ||
local mycmakeargs=( | ||
-DINSTALL_LIB_DIR="${EPREFIX}/usr/$(get_libdir)" | ||
-DARMA_EXTRA_DEBUG="$(usex debug)" | ||
-DARMA_USE_MKL_ALLOC="$(usex mkl)" | ||
-DARMA_USE_TBB_ALLOC="$(usex tbb)" | ||
) | ||
if use arpack; then | ||
mycmakeargs+=( | ||
-DARPACK_FOUND=ON | ||
-DARPACK_LIBRARY="$($(tc-getPKG_CONFIG) --libs arpack)" | ||
) | ||
else | ||
mycmakeargs+=( | ||
-DARPACK_FOUND=OFF | ||
) | ||
fi | ||
# if use atlas; then | ||
# local c=atlas-cblas l=atlas-clapack | ||
# $(tc-getPKG_CONFIG) --exists ${c}-threads && c+=-threads | ||
# $(tc-getPKG_CONFIG) --exists ${l}-threads && l+=-threads | ||
# mycmakeargs+=( | ||
# -DCBLAS_FOUND=ON | ||
# -DCBLAS_INCLUDE_DIR="$($(tc-getPKG_CONFIG) --cflags-only-I ${c} | sed 's/-I//')" | ||
# -DCBLAS_LIBRARIES="$($(tc-getPKG_CONFIG) --libs ${c})" | ||
# -DCLAPACK_FOUND=ON | ||
# -DCLAPACK_INCLUDE_DIR="$($(tc-getPKG_CONFIG) --cflags-only-I ${l} | sed 's/-I//')" | ||
# -DCLAPACK_LIBRARIES="$($(tc-getPKG_CONFIG) --libs ${l})" | ||
# ) | ||
# fi | ||
if use blas; then | ||
mycmakeargs+=( | ||
-DBLAS_FOUND=ON | ||
-DBLAS_LIBRARIES="$($(tc-getPKG_CONFIG) --libs blas)" | ||
) | ||
else | ||
mycmakeargs+=( | ||
-DBLAS_FOUND=OFF | ||
) | ||
fi | ||
if use hdf5; then | ||
mycmakeargs+=( | ||
-DHDF5_FOUND=ON | ||
-DHDF5_LIBRARIES="-lhdf5" | ||
) | ||
else | ||
mycmakeargs+=( | ||
-DHDF5_FOUND=OFF | ||
) | ||
fi | ||
if use lapack; then | ||
mycmakeargs+=( | ||
-DLAPACK_FOUND=ON | ||
-DLAPACK_LIBRARIES="$($(tc-getPKG_CONFIG) --libs lapack)" | ||
) | ||
else | ||
mycmakeargs+=( | ||
-DLAPACK_FOUND=OFF | ||
) | ||
fi | ||
if use superlu; then | ||
mycmakeargs+=( | ||
-DSuperLU_FOUND=ON | ||
-DSuperLU_LIBRARY="$($(tc-getPKG_CONFIG) --libs superlu)" | ||
-DSuperLU_INCLUDE_DIR="$($(tc-getPKG_CONFIG) --cflags-only-I superlu | awk '{print $1}' | sed 's/-I//')" | ||
) | ||
else | ||
mycmakeargs+=( | ||
-DSuperLU_FOUND=OFF | ||
) | ||
fi | ||
|
||
cmake-utils_src_configure | ||
} | ||
|
||
src_test() { | ||
pushd examples > /dev/null | ||
emake \ | ||
CXX="$(tc-getCXX)" \ | ||
CXXFLAGS="-I../include ${CXXFLAGS} -DARMA_USE_BLAS -DARMA_USE_LAPACK" \ | ||
LIB_FLAGS="-L.. -larmadillo $($(tc-getPKG_CONFIG) --libs blas lapack)" | ||
LD_LIBRARY_PATH="..:${LD_LIBRARY_PATH}" ./example1 || die | ||
emake clean | ||
popd > /dev/null | ||
} | ||
|
||
src_install() { | ||
cmake-utils_src_install | ||
dodoc README.txt | ||
use doc && dodoc *pdf *html | ||
if use examples; then | ||
insinto /usr/share/doc/${PF}/examples | ||
doins -r examples/* | ||
docompress -x /usr/share/doc/${PF}/examples | ||
fi | ||
} |