diff options
-rw-r--r-- | mpich2/PKGBUILD | 68 | ||||
-rw-r--r-- | mpich2/mpich2.install | 44 | ||||
-rw-r--r-- | mpich2/mpich2.profile | 2 |
3 files changed, 114 insertions, 0 deletions
diff --git a/mpich2/PKGBUILD b/mpich2/PKGBUILD new file mode 100644 index 000000000..f8f9c4350 --- /dev/null +++ b/mpich2/PKGBUILD @@ -0,0 +1,68 @@ +# Maintainer: Erich Eckner <arch at eckner dot net> +# Contributor: Jonathan Kotta <jpkotta at gmail dot com> +pkgname=mpich2 +pkgver=1.5 +pkgrel=2 +pkgdesc="An improved implementation of the Message Passing Interface (legacy version)." +arch=('i686' 'x86_64') +url="http://mpich.org" +license=('custom') +groups=() +depends=(python2 gcc-fortran libxml2 openssh numactl pciutils) +makedepends=(libtool make coreutils texlive-core sowing) +optdepends=(java-environment) +provides=() +conflicts=(mpich) +replaces=() +backup=() +options=(!libtool strip) +install=mpich2.install +changelog= +source=( + http://www.mpich.org/static/downloads/$pkgver/$pkgname-$pkgver.tar.gz + mpich2.install + mpich2.profile +) +sha512sums=('01ef68accdd60af805705c1c7a144a570eee6f01984939fe151a093f963c956fba366247b1058885ba1a2ff626278d30e928e03d394bd6cf2a4b6dab99586c15' + 'b062c4f029454e4a90986a7cbeb9dce533ccbc1aae57fe21334342fe61262d3e18b7d1cee86b03b091c72bc63a128fb066e3ef37e225fd593a8616c0645e3f3a' + 'd614d068ef044267597892ca4bbac51740992b011aae1e4a6cb612bff22443fef64be96977b41d2b2faaa5c349bec3c4d4e7ca7bc1ccc5012d0db29549bf0c74') + +build() { + cd ${srcdir}/${pkgname}-${pkgver} + + unset MAKEFLAGS # -j2 causes trouble, http://trac.mcs.anl.gov/projects/mpich2/ticket/955 + + # CFLAGS etc are normally written into the wrapper compilers. This + # gives surprising results, e.g. when the user wants to compile their + # program without optimization. + export MPICH2LIB_CFLAGS="$CFLAGS"; unset CFLAGS + export MPICH2LIB_CXXFLAGS="$CXXFLAGS"; unset CXXFLAGS + export MPICH2LIB_FFLAGS="$FFLAGS"; unset FFLAGS + export MPICH2LIB_F90FLAGS="$F90FLAGS"; unset F90FLAGS + export MPICH2LIB_LDFLAGS="$LDFLAGS"; unset LDFLAGS + + ./configure --prefix=/opt/$pkgname --enable-shared --enable-sharedlibs=gcc \ + --enable-error-checking=runtime --enable-error-messages=all \ + --enable-timer-type=clock_gettime \ + --with-pm=hydra:gforker:mpd --with-python=python2 \ + --disable-rpath \ + --enable-fc --enable-f77 --enable-cxx + make +} + +package() { + cd ${srcdir}/${pkgname}-${pkgver} + make DESTDIR=${pkgdir} install + + ln -sf mpiexec.hydra "${pkgdir}/opt/$pkgname/bin/mpiexec" + ln -sf mpiexec "${pkgdir}/opt/$pkgname/bin/mpirun" + for pm in hydra mpd gforker; do + ln -sf "mpiexec.${pm}" "${pkgdir}/opt/$pkgname/bin/mpirun.${pm}" + done + install -D -m644 ${srcdir}/${pkgname}-${pkgver}/COPYRIGHT ${pkgdir}/usr/share/licenses/$pkgname/license.txt + install -D -m755 ${srcdir}/${pkgname}.profile ${pkgdir}/etc/profile.d/${pkgname}.sh + mkdir -p ${pkgdir}/etc/ld.so.conf.d + echo /opt/${pkgname}/lib > ${pkgdir}/etc/ld.so.conf.d/${pkgname}.conf +} + +# vim:set ts=2 sw=2 et: diff --git a/mpich2/mpich2.install b/mpich2/mpich2.install new file mode 100644 index 000000000..c09f9b08b --- /dev/null +++ b/mpich2/mpich2.install @@ -0,0 +1,44 @@ +# This is a default template for a post-install scriptlet. You can +# remove any functions you don't need (and this header). + +pkgname=mpich2 + +# arg 1: the new package version +pre_install() { + /bin/true +} + +# arg 1: the new package version +post_install() { + echo " *** Installation documentation at /opt/$pkgname/share/doc/mpich/install.pdf" + echo " *** /opt/$pkgname/bin is prepended to PATH, see /etc/profile.d/$pkgname.sh" + echo " *** Some binary names match versions from Open MPI in /usr, if installed" + /bin/true +} + +# arg 1: the new package version +# arg 2: the old package version +pre_upgrade() { + /bin/true +} + +# arg 1: the new package version +# arg 2: the old package version +post_upgrade() { + /bin/true +} + +# arg 1: the old package version +pre_remove() { + /bin/true +} + +# arg 1: the old package version +post_remove() { + /bin/true +} + +op=$1 +shift +$op $* +# vim:syntax=sh diff --git a/mpich2/mpich2.profile b/mpich2/mpich2.profile new file mode 100644 index 000000000..1cf217e10 --- /dev/null +++ b/mpich2/mpich2.profile @@ -0,0 +1,2 @@ +export PATH=$PATH:/opt/mpich2/bin +export PKG_CONFIG_PATH=$PKG_CONFIG_PATH:/opt/mpich2/lib/pkgconfig |