diff options
author | Michael Gilroy <michael.gilroy24@gmail.com> | 2017-06-20 04:27:07 +0000 |
---|---|---|
committer | Michael Gilroy <michael.gilroy24@gmail.com> | 2017-06-20 04:27:07 +0000 |
commit | 71efb2963ae67ae82cd69fbbecb2920a68265c9c (patch) | |
tree | ff4d55fa55af41dd1dde80cd13ad1f3d891230b4 /sys-cluster | |
parent | Added mpich-3.2-r1.ebuild to the overlay (diff) | |
download | gentoo-mpi-71efb2963ae67ae82cd69fbbecb2920a68265c9c.tar.gz gentoo-mpi-71efb2963ae67ae82cd69fbbecb2920a68265c9c.tar.bz2 gentoo-mpi-71efb2963ae67ae82cd69fbbecb2920a68265c9c.zip |
added non-multilib openmpi ebuild
Diffstat (limited to 'sys-cluster')
-rw-r--r-- | sys-cluster/openmpi/Manifest | 3 | ||||
-rw-r--r-- | sys-cluster/openmpi/metadata.xml | 17 | ||||
-rw-r--r-- | sys-cluster/openmpi/openmpi-1.4.5.ebuild | 105 |
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" +} |