vp-build/srcpkgs/openmpi/template

69 lines
1.9 KiB
Bash

# Template file for 'openmpi'
pkgname=openmpi
version=4.1.4
revision=1
build_style=gnu-configure
configure_args="--enable-ipv6 --with-hwloc=${XBPS_CROSS_BASE}/usr
--libdir=\${prefix}/lib${XBPS_TARGET_WORDSIZE}"
hostmakedepends="perl pkg-config automake libtool"
makedepends="libgomp-devel libhwloc-devel zlib-devel libevent-devel"
conf_files="
/etc/openmpi-default-hostfile
/etc/openmpi-mca-params.conf
/etc/openmpi-totalview.tcl"
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="${homepage}/software/ompi/v${version%.*}/downloads/${pkgname}-${version}.tar.bz2"
checksum=92912e175fd1234368c8730c03f4996fe5942e7479bb1d10059405e7f2b3930d
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
if [ "$XBPS_TARGET_NO_ATOMIC8" ]; then
makedepends+=" libatomic-devel"
export LIBS="-latomic"
fi
post_patch() {
vsed -e 's,sys/unistd.h,unistd.h,g' -i opal/include/opal/sys/cma.h
vsed -e '1i#include <unistd.h>' -i opal/mca/pmix/pmix3x/pmix/include/pmix_server.h
}
pre_configure() {
# OpenMPI only respects FCFLAGS now
export FCFLAGS="${FFLAGS}"
}
post_install() {
vlicense LICENSE
# https://github.com/void-linux/void-packages/pull/28996#issuecomment-784255185
mv "${DESTDIR}/usr/lib/ompi_monitoring_prof.so" "${DESTDIR}/usr/lib/openmpi"
}
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"
}
}