diff options
| author | root <root@alpha.trunkmasters.com> | 2026-06-04 05:48:38 -0500 |
|---|---|---|
| committer | root <root@alpha.trunkmasters.com> | 2026-06-04 05:48:38 -0500 |
| commit | bfd9c39e4712ebdb442d4ca0673061faed1e70e1 (patch) | |
| tree | 0d7a74b4463ee387f9cf9368ceb1b757f694f72a /sys-cluster/rdma-core | |
| parent | f716a9fe6455d39eef01e718aae68dae61c19704 (diff) | |
| download | baldeagleos-repo-bfd9c39e4712ebdb442d4ca0673061faed1e70e1.tar.gz baldeagleos-repo-bfd9c39e4712ebdb442d4ca0673061faed1e70e1.tar.xz baldeagleos-repo-bfd9c39e4712ebdb442d4ca0673061faed1e70e1.zip | |
Revert "Adding metadata"
This reverts commit f716a9fe6455d39eef01e718aae68dae61c19704.
Diffstat (limited to 'sys-cluster/rdma-core')
| -rw-r--r-- | sys-cluster/rdma-core/Manifest | 4 | ||||
| -rw-r--r-- | sys-cluster/rdma-core/files/ibacm.init | 7 | ||||
| -rw-r--r-- | sys-cluster/rdma-core/files/iwpmd.init | 7 | ||||
| -rw-r--r-- | sys-cluster/rdma-core/files/rdma-core-39.0-RDMA_BuildType.patch | 12 | ||||
| -rw-r--r-- | sys-cluster/rdma-core/files/rdma-core-53.1-preload-fix-build-issue-with-clang-19.patch | 162 | ||||
| -rw-r--r-- | sys-cluster/rdma-core/files/rdma-core-57.0-fix-unclosed-string-literal.patch | 19 | ||||
| -rw-r--r-- | sys-cluster/rdma-core/files/srpd.init | 20 | ||||
| -rw-r--r-- | sys-cluster/rdma-core/metadata.xml | 16 | ||||
| -rw-r--r-- | sys-cluster/rdma-core/rdma-core-57.0-r1.ebuild | 120 | ||||
| -rw-r--r-- | sys-cluster/rdma-core/rdma-core-59.0-r1.ebuild | 120 | ||||
| -rw-r--r-- | sys-cluster/rdma-core/rdma-core-63.0.ebuild | 120 | ||||
| -rw-r--r-- | sys-cluster/rdma-core/rdma-core-9999.ebuild | 120 |
12 files changed, 727 insertions, 0 deletions
diff --git a/sys-cluster/rdma-core/Manifest b/sys-cluster/rdma-core/Manifest new file mode 100644 index 000000000000..711ffb02d1c3 --- /dev/null +++ b/sys-cluster/rdma-core/Manifest @@ -0,0 +1,4 @@ +DIST rdma-core-57.0.tar.gz 2020448 BLAKE2B 4808103af76e3314ce68b4fc3607d217d7b58c833758eda8c1b4da6251c82e18786e4d148d8947cf92f914894359b60d075b4c5b0b72b4f04fca2fb8e26ee82f SHA512 4a904d34af6863655545fe720cc25a8800684f63c51cebb67be2058363949217903957dc925c69d41294362ccff75fb0d37f3bc31cd6f6f252a804d6713f62cf +DIST rdma-core-59.0.tar.gz 2037869 BLAKE2B d2836c5c7590754484880951f00015bcf279479549d42ed52325eaf4e40128c4b1289c64986003fb4e326f797971c7c506b22e9fc018694865c7fadfb8a3568f SHA512 f2d2001240e875ad3fec4f2f01e90573468daa040e07ec2f6cc81e875cf7b950c2dfeab10962b8b3d70852ecfe0ede2644ff7bea87560a45084baa47bd2d5401 +DIST rdma-core-63.0-fix-efa-with-lttng.patch 1250 BLAKE2B c92299c5b8f659013cad2e840cd44447c2dadc67f4b957a92212dc83b6846968d796e5b448d75e1a0ff87d95584971614ba3aa74b5281fcf3fd01702dd959904 SHA512 7fbe97291ac1c35647cfac4ae2d1c51709c02ea2f797c6b88cd1a87f179c32731e3cd5ebab6c0ae9b07f10b3d20f6446cdd97671629b072431bf61a3c91eeeff +DIST rdma-core-63.0.tar.gz 2114488 BLAKE2B 00c36a6c40ed23daba79139ef0c537082b5382241fa229ecb5cf71c3b3c1467f96c09ca68185d58db16734c8890567fc3446979f4042b3992b868c101909b61b SHA512 aa7308455009a10eea8bff59b09ad80124ab70bbd8fe205451585c9111c33b0cb99f8112930e7b9a62a91d248f9f8411913c8a4f1edec013fae1493c6cb13629 diff --git a/sys-cluster/rdma-core/files/ibacm.init b/sys-cluster/rdma-core/files/ibacm.init new file mode 100644 index 000000000000..e87321aae596 --- /dev/null +++ b/sys-cluster/rdma-core/files/ibacm.init @@ -0,0 +1,7 @@ +#!/sbin/openrc-run +# Copyright 1999-2021 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +command="/usr/sbin/ibacm" +pidfile="/run/${SVCNAME}.pid" +command_background="yes" diff --git a/sys-cluster/rdma-core/files/iwpmd.init b/sys-cluster/rdma-core/files/iwpmd.init new file mode 100644 index 000000000000..c377b1e7d547 --- /dev/null +++ b/sys-cluster/rdma-core/files/iwpmd.init @@ -0,0 +1,7 @@ +#!/sbin/openrc-run +# Copyright 1999-2021 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +command="/usr/sbin/iwpmd" +pidfile="/run/${SVCNAME}.pid" +command_background="yes" diff --git a/sys-cluster/rdma-core/files/rdma-core-39.0-RDMA_BuildType.patch b/sys-cluster/rdma-core/files/rdma-core-39.0-RDMA_BuildType.patch new file mode 100644 index 000000000000..969028358733 --- /dev/null +++ b/sys-cluster/rdma-core/files/rdma-core-39.0-RDMA_BuildType.patch @@ -0,0 +1,12 @@ +* RDMA_BuildType() tries to muck with CMAKE_BUILD_TYPE + +--- a/CMakeLists.txt ++++ b/CMakeLists.txt +@@ -199,7 +199,6 @@ + + #------------------------- + # Setup the basic C compiler +-RDMA_BuildType() + include_directories(${BUILD_INCLUDE}) + + # Look for Python. We prefer some variant of python 3 if the system has it. diff --git a/sys-cluster/rdma-core/files/rdma-core-53.1-preload-fix-build-issue-with-clang-19.patch b/sys-cluster/rdma-core/files/rdma-core-53.1-preload-fix-build-issue-with-clang-19.patch new file mode 100644 index 000000000000..8f4e7dc93523 --- /dev/null +++ b/sys-cluster/rdma-core/files/rdma-core-53.1-preload-fix-build-issue-with-clang-19.patch @@ -0,0 +1,162 @@ +From 660479ab1ac25a016e07634c1313427489bb6747 Mon Sep 17 00:00:00 2001 +From: "Z. Liu" <zhixu.liu@gmail.com> +Date: Mon, 3 Mar 2025 22:40:15 +0800 +Subject: [PATCH 1/4] preload: fix build issue with clang 19 + +librdmacm/preload.c:796:9: error: at most one overload for a given name may lack the 'overloadable' attribute +librdmacm/preload.c:796:9: warning: no previous prototype for function 'recvfrom' [-Wmissing-prototypes] + +Signed-off-by: Z. Liu <zhixu.liu@gmail.com> +--- + CMakeLists.txt | 7 +++++++ + buildlib/config.h.in | 2 ++ + librdmacm/preload.c | 9 +++++++++ + 3 files changed, 18 insertions(+) + +diff --git a/CMakeLists.txt b/CMakeLists.txt +index 7f5b4139b..26d658830 100644 +--- a/CMakeLists.txt ++++ b/CMakeLists.txt +@@ -394,6 +394,13 @@ if (NOT HAVE_LONG_LONG_U64) + add_definitions("-D__SANE_USERSPACE_TYPES__") + endif() + ++# Check __SOCKADDR_ARG exist and is union ++RDMA_Check_C_Compiles(HAVE_SOCKADDR_ARG_AS_UNION " ++#define _GNU_SOURCE ++#include <sys/socket.h> ++ int main(int argc,const char *argv[]) {struct sockaddr addr;__SOCKADDR_ARG sa; sa.__sockaddr__ = (struct sockaddr *)&addr; (void)addr; (void)sa; return 0;}" ++) ++ + # glibc and kernel uapi headers can co-exist + CHECK_C_SOURCE_COMPILES(" + #include <sys/socket.h> +diff --git a/buildlib/config.h.in b/buildlib/config.h.in +index c5b0bf557..663248041 100644 +--- a/buildlib/config.h.in ++++ b/buildlib/config.h.in +@@ -50,6 +50,8 @@ + + #cmakedefine HAVE_WORKING_IF_H 1 + ++#cmakedefine HAVE_SOCKADDR_ARG_AS_UNION 1 ++ + // Operating mode for symbol versions + #cmakedefine HAVE_FULL_SYMBOL_VERSIONS 1 + #cmakedefine HAVE_LIMITED_SYMBOL_VERSIONS 1 +diff --git a/librdmacm/preload.c b/librdmacm/preload.c +index d46beb1bb..b3175dd5d 100644 +--- a/librdmacm/preload.c ++++ b/librdmacm/preload.c +@@ -794,12 +794,21 @@ ssize_t recv(int socket, void *buf, size_t len, int flags) + } + + ssize_t recvfrom(int socket, void *buf, size_t len, int flags, ++#if HAVE_SOCKADDR_ARG_AS_UNION ++ __SOCKADDR_ARG src_addr, socklen_t *addrlen) ++#else + struct sockaddr *src_addr, socklen_t *addrlen) ++#endif + { + int fd; + return (fd_fork_get(socket, &fd) == fd_rsocket) ? ++#if HAVE_SOCKADDR_ARG_AS_UNION ++ rrecvfrom(fd, buf, len, flags, src_addr.__sockaddr__, addrlen) : ++ real.recvfrom(fd, buf, len, flags, src_addr.__sockaddr__, addrlen); ++#else + rrecvfrom(fd, buf, len, flags, src_addr, addrlen) : + real.recvfrom(fd, buf, len, flags, src_addr, addrlen); ++#endif + } + + ssize_t recvmsg(int socket, struct msghdr *msg, int flags) +-- +2.45.2 + + +From c13a26a463750f3bb3db5697069ee9e9bf5a5556 Mon Sep 17 00:00:00 2001 +From: "Z. Liu" <zhixu.liu@gmail.com> +Date: Wed, 5 Mar 2025 01:19:37 +0800 +Subject: [PATCH 2/4] libibverbs.map: ibv_cmd_query_device had been removed + +Signed-off-by: Z. Liu <zhixu.liu@gmail.com> +--- + libibverbs/libibverbs.map.in | 1 - + 1 file changed, 1 deletion(-) + +diff --git a/libibverbs/libibverbs.map.in b/libibverbs/libibverbs.map.in +index 11268cefd..a473549ca 100644 +--- a/libibverbs/libibverbs.map.in ++++ b/libibverbs/libibverbs.map.in +@@ -222,7 +222,6 @@ IBVERBS_PRIVATE_@IBVERBS_PABI_VERSION@ { + ibv_cmd_post_send; + ibv_cmd_post_srq_recv; + ibv_cmd_query_context; +- ibv_cmd_query_device; + ibv_cmd_query_device_any; + ibv_cmd_query_mr; + ibv_cmd_query_port; +-- +2.45.2 + + +From f564d1938bc03eb3b5f1fe5d6fadf7be81d922a6 Mon Sep 17 00:00:00 2001 +From: "Z. Liu" <zhixu.liu@gmail.com> +Date: Wed, 5 Mar 2025 09:08:48 +0800 +Subject: [PATCH 3/4] libefa.map: efadv_wc_read_sgid is static inline + +Signed-off-by: Z. Liu <zhixu.liu@gmail.com> +--- + providers/efa/libefa.map | 1 - + 1 file changed, 1 deletion(-) + +diff --git a/providers/efa/libefa.map b/providers/efa/libefa.map +index eff647d18..d27b58c16 100644 +--- a/providers/efa/libefa.map ++++ b/providers/efa/libefa.map +@@ -17,7 +17,6 @@ EFA_1.2 { + global: + efadv_cq_from_ibv_cq_ex; + efadv_create_cq; +- efadv_wc_read_sgid; + } EFA_1.1; + + EFA_1.3 { +-- +2.45.2 + + +From 25cf8775b956ef81034aa314c1470634ea9ab5d3 Mon Sep 17 00:00:00 2001 +From: "Z. Liu" <zhixu.liu@gmail.com> +Date: Fri, 7 Mar 2025 10:31:13 +0800 +Subject: [PATCH 4/4] cmake: add ${BUILD_INCLUDE} for __SOCKADDR_ARG test + +because the sparse check has sys/socket.h patched + +Signed-off-by: Z. Liu <zhixu.liu@gmail.com> +--- + CMakeLists.txt | 3 +++ + 1 file changed, 3 insertions(+) + +diff --git a/CMakeLists.txt b/CMakeLists.txt +index 26d658830..dce05c78b 100644 +--- a/CMakeLists.txt ++++ b/CMakeLists.txt +@@ -395,11 +395,14 @@ if (NOT HAVE_LONG_LONG_U64) + endif() + + # Check __SOCKADDR_ARG exist and is union ++set(SAFE_CMAKE_REQUIRED_INCLUDES "${CMAKE_REQUIRED_INCLUDES}") ++set(CMAKE_REQUIRED_INCLUDES "${BUILD_INCLUDE}") + RDMA_Check_C_Compiles(HAVE_SOCKADDR_ARG_AS_UNION " + #define _GNU_SOURCE + #include <sys/socket.h> + int main(int argc,const char *argv[]) {struct sockaddr addr;__SOCKADDR_ARG sa; sa.__sockaddr__ = (struct sockaddr *)&addr; (void)addr; (void)sa; return 0;}" + ) ++set(CMAKE_REQUIRED_INCLUDES "${SAFE_CMAKE_REQUIRED_INCLUDES}") + + # glibc and kernel uapi headers can co-exist + CHECK_C_SOURCE_COMPILES(" +-- +2.45.2 + diff --git a/sys-cluster/rdma-core/files/rdma-core-57.0-fix-unclosed-string-literal.patch b/sys-cluster/rdma-core/files/rdma-core-57.0-fix-unclosed-string-literal.patch new file mode 100644 index 000000000000..a982fb10abee --- /dev/null +++ b/sys-cluster/rdma-core/files/rdma-core-57.0-fix-unclosed-string-literal.patch @@ -0,0 +1,19 @@ +From 54fa841b48f0e867ede682561005069d72b47fd6 Mon Sep 17 00:00:00 2001 +From: Florian Schmaus <flo@geekplace.eu> +Date: Tue, 2 Jun 2026 09:41:31 +0200 +Subject: [PATCH] Fix unclosed string literal in mlx5dv_flow + +--- a/pyverbs/providers/mlx5/mlx5dv_flow.pyx ++++ b/pyverbs/providers/mlx5/mlx5dv_flow.pyx +@@ -258,7 +258,7 @@ cdef class Mlx5Flow(Flow): + elif (<Mlx5FlowActionAttr>attr).attr.type not in \ + [dv.MLX5DV_FLOW_ACTION_IBV_FLOW_ACTION, dv.MLX5DV_FLOW_ACTION_DEST_DEVX]: + raise PyverbsUserError(f'Unsupported action type: ' +- f'{<Mlx5FlowActionAttr>attr).attr.type}.') ++ f'{(<Mlx5FlowActionAttr>attr).attr.type}.') + memcpy(tmp_addr, &(<Mlx5FlowActionAttr>attr).attr, + sizeof(dv.mlx5dv_flow_action_attr)) + tmp_addr += sizeof(dv.mlx5dv_flow_action_attr) +-- +2.53.0 + diff --git a/sys-cluster/rdma-core/files/srpd.init b/sys-cluster/rdma-core/files/srpd.init new file mode 100644 index 000000000000..28d21b264992 --- /dev/null +++ b/sys-cluster/rdma-core/files/srpd.init @@ -0,0 +1,20 @@ +#!/sbin/openrc-run +# Copyright 1999-2021 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +command="/usr/sbin/srp_daemon.sh" +pidfile="/run/${SVCNAME}.pid" +command_background="yes" + +rdma_config="/etc/infiniband/openib.conf" +[ -f ${rdma_config} ] && . ${rdma_config} + +[ ${SRP_DEFAULT_TL_RETRY_COUNT} ] && command_args="-l ${SRP_DEFAULT_TL_RETRY_COUNT}" + +start_pre() { + if ! [ -e /sys/module/ib_srp ]; then + eerror "SRP kernel module is not loaded, unable to start SRP daemon" + return 1 + fi + return 0 +} diff --git a/sys-cluster/rdma-core/metadata.xml b/sys-cluster/rdma-core/metadata.xml new file mode 100644 index 000000000000..b779980cfa61 --- /dev/null +++ b/sys-cluster/rdma-core/metadata.xml @@ -0,0 +1,16 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd"> +<pkgmetadata> + <maintainer type="project"> + <email>cluster@gentoo.org</email> + <name>Gentoo Cluster Project</name> + </maintainer> + <use> + <flag name="lttng">Enable support for the LTTng tracer</flag> + <flag name="neigh">Enable iwpmd support</flag> + <flag name="python">Enable pyverbs support</flag> + </use> + <upstream> + <remote-id type="github">linux-rdma/rdma-core</remote-id> + </upstream> +</pkgmetadata> diff --git a/sys-cluster/rdma-core/rdma-core-57.0-r1.ebuild b/sys-cluster/rdma-core/rdma-core-57.0-r1.ebuild new file mode 100644 index 000000000000..636f29a6a02a --- /dev/null +++ b/sys-cluster/rdma-core/rdma-core-57.0-r1.ebuild @@ -0,0 +1,120 @@ +# Copyright 1999-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +PYTHON_COMPAT=( python3_{13..14} ) + +inherit cmake perl-functions python-single-r1 udev systemd + +DESCRIPTION="Userspace components for the Linux Kernel's drivers/infiniband subsystem" +HOMEPAGE="https://github.com/linux-rdma/rdma-core" + +if [[ ${PV} == *9999 ]]; then + inherit git-r3 + EGIT_REPO_URI="https://github.com/linux-rdma/rdma-core" +else + SRC_URI="https://github.com/linux-rdma/rdma-core/releases/download/v${PV}/${P}.tar.gz" + KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~mips ~ppc ppc64 ~riscv ~s390 ~sparc x86" +fi + +LICENSE="|| ( GPL-2 ( CC0-1.0 MIT BSD BSD-with-attribution ) )" +SLOT="0" +IUSE="lttng neigh python static-libs systemd valgrind" +REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )" + +COMMON_DEPEND=" + dev-lang/perl:= + virtual/libudev:= + lttng? ( dev-util/lttng-ust:= ) + neigh? ( dev-libs/libnl:3 ) + systemd? ( sys-apps/systemd:= ) + valgrind? ( dev-debug/valgrind ) + python? ( ${PYTHON_DEPS} ) +" +DEPEND=" + ${COMMON_DEPEND} + python? ( + $(python_gen_cond_dep ' + dev-python/cython[${PYTHON_USEDEP}] + ') + ) +" +RDEPEND="${COMMON_DEPEND} + !sys-fabric/infiniband-diags + !sys-fabric/libibverbs + !sys-fabric/librdmacm + !sys-fabric/libibumad + !sys-fabric/ibacm + !sys-fabric/libibmad + !sys-fabric/srptools + !sys-fabric/infinipath-psm + !sys-fabric/libcxgb3 + !sys-fabric/libcxgb4 + !sys-fabric/libmthca + !sys-fabric/libmlx4 + !sys-fabric/libmlx5 + !sys-fabric/libocrdma + !sys-fabric/libnes +" +# python is required unconditionally at build-time +BDEPEND=" + ${PYTHON_DEPS} + virtual/pkgconfig +" + +PATCHES=( + "${FILESDIR}"/${PN}-39.0-RDMA_BuildType.patch + "${FILESDIR}"/${PN}-57.0-fix-unclosed-string-literal.patch +) + +src_prepare() { + # DEFINED is true even if the value is false, which makes lttng unconditional + sed -i -e 's/if (DEFINED ENABLE_LTTNG)/if (ENABLE_LTTNG)/' CMakeLists.txt || die + cmake_src_prepare +} + +src_configure() { + perl_set_version + + local mycmakeargs=( + -DCMAKE_INSTALL_SYSCONFDIR="${EPREFIX}"/etc + -DCMAKE_INSTALL_RUNDIR=/run + -DCMAKE_INSTALL_SHAREDSTATEDIR="${EPREFIX}"/var/lib + -DCMAKE_INSTALL_PERLDIR="${VENDOR_LIB}" + -DCMAKE_INSTALL_UDEV_RULESDIR="${EPREFIX}$(get_udevdir)"/rules.d + -DCMAKE_INSTALL_SYSTEMD_SERVICEDIR="$(systemd_get_systemunitdir)" + -DCMAKE_DISABLE_FIND_PACKAGE_Systemd="$(usex !systemd)" + -DENABLE_LTTNG="$(usex lttng)" + -DENABLE_VALGRIND="$(usex valgrind)" + -DENABLE_RESOLVE_NEIGH="$(usex neigh)" + -DENABLE_STATIC="$(usex static-libs)" + -DNO_PYVERBS="$(usex !python)" + -DNO_MAN_PAGES=1 + -DPYTHON_EXECUTABLE="${PYTHON}" + ) + cmake_src_configure +} + +src_install() { + cmake_src_install + + udev_dorules "${ED}"/usr/share/doc/${PF}/70-persistent-ipoib.rules + + if use neigh; then + newinitd "${FILESDIR}"/ibacm.init ibacm + newinitd "${FILESDIR}"/iwpmd.init iwpmd + fi + + newinitd "${FILESDIR}"/srpd.init srpd + + use python && python_optimize +} + +pkg_postinst() { + udev_reload +} + +pkg_postrm() { + udev_reload +} diff --git a/sys-cluster/rdma-core/rdma-core-59.0-r1.ebuild b/sys-cluster/rdma-core/rdma-core-59.0-r1.ebuild new file mode 100644 index 000000000000..be856d7313ae --- /dev/null +++ b/sys-cluster/rdma-core/rdma-core-59.0-r1.ebuild @@ -0,0 +1,120 @@ +# Copyright 1999-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +PYTHON_COMPAT=( python3_{13..14} ) + +inherit cmake perl-functions python-single-r1 udev systemd + +DESCRIPTION="Userspace components for the Linux Kernel's drivers/infiniband subsystem" +HOMEPAGE="https://github.com/linux-rdma/rdma-core" + +if [[ ${PV} == *9999 ]]; then + inherit git-r3 + EGIT_REPO_URI="https://github.com/linux-rdma/rdma-core" +else + SRC_URI="https://github.com/linux-rdma/rdma-core/releases/download/v${PV}/${P}.tar.gz" + KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86" +fi + +LICENSE="|| ( GPL-2 ( CC0-1.0 MIT BSD BSD-with-attribution ) )" +SLOT="0" +IUSE="lttng neigh python static-libs systemd valgrind" +REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )" + +COMMON_DEPEND=" + dev-lang/perl:= + virtual/libudev:= + lttng? ( dev-util/lttng-ust:= ) + neigh? ( dev-libs/libnl:3 ) + systemd? ( sys-apps/systemd:= ) + valgrind? ( dev-debug/valgrind ) + python? ( ${PYTHON_DEPS} ) +" +DEPEND=" + ${COMMON_DEPEND} + python? ( + $(python_gen_cond_dep ' + dev-python/cython[${PYTHON_USEDEP}] + ') + ) +" +RDEPEND="${COMMON_DEPEND} + !sys-fabric/infiniband-diags + !sys-fabric/libibverbs + !sys-fabric/librdmacm + !sys-fabric/libibumad + !sys-fabric/ibacm + !sys-fabric/libibmad + !sys-fabric/srptools + !sys-fabric/infinipath-psm + !sys-fabric/libcxgb3 + !sys-fabric/libcxgb4 + !sys-fabric/libmthca + !sys-fabric/libmlx4 + !sys-fabric/libmlx5 + !sys-fabric/libocrdma + !sys-fabric/libnes +" +# python is required unconditionally at build-time +BDEPEND=" + ${PYTHON_DEPS} + virtual/pkgconfig +" + +PATCHES=( + "${FILESDIR}"/${PN}-39.0-RDMA_BuildType.patch + "${FILESDIR}"/${PN}-57.0-fix-unclosed-string-literal.patch +) + +src_prepare() { + # DEFINED is true even if the value is false, which makes lttng unconditional + sed -i -e 's/if (DEFINED ENABLE_LTTNG)/if (ENABLE_LTTNG)/' CMakeLists.txt || die + cmake_src_prepare +} + +src_configure() { + perl_set_version + + local mycmakeargs=( + -DCMAKE_INSTALL_SYSCONFDIR="${EPREFIX}"/etc + -DCMAKE_INSTALL_RUNDIR=/run + -DCMAKE_INSTALL_SHAREDSTATEDIR="${EPREFIX}"/var/lib + -DCMAKE_INSTALL_PERLDIR="${VENDOR_LIB}" + -DCMAKE_INSTALL_UDEV_RULESDIR="${EPREFIX}$(get_udevdir)"/rules.d + -DCMAKE_INSTALL_SYSTEMD_SERVICEDIR="$(systemd_get_systemunitdir)" + -DCMAKE_DISABLE_FIND_PACKAGE_Systemd="$(usex !systemd)" + -DENABLE_LTTNG="$(usex lttng)" + -DENABLE_VALGRIND="$(usex valgrind)" + -DENABLE_RESOLVE_NEIGH="$(usex neigh)" + -DENABLE_STATIC="$(usex static-libs)" + -DNO_PYVERBS="$(usex !python)" + -DNO_MAN_PAGES=1 + -DPYTHON_EXECUTABLE="${PYTHON}" + ) + cmake_src_configure +} + +src_install() { + cmake_src_install + + udev_dorules "${ED}"/usr/share/doc/${PF}/70-persistent-ipoib.rules + + if use neigh; then + newinitd "${FILESDIR}"/ibacm.init ibacm + newinitd "${FILESDIR}"/iwpmd.init iwpmd + fi + + newinitd "${FILESDIR}"/srpd.init srpd + + use python && python_optimize +} + +pkg_postinst() { + udev_reload +} + +pkg_postrm() { + udev_reload +} diff --git a/sys-cluster/rdma-core/rdma-core-63.0.ebuild b/sys-cluster/rdma-core/rdma-core-63.0.ebuild new file mode 100644 index 000000000000..64e1f49f53f4 --- /dev/null +++ b/sys-cluster/rdma-core/rdma-core-63.0.ebuild @@ -0,0 +1,120 @@ +# Copyright 1999-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +PYTHON_COMPAT=( python3_{13..14} ) + +inherit cmake perl-functions python-single-r1 udev systemd + +DESCRIPTION="Userspace components for the Linux Kernel's drivers/infiniband subsystem" +HOMEPAGE="https://github.com/linux-rdma/rdma-core" + +if [[ ${PV} == *9999 ]]; then + inherit git-r3 + EGIT_REPO_URI="https://github.com/linux-rdma/rdma-core" +else + SRC_URI="https://github.com/linux-rdma/rdma-core/releases/download/v${PV}/${P}.tar.gz" + KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86" +fi + +# https://github.com/linux-rdma/rdma-core/pull/1747 +SRC_URI+=" + https://github.com/linux-rdma/rdma-core/commit/448ecf97586de63da7d7fac1ea24f0f0fa381336.patch + -> ${PN}-63.0-fix-efa-with-lttng.patch +" + +LICENSE="|| ( GPL-2 ( CC0-1.0 MIT BSD BSD-with-attribution ) )" +SLOT="0" +IUSE="lttng neigh python static-libs systemd valgrind" +REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )" + +COMMON_DEPEND=" + dev-lang/perl:= + virtual/libudev:= + lttng? ( dev-util/lttng-ust:= ) + neigh? ( dev-libs/libnl:3 ) + systemd? ( sys-apps/systemd:= ) + valgrind? ( dev-debug/valgrind ) + python? ( ${PYTHON_DEPS} ) +" +DEPEND=" + ${COMMON_DEPEND} + python? ( + $(python_gen_cond_dep ' + dev-python/cython[${PYTHON_USEDEP}] + ') + ) +" +RDEPEND="${COMMON_DEPEND} + !sys-fabric/infiniband-diags + !sys-fabric/libibverbs + !sys-fabric/librdmacm + !sys-fabric/libibumad + !sys-fabric/ibacm + !sys-fabric/libibmad + !sys-fabric/srptools + !sys-fabric/infinipath-psm + !sys-fabric/libcxgb3 + !sys-fabric/libcxgb4 + !sys-fabric/libmthca + !sys-fabric/libmlx4 + !sys-fabric/libmlx5 + !sys-fabric/libocrdma + !sys-fabric/libnes +" +# python is required unconditionally at build-time +BDEPEND=" + ${PYTHON_DEPS} + virtual/pkgconfig +" + +PATCHES=( + "${FILESDIR}"/${PN}-39.0-RDMA_BuildType.patch + "${DISTDIR}"/${PN}-63.0-fix-efa-with-lttng.patch +) + +src_configure() { + perl_set_version + + local mycmakeargs=( + -DCMAKE_INSTALL_SYSCONFDIR="${EPREFIX}"/etc + -DCMAKE_INSTALL_RUNDIR=/run + -DCMAKE_INSTALL_SHAREDSTATEDIR="${EPREFIX}"/var/lib + -DCMAKE_INSTALL_PERLDIR="${VENDOR_LIB}" + -DCMAKE_INSTALL_UDEV_RULESDIR="${EPREFIX}$(get_udevdir)"/rules.d + -DCMAKE_INSTALL_SYSTEMD_SERVICEDIR="$(systemd_get_systemunitdir)" + -DCMAKE_DISABLE_FIND_PACKAGE_Systemd="$(usex !systemd)" + -DTRACING="$(usex lttng LTTNG None)" + -DENABLE_VALGRIND="$(usex valgrind)" + -DENABLE_RESOLVE_NEIGH="$(usex neigh)" + -DENABLE_STATIC="$(usex static-libs)" + -DNO_PYVERBS="$(usex !python)" + -DNO_MAN_PAGES=1 + -DPYTHON_EXECUTABLE="${PYTHON}" + ) + cmake_src_configure +} + +src_install() { + cmake_src_install + + udev_dorules "${ED}"/usr/share/doc/${PF}/70-persistent-ipoib.rules + + if use neigh; then + newinitd "${FILESDIR}"/ibacm.init ibacm + newinitd "${FILESDIR}"/iwpmd.init iwpmd + fi + + newinitd "${FILESDIR}"/srpd.init srpd + + use python && python_optimize +} + +pkg_postinst() { + udev_reload +} + +pkg_postrm() { + udev_reload +} diff --git a/sys-cluster/rdma-core/rdma-core-9999.ebuild b/sys-cluster/rdma-core/rdma-core-9999.ebuild new file mode 100644 index 000000000000..64e1f49f53f4 --- /dev/null +++ b/sys-cluster/rdma-core/rdma-core-9999.ebuild @@ -0,0 +1,120 @@ +# Copyright 1999-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +PYTHON_COMPAT=( python3_{13..14} ) + +inherit cmake perl-functions python-single-r1 udev systemd + +DESCRIPTION="Userspace components for the Linux Kernel's drivers/infiniband subsystem" +HOMEPAGE="https://github.com/linux-rdma/rdma-core" + +if [[ ${PV} == *9999 ]]; then + inherit git-r3 + EGIT_REPO_URI="https://github.com/linux-rdma/rdma-core" +else + SRC_URI="https://github.com/linux-rdma/rdma-core/releases/download/v${PV}/${P}.tar.gz" + KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86" +fi + +# https://github.com/linux-rdma/rdma-core/pull/1747 +SRC_URI+=" + https://github.com/linux-rdma/rdma-core/commit/448ecf97586de63da7d7fac1ea24f0f0fa381336.patch + -> ${PN}-63.0-fix-efa-with-lttng.patch +" + +LICENSE="|| ( GPL-2 ( CC0-1.0 MIT BSD BSD-with-attribution ) )" +SLOT="0" +IUSE="lttng neigh python static-libs systemd valgrind" +REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )" + +COMMON_DEPEND=" + dev-lang/perl:= + virtual/libudev:= + lttng? ( dev-util/lttng-ust:= ) + neigh? ( dev-libs/libnl:3 ) + systemd? ( sys-apps/systemd:= ) + valgrind? ( dev-debug/valgrind ) + python? ( ${PYTHON_DEPS} ) +" +DEPEND=" + ${COMMON_DEPEND} + python? ( + $(python_gen_cond_dep ' + dev-python/cython[${PYTHON_USEDEP}] + ') + ) +" +RDEPEND="${COMMON_DEPEND} + !sys-fabric/infiniband-diags + !sys-fabric/libibverbs + !sys-fabric/librdmacm + !sys-fabric/libibumad + !sys-fabric/ibacm + !sys-fabric/libibmad + !sys-fabric/srptools + !sys-fabric/infinipath-psm + !sys-fabric/libcxgb3 + !sys-fabric/libcxgb4 + !sys-fabric/libmthca + !sys-fabric/libmlx4 + !sys-fabric/libmlx5 + !sys-fabric/libocrdma + !sys-fabric/libnes +" +# python is required unconditionally at build-time +BDEPEND=" + ${PYTHON_DEPS} + virtual/pkgconfig +" + +PATCHES=( + "${FILESDIR}"/${PN}-39.0-RDMA_BuildType.patch + "${DISTDIR}"/${PN}-63.0-fix-efa-with-lttng.patch +) + +src_configure() { + perl_set_version + + local mycmakeargs=( + -DCMAKE_INSTALL_SYSCONFDIR="${EPREFIX}"/etc + -DCMAKE_INSTALL_RUNDIR=/run + -DCMAKE_INSTALL_SHAREDSTATEDIR="${EPREFIX}"/var/lib + -DCMAKE_INSTALL_PERLDIR="${VENDOR_LIB}" + -DCMAKE_INSTALL_UDEV_RULESDIR="${EPREFIX}$(get_udevdir)"/rules.d + -DCMAKE_INSTALL_SYSTEMD_SERVICEDIR="$(systemd_get_systemunitdir)" + -DCMAKE_DISABLE_FIND_PACKAGE_Systemd="$(usex !systemd)" + -DTRACING="$(usex lttng LTTNG None)" + -DENABLE_VALGRIND="$(usex valgrind)" + -DENABLE_RESOLVE_NEIGH="$(usex neigh)" + -DENABLE_STATIC="$(usex static-libs)" + -DNO_PYVERBS="$(usex !python)" + -DNO_MAN_PAGES=1 + -DPYTHON_EXECUTABLE="${PYTHON}" + ) + cmake_src_configure +} + +src_install() { + cmake_src_install + + udev_dorules "${ED}"/usr/share/doc/${PF}/70-persistent-ipoib.rules + + if use neigh; then + newinitd "${FILESDIR}"/ibacm.init ibacm + newinitd "${FILESDIR}"/iwpmd.init iwpmd + fi + + newinitd "${FILESDIR}"/srpd.init srpd + + use python && python_optimize +} + +pkg_postinst() { + udev_reload +} + +pkg_postrm() { + udev_reload +} |
