aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMichael Gilroy <michael.gilroy24@gmail.com>2017-06-20 04:27:07 +0000
committerMichael Gilroy <michael.gilroy24@gmail.com>2017-06-20 04:27:07 +0000
commit71efb2963ae67ae82cd69fbbecb2920a68265c9c (patch)
treeff4d55fa55af41dd1dde80cd13ad1f3d891230b4
parentAdded mpich-3.2-r1.ebuild to the overlay (diff)
downloadgentoo-mpi-71efb2963ae67ae82cd69fbbecb2920a68265c9c.tar.gz
gentoo-mpi-71efb2963ae67ae82cd69fbbecb2920a68265c9c.tar.bz2
gentoo-mpi-71efb2963ae67ae82cd69fbbecb2920a68265c9c.zip
added non-multilib openmpi ebuild
-rw-r--r--sys-cluster/openmpi/Manifest3
-rw-r--r--sys-cluster/openmpi/metadata.xml17
-rw-r--r--sys-cluster/openmpi/openmpi-1.4.5.ebuild105
3 files changed, 125 insertions, 0 deletions
diff --git a/sys-cluster/openmpi/Manifest b/sys-cluster/openmpi/Manifest
new file mode 100644
index 0000000..0896437
--- /dev/null
+++ b/sys-cluster/openmpi/Manifest
@@ -0,0 +1,3 @@
+DIST openmpi-1.4.5.tar.bz2 6643760 SHA256 a3857bc69b7d5258cf7fc1ed1581d9ac69110f5c17976b949cb7ec789aae462d SHA512 f89922345cde8978483e397e9016103626db3f1787f9afccaf0f60d59caa2a4409b47b01ac221d60e24e241f2afecb636ca89688bf326dc0ca5c817de96b3e99 WHIRLPOOL 2008bd952f9cc93ead6508267f5a45ee6d9ebf9136e35e25b798400d162173514da73349518bfada4777471c32d315e8556bbee8847a5268719d6b32fd0fd811
+EBUILD openmpi-1.4.5.ebuild 2664 SHA256 bc52306550e53965e183faf830e4332b2eace66c21f71562d448b4919e69d02f SHA512 68ca3861c5a96df693bfb9aca203caf4d28763ca3609304be5e3d8f99be53c2a2a30092a2337b2c978dc4aaf9860eb3a96dd08ff4282302bded5c79463210c7f WHIRLPOOL 301f3c8b629dba0a5b61306239d84697cc0c3e88833e441235587dc335aa2be58e8b0a987674e708f42d3808d333dec039c9e6dd0fbb7dcf56464aa19662ab68
+MISC metadata.xml 469 SHA256 5886c62a7f771d6f4481dfdbff66bb0dd32f34b3bd9525c45dd65601f01f58b5 SHA512 dcfbe2f7f1d3b595b1798e090dd35ca86542592783ba6ec93709b1c9fcb66d52716384dc0f561294291c8567430387f00209691fc41cfd152b1412a65309a728 WHIRLPOOL ff3566c8fa636a6018f9037a57f9a683d755b20d50f955dee370df3b5e790144012d2890010fe0778bfa05935013d41372185e0069181c3c97a38ac441ec3bc8
diff --git a/sys-cluster/openmpi/metadata.xml b/sys-cluster/openmpi/metadata.xml
new file mode 100644
index 0000000..57d8a45
--- /dev/null
+++ b/sys-cluster/openmpi/metadata.xml
@@ -0,0 +1,17 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person">
+ <email>michael.gilroy24@gmail.com</email>
+ </maintainer>
+ <longdescription lang="en">
+ openmpi implementations
+ </longdescription>
+ <use>
+ <flag name="romio"></flag>
+ <flag name="mpi-threads"></flag>
+ <flag name="pbs"></flag>
+ <flag name="heterogeneous"></flag>
+ <flag name="vt"></flag>
+ </use>
+</pkgmetadata>
diff --git a/sys-cluster/openmpi/openmpi-1.4.5.ebuild b/sys-cluster/openmpi/openmpi-1.4.5.ebuild
new file mode 100644
index 0000000..53e2873
--- /dev/null
+++ b/sys-cluster/openmpi/openmpi-1.4.5.ebuild
@@ -0,0 +1,105 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=5
+
+FORTRAN_NEEDED=fortran
+
+inherit eutils fortran-2 multilib flag-o-matic toolchain-funcs mpi-providers
+
+MY_P=${P/-mpi}
+
+DESCRIPTION="A high-performance message passing library (MPI)"
+HOMEPAGE="http://www.open-mpi.org"
+SRC_URI="http://www.open-mpi.org/software/ompi/v1.4/downloads/${MY_P}.tar.bz2"
+
+LICENSE="BSD"
+SLOT="0"
+RESTRICT="mpi-threads? ( test )"
+
+KEYWORDS="~alpha ~amd64 ~ia64 ~ppc ~ppc64 ~sparc ~x86 ~x86-fbsd"
+IUSE="+cxx elibc_FreeBSD fortran heterogeneous ipv6 mpi-threads pbs romio threads vt"
+RDEPEND="
+ pbs? ( sys-cluster/torque )
+ vt? (
+ !dev-libs/libotf
+ !app-text/lcdf-typetools
+ )
+ elibc_FreeBSD? ( dev-libs/libexecinfo )
+ !sys-cluster/mpich
+ !sys-cluster/mpich2
+ !sys-cluster/mpiexec"
+DEPEND="${RDEPEND}"
+
+S=${WORKDIR}/${MY_P}
+
+pkg_setup() {
+ fortran-2_pkg_setup
+ if use mpi-threads; then
+ echo
+ ewarn "WARNING: use of MPI_THREAD_MULTIPLE is still disabled by"
+ ewarn "default and officially unsupported by upstream."
+ ewarn "You may stop now and set USE=-mpi-threads"
+ echo
+ fi
+
+ echo
+ elog "OpenMPI has an overwhelming count of configuration options."
+ elog "Don't forget the EXTRA_ECONF environment variable can let you"
+ elog "specify configure options if you find them necessary."
+ echo
+}
+
+src_prepare() {
+ # Necessary for scalibility, see
+ # http://www.open-mpi.org/community/lists/users/2008/09/6514.php
+ if use threads; then
+ echo 'oob_tcp_listen_mode = listen_thread' \
+ >> opal/etc/openmpi-mca-params.conf
+ fi
+}
+
+src_configure() {
+ local myconf=(
+ --sysconfdir="${EPREFIX}/etc/${PN}"
+ --enable-pretty-print-stacktrace
+ --enable-orterun-prefix-by-default
+ --without-slurm)
+
+ if use mpi-threads; then
+ myconf+=(--enable-mpi-threads
+ --enable-progress-threads)
+ fi
+
+ if use fortran; then
+ if [[ $(tc-getFC) =~ g77 ]]; then
+ myconf+=(--disable-mpi-f90)
+ elif [[ $(tc-getFC) =~ if ]]; then
+ # Enabled here as gfortran compile times are huge with this enabled.
+ myconf+=(--with-mpi-f90-size=medium)
+ fi
+ else
+ myconf+=(--disable-mpi-f90 --disable-mpi-f77)
+ fi
+
+ ! use vt && myconf+=(--enable-contrib-no-build=vt)
+
+ econf "${myconf[@]}" \
+ --sysconfdir="$(mpi-providers_sysconfdir)" \
+ $(use_enable cxx mpi-cxx) \
+ $(use_enable romio io-romio) \
+ $(use_enable heterogeneous) \
+ $(use_with pbs tm) \
+ $(use_enable ipv6)
+}
+
+src_install () {
+ emake DESTDIR="${D}" install || die "make install failed"
+ dodoc README AUTHORS NEWS VERSION || die
+ mpi-providers_safe_mv
+}
+
+src_test() {
+ # Doesn't work with the default src_test as the dry run (-n) fails.
+ emake -j1 check || die "emake check failed"
+}