void-packages/srcpkgs/openmpi/template

69 lines
1.8 KiB
Bash

# Template file for 'openmpi'
pkgname=openmpi
version=5.0.4
revision=1
# OpenMPI >= 5 is 64-bit only
archs="x86_64* aarch64* ppc64* riscv64*"
build_style=gnu-configure
configure_args="--enable-ipv6 --with-pmix=internal --with-prrte=internal \
--libdir=\${prefix}/lib${XBPS_TARGET_WORDSIZE} --sysconfdir=/etc/openmpi \
--with-hwloc=${XBPS_CROSS_BASE}/usr "
hostmakedepends="perl pkg-config python3"
makedepends="libgomp-devel libhwloc-devel zlib-devel libevent-devel"
conf_files="/etc/openmpi/*"
short_desc="High Performance Message Passing Library"
maintainer="Andrew J. Hesford <ajh@sideband.org>"
license="BSD-3-Clause"
homepage="https://www.open-mpi.org/"
distfiles="https://download.open-mpi.org/release/open-mpi/v${version%.*}/openmpi-${version}.tar.bz2"
checksum=64526852cdd88b2d30e022087c16ab3e03806c451b10cd691d5c1ac887d8ef9d
lib32disabled=yes
if [ "${CROSS_BUILD}" ]; then
# configure can't figure out cross-fortran
configure_args+=" --enable-mpi-fortran=none --enable-oshmem-fortran=none"
else
hostmakedepends+=" gcc-fortran"
makedepends+=" libgfortran-devel"
fi
post_patch() {
vsed -e 's,sys/unistd.h,unistd.h,g' -i opal/include/opal/sys/cma.h
}
pre_configure() {
# OpenMPI only respects FCFLAGS now
export FCFLAGS="${FFLAGS}"
}
post_install() {
vlicense LICENSE
# Avoid a conflict with PuTTY's pterm executable
mv "${DESTDIR}"/usr/bin/{,prrte-}pterm
mv "${DESTDIR}"/usr/share/man/man1/{,prrte-}pterm.1
}
libopenmpi_package() {
short_desc+=" - runtime libraries"
pkg_install() {
vmove usr/lib/*.so.*
}
}
openmpi-devel_package() {
depends="libopenmpi-${version}_${revision}
libhwloc-devel libevent-devel zlib-devel"
short_desc+=" - development files"
pkg_install() {
vmove usr/include
vmove usr/lib/pkgconfig
vmove usr/share/man/man3
vmove "usr/lib/*.so"
if [ -z "${CROSS_BUILD}" ]; then
vmove "usr/lib/*.mod"
fi
}
}