public inbox for gentoo-commits@lists.gentoo.org
 help / color / mirror / Atom feed
* [gentoo-commits] proj/sci:master commit in: sys-cluster/mpe2/, licenses/
@ 2014-12-02  8:19 Justin Lecher
  0 siblings, 0 replies; only message in thread
From: Justin Lecher @ 2014-12-02  8:19 UTC (permalink / raw
  To: gentoo-commits

commit:     ba27c5abd5a986dc687d272d91312f2374d9ae93
Author:     Marius Brehler <marbre <AT> linux <DOT> sungazer <DOT> de>
AuthorDate: Sat Nov 29 21:56:06 2014 +0000
Commit:     Justin Lecher <jlec <AT> gentoo <DOT> org>
CommitDate: Sat Nov 29 21:56:06 2014 +0000
URL:        http://sources.gentoo.org/gitweb/?p=proj/sci.git;a=commit;h=ba27c5ab

sys-cluster/mpe2: Add ebuild to overlay and bump version

---
 licenses/mpich2                    |  39 ++++++++++
 sys-cluster/mpe2/ChangeLog         |   9 +++
 sys-cluster/mpe2/metadata.xml      |   5 ++
 sys-cluster/mpe2/mpe2-1.3.0.ebuild | 142 +++++++++++++++++++++++++++++++++++++
 4 files changed, 195 insertions(+)

diff --git a/licenses/mpich2 b/licenses/mpich2
new file mode 100644
index 0000000..a9216d4
--- /dev/null
+++ b/licenses/mpich2
@@ -0,0 +1,39 @@
+
+				  COPYRIGHT
+
+The following is a notice of limited availability of the code, and disclaimer
+which must be included in the prologue of the code and in all source listings
+of the code.
+
+Copyright Notice
+ + 2002 University of Chicago
+
+Permission is hereby granted to use, reproduce, prepare derivative works, and
+to redistribute to others.  This software was authored by:
+
+Mathematics and Computer Science Division
+Argonne National Laboratory, Argonne IL 60439
+
+(and)
+
+Department of Computer Science
+University of Illinois at Urbana-Champaign
+
+
+			      GOVERNMENT LICENSE
+
+Portions of this material resulted from work developed under a U.S.
+Government Contract and are subject to the following license: the Government
+is granted for itself and others acting on its behalf a paid-up, nonexclusive,
+irrevocable worldwide license in this computer software to reproduce, prepare
+derivative works, and perform publicly and display publicly.
+
+				  DISCLAIMER
+
+This computer code material was prepared, in part, as an account of work
+sponsored by an agency of the United States Government.  Neither the United
+States, nor the University of Chicago, nor any of their employees, makes any
+warranty express or implied, or assumes any legal liability or responsibility
+for the accuracy, completeness, or usefulness of any information, apparatus,
+product, or process disclosed, or represents that its use would not infringe
+privately owned rights.

diff --git a/sys-cluster/mpe2/ChangeLog b/sys-cluster/mpe2/ChangeLog
new file mode 100644
index 0000000..b424437
--- /dev/null
+++ b/sys-cluster/mpe2/ChangeLog
@@ -0,0 +1,9 @@
+# ChangeLog for sys-cluster/mpe2
+# Copyright 1999-2014 Gentoo Foundation; Distributed under the GPL v2
+# $Header: $
+
+*mpe2-1.3.0 (29 Nov 2014)
+
+  29 Nov 2014; Marius Brehler <marbre@linux.sungazer.de> +metadata.xml,
+  +mpe2-1.3.0.ebuild:
+  Add to overlay and bump version

diff --git a/sys-cluster/mpe2/metadata.xml b/sys-cluster/mpe2/metadata.xml
new file mode 100644
index 0000000..55dd68a
--- /dev/null
+++ b/sys-cluster/mpe2/metadata.xml
@@ -0,0 +1,5 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+	<herd>cluster</herd>
+</pkgmetadata>

diff --git a/sys-cluster/mpe2/mpe2-1.3.0.ebuild b/sys-cluster/mpe2/mpe2-1.3.0.ebuild
new file mode 100644
index 0000000..b76e7ad
--- /dev/null
+++ b/sys-cluster/mpe2/mpe2-1.3.0.ebuild
@@ -0,0 +1,142 @@
+# Copyright 1999-2014 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: $
+
+EAPI=5
+
+FORTRAN_NEEDED=fortran
+
+inherit eutils fortran-2 java-utils-2 toolchain-funcs
+
+MY_P=${P/_/}
+DESCRIPTION="MPI development tools"
+HOMEPAGE="http://www-unix.mcs.anl.gov/perfvis/download/index.htm"
+SRC_URI="ftp://ftp.mcs.anl.gov/pub/mpi/${PN%2}/${MY_P}.tar.gz"
+
+LICENSE="mpich2"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE="minimal fortran threads debug"
+
+COMMON_DEPEND="!minimal? ( x11-libs/libXtst
+		x11-libs/libXi )
+	|| ( sys-cluster/openmpi[fortran?,threads?]
+		sys-cluster/mpich2[fortran?,threads?] )"
+
+DEPEND="!minimal? ( >=virtual/jdk-1.4 )
+	${COMMON_DEPEND}"
+
+RDEPEND="
+!minimal? ( >=virtual/jre-1.4 )
+	${COMMON_DEPEND}"
+
+S="${WORKDIR}"/${MY_P}
+MPE_IMP=""
+
+# README:
+# This ebuild is created to handle building with both mpich2 and openmpi.
+# However, without empi (in the science overlay), and some further
+# conversion to use mpi.eclass, we can only handle one implementation
+# at a time.  I still believe it's better to have the ebuild setup
+# correctly in preperation.
+
+pkg_setup() {
+	fortran-2_pkg_setup
+	local i
+
+	if has_version sys-cluster/openmpi; then
+		MPE_IMP=openmpi
+	elif has_version sys-cluster/mpich2; then
+		MPE_IMP=mpich2
+	else
+		die "Unknown MPI implementation"
+	fi
+
+	export JFLAGS="${JFLAGS} $(java-pkg_javac-args)"
+
+	if [[ "${MPE_IMP}" == openmpi ]] && [ -z "${MPE2_FORCE_OPENMPI_TEST}" ]; then
+		echo
+		elog "Currently src_test fails on collchk with openmpi, hence"
+		elog "testing is disabled by default.  If you would like to"
+		elog "force testing, please add MPE_FORCE_OPENMPI_TEST=1"
+		elog "to your environment."
+		echo
+	fi
+
+	einfo "Building with support for: sys-cluster/${MPE_IMP}"
+}
+
+src_prepare() {
+	# Don't assume path contains ./
+	sed -i 's,\($MPERUN\) $pgm,\1 ./$pgm,' sbin/mpetestexeclog.in
+}
+
+src_configure() {
+	local c="--with-mpicc=/usr/bin/mpicc"
+
+	if use fortran; then
+		c="${c} --with-mpif77=/usr/bin/mpif77"
+	else
+		c="${c} --disable-f77"
+	fi
+
+	if use minimal; then
+		c="${c} --enable-slog2=no --disable-rlog --disable-sample"
+	else
+		c="${c} --with-java2=$(java-config --jdk-home) --enable-slog2=build"
+	fi
+
+	if [[ "${MPE_IMP}" == openmpi ]]; then
+		c="${c} --disable-rlog --disable-sample"
+	fi
+
+	econf ${c} \
+		--sysconfdir=/etc/${PN} \
+		--datadir=/usr/share/${PN} \
+		--with-htmldir=/usr/share/${PN} \
+		--with-docdir=/usr/share/${PN} \
+		--enable-collchk \
+		--enable-wrappers \
+		$(use_enable !minimal graphics) \
+		$(use_enable threads threadlogging) \
+		$(use_enable debug g)
+}
+
+src_test() {
+	local rc
+
+	cd "${S}"
+	if [[ "${MPE_IMP}" == mpich2 ]]; then
+		echo "MPD_SECRETWORD=junk" > "${T}"/mpd.conf
+		chmod 600 "${T}"/mpd.conf
+		export MPD_CONF_FILE="${T}/mpd.conf"
+		"${ROOT}"usr/bin/mpd -d --pidfile="${T}"/mpd.pid
+	elif [[ "${MPE_IMP}" == openmpi* ]] && [ -z "${MPE2_FORCE_OPENMPI_TEST}" ]; then
+		elog
+		elog "Skipping tests for openmpi"
+		elog
+		return 0
+	fi
+
+	# No parallel make:
+	# http://trac.mcs.anl.gov/projects/mpich2/ticket/1095#comment:1
+	emake -j1 \
+		CC="${S}"/bin/mpecc \
+		FC="${S}"/bin/mpefc \
+		MPERUN="${ROOT}/usr/bin/mpiexec -n 4" \
+		CLOG2TOSLOG2="${S}/src/slog2sdk/bin/clog2TOslog2" \
+		check;
+		rc=${?}
+	if [[ "${MPE_IMP}" == mpich2 ]]; then
+		"${ROOT}"usr/bin/mpdallexit || kill $(<"${T}"/mpd.pid)
+	fi
+
+	return ${rc}
+}
+
+src_install() {
+	# No parallel make:
+	# http://trac.mcs.anl.gov/projects/mpich2/ticket/1095#comment:1
+	emake -j1 DESTDIR="${D}" install || die
+	rm -f "${D}"/usr/sbin/mpeuninstall || die
+}


^ permalink raw reply related	[flat|nested] only message in thread

only message in thread, other threads:[~2014-12-02  8:19 UTC | newest]

Thread overview: (only message) (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2014-12-02  8:19 [gentoo-commits] proj/sci:master commit in: sys-cluster/mpe2/, licenses/ Justin Lecher

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox