64 lines
2.5 KiB
Plaintext
Executable File
64 lines
2.5 KiB
Plaintext
Executable File
#!/usr/bin/env modbuild
|
|
|
|
# pbuild::set_download_url \
|
|
# "http://www.open-mpi.org/software/ompi/v${V_MAJOR}.${V_MINOR}/downloads/openmpi-${V_PKG}.tar.bz2"
|
|
|
|
pbuild::set_download_url \
|
|
"https://download.open-mpi.org/release/open-mpi/v${V_MAJOR}.${V_MINOR}/openmpi-${V_PKG}.tar.bz2"
|
|
|
|
pbuild::set_sha256sum "openmpi-3.1.2.tar.bz2:c654ed847f34a278c52a15c98add40402b4a90f0c540779f1ae6c489af8a76c5"
|
|
|
|
pbuild::add_to_group 'Compiler'
|
|
pbuild::install_docfiles 'AUTHORS' 'LICENSE' 'NEWS' 'README'
|
|
|
|
|
|
pbuild::pre_configure() {
|
|
INSTALL_LIBPMIX=false
|
|
|
|
if [[ -n "${CUDA_VERSION}" ]]; then
|
|
pbuild::add_configure_args "--with-cuda=${CUDA_HOME}"
|
|
fi
|
|
pbuild::add_configure_args "--prefix=${PREFIX}"
|
|
pbuild::add_configure_args "--enable-mpi-cxx"
|
|
pbuild::add_configure_args "--enable-mpi-cxx-seek"
|
|
pbuild::add_configure_args "--enable-orterun-prefix-by-default"
|
|
pbuild::add_configure_args "--enable-shared"
|
|
pbuild::add_configure_args "--enable-static"
|
|
pbuild::add_configure_args "--with-sge=yes"
|
|
pbuild::add_configure_args "--with-ucx"
|
|
pbuild::add_configure_args "--with-hwloc=internal"
|
|
pbuild::add_configure_args "--with-slurm=yes"
|
|
|
|
if pbuild::use_flag slurm ; then
|
|
pbuild::add_configure_args "--with-pmi"
|
|
pbuild::add_configure_args "--with-pmi-libdir=/usr/lib64/"
|
|
fi
|
|
|
|
local version
|
|
(( version = (${V_MAJOR} * 100 + ${V_MINOR}) * 100 + V_PATCHLVL ))
|
|
if (( V_MAJOR < 4 )); then
|
|
pbuild::add_configure_args "--enable-mpi-f90"
|
|
pbuild::add_configure_args "--enable-mpi-profile"
|
|
pbuild::add_configure_args "--enable-smp-locks"
|
|
elif (( V_MAJOR >= 4 )); then
|
|
pbuild::add_configure_args "--enable-mpi-fortran"
|
|
pbuild::add_configure_args "--without-verbs"
|
|
if ${INSTALL_LIBPMIX} ; then
|
|
echo "Enabling Install libpmix"
|
|
pbuild::add_configure_args "--enable-install-libpmix"
|
|
fi
|
|
fi
|
|
}
|
|
|
|
pbuild::post_install() {
|
|
mkdir -p "${PREFIX}/lib/fallback"
|
|
local -r binary=$(ls "${PREFIX}"/lib/libmpi.so.*.*.*)
|
|
pbuild::install_shared_libs "${binary}" "${PREFIX}/lib/fallback" '/libuc[mpst].so'
|
|
pbuild::install_shared_libs "${binary}" "${PREFIX}/lib/fallback" '/libuct_ib.so.0'
|
|
pbuild::install_shared_libs "${binary}" "${PREFIX}/lib/fallback" '/libnuma.so'
|
|
pbuild::install_shared_libs "${binary}" "${PREFIX}/lib/fallback" '/libibverbs.so'
|
|
pbuild::install_shared_libs "${binary}" "${PREFIX}/lib/fallback" '/librdmacm.so'
|
|
pbuild::install_shared_libs "${binary}" "${PREFIX}/lib/fallback" '/libpmi.so'
|
|
pbuild::install_shared_libs "${binary}" "${PREFIX}/lib/fallback" '/libpmi2.so'
|
|
}
|