Commit bf5c8f6c authored by Msnuel's avatar Msnuel

Update+fix

parent 8720f9af
#
# Core Packages for Chakra, part of chakra-project.org
#
# Maintainer: Manuel Tortosa
pkgname=openmpi
pkgver=1.5.5
pkgver=1.6.4
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')
depends=('gcc-fortran' 'openssh' 'valgrind' 'libltdl' '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'
'3161fce9870e02211dadbc0993b7805e2e811440')
source=(http://www.open-mpi.org/software/ompi/v1.6/downloads/${pkgname}-${pkgver}.tar.bz2)
sha1sums=('38095d3453519177272f488d5058a98f7ebdbf10')
build() {
cd "${srcdir}/${pkgname}-${pkgver}"
# Fix fakeroot
patch -p1 -i $srcdir/openmpi-1.5.4-fix-fakeroot-execution.patch
# Make sure we use the system ltdl librariry rather than the ones in the tarball
rm -r opal/libltdl
./configure --prefix=/usr \
--sysconfdir=/etc/${pkgname} \
......@@ -36,7 +32,7 @@ build() {
--enable-pretty-print-stacktrace \
--without-slurm \
--with-hwloc=/usr \
--with-libltdl=/usr \
--with-libltdl=/usr \
FC=/usr/bin/gfortran \
LDFLAGS="$LDFLAGS -Wl,-z,noexecstack"
......@@ -47,17 +43,15 @@ 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/
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
......
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@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...).
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment