summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMatthias Maier <tamiko@gentoo.org>2019-08-04 23:53:12 -0500
committerMatthias Maier <tamiko@gentoo.org>2019-08-05 01:51:15 -0500
commitea0a668c18823766a061f87931945998b1230fb0 (patch)
tree311c956b14880e8f696385fd7d44bc614edc7b26 /sci-mathematics
parentsci-mathematics/petsc: package migration from ::science overlay (diff)
downloadgentoo-ea0a668c18823766a061f87931945998b1230fb0.tar.gz
gentoo-ea0a668c18823766a061f87931945998b1230fb0.tar.bz2
gentoo-ea0a668c18823766a061f87931945998b1230fb0.zip
sci-mathematics/slepc: package migration from ::science overlay
After years in ::science it is stable enough to be hosted in ::gentoo. Package-Manager: Portage-2.3.70, Repoman-2.3.16 Signed-off-by: Matthias Maier <tamiko@gentoo.org>
Diffstat (limited to 'sci-mathematics')
-rw-r--r--sci-mathematics/slepc/Manifest1
-rw-r--r--sci-mathematics/slepc/metadata.xml15
-rw-r--r--sci-mathematics/slepc/slepc-3.11.1.ebuild75
3 files changed, 91 insertions, 0 deletions
diff --git a/sci-mathematics/slepc/Manifest b/sci-mathematics/slepc/Manifest
new file mode 100644
index 000000000000..a1f5cfb711c1
--- /dev/null
+++ b/sci-mathematics/slepc/Manifest
@@ -0,0 +1 @@
+DIST slepc-3.11.1.tar.gz 4700643 BLAKE2B a624050aad0128d7ef53f27f72484e078e62d8edf9298995dda71a9e8d804dddc7e433542eccf95b2d896be80e8795b1664375e68a4c02c18c56d78d490bffb7 SHA512 a941c2a955953ed2344de7f7d9eaaed79504c3559e27920c633bc09cfb192f883b26fd4aa5dc3bd9909a2fc045f3a34e514feca0e074ca36bc3166aa9c059235
diff --git a/sci-mathematics/slepc/metadata.xml b/sci-mathematics/slepc/metadata.xml
new file mode 100644
index 000000000000..046ec6c8f405
--- /dev/null
+++ b/sci-mathematics/slepc/metadata.xml
@@ -0,0 +1,15 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person">
+ <email>tamiko@gentoo.org</email>
+ <name>Matthias Maier</name>
+ </maintainer>
+ <maintainer type="project">
+ <email>sci-mathematics@gentoo.org</email>
+ <name>Gentoo Mathematics Project</name>
+ </maintainer>
+ <use>
+ <flag name="complex-scalars">Make scalars complex</flag>
+ </use>
+</pkgmetadata>
diff --git a/sci-mathematics/slepc/slepc-3.11.1.ebuild b/sci-mathematics/slepc/slepc-3.11.1.ebuild
new file mode 100644
index 000000000000..cfd41a75da89
--- /dev/null
+++ b/sci-mathematics/slepc/slepc-3.11.1.ebuild
@@ -0,0 +1,75 @@
+# Copyright 1999-2019 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+PYTHON_COMPAT=( python2_7 )
+
+inherit eutils flag-o-matic python-any-r1 toolchain-funcs versionator
+
+DESCRIPTION="Scalable Library for Eigenvalue Problem Computations"
+HOMEPAGE="http://slepc.upv.es/"
+SRC_URI="http://slepc.upv.es/download/distrib/${P}.tar.gz"
+
+LICENSE="LGPL-3"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE="complex-scalars doc mpi"
+
+PETSC_PV="$(get_version_component_range 1-2 ${PV})"
+RDEPEND="
+ =sci-mathematics/petsc-${PETSC_PV}*:=[mpi=,complex-scalars=]
+ sci-libs/arpack[mpi=]
+ mpi? ( virtual/mpi )
+"
+
+DEPEND="${RDEPEND}
+ ${PYTHON_DEPS}
+ virtual/pkgconfig
+ dev-util/cmake
+"
+
+MAKEOPTS="${MAKEOPTS} -j1 V=1"
+
+src_prepare() {
+ default
+
+ sed -i -e 's%/usr/bin/env python%/usr/bin/env python2%' configure || die
+}
+
+src_configure() {
+ # *sigh*
+ addpredict "${PETSC_DIR}"/.nagged
+
+ # Make sure that the environment is set up correctly:
+ unset PETSC_DIR
+ unset PETSC_ARCH
+ unset SLEPC_DIR
+ source "${EPREFIX}"/etc/env.d/99petsc
+ export PETSC_DIR
+
+ # configure is a custom python script and doesn't want to have default
+ # configure arguments that we set with econf
+ ./configure \
+ --prefix="${EPREFIX}/usr/$(get_libdir)/slepc" \
+ --with-arpack=1 \
+ --with-arpack-dir="${EPREFIX}/usr/$(get_libdir)" \
+ --with-arpack-flags="$(usex mpi "-lparpack,-larpack" "-larpack")"
+
+}
+
+src_install() {
+ emake DESTDIR="${ED}" install
+
+ # add PETSC_DIR to environmental variables
+ cat >> 99slepc <<- EOF
+ SLEPC_DIR=${EPREFIX}/usr/$(get_libdir)/slepc
+ LDPATH=${EPREFIX}/usr/$(get_libdir)/slepc/lib
+ EOF
+ doenvd 99slepc
+
+ if use doc ; then
+ dodoc docs/slepc.pdf
+ dohtml -r docs/*.html docs/manualpages
+ fi
+}