[arch-commits] Commit in openmpi/repos (6 files)
Stéphane Gaudreault
stephane at archlinux.org
Thu Mar 29 09:52:47 UTC 2012
Date: Thursday, March 29, 2012 @ 05:52:47
Author: stephane
Revision: 154489
archrelease: copy trunk to testing-i686, testing-x86_64
Added:
openmpi/repos/testing-i686/
openmpi/repos/testing-i686/PKGBUILD
(from rev 154488, openmpi/trunk/PKGBUILD)
openmpi/repos/testing-i686/openmpi-1.5.4-fix-fakeroot-execution.patch
(from rev 154488, openmpi/trunk/openmpi-1.5.4-fix-fakeroot-execution.patch)
openmpi/repos/testing-x86_64/
openmpi/repos/testing-x86_64/PKGBUILD
(from rev 154488, openmpi/trunk/PKGBUILD)
openmpi/repos/testing-x86_64/openmpi-1.5.4-fix-fakeroot-execution.patch
(from rev 154488, openmpi/trunk/openmpi-1.5.4-fix-fakeroot-execution.patch)
-----------------------------------------------------------+
testing-i686/PKGBUILD | 67 ++++++++++++
testing-i686/openmpi-1.5.4-fix-fakeroot-execution.patch | 43 +++++++
testing-x86_64/PKGBUILD | 67 ++++++++++++
testing-x86_64/openmpi-1.5.4-fix-fakeroot-execution.patch | 43 +++++++
4 files changed, 220 insertions(+)
Copied: openmpi/repos/testing-i686/PKGBUILD (from rev 154488, openmpi/trunk/PKGBUILD)
===================================================================
--- testing-i686/PKGBUILD (rev 0)
+++ testing-i686/PKGBUILD 2012-03-29 09:52:47 UTC (rev 154489)
@@ -0,0 +1,67 @@
+# $Id$
+# Maintainer: Stéphane Gaudreault <stephane at archlinux.org>
+pkgname=openmpi
+pkgver=1.5.5
+pkgrel=1
+pkgdesc="High performance message passing library (MPI)"
+arch=('i686' 'x86_64')
+url="http://www.open-mpi.org"
+license=('custom')
+depends=('gcc' 'gcc-fortran' 'openssh' 'valgrind' 'libtool' 'hwloc')
+makedepends=('inetutils')
+options=(!libtool)
+source=(http://www.open-mpi.org/software/ompi/v1.5/downloads/${pkgname}-${pkgver}.tar.bz2
+ openmpi-1.5.4-fix-fakeroot-execution.patch)
+sha1sums=('206e555f6d376443f2342f721d944e67dd1a04ef'
+ 'ec46abb6f9e01daca910e4079b9abc036db9ed20')
+
+build() {
+ cd "${srcdir}/${pkgname}-${pkgver}"
+
+ # Fix fakeroot problem (FS#28644)
+ patch -Np1 -i ../openmpi-1.5.4-fix-fakeroot-execution.patch
+
+ ./configure --prefix=/usr \
+ --sysconfdir=/etc/${pkgname} \
+ --mandir=/usr/share/man \
+ --enable-mpi-f90 \
+ --libdir=/usr/lib/${pkgname} \
+ --with-threads=posix \
+ --enable-smp-locks \
+ --with-valgrind \
+ --enable-memchecker \
+ --enable-debug \
+ --enable-pretty-print-stacktrace \
+ --without-slurm \
+ --with-hwloc=/usr \
+ --with-libltdl=/usr \
+ FC=/usr/bin/gfortran \
+ LDFLAGS="$LDFLAGS -Wl,-z,noexecstack"
+
+ make
+}
+
+package() {
+ cd "${srcdir}/${pkgname}-${pkgver}"
+ make DESTDIR="${pkgdir}" install
+
+ # FS#28583
+ install -d -m 755 "${pkgdir}"/usr/lib/pkgconfig
+ for i in ompi-c.pc ompi-cxx.pc ompi-f77.pc ompi-f90.pc ompi.pc; do
+ ln -sf /usr/lib/openmpi/pkgconfig/$i "${pkgdir}"/usr/lib/pkgconfig/
+ done
+
+ # Openmpi's otfinfo conflicts with the one from texlive
+ mv "${pkgdir}"/usr/bin/otfinfo{,mpi}
+
+ # Openmpi's otfdump conflicts with the one from libotf
+ mv "${pkgdir}"/usr/bin/otfdump{,ompi}
+
+ # Remove dangling symlink
+ rm "${pkgdir}"/usr/share/man/man1/orteCC.1
+
+ install -d -m 755 "${pkgdir}"/etc/ld.so.conf.d
+ echo "/usr/lib/${pkgname}" > "${pkgdir}"/etc/ld.so.conf.d/${pkgname}.conf
+
+ install -Dm644 LICENSE "${pkgdir}"/usr/share/licenses/${pkgname}/LICENSE
+}
Copied: openmpi/repos/testing-i686/openmpi-1.5.4-fix-fakeroot-execution.patch (from rev 154488, openmpi/trunk/openmpi-1.5.4-fix-fakeroot-execution.patch)
===================================================================
--- testing-i686/openmpi-1.5.4-fix-fakeroot-execution.patch (rev 0)
+++ testing-i686/openmpi-1.5.4-fix-fakeroot-execution.patch 2012-03-29 09:52:47 UTC (rev 154489)
@@ -0,0 +1,43 @@
+Description: If running under Debian fakeroot then its important
+ that this hook is disabled; a new stat check was introduced in
+ 1.5.x which preceeds the FAKEROOT check resulting in a SEGFAULT.
+Author: James Page <james.page at ubuntu.com>
+Origin: https://svn.open-mpi.org/trac/ompi/changeset/21489
+
+Index: openmpi-1.5.4/opal/mca/memory/linux/hooks.c
+===================================================================
+--- openmpi-1.5.4.orig/opal/mca/memory/linux/hooks.c 2012-02-15 12:59:39.986314651 +0000
++++ openmpi-1.5.4/opal/mca/memory/linux/hooks.c 2012-02-15 13:14:57.744722517 +0000
+@@ -738,15 +738,6 @@
+ check_result_t r1, r2, lp, lpp;
+ bool want_rcache = false, found_driver = false;
+
+- /* First, check if ummunotify is present on the system. If it is,
+- then we don't need to do the following ptmalloc2 hacks.
+- open/mmap on the device may fail during init, but if /dev/ummunotify
+- exists, we assume that the user/administrator *wants* to use
+- ummunotify. */
+- if (stat("/dev/ummunotify", &st) == 0) {
+- return;
+- }
+-
+ /* Yes, checking for an MPI MCA parameter here is an abstraction
+ violation. Cope. Yes, even checking for *any* MCA parameter
+ here (without going through the MCA param API) is an
+@@ -769,6 +760,15 @@
+ return;
+ }
+
++ /* Next, check if ummunotify is present on the system. If it is,
++ then we don't need to do the following ptmalloc2 hacks.
++ open/mmap on the device may fail during init, but if /dev/ummunotify
++ exists, we assume that the user/administrator *wants* to use
++ ummunotify. */
++ if (stat("/dev/ummunotify", &st) == 0) {
++ return;
++ }
++
+ /* Look for sentinel files (directories) to see if various network
+ drivers are loaded (yes, I know, further abstraction
+ violations...).
+
Copied: openmpi/repos/testing-x86_64/PKGBUILD (from rev 154488, openmpi/trunk/PKGBUILD)
===================================================================
--- testing-x86_64/PKGBUILD (rev 0)
+++ testing-x86_64/PKGBUILD 2012-03-29 09:52:47 UTC (rev 154489)
@@ -0,0 +1,67 @@
+# $Id$
+# Maintainer: Stéphane Gaudreault <stephane at archlinux.org>
+pkgname=openmpi
+pkgver=1.5.5
+pkgrel=1
+pkgdesc="High performance message passing library (MPI)"
+arch=('i686' 'x86_64')
+url="http://www.open-mpi.org"
+license=('custom')
+depends=('gcc' 'gcc-fortran' 'openssh' 'valgrind' 'libtool' 'hwloc')
+makedepends=('inetutils')
+options=(!libtool)
+source=(http://www.open-mpi.org/software/ompi/v1.5/downloads/${pkgname}-${pkgver}.tar.bz2
+ openmpi-1.5.4-fix-fakeroot-execution.patch)
+sha1sums=('206e555f6d376443f2342f721d944e67dd1a04ef'
+ 'ec46abb6f9e01daca910e4079b9abc036db9ed20')
+
+build() {
+ cd "${srcdir}/${pkgname}-${pkgver}"
+
+ # Fix fakeroot problem (FS#28644)
+ patch -Np1 -i ../openmpi-1.5.4-fix-fakeroot-execution.patch
+
+ ./configure --prefix=/usr \
+ --sysconfdir=/etc/${pkgname} \
+ --mandir=/usr/share/man \
+ --enable-mpi-f90 \
+ --libdir=/usr/lib/${pkgname} \
+ --with-threads=posix \
+ --enable-smp-locks \
+ --with-valgrind \
+ --enable-memchecker \
+ --enable-debug \
+ --enable-pretty-print-stacktrace \
+ --without-slurm \
+ --with-hwloc=/usr \
+ --with-libltdl=/usr \
+ FC=/usr/bin/gfortran \
+ LDFLAGS="$LDFLAGS -Wl,-z,noexecstack"
+
+ make
+}
+
+package() {
+ cd "${srcdir}/${pkgname}-${pkgver}"
+ make DESTDIR="${pkgdir}" install
+
+ # FS#28583
+ install -d -m 755 "${pkgdir}"/usr/lib/pkgconfig
+ for i in ompi-c.pc ompi-cxx.pc ompi-f77.pc ompi-f90.pc ompi.pc; do
+ ln -sf /usr/lib/openmpi/pkgconfig/$i "${pkgdir}"/usr/lib/pkgconfig/
+ done
+
+ # Openmpi's otfinfo conflicts with the one from texlive
+ mv "${pkgdir}"/usr/bin/otfinfo{,mpi}
+
+ # Openmpi's otfdump conflicts with the one from libotf
+ mv "${pkgdir}"/usr/bin/otfdump{,ompi}
+
+ # Remove dangling symlink
+ rm "${pkgdir}"/usr/share/man/man1/orteCC.1
+
+ install -d -m 755 "${pkgdir}"/etc/ld.so.conf.d
+ echo "/usr/lib/${pkgname}" > "${pkgdir}"/etc/ld.so.conf.d/${pkgname}.conf
+
+ install -Dm644 LICENSE "${pkgdir}"/usr/share/licenses/${pkgname}/LICENSE
+}
Copied: openmpi/repos/testing-x86_64/openmpi-1.5.4-fix-fakeroot-execution.patch (from rev 154488, openmpi/trunk/openmpi-1.5.4-fix-fakeroot-execution.patch)
===================================================================
--- testing-x86_64/openmpi-1.5.4-fix-fakeroot-execution.patch (rev 0)
+++ testing-x86_64/openmpi-1.5.4-fix-fakeroot-execution.patch 2012-03-29 09:52:47 UTC (rev 154489)
@@ -0,0 +1,43 @@
+Description: If running under Debian fakeroot then its important
+ that this hook is disabled; a new stat check was introduced in
+ 1.5.x which preceeds the FAKEROOT check resulting in a SEGFAULT.
+Author: James Page <james.page at ubuntu.com>
+Origin: https://svn.open-mpi.org/trac/ompi/changeset/21489
+
+Index: openmpi-1.5.4/opal/mca/memory/linux/hooks.c
+===================================================================
+--- openmpi-1.5.4.orig/opal/mca/memory/linux/hooks.c 2012-02-15 12:59:39.986314651 +0000
++++ openmpi-1.5.4/opal/mca/memory/linux/hooks.c 2012-02-15 13:14:57.744722517 +0000
+@@ -738,15 +738,6 @@
+ check_result_t r1, r2, lp, lpp;
+ bool want_rcache = false, found_driver = false;
+
+- /* First, check if ummunotify is present on the system. If it is,
+- then we don't need to do the following ptmalloc2 hacks.
+- open/mmap on the device may fail during init, but if /dev/ummunotify
+- exists, we assume that the user/administrator *wants* to use
+- ummunotify. */
+- if (stat("/dev/ummunotify", &st) == 0) {
+- return;
+- }
+-
+ /* Yes, checking for an MPI MCA parameter here is an abstraction
+ violation. Cope. Yes, even checking for *any* MCA parameter
+ here (without going through the MCA param API) is an
+@@ -769,6 +760,15 @@
+ return;
+ }
+
++ /* Next, check if ummunotify is present on the system. If it is,
++ then we don't need to do the following ptmalloc2 hacks.
++ open/mmap on the device may fail during init, but if /dev/ummunotify
++ exists, we assume that the user/administrator *wants* to use
++ ummunotify. */
++ if (stat("/dev/ummunotify", &st) == 0) {
++ return;
++ }
++
+ /* Look for sentinel files (directories) to see if various network
+ drivers are loaded (yes, I know, further abstraction
+ violations...).
+
More information about the arch-commits
mailing list