summarylogtreecommitdiffstats
diff options
context:
space:
mode:
authorJonathan Kotta2015-07-13 16:18:07 -0500
committerJonathan Kotta2015-07-13 16:18:07 -0500
commit19ca142592dd91f0411c327b341f6b201aed77af (patch)
tree484b6f70cfb8c4fbfacb453b8ee900cebc18ce10
downloadaur-19ca142592dd91f0411c327b341f6b201aed77af.tar.gz
initial commit
-rw-r--r--.SRCINFO33
-rw-r--r--PKGBUILD68
-rw-r--r--mpich2.install44
-rw-r--r--mpich2.profile2
4 files changed, 147 insertions, 0 deletions
diff --git a/.SRCINFO b/.SRCINFO
new file mode 100644
index 000000000000..619648766208
--- /dev/null
+++ b/.SRCINFO
@@ -0,0 +1,33 @@
+pkgbase = mpich2
+ pkgdesc = An improved implementation of the Message Passing Interface (legacy version).
+ pkgver = 1.5
+ pkgrel = 2
+ url = http://mpich.org
+ install = mpich2.install
+ arch = i686
+ arch = x86_64
+ license = custom
+ makedepends = libtool
+ makedepends = make
+ makedepends = coreutils
+ makedepends = texlive-core
+ makedepends = sowing
+ depends = python2
+ depends = gcc-fortran
+ depends = libxml2
+ depends = openssh
+ depends = numactl
+ depends = pciutils
+ optdepends = java-environment
+ conflicts = mpich
+ options = !libtool
+ options = strip
+ source = http://www.mpich.org/static/downloads/1.5/mpich2-1.5.tar.gz
+ source = mpich2.install
+ source = mpich2.profile
+ md5sums = c60146aa6691005f2fb25973e144cfdc
+ md5sums = 661f5a993e1afb6c51fdd5ad529d628b
+ md5sums = fb934502236ca58705f69db1749feb59
+
+pkgname = mpich2
+
diff --git a/PKGBUILD b/PKGBUILD
new file mode 100644
index 000000000000..a6dcbec0b5a1
--- /dev/null
+++ b/PKGBUILD
@@ -0,0 +1,68 @@
+# Maintainer: 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
+)
+md5sums=('c60146aa6691005f2fb25973e144cfdc'
+ '661f5a993e1afb6c51fdd5ad529d628b'
+ 'fb934502236ca58705f69db1749feb59')
+noextract=()
+
+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.install b/mpich2.install
new file mode 100644
index 000000000000..c09f9b08b223
--- /dev/null
+++ b/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.profile b/mpich2.profile
new file mode 100644
index 000000000000..1cf217e109b7
--- /dev/null
+++ b/mpich2.profile
@@ -0,0 +1,2 @@
+export PATH=$PATH:/opt/mpich2/bin
+export PKG_CONFIG_PATH=$PKG_CONFIG_PATH:/opt/mpich2/lib/pkgconfig