summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'sci-libs/scalapack')
-rw-r--r--sci-libs/scalapack/Manifest1
-rw-r--r--sci-libs/scalapack/metadata.xml12
-rw-r--r--sci-libs/scalapack/scalapack-2.0.2.ebuild64
3 files changed, 77 insertions, 0 deletions
diff --git a/sci-libs/scalapack/Manifest b/sci-libs/scalapack/Manifest
new file mode 100644
index 000000000000..9cdc4b85bbaf
--- /dev/null
+++ b/sci-libs/scalapack/Manifest
@@ -0,0 +1 @@
+DIST scalapack-2.0.2.tgz 4779534 SHA256 0c74aeae690fe5ee4db7926f49c5d0bb69ce09eea75beb915e00bba07530395c SHA512 92c71d3de0900955511c527ab3ca57ff69d6d9edc390e69f93ac3769d32ce83a714326bcb6218c8c74b8874be2fdc8aad5e42c912a12581e8d4ce8829ea39248 WHIRLPOOL ca5e9261bb046684ecb820247ae2d9953083f9989b5cdeccd033c67519a5ab1eb3bd3f12d0225767513d5307342ccd96f582dbd264b2decc9033bf1f7f5d7dbc
diff --git a/sci-libs/scalapack/metadata.xml b/sci-libs/scalapack/metadata.xml
new file mode 100644
index 000000000000..baa3fe76fc17
--- /dev/null
+++ b/sci-libs/scalapack/metadata.xml
@@ -0,0 +1,12 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+<herd>sci</herd>
+<longdescription lang="en">
+ The ScaLAPACK (or Scalable LAPACK) library includes a subset of LAPACK routines
+ redesigned for distributed memory MIMD parallel computers. It is currently
+ written in a Single-Program-Multiple-Data style using explicit message
+ passing for interprocessor communication. It assumes matrices are laid out
+ in a two-dimensional block cyclic decomposition.
+</longdescription>
+</pkgmetadata>
diff --git a/sci-libs/scalapack/scalapack-2.0.2.ebuild b/sci-libs/scalapack/scalapack-2.0.2.ebuild
new file mode 100644
index 000000000000..bc0a7f5908f7
--- /dev/null
+++ b/sci-libs/scalapack/scalapack-2.0.2.ebuild
@@ -0,0 +1,64 @@
+# Copyright 1999-2014 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+inherit cmake-utils eutils fortran-2
+
+DESCRIPTION="Subset of LAPACK routines redesigned for heterogenous (MPI) computing"
+HOMEPAGE="http://www.netlib.org/scalapack/"
+SRC_URI="${HOMEPAGE}/${P}.tgz"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~amd64 ~x86 ~amd64-linux ~x86-linux"
+IUSE="static-libs test"
+
+RDEPEND="
+ virtual/lapack
+ virtual/mpi"
+DEPEND="${RDEPEND}
+ virtual/pkgconfig"
+
+src_prepare() {
+ use static-libs && mkdir "${WORKDIR}/${PN}_static"
+ # mpi does not have a pc file
+ sed -i -e 's/mpi//' scalapack.pc.in || die
+}
+
+src_configure() {
+ scalapack_configure() {
+ local mycmakeargs=(
+ -DUSE_OPTIMIZED_LAPACK_BLAS=ON
+ -DBLAS_LIBRARIES="$($(tc-getPKG_CONFIG) --libs blas)"
+ -DLAPACK_LIBRARIES="$($(tc-getPKG_CONFIG) --libs lapack)"
+ $(cmake-utils_use_build test TESTING)
+ $@
+ )
+ cmake-utils_src_configure
+ }
+
+ scalapack_configure -DBUILD_SHARED_LIBS=ON -DBUILD_STATIC_LIBS=OFF
+ use static-libs && \
+ CMAKE_BUILD_DIR="${WORKDIR}/${PN}_static" scalapack_configure \
+ -DBUILD_SHARED_LIBS=OFF -DBUILD_STATIC_LIBS=ON
+}
+
+src_compile() {
+ cmake-utils_src_compile
+ use static-libs && \
+ CMAKE_BUILD_DIR="${WORKDIR}/${PN}_static" cmake-utils_src_compile
+}
+
+src_install() {
+ cmake-utils_src_install
+ use static-libs && \
+ CMAKE_BUILD_DIR="${WORKDIR}/${PN}_static" cmake-utils_src_install
+
+ insinto /usr/include/blacs
+ doins BLACS/SRC/*.h
+
+ insinto /usr/include/scalapack
+ doins PBLAS/SRC/*.h
+}