Files
extra/openmpi/PKGBUILD
2025-06-22 20:39:04 -05:00

87 lines
2.6 KiB
Bash

# Maintainer: Jesus E. <heckyel@riseup.net>
pkgname=openmpi
pkgver=4.0.5
_debver=4.0.5
_debrel=7
pkgrel=1
pkgdesc='High performance message passing library (MPI)'
url='https://www.open-mpi.org'
arch=('i686' 'x86_64')
license=('Modified-BSD')
depends=('libtool' 'hwloc' 'openssh' 'zlib' 'libnl' 'perl')
makedepends=('gcc-fortran' 'quilt')
optdepends=('gcc-fortran: fortran support')
options=('staticlibs')
source=(https://www.open-mpi.org/software/ompi/v${pkgver%.*}/downloads/${pkgname}-${pkgver}.tar.bz2
https://deb.debian.org/debian/pool/main/o/openmpi/openmpi_$_debver-$_debrel.debian.tar.xz)
sha512sums=('b7a1a5ccfc0eaa0f0504ff770b550480f7ae6727fa891e3310d9340a0d844a2ceddf62c2e59efd047ab9416b24c829919bbccd29606ca0e0d7a0569dad800011'
'ef33613aab252a33f85421be0edb1a5096c86d8d9eeffc4c7127d939cf37568d9871e886bc9acf63e3c902c184cbbee757c1bf69cc0924a9b6c598951c34766d')
prepare() {
cd ${pkgname}-${pkgver}
if [[ ${pkgver%.*} = ${_debver%.*} ]]; then
# Debian patches
export QUILT_PATCHES=debian/patches
export QUILT_REFRESH_ARGS='-p ab --no-timestamps --no-index'
export QUILT_DIFF_ARGS='--no-timestamps'
mv "$srcdir"/debian .
# Doesn't apply and seems unimportant
rm -v debian/patches/build_hurd || true
rm -v debian/patches/hppa.patch || true
rm -v debian/patches/ia64.patch || true
rm -v debian/patches/libdir.patch || true
rm -v debian/patches/mpifort.patch || true
rm -v debian/patches/opal_fifo.patch || true
rm -v debian/patches/pkg-config.patch || true
rm -v debian/patches/use-openib.patch || true
rm -v debian/patches/version-script.patch || true
quilt push -av
fi
./autogen.pl --force
}
build() {
cd ${pkgname}-${pkgver}
./configure --prefix=/usr \
--sysconfdir=/etc/${pkgname} \
--enable-mpi-fortran=all \
--libdir=/usr/lib/${pkgname} \
--enable-builtin-atomics \
--enable-mpi-cxx \
--disable-memchecker \
--enable-pretty-print-stacktrace \
--without-slurm \
--with-hwloc=/usr \
--with-libltdl=/usr \
FC=/usr/bin/gfortran \
LDFLAGS="${LDFLAGS} -Wl,-z,noexecstack"
make
}
check() {
cd ${pkgname}-${pkgver}
make check
}
package() {
cd ${pkgname}-${pkgver}
make DESTDIR="${pkgdir}" install
# FS#28583
install -dm 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
install -dm 755 "${pkgdir}/etc/ld.so.conf.d"
echo "/usr/lib/${pkgname}" > "${pkgdir}"/etc/ld.so.conf.d/${pkgname}.conf
install -Dm 644 LICENSE -t "${pkgdir}/usr/share/licenses/${pkgname}"
}
# vim: ts=2 sw=2 et: