public inbox for gentoo-commits@lists.gentoo.org
 help / color / mirror / Atom feed
From: "Sam James" <sam@gentoo.org>
To: gentoo-commits@lists.gentoo.org
Subject: [gentoo-commits] repo/gentoo:master commit in: sys-cluster/openmpi/
Date: Sat,  4 Jun 2022 01:17:02 +0000 (UTC)	[thread overview]
Message-ID: <1654305415.f6e611531d183fae2e185d8427ce058c95cbf628.sam@gentoo> (raw)

commit:     f6e611531d183fae2e185d8427ce058c95cbf628
Author:     Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Sat Jun  4 00:28:08 2022 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Sat Jun  4 01:16:55 2022 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=f6e61153

sys-cluster/openmpi: add 4.1.4

Signed-off-by: Sam James <sam <AT> gentoo.org>

 sys-cluster/openmpi/Manifest             |   1 +
 sys-cluster/openmpi/openmpi-4.1.4.ebuild | 186 +++++++++++++++++++++++++++++++
 2 files changed, 187 insertions(+)

diff --git a/sys-cluster/openmpi/Manifest b/sys-cluster/openmpi/Manifest
index 42c7707e372a..204d9ee2be6f 100644
--- a/sys-cluster/openmpi/Manifest
+++ b/sys-cluster/openmpi/Manifest
@@ -1 +1,2 @@
 DIST openmpi-4.1.2.tar.bz2 10084596 BLAKE2B 2e6fc12b4564a302d2c364528d0f6bea8b23f9b1cd6059763b8d5de583d86aae2812c239b1d0bb40c83f3c7682c8e666ce1de3112e95de54848169cb5e2805e8 SHA512 1958f96434cddbe525b4511fcf8d0cf8bf1ff376e024466219bd3a2092900e318f45a4b1e1a8ef6b03e350f46a71777fc7db82a7df711f12bb9758150d209aad
+DIST openmpi-4.1.4.tar.bz2 10042839 BLAKE2B b020e3530ae5dde7b144e7c33b1a3f26f622526a4b48a97a0956fc6f49bbf9dfd5be9ebeeaf3bdc5168a307507408ba5dd8e2a537148821e1d476678177dc5d6 SHA512 c70a92c9b16b8c76a871183f9b180d60861186e64140da897d206d53bc06213f31ea93b31734645f580f4bf28dda5605d85dbce2417e4596955384d961bed653

diff --git a/sys-cluster/openmpi/openmpi-4.1.4.ebuild b/sys-cluster/openmpi/openmpi-4.1.4.ebuild
new file mode 100644
index 000000000000..35d6f2a025ad
--- /dev/null
+++ b/sys-cluster/openmpi/openmpi-4.1.4.ebuild
@@ -0,0 +1,186 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+FORTRAN_NEEDED=fortran
+
+inherit cuda fortran-2 java-pkg-opt-2 multilib-minimal
+
+MY_P=${P/-mpi}
+S=${WORKDIR}/${MY_P}
+
+IUSE_OPENMPI_FABRICS="
+	openmpi_fabrics_ofed
+	openmpi_fabrics_knem"
+
+IUSE_OPENMPI_RM="
+	openmpi_rm_pbs
+	openmpi_rm_slurm"
+
+IUSE_OPENMPI_OFED_FEATURES="
+	openmpi_ofed_features_control-hdr-padding
+	openmpi_ofed_features_udcm
+	openmpi_ofed_features_rdmacm
+	openmpi_ofed_features_dynamic-sl"
+
+DESCRIPTION="A high-performance message passing library (MPI)"
+HOMEPAGE="https://www.open-mpi.org"
+SRC_URI="https://www.open-mpi.org/software/ompi/v$(ver_cut 1-2)/downloads/${MY_P}.tar.bz2"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~ia64 ~ppc ~ppc64 ~riscv ~sparc ~x86 ~amd64-linux"
+IUSE="cma cuda cxx fortran ipv6 java libompitrace peruse romio
+	${IUSE_OPENMPI_FABRICS} ${IUSE_OPENMPI_RM} ${IUSE_OPENMPI_OFED_FEATURES}"
+
+REQUIRED_USE="
+	openmpi_rm_slurm? ( !openmpi_rm_pbs )
+	openmpi_rm_pbs? ( !openmpi_rm_slurm )
+	openmpi_ofed_features_control-hdr-padding? ( openmpi_fabrics_ofed )
+	openmpi_ofed_features_udcm? ( openmpi_fabrics_ofed )
+	openmpi_ofed_features_rdmacm? ( openmpi_fabrics_ofed )
+	openmpi_ofed_features_dynamic-sl? ( openmpi_fabrics_ofed )"
+
+CDEPEND="
+	!sys-cluster/mpich
+	!sys-cluster/mpich2
+	!sys-cluster/nullmpi
+	>=dev-libs/libevent-2.0.22:=[${MULTILIB_USEDEP},threads]
+	dev-libs/libltdl:0[${MULTILIB_USEDEP}]
+	>=sys-apps/hwloc-2.0.2:=[${MULTILIB_USEDEP}]
+	>=sys-libs/zlib-1.2.8-r1[${MULTILIB_USEDEP}]
+	cuda? ( >=dev-util/nvidia-cuda-toolkit-6.5.19-r1:= )
+	openmpi_fabrics_ofed? ( sys-cluster/rdma-core )
+	openmpi_fabrics_knem? ( sys-cluster/knem )
+	openmpi_rm_pbs? ( sys-cluster/torque )
+	openmpi_rm_slurm? ( sys-cluster/slurm )
+	openmpi_ofed_features_rdmacm? ( sys-cluster/rdma-core )"
+
+RDEPEND="${CDEPEND}
+	java? ( >=virtual/jre-1.8:* )"
+
+DEPEND="${CDEPEND}
+	java? ( >=virtual/jdk-1.8:* )"
+
+MULTILIB_WRAPPED_HEADERS=(
+	/usr/include/mpi.h
+	/usr/include/openmpi/ompi/mpi/java/mpiJava.h
+	/usr/include/openmpi/mpiext/mpiext_cuda_c.h
+)
+
+pkg_setup() {
+	fortran-2_pkg_setup
+	java-pkg-opt-2_pkg_setup
+
+	elog
+	elog "OpenMPI has an overwhelming count of configuration options."
+	elog "Don't forget the EXTRA_ECONF environment variable can let you"
+	elog "specify configure options if you find them necessary."
+	elog
+}
+
+src_prepare() {
+	default
+
+	# Avoid test which ends up looking at system mounts
+	echo "int main() { return 0; }" > test/util/opal_path_nfs.c || die
+
+	# Necessary for scalibility, see
+	# http://www.open-mpi.org/community/lists/users/2008/09/6514.php
+	echo 'oob_tcp_listen_mode = listen_thread' \
+		>> opal/etc/openmpi-mca-params.conf || die
+}
+
+multilib_src_configure() {
+	if use java; then
+		# We must always build with the right -source and -target
+		# flags. Passing flags to javac isn't explicitly supported here
+		# but we can cheat by overriding the configure test for javac.
+		export ac_cv_path_JAVAC="$(java-pkg_get-javac) $(java-pkg_javac-args)"
+	fi
+
+	local myconf=(
+		# configure takes a looooong time, but upstream currently force
+		# constriants on caching:
+		# https://github.com/open-mpi/ompi/blob/9eec56222a5c98d13790c9ee74877f1562ac27e8/config/opal_config_subdir.m4#L118
+		# so no --cache-dir for now.
+		--enable-mpi-fortran=$(usex fortran all no)
+		--enable-orterun-prefix-by-default
+		--enable-pretty-print-stacktrace
+
+		--sysconfdir="${EPREFIX}/etc/${PN}"
+
+		--with-hwloc="${EPREFIX}/usr"
+		--with-hwloc-libdir="${EPREFIX}/usr/$(get_libdir)"
+		--with-libltdl="${EPREFIX}/usr"
+		--with-libevent="${EPREFIX}/usr"
+		--with-libevent-libdir="${EPREFIX}/usr/$(get_libdir)"
+
+		# Re-enable for 5.0!
+		# See https://github.com/open-mpi/ompi/issues/9697#issuecomment-1003746357
+		# and https://bugs.gentoo.org/828123#c14
+		--disable-heterogeneous
+
+		$(use_enable cxx mpi-cxx)
+		$(use_enable ipv6)
+		$(use_enable libompitrace)
+		$(use_enable peruse)
+		$(use_enable romio io-romio)
+
+		$(use_with cma)
+
+		$(multilib_native_use_enable java mpi-java)
+		$(multilib_native_use_enable openmpi_ofed_features_control-hdr-padding openib-control-hdr-padding)
+		$(multilib_native_use_enable openmpi_ofed_features_rdmacm openib-rdmacm)
+		$(multilib_native_use_enable openmpi_ofed_features_udcm openib-udcm)
+		$(multilib_native_use_enable openmpi_ofed_features_dynamic-sl openib-dynamic-sl)
+
+		$(multilib_native_use_with cuda cuda "${EPREFIX}"/opt/cuda)
+		$(multilib_native_use_with openmpi_fabrics_ofed verbs "${EPREFIX}"/usr)
+		$(multilib_native_use_with openmpi_fabrics_knem knem "${EPREFIX}"/usr)
+		$(multilib_native_use_with openmpi_rm_pbs tm)
+		$(multilib_native_use_with openmpi_rm_slurm slurm)
+	)
+
+	CONFIG_SHELL="${BROOT}"/bin/bash ECONF_SOURCE="${S}" econf "${myconf[@]}"
+}
+
+multilib_src_compile() {
+	emake V=1
+}
+
+multilib_src_install() {
+	default
+
+	# fortran header cannot be wrapped (bug #540508), workaround part 1
+	if multilib_is_native_abi && use fortran; then
+		mkdir "${T}"/fortran || die
+		mv "${ED}"/usr/include/mpif* "${T}"/fortran || die
+	else
+		# some fortran files get installed unconditionally
+		rm \
+			"${ED}"/usr/include/mpif* \
+			"${ED}"/usr/bin/mpif* \
+			|| die
+	fi
+}
+
+multilib_src_install_all() {
+	# fortran header cannot be wrapped (bug #540508), workaround part 2
+	if use fortran; then
+		mv "${T}"/fortran/mpif* "${ED}"/usr/include || die
+	fi
+
+	# Remove la files, no static libs are installed and we have pkg-config
+	find "${ED}" -name '*.la' -delete || die
+
+	if use java; then
+		local mpi_jar="${ED}"/usr/$(get_libdir)/mpi.jar
+		java-pkg_dojar "${mpi_jar}"
+		# We don't want to install the jar file twice
+		# so let's clean after ourselves.
+		rm "${mpi_jar}" || die
+	fi
+	einstalldocs
+}


             reply	other threads:[~2022-06-04  1:17 UTC|newest]

