64 lines
1.8 KiB
Bash
64 lines
1.8 KiB
Bash
# Copyright 1999-2014 Gentoo Foundation
|
|
# Distributed under the terms of the GNU General Public License v2
|
|
# $Id$
|
|
|
|
MY_PN=${PN#osc-}
|
|
DESCRIPTION="replacement for mpirun, integrates MPI with PBS"
|
|
SRC_URI="http://www.osc.edu/~djohnson/mpiexec/${MY_PN}-${PV}.tgz"
|
|
HOMEPAGE="http://www.osc.edu/~djohnson/mpiexec/index.php"
|
|
|
|
DEPEND="sys-cluster/torque"
|
|
RDEPEND="${DEPEND}
|
|
net-misc/openssh"
|
|
|
|
SLOT="0"
|
|
LICENSE="GPL-2"
|
|
KEYWORDS="amd64 ~ppc x86"
|
|
IUSE=""
|
|
|
|
S="${WORKDIR}"/${MY_PN}-${PV}
|
|
|
|
RESTRICT="test"
|
|
# The test suite that is included with the source requires
|
|
# the ability to qsub a number of jobs. Such behavior
|
|
# obviously does not belong in the ebuild.
|
|
|
|
src_compile() {
|
|
local c="--with-default-comm=mpich-p4
|
|
--with-pbs=/usr/
|
|
--with-mpicc=/usr/bin/mpicc
|
|
--with-mpif77=/usr/bin/mpif77"
|
|
|
|
# The following at the recommendation of README, Cray specific.
|
|
c="${c} --disable-mpich-rai"
|
|
|
|
econf ${c} || die
|
|
emake || die "compile failed"
|
|
}
|
|
|
|
src_install() {
|
|
local f
|
|
emake DESTDIR="${D}" install || die
|
|
|
|
# And the following so that osc-mpiexec doesn't conflict with
|
|
# the packaged mpiexec's that all the MPI-2 implementations have.
|
|
for f in $(find "${D}" -name 'mpiexec*'); do
|
|
mv ${f} $(dirname ${f})/osc-$(basename ${f}) \
|
|
|| die "Failed to prefix binary ${f} with osc-"
|
|
done
|
|
|
|
dodoc README README.lam ChangeLog
|
|
}
|
|
|
|
pkg_postinst() {
|
|
elog "The OSC Mpiexec package typically installs it's binaries"
|
|
elog "and manpages as 'mpiexec'. However, this ebuild renames"
|
|
elog "those to be prefixed with 'osc-' in order to avoid blocking"
|
|
elog "against the exact packages that osc-mpiexec is meant to"
|
|
elog "work with."
|
|
elog
|
|
elog "The default communication device has been set to mpich-p4"
|
|
elog "(ethernet). If you wish to use another communication"
|
|
elog "device, either set MPIEXEC_COMM in your environment or use"
|
|
elog "the --comm argument to mpiexec."
|
|
}
|