Thread overview: 141+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2022-06-04  1:17 Sam James [this message]
  -- strict thread matches above, loose matches on Subject: below --
2024-08-24  6:41 [gentoo-commits] repo/gentoo:master commit in: sys-cluster/openmpi/ Michał Górny
2024-08-23 23:37 Jakov Smolić
2024-08-23 17:32 Eli Schwartz
2024-08-23 17:32 Eli Schwartz
2024-08-10 18:21 Arthur Zamarin
2024-07-17  5:43 Eli Schwartz
2024-07-17  5:43 Eli Schwartz
2024-07-15 11:14 Miroslav Šulc
2024-07-15 11:14 Miroslav Šulc
2024-07-12  5:55 Eli Schwartz
2024-07-12  5:55 Eli Schwartz
2024-07-12  5:55 Eli Schwartz
2024-06-14  6:45 Sam James
2024-06-14  6:45 Sam James
2024-02-22 20:33 Arthur Zamarin
2024-02-22 20:33 Arthur Zamarin
2024-02-22 20:33 Arthur Zamarin
2024-02-21  2:29 Sam James
2024-02-02  1:02 Sam James
2024-01-24 20:34 Arthur Zamarin
2024-01-24 19:21 Michał Górny
2023-12-19 11:27 Sam James
2023-09-10 20:33 David Seifert
2023-06-03  9:50 WANG Xuerui
2023-05-16  3:39 Sam James
2023-02-14  0:29 Mike Gilbert
2022-12-26 20:30 David Seifert
2022-12-06 15:16 Arthur Zamarin
2022-12-06 15:16 Arthur Zamarin
2022-12-06 15:16 Arthur Zamarin
2022-12-06 15:16 Arthur Zamarin
2022-12-06 14:33 Arthur Zamarin
2022-12-06 14:33 Arthur Zamarin
2022-10-17  3:17 Sam James
2022-03-07  4:29 Sam James
2022-02-02  6:21 Sam James
2022-01-29  0:44 Sam James
2022-01-29  0:02 Sam James
2022-01-29  0:02 Sam James
2022-01-28 19:20 Arthur Zamarin
2022-01-28 19:20 Arthur Zamarin
2022-01-28 19:16 Arthur Zamarin
2022-01-16 18:26 David Seifert
2022-01-16  0:00 David Seifert
2021-12-01  5:48 Arthur Zamarin
2021-12-01  5:48 Arthur Zamarin
2021-11-25  6:47 Sam James
2021-11-25  6:47 Sam James
2021-10-29 22:44 Sam James
2021-10-26 17:08 Jakov Smolić
2021-10-20  0:11 Sam James
2021-10-16  6:29 Sam James
2021-10-16  2:12 Sam James
2021-10-15  6:00 Agostino Sarubbo
2021-10-14 13:39 Agostino Sarubbo
2021-10-13 20:35 Sam James
2021-08-25 12:43 Pacho Ramos
2021-08-25 10:16 Pacho Ramos
2021-07-14 22:45 Marek Szuba
2021-07-05 13:25 Marek Szuba
2021-06-15 13:03 Joonas Niilola
2021-06-15 13:03 Joonas Niilola
2021-05-09 22:28 Pacho Ramos
2021-04-03 15:44 Sam James
2021-02-28 11:27 罗百科
2021-01-05 15:17 Mikle Kolyada
2020-07-30  8:29 Mikle Kolyada
2020-05-08  8:25 Alexys Jacob
2020-03-24  9:51 Mikle Kolyada
2020-03-22 14:55 Mikle Kolyada
2020-03-22 14:52 Mikle Kolyada
2020-03-22 14:43 Mikle Kolyada
2020-03-22 14:34 Mikle Kolyada
2020-03-21  9:38 Mikle Kolyada
2020-03-21  9:38 Mikle Kolyada
2020-02-24  9:22 Mikle Kolyada
2020-02-23  9:35 Mikle Kolyada
2020-02-23  9:34 Mikle Kolyada
2020-02-23  9:25 Mikle Kolyada
2020-01-01 16:26 Mikle Kolyada
2019-11-10 13:26 Mikle Kolyada
2019-10-26 21:04 Mikle Kolyada
2019-10-10 21:19 Mikle Kolyada
2019-09-04 14:21 Justin Bronder
2019-08-29 21:05 Justin Bronder
2019-06-10 22:15 Justin Bronder
2019-06-10 22:15 Justin Bronder
2019-04-25 16:48 Justin Bronder
2019-04-22 15:06 Justin Bronder
2019-04-21 11:33 Alexey Shvetsov
2019-02-26  3:20 Justin Bronder
2018-11-16 17:01 Justin Bronder
2018-10-29 22:25 Justin Bronder
2018-09-11 14:29 Justin Bronder
2018-08-27 15:13 Justin Bronder
2018-08-21 21:22 Justin Bronder
2018-08-13 15:36 Justin Bronder
2018-07-02 17:05 Justin Bronder
2018-06-05 17:32 Justin Bronder
2018-05-24 14:53 Justin Bronder
2018-05-24 14:53 Justin Bronder
2018-05-22 22:40 Matthias Maier
2018-05-22  2:17 Christoph Junghans
2018-04-02 15:00 Justin Bronder
2018-03-19 14:20 Justin Bronder
2018-03-01 15:09 Michał Górny
2018-01-27  8:23 Michał Górny
2017-11-26 21:25 Justin Bronder
2017-11-26 20:05 Justin Bronder
2017-09-22 17:07 Justin Bronder
2017-06-01 22:09 Justin Bronder
2017-06-01 22:09 Justin Bronder
2017-05-10 20:47 Justin Bronder
2017-04-02 23:41 Matt Turner
2017-03-23  0:48 Justin Bronder
2017-03-22 20:15 Justin Bronder
2017-03-22 19:58 Justin Bronder
2017-03-17  6:36 Matt Turner
2017-03-17  6:36 Matt Turner
2017-03-10 10:59 Agostino Sarubbo
2017-03-10  9:09 Agostino Sarubbo
2017-02-22 22:54 Michael Weber
2017-02-17 22:09 Justin Bronder
2017-02-01 14:29 Justin Bronder
2016-11-09 15:59 Justin Bronder
2016-09-27 11:04 Tobias Klausmann
2016-09-12  1:32 Christoph Junghans
2016-09-08 20:20 Christoph Junghans
2016-09-06  0:18 Christoph Junghans
2016-08-29 20:58 Christoph Junghans
2016-08-29 20:58 Christoph Junghans
2016-08-11 19:06 David Seifert
2016-08-11 17:18 David Seifert
2016-08-11 14:27 Christoph Junghans
2016-08-11 13:31 Justin Bronder
2016-08-11  7:55 David Seifert
2016-06-29 22:33 Alexey Shvetsov
2016-02-11  2:04 Justin Bronder
2015-09-23 21:51 Justin Bronder
2015-08-24  5:21 Jeroen Roovers

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=1654305415.f6e611531d183fae2e185d8427ce058c95cbf628.sam@gentoo \
    --to=sam@gentoo.org \
    --cc=gentoo-commits@lists.gentoo.org \
    --cc=gentoo-dev@lists.gentoo.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox