Sync from SUSE:SLFO:Main rdma-core revision 9d9ddd2fd062ec0274633c6ecb5d0cc1

This commit is contained in:
Adrian Schröter 2024-05-04 00:01:12 +02:00
commit 0478d0596f
12 changed files with 1821 additions and 0 deletions

23
.gitattributes vendored Normal file
View File

@ -0,0 +1,23 @@
## Default LFS
*.7z filter=lfs diff=lfs merge=lfs -text
*.bsp filter=lfs diff=lfs merge=lfs -text
*.bz2 filter=lfs diff=lfs merge=lfs -text
*.gem filter=lfs diff=lfs merge=lfs -text
*.gz filter=lfs diff=lfs merge=lfs -text
*.jar filter=lfs diff=lfs merge=lfs -text
*.lz filter=lfs diff=lfs merge=lfs -text
*.lzma filter=lfs diff=lfs merge=lfs -text
*.obscpio filter=lfs diff=lfs merge=lfs -text
*.oxt filter=lfs diff=lfs merge=lfs -text
*.pdf filter=lfs diff=lfs merge=lfs -text
*.png filter=lfs diff=lfs merge=lfs -text
*.rpm filter=lfs diff=lfs merge=lfs -text
*.tbz filter=lfs diff=lfs merge=lfs -text
*.tbz2 filter=lfs diff=lfs merge=lfs -text
*.tgz filter=lfs diff=lfs merge=lfs -text
*.ttf filter=lfs diff=lfs merge=lfs -text
*.txz filter=lfs diff=lfs merge=lfs -text
*.whl filter=lfs diff=lfs merge=lfs -text
*.xz filter=lfs diff=lfs merge=lfs -text
*.zip filter=lfs diff=lfs merge=lfs -text
*.zst filter=lfs diff=lfs merge=lfs -text

18
_service Normal file
View File

@ -0,0 +1,18 @@
<services>
<service name="tar_scm" mode="disabled">
<param name="scm">git</param>
<param name="url">https://github.com/linux-rdma/rdma-core.git</param>
<param name="package-meta">no</param>
<param name="exclude">.git</param>
<param name="filename">rdma-core</param>
<param name="versionformat">@PARENT_TAG@.@TAG_OFFSET@.%h</param>
<param name="versionrewrite-pattern">v(.*)</param>
<param name="versionrewrite-replacement">\1</param>
<param name="revision">8847c327b89cdf4fcd9cf411355a6ccd12e8a054</param>
<param name="extract">suse/rdma-core.spec</param>
</service>
<service name="recompress" mode="disabled">
<param name="file">*rdma-core*.tar</param>
<param name="compression">gz</param>
</service>
</services>

45
baselibs.conf Normal file
View File

@ -0,0 +1,45 @@
libibverbs
obsoletes "libcxgb4-rdmav2-<targettype> < <version>"
obsoletes "libefa-rdmav2-<targettype> < <version>"
obsoletes "libhfi1verbs-rdmav2-<targettype> < <version>"
obsoletes "libi40iw-rdmav2-<targettype> < <version>"
obsoletes "libipathverbs-rdmav2-<targettype> < <version>"
obsoletes "libmlx4-rdmav2-<targettype> < <version>"
obsoletes "libmlx5-rdmav2-<targettype> < <version>"
obsoletes "libmthca-rdmav2-<targettype> < <version>"
obsoletes "libocrdma-rdmav2-<targettype> < <version>"
obsoletes "librxe-rdmav2-<targettype> < <version>"
targetarch i586 requires "libefa1-<targettype> = <version>"
targetarch i586 requires "libmlx4-1-<targettype> = <version>"
targetarch i586 requires "libmlx5-1-<targettype> = <version>"
libibverbs1
requires "libibverbs-<targettype> = <version>"
libefa1
libmlx4-1
libmlx5-1
libibumad3
libibmad5
librdmacm1
obsoletes "librdmacm-<targettype> < <version>"
provides "librdmacm-<targettype> = <version>"
rdma-core-devel
obsoletes "libibverbs-devel-<targettype> < <version>"
obsoletes "libibumad-devel-<targettype> < <version>"
obsoletes "librdmacm-devel-<targettype> < <version>"
obsoletes "ibacm-devel-<targettype> < <version>"
obsoletes "infiniband-diags-devel-<targettype> < <version>"
obsoletes "libibmad-devel-<targettype> < <version>"
provides "libibverbs-devel-<targettype> = <version>"
provides "libibumad-devel-<targettype> = <version>"
provides "librdmacm-devel-<targettype> = <version>"
provides "ibacm-devel-<targettype> = <version>"
provides "infiniband-diags-devel-<targettype> = <version>"
provides "libibmad-devel-<targettype> = <version>"
requires "librdmacm1-<targettype> = <version>"
requires "libibumad3-<targettype> = <version>"
requires "libibverbs1-<targettype> = <version>"
targetarch i586 requires "libefa1-<targettype> = <version>"
targetarch i586 requires "libmlx4-1-<targettype> = <version>"
targetarch i586 requires "libmlx5-1-<targettype> = <version>"
requires "rsocket-<targettype> = <version>"
rsocket

View File

@ -0,0 +1,23 @@
commit 1b8594d94f6573e5f359383362ecd97fcbaddc13
Author: Nicolas Morey-Chaisemartin <nmoreychaisemartin@suse.com>
Date: Tue May 18 11:18:54 2021 +0200
disable rdma interface renaming
Causes issues with mvapich2
Signed-off-by: Nicolas Morey-Chaisemartin <nmoreychaisemartin@suse.com>
diff --git kernel-boot/rdma-persistent-naming.rules kernel-boot/rdma-persistent-naming.rules
index 6f9c53a53bbb..41d86df10a54 100644
--- kernel-boot/rdma-persistent-naming.rules
+++ kernel-boot/rdma-persistent-naming.rules
@@ -26,7 +26,7 @@
# Device type = RoCE
# mlx5_0 -> rocex525400c0fe123455
#
-ACTION=="add", SUBSYSTEM=="infiniband", PROGRAM="rdma_rename %k NAME_FALLBACK"
+#ACTION=="add", SUBSYSTEM=="infiniband", PROGRAM="rdma_rename %k NAME_FALLBACK"
# Example:
# * NAME_FIXED

27
gen-pandoc.sh Normal file
View File

@ -0,0 +1,27 @@
#!/bin/bash -x
TARBALL=$(rpmspec --parse rdma-core.spec | grep Source: | awk '{ print $NF}')
OUTDIR=$(tar tf $TARBALL | head -n 1)
PATCHES=$(rpmspec --parse rdma-core.spec | egrep '^Patch[0-9]+:' | awk '{ print $NF}')
BUILD_CMDS=$(python3 -c "
import rpm
spec = rpm.spec(\"rdma-core.spec\")
print('%s' % (getattr(spec, \"build\"),))
")
CMAKE_CMD=$(echo "$BUILD_CMDS" | sed -e :a -e '/\\$/N; s/\\\n//; ta' | grep /bin/cmake | sed -e 's/-GNinja//' -e 's/$OLDPWD\/./../')
rm -Rf $OUTDIR
tar xf $TARBALL
cd $OUTDIR
for patch in $PATCHES; do
patch -p0 < ../$patch || exit 1
done
mkdir build
cd build
eval $CMAKE_CMD || exit 1
make docs -j4 || exit 1
tar czf ../../prebuilt-pandoc.tgz pandoc-prebuilt
cd ../..

6
get_build.py Normal file
View File

@ -0,0 +1,6 @@
#!/usr/bin/python
import rpm
spec = rpm.spec("rdma-core.spec")
print '%s' % (getattr(spec, "build"),)

19
post_download.sh Normal file
View File

@ -0,0 +1,19 @@
#!/bin/bash
# Script to be run after updating the spec file from a newer release
# Enable pyverbs by default
sed -i -e 's/^%define with_pyverbs .*$/%if 0%{?sle_version} > 120400\n%define with_pyverbs 1\n%else\n%define with_pyverbs 0\n%endif/' rdma-core.spec
# Disable static
sed -i -e 's/^%define with_static .*$/%define with_static 0/' rdma-core.spec
# Fixup pandoc
# To remove a build dependency to pandoc in the core rings, prebuild the pandoc
# tarball and patch the spec file
bash gen-pandoc.sh || exit 1
EXTRA_SOURCES="Source2: post_download.sh\nSource3: prebuilt-pandoc.tgz\nSource4: rdma-core-rpmlintrc\nSource5: gen-pandoc.sh\nSource6: get_build.py"
PANDOC_SETUP="#Extract prebuilt pandoc file in the buildlib directory\n(cd buildlib && tar -xf %{S:3})"
sed -i -e '/Source1:/a '"$EXTRA_SOURCES" rdma-core.spec
sed -i -e '/^BuildRequires: pandoc/d' rdma-core.spec
sed -i -e '/^BuildRequires: python3-docutils/d' rdma-core.spec
sed -i -e '/^%setup /a '"$PANDOC_SETUP" rdma-core.spec

BIN
prebuilt-pandoc.tgz (Stored with Git LFS) Normal file

Binary file not shown.

BIN
rdma-core-49.1.0.8847c327b89c.tar.gz (Stored with Git LFS) Normal file

Binary file not shown.

11
rdma-core-rpmlintrc Normal file
View File

@ -0,0 +1,11 @@
# This line is mandatory to access the configuration functions
from Config import *
addFilter("libibverbs.* devel-file-in-non-devel-package")
addFilter("libibverbs.* obsolete-not-provided")
addFilter("libibmad.* shared-lib-calls-exit")
addFilter("libibverbs-utils.* shlib-policy-missing-lib")
addFilter("libibverbs.* shlib-policy-missing-lib")
addFilter("librdmacm-utils.* shlib-policy-missing-lib")
addFilter("libibverbs1.* shlib-fixed-dependency")
addFilter("librdmacm1.* shlib-fixed-dependency")

748
rdma-core.changes Normal file
View File

@ -0,0 +1,748 @@
-------------------------------------------------------------------
Mon Jan 22 18:41:25 UTC 2024 - Nicolas Morey <nicolas.morey@suse.com>
- Update to v49.1 (jsc#PED-6891, jsc#PED-6864, jsc#PED-6839, jsc#PED-6836,
jsc#PED-6828, jsc#PED-6824, jsc#PED-6958, jsc#PED-6943, jsc#PED-6933, jsc#PED-6916)
- No release notes available.
-------------------------------------------------------------------
Sat Nov 25 22:00:45 UTC 2023 - Nicolas Morey <nicolas.morey@suse.com>
- Update to v49.0 (jsc#PED-6891, jsc#PED-6864, jsc#PED-6839, jsc#PED-6836,
jsc#PED-6828, jsc#PED-6824, jsc#PED-6958, jsc#PED-6943, jsc#PED-6933, jsc#PED-6916)
- No release notes available.
-------------------------------------------------------------------
Fri Sep 22 11:46:06 UTC 2023 - Nicolas Morey <nicolas.morey@suse.com>
- Update to v48.0
- No release notes available.
- Drop missing-quoting.patch which was fixed upstream.
-------------------------------------------------------------------
Wed Aug 23 11:19:49 UTC 2023 - Jan Engelhardt <jengelh@inai.de>
- Add missing-quoting.patch
- Use normal GNU tar option syntax
- Remove old RPM spec logic (%defattr)
-------------------------------------------------------------------
Thu Aug 3 15:03:33 UTC 2023 - Nicolas Morey <nicolas.morey@suse.com>
- Drop patches adding support for cxgb3 (EOL, removed from kernel 5.5)
- cxgb3-fix-declaration-of-free_context.patch
- cxgb3-fix-support-for-new-uquery-API.patch
- Revert-libcxgb3-Remove-libcxgb3-from-rdma-core.patch
- Revert-Update-kernel-headers.patch
- Update baselibs=.conf accordingly
-------------------------------------------------------------------
Mon Jul 24 07:54:40 UTC 2023 - Nicolas Morey <nicolas.morey@suse.com>
- Update to v47.0
- Fixes for all providers
-------------------------------------------------------------------
Wed Apr 19 08:23:59 UTC 2023 - Nicolas Morey <nicolas.morey@suse.com>
- Update to v45.0
- Fixes for all providers
- Support for Microsoft Azure Network Adapter
- Drop rdma-ndd-disable-systemd-ProtectHostName-feature.patch
as it was fixed upstream.
- Refresh against latest sources:
- Revert-libcxgb3-Remove-libcxgb3-from-rdma-core.patch
- Revert-Update-kernel-headers.patch
-------------------------------------------------------------------
Thu Oct 13 07:51:25 UTC 2022 - Nicolas Morey-Chaisemartin <nmoreychaisemartin@suse.com>
- Add rdma-ndd-disable-systemd-ProtectHostName-feature.patch to fix issue
where rdma-ndd would not be aware of dynamic hostnames retrived through DHCP
-------------------------------------------------------------------
Tue Sep 13 17:47:24 UTC 2022 - Nicolas Morey-Chaisemartin <nmoreychaisemartin@suse.com>
- Update to v42.0
- Fixes for all providers
- Dropped patches merged upstream:
- util-Add-barriers-support-for-RISC-V.patch
- cmake-Make-modprobe.d-path-configurable.patch
- Update gen-pandoc.sh to support python3
-------------------------------------------------------------------
Mon Aug 8 16:07:05 UTC 2022 - Dirk Müller <dmueller@suse.com>
- skip valgrind on riscv64
-------------------------------------------------------------------
Tue Mar 29 07:32:26 UTC 2022 - Nicolas Morey-Chaisemartin <nmoreychaisemartin@suse.com>
- Update to v39.1
- Major fixes for hns provider
- Bug fixes for all providers
- systemd hardening
- NDR rate support
- Dropped srp_daemon-Detect-proper-path-to-systemctl.patch
as it was fixed upstream
-------------------------------------------------------------------
Thu Mar 17 13:41:47 UTC 2022 - Andreas Schwab <schwab@suse.de>
- util-Add-barriers-support-for-RISC-V.patch: Backport from upstream: Add
barriers support for RISC-V
-------------------------------------------------------------------
Thu Mar 10 08:24:00 UTC 2022 - Nicolas Morey-Chaisemartin <nmoreychaisemartin@suse.com>
- Update spec file from upstream
- install modprobe.conf files to %_modprobedir (bsc#1196275, jsc#SLE-20639)
- fix build support for riscv
- Added cmake-Make-modprobe.d-path-configurable.patch
- Backport from upstream to allow modprobe files to be installed in a
configurable directory
-------------------------------------------------------------------
Fri Feb 18 07:46:41 UTC 2022 - Nicolas Morey-Chaisemartin <nmoreychaisemartin@suse.com>
- Add srp_daemon-Detect-proper-path-to-systemctl.patch to fix path to systemctl (bsc#1195874)
-------------------------------------------------------------------
Fri Jan 7 12:46:46 UTC 2022 - Nicolas Morey-Chaisemartin <nmoreychaisemartin@suse.com>
- Update to v38.1
- Major fixes for hns provider
-------------------------------------------------------------------
Thu Dec 2 15:13:22 UTC 2021 - Nicolas Morey-Chaisemartin <nmoreychaisemartin@suse.com>
- Update to v38.0 (jsc#SLE-18383)
- Bugfixes on all providers
- New provider for irdma support
-------------------------------------------------------------------
Thu Dec 2 14:48:56 UTC 2021 - Nicolas Morey-Chaisemartin <nmoreychaisemartin@suse.com>
- Add rdma-ndd to recommended depencies of rdma-core
-------------------------------------------------------------------
Fri Oct 15 08:44:00 UTC 2021 - Nicolas Morey-Chaisemartin <nmoreychaisemartin@suse.com>
- Update to rdma-core v37.1 (jsc#SLE-18381, jsc#SLE-19249)
- Bugfixes on all providers
- Fix cmake flags to correct paths for .pc files
-------------------------------------------------------------------
Fri Aug 6 14:27:03 UTC 2021 - Nicolas Morey-Chaisemartin <nmoreychaisemartin@suse.com>
- Update to rdma-core v36.0:
- Bugfixes on all providers
-------------------------------------------------------------------
Tue May 18 09:21:31 UTC 2021 - Nicolas Morey-Chaisemartin <nmoreychaisemartin@suse.com>
- Update to rdma-core v35.0
- Bugfixes on all providers
- Many improvements on pyverbs
- Fixes dracut path issues on Tumbleweed
- Refresh patches to latest sources:
- Revert-libcxgb3-Remove-libcxgb3-from-rdma-core.patch
- disable-rdma-interface-renaming.patch
-------------------------------------------------------------------
Fri Feb 19 08:23:46 UTC 2021 - Nicolas Morey-Chaisemartin <nmoreychaisemartin@suse.com>
- Update to rdma-core v33.1
- No release notes available
- Drop support for libnes
- Drop support for libnes by removing patch:
- Revert-libnes-Remove-libnes-from-rdma-core.patch
- Refresh patches against latest sources:
- Revert-libcxgb3-Remove-libcxgb3-from-rdma-core.patch
- cxgb3-nes-fix-declaration-of-free_context.patch has been replaced by
cxgb3-fix-declaration-of-free_context.patch
- Add patches for cxgb3 support against newest API
- cxgb3-fix-support-for-new-uquery-API.patch
- Enable LTO support
- Trigger udevadm in rdma-ndd %post (bsc#1182391)
-------------------------------------------------------------------
Wed Feb 10 12:58:56 UTC 2021 - Nicolas Morey-Chaisemartin <nmoreychaisemartin@suse.com>
- Update to rdma-core v31.3
- No release notes available
- Fix patch to systemd-modules-load script (bsc#1178539)
- Drop srp_daemon-Fix-systemd-dependency.patch as it was merged upstream
-------------------------------------------------------------------
Fri Jan 22 13:17:42 UTC 2021 - Nicolas Morey-Chaisemartin <nmoreychaisemartin@suse.com>
- Add srp_daemon-Fix-systemd-dependency.patch to make sure srp_daemon
is loaded at boot if enabled (bsc#1180196)
-------------------------------------------------------------------
Tue Sep 8 09:58:55 UTC 2020 - Nicolas Morey-Chaisemartin <nmoreychaisemartin@suse.com>
- Update to v31.0 (jsc#SLE-15657, jsc#SLE-15731, jsc#SLE-15743, jsc#SLE-15810)
- No release notes available
-------------------------------------------------------------------
Fri Jul 24 08:47:47 UTC 2020 - Nicolas Morey-Chaisemartin <nmoreychaisemartin@suse.com>
- Update to v30.0
- No release notes available
- Add cxgb3-nes-fix-declaration-of-free_context.patch to fix support
of older providers with newer rdma-core internal ABI
-------------------------------------------------------------------
Tue Apr 14 11:52:18 UTC 2020 - Nicolas Morey-Chaisemartin <nmoreychaisemartin@suse.com>
- Update to v27.1
- Many bugfixes (memory leaks, use after free, etc.)
-------------------------------------------------------------------
Sat Feb 22 09:55:36 UTC 2020 - Dominique Leuenberger <dimstar@opensuse.org>
- Eliminate the curl-mini trickery for Tumbleweed: curl-mini is
being eliminated in favor of cmake-mini: the original plan to
split the cycle at curl did not work out in the long run.
-------------------------------------------------------------------
Fri Jan 24 15:02:50 UTC 2020 - Nicolas Morey-Chaisemartin <nmoreychaisemartin@suse.com>
- Add disable-rdma-interface-renaming.patch to disable interface renaming which causes
mvapich2 to fail (bsc#1161794)
-------------------------------------------------------------------
Fri Jan 10 07:40:35 UTC 2020 - Nicolas Morey-Chaisemartin <nmoreychaisemartin@suse.com>
- Update to v27.0 (bsc#1160338)
- No release notes available
- Dropped patches merged upstream:
- bnxt_re-lib-Add-remaining-pci-ids-for-gen-P5-devices.patch
- bnxt_re-lib-Recognize-additional-5750x-device-ID-s.patch
- Add patches to support older HW (nes, cxgb3) that was dropped upstream
- Revert-Update-kernel-headers.patch
- Revert-libcxgb3-Remove-libcxgb3-from-rdma-core.patch
- Revert-libnes-Remove-libnes-from-rdma-core.patch
-------------------------------------------------------------------
Fri Dec 13 14:10:15 UTC 2019 - Dominique Leuenberger <dimstar@opensuse.org>
- Fix post scripts to work with systemd 244: udevadm has been moved
from /sbin to /usr/bin and systemd is dropping the compat links
now.
-------------------------------------------------------------------
Wed Dec 11 09:32:17 UTC 2019 - Nicolas Morey-Chaisemartin <nmoreychaisemartin@suse.com>
- Remove file listed twice
- Disable pyverbs build for older releases that do not have python3-Cython >= 0.25
-------------------------------------------------------------------
Thu Nov 28 09:16:33 UTC 2019 - Nicolas Morey-Chaisemartin <nmoreychaisemartin@suse.com>
- Add Broadcom fixes (bsc#1157891)
- bnxt_re-lib-Add-remaining-pci-ids-for-gen-P5-devices.patch
- bnxt_re-lib-Recognize-additional-5750x-device-ID-s.patch
-------------------------------------------------------------------
Mon Nov 25 15:59:01 UTC 2019 - Nicolas Morey-Chaisemartin <nmoreychaisemartin@suse.com>
- Update to rdma-core v26.1 (jsc#SLE-8388, jsc#SLE-8394, jsc#SLE-8463, jsc#SLE-8399,
jsc#SLE-8254, jsc#SLE-9840, jsc#SLE-9763, jsc#SLE-9925, jsc#SLE-9846, jsc#SLE-9913,
jsc#SLE-9729, jsc#SLE-8666)
-------------------------------------------------------------------
Tue Nov 12 07:33:01 UTC 2019 - Nicolas Morey-Chaisemartin <nmoreychaisemartin@suse.com>
- Add libefa1 to baselibs.conf
- Fix baselibs.conf
-------------------------------------------------------------------
Wed Nov 6 23:09:09 UTC 2019 - Stefan Brüns <stefan.bruens@rwth-aachen.de>
- BuildRequire valgrind-client-headers instead of full valgrind-devel
where available.
-------------------------------------------------------------------
Wed Oct 2 06:37:21 UTC 2019 - Nicolas Morey-Chaisemartin <nmoreychaisemartin@suse.com>
- Have rsocket conflicts with older librdmacm-tools (bsc#1137140)
- Have librdmacm-utils obsolete and provide librdmacm-tools (bsc#1137138)
-------------------------------------------------------------------
Fri Sep 6 07:18:24 UTC 2019 - Nicolas Morey-Chaisemartin <nmoreychaisemartin@suse.com>
- Update to rdma-core v25.1 (bsc#996146)
- No release notes available
- Add rdma-core-rpmlintrc to hide non applicable rpmlint warnings
-------------------------------------------------------------------
Mon May 13 08:20:59 UTC 2019 - Nicolas Morey-Chaisemartin <nmoreychaisemartin@suse.com>
- Update to rdma-core v23.1
- No release notes available
- Replace prebuild-pandoc.sh by post_download.sh to patch the spec
file form upstream for OBS setup
-------------------------------------------------------------------
Fri Apr 19 06:08:06 UTC 2019 - Nicolas Morey-Chaisemartin <nmoreychaisemartin@suse.com>
- Update to rdma-core v23
- No release notes available
- Enable pyverbs package
- Remove patches that were merged upstream
- Update-kernel-headers.patch
- bnxt_re-lib-Enable-Broadcom-s-57500-RoCE-adapter.patch
-------------------------------------------------------------------
Fri Mar 1 07:07:49 UTC 2019 - Nicolas Morey-Chaisemartin <nmoreychaisemartin@suse.com>
- Add patches to enable Broadcom's 57500 RoCE adapter (bsc#1125651):
- Update-kernel-headers.patch
- bnxt_re-lib-Enable-Broadcom-s-57500-RoCE-adapter.patch
-------------------------------------------------------------------
Wed Feb 6 08:37:03 UTC 2019 - nmoreychaisemartin@suse.com
- Update to rdma-core v22.1 (bsc#1104280)
* No release notes available
-------------------------------------------------------------------
Fri Nov 30 06:54:33 UTC 2018 - nmoreychaisemartin@suse.com
- Update to rdma-core v21 (fate#325939, fate#326991)
* No release notes available
-------------------------------------------------------------------
Mon Oct 15 08:15:29 UTC 2018 - nmoreychaisemartin@suse.com
- Update to rdma-core v20.1 (fate#325887, fate#325919, fate#326000)
* No release notes available
- Drop patches merged upstream:
* suse-Add-recommends-for-rxe_cfg-requirements.patch
adds recommends for the relevant packages
* rxe-switch-to-iproute2-for-rxe_cfg.patch
switches to iproute2 commands
-------------------------------------------------------------------
Thu Aug 2 09:25:16 UTC 2018 - nmoreychaisemartin@suse.com
- Add two patches for rxe_cfg
* suse-Add-recommends-for-rxe_cfg-requirements.patch
adds recommends for the relevant packages
* rxe-switch-to-iproute2-for-rxe_cfg.patch
switches to iproute2 commands
-------------------------------------------------------------------
Thu Jun 14 08:54:13 UTC 2018 - nmoreychaisemartin@suse.com
- Remove pandoc BuildRequires
* Add prebuilt-pandoc.sh to pre-generate the man pages
* Add prebuilt-pandoc.tgz containing pre-generated man pages
* Extract man pages in the appropriate directory during build
-------------------------------------------------------------------
Tue Jun 12 10:40:32 UTC 2018 - nmoreychaisemartin@suse.com
- Update to rdma-core v18.1
* Fix compilation issue with recent glibc
- Drop Remove-the-obsolete-libibcm-library.patch and
umad-Do-not-check-for-umad-sysfs-files-in-umad_init.patch as they were
fixed upstream.
-------------------------------------------------------------------
Tue Jun 12 05:47:18 UTC 2018 - nmoreychaisemartin@suse.com
- Update to rdma-core v16.5
* Backport fixes:
* buildilb: Fix -msse breakage on ARM builds
* buildlib: Use -msse if the compiler does not support target(sse) (bsc#1086910)
* suse: do not call %service rules on a template file (bsc#1093170)
* mlx5: Convert ah_attr static rate to mlx5 static rate
* ccan: Add array_size.h file
* iwpmd: Initialize address of sockaddr
* mlx5: Fix need_uuar_lock when there are no medium bfregs
* verbs: Fix wrong clean up flow in ibv_rc_pingpong
* Match kernel ABI to for 4.17 for 32 bit
* librdmacm: Set errno correctly if status is positive
* verbs: Remove bogus cq_fd
* verbs: Fix typo in copying IBV_FLOW_SPEC_UDP/TCP 'val'
-------------------------------------------------------------------
Thu Apr 26 08:27:29 UTC 2018 - nmoreychaisemartin@suse.com
- Add umad-Do-not-check-for-umad-sysfs-files-in-umad_init.patch to fix
umad/ibstat support on RoCE hardware (bsc#1088441).
-------------------------------------------------------------------
Wed Mar 21 09:38:52 UTC 2018 - nmoreychaisemartin@suse.com
- Add Provide/Obsolete for librdmacm in librdmacm1 (bsc#1086173)
-------------------------------------------------------------------
Tue Mar 13 15:53:51 UTC 2018 - nmoreychaisemartin@suse.com
- Update to rdma-core v16.4 (bsc#1084456)
* Backport fixes:
* cxgb4: add new device pci ids.
* mlx5: Fix referencing uninitialized var in create_qp error flow
* Ensure all public headers compile in C++ mode
* providers/i40iw: Skip CQEs for destroyed QP
* ibacm: Support FDR and EDR rates
-------------------------------------------------------------------
Wed Feb 21 10:16:15 UTC 2018 - nmoreychaisemartin@suse.com
- Update to rdma-core v16.3:
* Backport fixes:
* vmw_pvrdma: Drop the extraneous align_next_power2 for sges
* vmw_pvrdma: Fix SRQN returned to library
* mlx5: Add missing include file in mlx5dv.h
-------------------------------------------------------------------
Thu Feb 1 14:32:48 UTC 2018 - nmoreychaisemartin@suse.com
- Update to rdma-core v16.2 (bsc#1078819):
* Backport fixes:
* iwpmd: fix double mutex unlock
* libbnxt_re: Fix lat test failure in event mode
* libbnxt_re: Update and sort device pci-id table
* cbuild: Support distros that only ship python3
* libbnxt_re: Display FW version using ibv_devinfo
-------------------------------------------------------------------
Fri Jan 19 10:05:18 UTC 2018 - nmoreychaisemartin@suse.com
- Add Remove-the-obsolete-libibcm-library.patch to drop obsolete libibcm.
* Official upstream drop will be in v17
* Drop now to avoid submitting libibcm to SLE15
-------------------------------------------------------------------
Thu Jan 4 11:41:20 UTC 2018 - nmoreychaisemartin@suse.com
- Update to rdma-core v16.1:
* Backport fixes:
* srp_daemon: Don't create async_ev_thread if only run once
* srp_daemon: handle SM lid change
* srp_daemon: fix CQ handling
- Drop srp_daemon-Don-t-create-async_ev_thread-if-only-run-once.patch,
srp_daemon-fix-CQ-handling.patch, and
srp_daemon-handle-SM-lid-change.patch as they were merged upstream.
-------------------------------------------------------------------
Wed Jan 3 09:17:10 UTC 2018 - nmoreychaisemartin@suse.com
- Add srp_daemon-Don-t-create-async_ev_thread-if-only-run-once.patch
to fix bad exit code of ibsrpdm (bsc#1074390)
-------------------------------------------------------------------
Fri Dec 15 08:28:17 UTC 2017 - nmoreychaisemartin@suse.com
- Add srp_daemon-handle-SM-lid-change.patch and
srp_daemon-fix-CQ-handling.patch to fix issue
with SRP daemon not handling SM changes (bsc#1072884, bsc#1049515)
-------------------------------------------------------------------
Wed Dec 6 08:06:46 UTC 2017 - nmoreychaisemartin@suse.com
- Update to rdma-core v16
* No release notes available
-------------------------------------------------------------------
Mon Dec 4 11:30:13 UTC 2017 - nmoreychaisemartin@suse.com
- Add bcond to use curl-mini by default for building
-------------------------------------------------------------------
Tue Nov 28 15:56:40 UTC 2017 - nmoreychaisemartin@suse.com
- Update to rdma-core v15.1
* Backport CI checks on centos/SUSE from master
* Stable ABI auto checks
* Backport fixes:
* verbs: Do not block QP attr_masks used by older kernels
* libibumad/umad.c: In get_port, ignore sysfs rate file errors
* bnxt_re/lib: fix the memory barrier call during poll-cq
* bnxt_re/lib: increment psn in case of 0 length packets
* libqedr: fix inline data copy
* verbs: Fix declaration of C++ include file in C-block
* verbs: Fix C++ compilation break
* verbs: fix compilation error with ICC
* hns: Fix create QP structure layout
* ibacm: Incorrect list used for subnet list causes a segfault
* ibacm: Incorrect usage of BE byte order of MLID attach/detach_mcast()
- Remove patches that were merged to v15.1:
* bnxt_re-lib-fix-the-memory-barrier-call-during-poll-cq.patch
* bnxt_re-lib-increment-psn-in-case-of-0-length-packets.patch
* ibacm-Incorrect-list-used-for-subnet-list-causes-a-segfault.patch
* ibacm-Incorrect-usage-of-BE-byte-order-of-MLID-attach-detach_mcast.patch
* libibumad-umad.c-In-get_port-ignore-sysfs-rate-file-errors.patch
* libqedr-fix-inline-data-copy.patch
* verbs-Do-not-block-QP-attr_masks-used-by-older-kernels.patch
-------------------------------------------------------------------
Thu Nov 9 13:34:40 UTC 2017 - nmoreychaisemartin@suse.com
- Backport upstream patches
* bnxt_re-lib-fix-the-memory-barrier-call-during-poll-cq.patch
Fix memory ordering issue
* bnxt_re-lib-increment-psn-in-case-of-0-length-packets.patch
Fix PSN getting out of sync when sending 0 length packet
* verbs-Do-not-block-QP-attr_masks-used-by-older-kernels.patch
Fix bits detection to allow RDMA CM to work on older kernsl
- Refresh older patches to include commit logs:
* ibacm-Incorrect-list-used-for-subnet-list-causes-a-segfault.patch
* ibacm-Incorrect-usage-of-BE-byte-order-of-MLID-attach-detach_mcast.patch
* libibumad-umad.c-In-get_port-ignore-sysfs-rate-file-errors.patch
* libqedr-fix-inline-data-copy.patch
-------------------------------------------------------------------
Wed Nov 8 14:05:44 UTC 2017 - nmoreychaisemartin@suse.com
- Add libibumad-umad.c-In-get_port-ignore-sysfs-rate-file-errors.patch
* Fix issue with umad when QSFP is not plugged in (bnc#1058539)
-------------------------------------------------------------------
Thu Nov 2 08:39:49 UTC 2017 - nmoreychaisemartin@suse.com
- Backport patch from upstream:
* libqedr-fix-inline-data-copy.patch
Fix data integrity issue while sending inline data (bsc#1050543, fate#322894)
-------------------------------------------------------------------
Wed Oct 18 09:01:37 UTC 2017 - nmoreychaisemartin@suse.com
- Backport patches from upstream:
* ibacm-Incorrect-usage-of-BE-byte-order-of-MLID-attach-detach_mcast.patch
Fixes a byte order issue which causes ibacm to fail to join a multicast
group on recent on recent kernels. (bsc#1063639, bsc#1063697)
* ibacm-Incorrect-list-used-for-subnet-list-causes-a-segfault.patch
Fixes a sefgault of ibacm when a provider other than default
is set (bsc#1063642, bsc#1063698)
-------------------------------------------------------------------
Mon Sep 18 08:04:29 UTC 2017 - nmoreychaisemartin@suse.com
- Update to rdma-core v15
* Remove dracut requirement (bsc#1058504)
* Includes Broadcom patches (bsc#1060413)
-------------------------------------------------------------------
Thu Aug 31 06:52:17 UTC 2017 - nmoreychaisemartin@suse.com
- Update to v15-rc3-52-gd3ca56f1
* Fix rdma-sriov.service dependencies and remove install section
* 50-libmlx4.conf is not a config file
-------------------------------------------------------------------
Wed Aug 30 14:21:25 UTC 2017 - nmoreychaisemartin@suse.com
- Update to v15-rc3-45-gd366c01a
* Drop obsolete workarounds
* Drop rdma.service
* Add rdma-sriov.service
* Switch to the new udev system
- Prevent uninstall from trying to stop srp_daemon_port@.service
-------------------------------------------------------------------
Tue Aug 29 12:41:29 UTC 2017 - nmoreychaisemartin@suse.com
- Update to v15-rc3-26-g2f5779a7
- Prevent rdma-core services to be stopped or restarted during
uninstall and updates
- Do not use service_* macros on services that do not need them
- Remove provides for old <provider>-rdmav2 packages
as they are not compatible anymore due to ABI changes
- Use upstream spec file.
-------------------------------------------------------------------
Mon Aug 21 13:53:50 UTC 2017 - nmoreychaisemartin@suse.com
- Update to v15-rc3
- Add flow steering drop action
- mmio_flush_write fixes
- Fixes for uclibc
- Add common mmio accessor routines and remove per provider mmio
routines
- qedr fixes
- Lots of fixes for debian packaging
- Copyright fixes
- Properly conflict with infiniband-diags
- Add direct verbs support to mlx4 provider
- Improvement to Travis CI checking
- Enforce kernel coding style in rdma-core
- Add initial verbs hotplug support
- Sparse annotations
- Systemd updates for srp_daemon and iwpmd
- Red Hat packaging fixes
- Properly make the entire rdma-core support udev hotplug activation
- Packaging fixes related to the joining of packages and globs that are
no longer valid
- Drop rdma-core-s390x.patch as it was merged upstream
- Remove legacy systemd macros
-------------------------------------------------------------------
Tue Aug 8 18:44:01 UTC 2017 - jengelh@inai.de
- Fix RPM groups.
-------------------------------------------------------------------
Mon Aug 7 07:33:59 UTC 2017 - coolo@suse.com
- To get the package out of the bootstrap line, we need to prefer
curl-mini as dependency of cmake. Unfortunately we need to special
case packages that are in the inner loop - otherwise every package
would get curl-mini
-------------------------------------------------------------------
Thu Jul 20 13:44:16 UTC 2017 - nmoreychaisemartin@suse.com
- ibacm now obsoletes libibacmp1 (bsc#1049854)
-------------------------------------------------------------------
Thu Jul 13 13:42:09 UTC 2017 - schwab@suse.de
- No mlx5 on %arm
-------------------------------------------------------------------
Fri Jul 7 09:50:14 UTC 2017 - dimstar@opensuse.org
- BuildRequire pkgconfig(libudev) instead of libudev-devel: this
allows OBS to chose libudev-devel-mini and produce a better
rebuild-chain (and break cycles).
-------------------------------------------------------------------
Wed Jun 7 18:45:12 UTC 2017 - dimstar@opensuse.org
- BuildRequire pkgconfig(systemd) instead of systemd-devel: this
allows OBS to chose systemd-mini and produce a better
rebuild-chain.
-------------------------------------------------------------------
Wed Jun 7 13:02:09 UTC 2017 - nmoreychaisemartin@suse.com
- Add patch rdma-core-s390x.patch to fix s390x build (bsc#1043105).
* Add missing verbs providers for s390x
* Add mlx5 package for s390x
- libibverbs1 requires libibverbs (bsc#1042840).
-------------------------------------------------------------------
Tue May 30 08:36:52 UTC 2017 - nmoreychaisemartin@suse.com
- Update to v14 (bsc#321907).
* Introduction of bnxt_re driver
* Rework srp_daemon's systemd integration
* Various fixes in qedr, mlx4, mlx5, bnxrt_re and rxe drivers
* New supported PCI ID were added to mlx5
* Addition of manual pages for cmtime and udpong programs
* Multiple fixes of spelling types and documentation clarifications
* Sparse fixes
* rping gained ability to bind to source IP address
* Various improvements in cmake and cbuild infrastructures
* Add support for flow tag, CVLAN and VXLAN specifications
* Provide ability to pass private data to create CQ
* Exposure various device capabilities to user applications
-------------------------------------------------------------------
Mon May 29 14:11:24 UTC 2017 - nmoreychaisemartin@suse.com
- Fix all references to /usr/libexec (bsc#1039999)
-------------------------------------------------------------------
Tue May 23 14:28:23 CEST 2017 - pth@suse.de
- Fix rdma.service which had /usr/libexec hardcoded (bsc#1039999).
-------------------------------------------------------------------
Mon May 15 16:28:00 UTC 2017 - nmoreychaisemartin@suse.com
- Split rdma-ndd into its own package to replace previous package
from infiniband-diags (bsc#1039146).
-------------------------------------------------------------------
Mon May 15 12:48:42 UTC 2017 - nmoreychaisemartin@suse.com
- Update to 14-rc1-40-g706fc2af (fate#321907, bsc#1020415).
No releases notes. Contains libbnxtre bug fixes
-------------------------------------------------------------------
Thu May 11 15:44:46 UTC 2017 - nmoreychaisemartin@suse.com
- Add baselibs.conf to generate -32bit libraries (bsc#1038742).
-------------------------------------------------------------------
Tue May 9 15:33:18 UTC 2017 - nmoreychaisemartin@suse.com
- Update to rdma-core v14-rc1 (bsc#1016427).
-------------------------------------------------------------------
Fri May 5 14:11:14 UTC 2017 - nmoreychaisemartin@suse.com
- Remove redundant Requires on ldconfig (-p already does this).
- Add missing systemd requires.
- RPM group assignment fixes.
- Remove pointless comments which cause scriptlets to be not empty
in some cases.
-------------------------------------------------------------------
Thu May 4 15:36:00 UTC 2017 - nmoreychaisemartin@suse.com
- Provide ofed for legacy packages
-------------------------------------------------------------------
Fri Apr 28 14:56:20 CEST 2017 - pth@suse.de
- Update to git version fd1db488 as it now contains the bnxt drivr.
No log of changes present (fate#321907).
-------------------------------------------------------------------
Wed Apr 26 09:36:50 UTC 2017 - fcrozat@suse.com
- specfile cleanup, remove libibverbs-devel subpackage, since it no
longer exists.
- ibacm shouldn't obsolete its older versions.
-------------------------------------------------------------------
Tue Apr 25 09:42:10 CEST 2017 - pth@suse.de
- Fix Group for rdma-core.
-------------------------------------------------------------------
Wed Mar 29 09:50:28 CEST 2017 - pth@suse.de
- Comment out the -devel requiring ibacm for bootstrapping.
-------------------------------------------------------------------
Wed Mar 22 11:20:33 CET 2017 - pth@suse.de
- fix Provides/Obsoletes
-------------------------------------------------------------------
Tue Mar 21 09:31:31 CET 2017 - pth@suse.de
- Fix RPM Group entries.
-------------------------------------------------------------------
Tue Mar 14 14:02:19 CET 2017 - pth@suse.de
- Initial packaging for SLES and openSUSE, based on latest release
(fate#322112, fate#321250, fate#321566, fate#321657, fate#321684,
fate#321750, fate#321867, fate#321887, fate#322197, fate#322199,
bsc#1019714, bsc#1001685, bsc#1016427, bsc#1022597, bsc#1001685,
bsc#1022598, bsc#1022599, bsc#1024377, bsc#1016427).
- There is no valgrind in s390 so exclude the build requirement on
this architecture.
- Add appropriate RPM groups
-------------------------------------------------------------------
Tue Nov 1 17:29:24 UTC 2016 - jthumshirn@suse.com
- Initital packaging for openSUSE

895
rdma-core.spec Normal file
View File

@ -0,0 +1,895 @@
#
# spec file for package rdma-core
#
# Copyright (c) 2024 SUSE LLC
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
# upon. The license for this file, and modifications and additions to the
# file, is the same license as for the pristine package itself (unless the
# license for the pristine package is not an Open Source License, in which
# case the license is the MIT License). An "Open Source License" is a
# license that conforms to the Open Source Definition (Version 1.9)
# published by the Open Source Initiative.
# Please submit bugfixes or comments via https://bugs.opensuse.org/
#
%bcond_without systemd
# Do not build static libs by default.
%define with_static 0
%if 0%{?sle_version} > 120400
%define with_pyverbs 1
%else
%define with_pyverbs 0
%endif
%if 0%{?suse_version} < 1550 && 0%{?sle_version} <= 150300
# systemd-rpm-macros is wrong in 15.3 and below
%define _modprobedir /lib/modprobe.d
%endif
%define git_ver .0.8847c327b89c
Name: rdma-core
Version: 49.1
Release: 0
Summary: RDMA core userspace libraries and daemons
License: BSD-2-Clause OR GPL-2.0-only
Group: Productivity/Networking/Other
%define efa_so_major 1
%define verbs_so_major 1
%define rdmacm_so_major 1
%define umad_so_major 3
%define mana_so_major 1
%define mlx4_so_major 1
%define mlx5_so_major 1
%define ibnetdisc_major 5
%define mad_major 5
%define efa_lname libefa%{efa_so_major}
%define verbs_lname libibverbs%{verbs_so_major}
%define rdmacm_lname librdmacm%{rdmacm_so_major}
%define umad_lname libibumad%{umad_so_major}
%define mana_lname libmana%{mana_so_major}
%define mlx4_lname libmlx4-%{mlx4_so_major}
%define mlx5_lname libmlx5-%{mlx5_so_major}
%ifnarch s390 %arm
%define dma_coherent 1
%endif
%global modprobe_d_files 50-libmlx4.conf truescale.conf %{?dma_coherent:mlx4.conf}
# Almost everything is licensed under the OFA dual GPLv2, 2 Clause BSD license
# providers/ipathverbs/ Dual licensed using a BSD license with an extra patent clause
# providers/rxe/ Incorporates code from ipathverbs and contains the patent clause
# providers/hfi1verbs Uses the 3 Clause BSD license
URL: https://github.com/linux-rdma/rdma-core
Source: rdma-core-%{version}%{git_ver}.tar.gz
Source1: baselibs.conf
Source2: post_download.sh
Source3: prebuilt-pandoc.tgz
Source4: rdma-core-rpmlintrc
Source5: gen-pandoc.sh
Source6: get_build.py
Patch0: disable-rdma-interface-renaming.patch
BuildRequires: binutils
BuildRequires: cmake >= 2.8.11
BuildRequires: gcc
# perl is needed for the proper rpm macros
%if %{?suse_version} > 1550
BuildRequires: perl
%endif
BuildRequires: pkgconfig
BuildRequires: python3-base
BuildRequires: pkgconfig(libsystemd)
BuildRequires: pkgconfig(libudev)
BuildRequires: pkgconfig(systemd)
BuildRequires: pkgconfig(udev)
%if %{with_pyverbs}
BuildRequires: python3-Cython
BuildRequires: python3-devel
%endif
%ifnarch s390 s390x
%if 0%{?suse_version} >= 1550
BuildRequires: valgrind-client-headers
%else
BuildRequires: valgrind-devel
%endif
%endif
BuildRequires: systemd-rpm-macros
BuildRequires: pkgconfig(libnl-3.0)
BuildRequires: pkgconfig(libnl-route-3.0)
BuildRequires: pkgconfig(systemd)
Requires: kmod
Requires: systemd
Requires: udev
Recommends: rdma-ndd
# SUSE previously shipped rdma as a stand-alone
# package which we're supplanting here.
Provides: rdma = %{version}
Obsoletes: rdma < %{version}
Provides: ofed = %{version}
Obsoletes: ofed < %{version}
# Trickery to handle both SUSE OpenBuild System and Manual build
# In OBS, rdma-core must use curl-mini instead of curl to avoid
# a build dependency loop:
# rdma-core -> cmake -> curl -> ... -> boost -> rdma-core
# Thus we force a BuildRequires to curl-mini which as no impact
# as it is not used during the build.
# However curl-mini is not a published RPM. This would prevent any build
# outside of OBS. Thus we add a bcond to allow manual build.
# To force build without the use of curl-mini, --without=curlmini
# should be passed to rpmbuild
%bcond_without curlmini
%if 0%{?suse_version} >= 1330 && 0%{?suse_version} < 1550
%if %{with curlmini}
BuildRequires: curl-mini
%endif
%endif
# Tumbleweed's cmake RPM macro adds -Wl,--no-undefined to the module flags
# which is totally inappropriate and breaks building 'ENABLE_EXPORTS' style
# module libraries (eg ibacmp).
#%%define CMAKE_FLAGS -DCMAKE_MODULE_LINKER_FLAGS=""
# Since we recommend developers use Ninja, so should packagers, for consistency.
%define CMAKE_FLAGS %{nil}
%if 0%{?suse_version} >= 1300
BuildRequires: ninja
%define CMAKE_FLAGS -GNinja
%define make_jobs ninja -v %{?_smp_mflags}
%define cmake_install DESTDIR=%{buildroot} ninja install
%else
# Fallback to make otherwise
BuildRequires: make
%define make_jobs make VERBOSE=1 %{?_smp_mflags}
%define cmake_install DESTDIR=%{buildroot} make install
%endif
%description
RDMA core userspace infrastructure and documentation, including initialization
scripts, kernel driver-specific modprobe override configs, IPoIB network
scripts, dracut rules, and the rdma-ndd utility.
%package devel
Summary: RDMA core development libraries and headers
Group: Development/Libraries/C and C++
Requires: %{name}%{?_isa} = %{version}-%{release}
Requires: %{rdmacm_lname} = %{version}-%{release}
Requires: %{umad_lname} = %{version}-%{release}
Requires: %{verbs_lname} = %{version}-%{release}
%if 0%{?dma_coherent}
Requires: %{efa_lname} = %{version}-%{release}
Requires: %{mana_lname} = %{version}-%{release}
Requires: %{mlx4_lname} = %{version}-%{release}
Requires: %{mlx5_lname} = %{version}-%{release}
%endif
Requires: rsocket = %{version}-%{release}
Provides: libibverbs-devel = %{version}-%{release}
Obsoletes: libibverbs-devel < %{version}-%{release}
Provides: libibumad-devel = %{version}-%{release}
Obsoletes: libibumad-devel < %{version}-%{release}
Provides: librdmacm-devel = %{version}-%{release}
Obsoletes: librdmacm-devel < %{version}-%{release}
#Requires: ibacm = %%{version}-%%{release}
Provides: ibacm-devel = %{version}-%{release}
Obsoletes: ibacm-devel < %{version}-%{release}
%if %{with_static}
# Since our pkg-config files include private references to these packages they
# need to have their .pc files installed too, even for dynamic linking, or
# pkg-config breaks.
BuildRequires: pkgconfig(libnl-3.0)
BuildRequires: pkgconfig(libnl-route-3.0)
%endif
Requires: infiniband-diags = %{version}-%{release}
Provides: infiniband-diags-devel = %{version}-%{release}
Obsoletes: infiniband-diags-devel < %{version}-%{release}
Provides: libibmad-devel = %{version}-%{release}
Obsoletes: libibmad-devel < %{version}
%description devel
RDMA core development libraries and headers.
%package -n libibverbs
Summary: Library & drivers for direct userspace use of InfiniBand/iWARP/RoCE hardware
Group: System/Libraries
Requires: %{name}%{?_isa} = %{version}-%{release}
Obsoletes: libcxgb4-rdmav2 < %{version}-%{release}
Obsoletes: libefa-rdmav2 < %{version}-%{release}
Obsoletes: libhfi1verbs-rdmav2 < %{version}-%{release}
Obsoletes: libipathverbs-rdmav2 < %{version}-%{release}
Obsoletes: libmana-rdmav2 < %{version}-%{release}
Obsoletes: libmlx4-rdmav2 < %{version}-%{release}
Obsoletes: libmlx5-rdmav2 < %{version}-%{release}
Obsoletes: libmthca-rdmav2 < %{version}-%{release}
Obsoletes: libocrdma-rdmav2 < %{version}-%{release}
Obsoletes: librxe-rdmav2 < %{version}-%{release}
%if 0%{?dma_coherent}
Requires: %{efa_lname} = %{version}-%{release}
Requires: %{mana_lname} = %{version}-%{release}
Requires: %{mlx4_lname} = %{version}-%{release}
Requires: %{mlx5_lname} = %{version}-%{release}
%endif
# Recommended packages for rxe
Recommends: iproute2
%description -n libibverbs
libibverbs is a library that allows userspace processes to use RDMA
"verbs" as described in the InfiniBand Architecture Specification and
the RDMA Protocol Verbs Specification. This includes direct hardware
access from userspace to InfiniBand/iWARP adapters (kernel bypass) for
fast path operations.
Device-specific plug-in ibverbs userspace drivers are included:
- libcxgb4: Chelsio T4 iWARP HCA
- libefa: Amazon Elastic Fabric Adapter
- libhfi1: Intel Omni-Path HFI
- libhns: HiSilicon Hip06 SoC
- libipathverbs: QLogic InfiniPath HCA
- libirdma: Intel Ethernet Connection RDMA
- libmana: Microsoft Azure Network Adapter
- libmlx4: Mellanox ConnectX-3 InfiniBand HCA
- libmlx5: Mellanox Connect-IB/X-4+ InfiniBand HCA
- libmthca: Mellanox InfiniBand HCA
- libocrdma: Emulex OneConnect RDMA/RoCE Device
- libqedr: QLogic QL4xxx RoCE HCA
- librxe: A software implementation of the RoCE protocol
- libsiw: A software implementation of the iWarp protocol
- libvmw_pvrdma: VMware paravirtual RDMA device
%package -n %verbs_lname
Summary: Ibverbs runtime library
Group: System/Libraries
Requires: libibverbs = %{version}
%description -n %verbs_lname
This package contains the ibverbs runtime library.
%package -n %efa_lname
Summary: EFA runtime library
Group: System/Libraries
%description -n %efa_lname
This package contains the efa runtime library.
%package -n %mana_lname
Summary: MANA runtime library
Group: System/Libraries
%description -n %mana_lname
This package contains the mana runtime library.
%package -n %mlx4_lname
Summary: MLX4 runtime library
Group: System/Libraries
%description -n %mlx4_lname
This package contains the mlx4 runtime library.
%package -n %mlx5_lname
Summary: MLX5 runtime library
Group: System/Libraries
%description -n %mlx5_lname
This package contains the mlx5 runtime library.
%package -n libibnetdisc%{ibnetdisc_major}
Summary: Infiniband Net Discovery runtime library
Group: System/Libraries
%description -n libibnetdisc%{ibnetdisc_major}
This package contains the Infiniband Net Discovery runtime library needed
mainly by infiniband-diags.
%package -n libibverbs-utils
Summary: Examples for the libibverbs library
Group: Productivity/Networking/Other
Requires: libibverbs%{?_isa} = %{version}
%description -n libibverbs-utils
Useful libibverbs example programs such as ibv_devinfo, which
displays information about RDMA devices.
%package -n ibacm
Summary: InfiniBand Communication Manager Assistant
Group: Productivity/Networking/Other
%{?systemd_requires}
Requires: %{name}%{?_isa} = %{version}
Obsoletes: libibacmp1 < %{version}
Provides: libibacmp1 = %{version}
%description -n ibacm
The ibacm daemon helps reduce the load of managing path record lookups on
large InfiniBand fabrics by providing a user space implementation of what
is functionally similar to an ARP cache. The use of ibacm, when properly
configured, can reduce the SA packet load of a large IB cluster from O(n^2)
to O(n). The ibacm daemon is started and normally runs in the background,
user applications need not know about this daemon as long as their app
uses librdmacm to handle connection bring up/tear down. The librdmacm
library knows how to talk directly to the ibacm daemon to retrieve data.
%package -n infiniband-diags
Summary: InfiniBand Diagnostic Tools
Group: Productivity/Networking/Diagnostic
Requires: perl = %{perl_version}
%description -n infiniband-diags
diags provides IB diagnostic programs and scripts needed to diagnose an
IB subnet.
%package -n libibmad%{mad_major}
Summary: Libibmad runtime library
Group: System/Libraries
%description -n libibmad%{mad_major}
Libibmad provides low layer IB functions for use by the IB diagnostic
and management programs. These include MAD, SA, SMP, and other basic IB
functions. This package contains the runtime library.
%package -n iwpmd
Summary: Userspace iWarp Port Mapper daemon
Group: Development/Libraries/C and C++
Requires: %{name}%{?_isa} = %{version}
%{?systemd_requires}
%description -n iwpmd
iwpmd provides a userspace service for iWarp drivers to claim
tcp ports through the standard socket interface.
%package -n %umad_lname
Summary: OpenFabrics Alliance InfiniBand Userspace Management Datagram library
Group: System/Libraries
%description -n %umad_lname
libibumad provides the userspace management datagram (umad) library
functions, which sit on top of the umad modules in the kernel. These
are used by the IB diagnostic and management tools, including OpenSM.
%package -n %rdmacm_lname
Summary: Userspace RDMA Connection Manager
Group: System/Libraries
Requires: %{name} = %{version}
Provides: librdmacm = %{version}
Obsoletes: librdmacm < %{version}
%description -n %rdmacm_lname
librdmacm provides a userspace RDMA Communication Management API.
%package -n rsocket
Summary: Preloadable library to turn the socket API RDMA-aware
# Older librdmacm-tools used to provide rsocket
Group: System/Libraries
Conflicts: librdmacm-tools < 2
%description -n rsocket
Existing applications can make use of rsockets through the use this
preloadable library. See the documentation in the packaged rsocket(7)
manpage for details.
%package -n librdmacm-utils
Summary: Examples for the librdmacm library
Group: Productivity/Networking/Other
Obsoletes: librdmacm-tools < %{version}
Provides: librdmacm-tools = %{version}
%description -n librdmacm-utils
Example test programs for the librdmacm library.
%package -n srp_daemon
Summary: Tools for using the InfiniBand SRP protocol devices
Group: Development/Libraries/C and C++
Requires: %{name} = %{version}
Obsoletes: srptools <= 1.0.3
Provides: srptools = %{version}
%{?systemd_requires}
%description -n srp_daemon
In conjunction with the kernel ib_srp driver, srp_daemon allows you to
discover and use SCSI devices via the SCSI RDMA Protocol over InfiniBand.
%package -n rdma-ndd
Summary: Daemon to manage RDMA Node Description
Group: System/Daemons
Requires: %{name} = %{version}
# The udev rules in rdma need to be aware of rdma-ndd:
Conflicts: rdma < 2.1
%{?systemd_requires}
%description -n rdma-ndd
rdma-ndd is a system daemon which watches for rdma device changes and/or
hostname changes and updates the Node Description of the rdma devices based
on those changes.
%package -n python3-pyverbs
Summary: Python3 API over IB verbs
Group: Development/Languages/Python
%description -n python3-pyverbs
Pyverbs is a Cython-based Python API over libibverbs, providing an
easy, object-oriented access to IB verbs.
%prep
%setup -q -n %{name}-%{version}%{git_ver}
#Extract prebuilt pandoc file in the buildlib directory
(cd buildlib && tar -xf %{S:3})
%patch0
%build
# New RPM defines _rundir, usually as /run
%if 0%{?_rundir:1}
%else
%define _rundir /var/run
%endif
%{!?EXTRA_CMAKE_FLAGS: %define EXTRA_CMAKE_FLAGS %{nil}}
# Pass all of the rpm paths directly to GNUInstallDirs and our other defines.
%cmake %{CMAKE_FLAGS} \
-DCMAKE_MODULE_LINKER_FLAGS="-Wl,--as-needed -Wl,-z,now" \
-DCMAKE_BUILD_TYPE=Release \
-DCMAKE_INSTALL_BINDIR:PATH=%{_bindir} \
-DCMAKE_INSTALL_SBINDIR:PATH=%{_sbindir} \
-DCMAKE_INSTALL_LIBDIR:PATH=%{_lib} \
-DCMAKE_INSTALL_LIBEXECDIR:PATH=%{_libexecdir} \
-DCMAKE_INSTALL_LOCALSTATEDIR:PATH=%{_localstatedir} \
-DCMAKE_INSTALL_SHAREDSTATEDIR:PATH=%{_sharedstatedir} \
-DCMAKE_INSTALL_INCLUDEDIR:PATH=include \
-DCMAKE_INSTALL_INFODIR:PATH=%{_infodir} \
-DCMAKE_INSTALL_MANDIR:PATH=%{_mandir} \
-DCMAKE_INSTALL_MODPROBEDIR:PATH=%{_modprobedir} \
-DCMAKE_INSTALL_SYSCONFDIR:PATH=%{_sysconfdir} \
-DCMAKE_INSTALL_SYSTEMD_SERVICEDIR:PATH=%{_unitdir} \
-DCMAKE_INSTALL_SYSTEMD_BINDIR:PATH=%{_prefix}/lib/systemd \
-DCMAKE_INSTALL_INITDDIR:PATH=%{_initddir} \
-DCMAKE_INSTALL_RUNDIR:PATH=%{_rundir} \
-DCMAKE_INSTALL_DOCDIR:PATH=%{_docdir}/%{name}-%{version} \
-DCMAKE_INSTALL_UDEV_RULESDIR:PATH=%{_udevrulesdir} \
-DCMAKE_INSTALL_PERLDIR:PATH=%{perl_vendorlib} \
%if %{with_static}
-DENABLE_STATIC=1 \
%endif
%{EXTRA_CMAKE_FLAGS} \
%if %{defined __python3}
-DPYTHON_EXECUTABLE:PATH=%{__python3} \
-DCMAKE_INSTALL_PYTHON_ARCH_LIB:PATH=%{python3_sitearch} \
%endif
%if %{with_pyverbs}
-DNO_PYVERBS=0
%else
-DNO_PYVERBS=1
%endif
%make_jobs
%install
cd build
%cmake_install
cd ..
mkdir -p %{buildroot}/%{_sysconfdir}/rdma
%global dracutlibdir %%{_prefix}/lib/dracut/
mkdir -p %{buildroot}%{_udevrulesdir}
mkdir -p %{buildroot}%{dracutlibdir}/modules.d/05rdma
mkdir -p %{buildroot}%{_modprobedir}
mkdir -p %{buildroot}%{_unitdir}
# Port type setup for mlx4 dual port cards
install -D -m0644 redhat/rdma.mlx4.sys.modprobe %{buildroot}%{_modprobedir}/50-libmlx4.conf
install -D -m0644 redhat/rdma.mlx4.conf %{buildroot}/%{_sysconfdir}/rdma/mlx4.conf
%if 0%{?dma_coherent}
chmod 0644 %{buildroot}%{_modprobedir}/mlx4.conf
%endif
install -D -m0755 redhat/rdma.mlx4-setup.sh %{buildroot}%{_libexecdir}/mlx4-setup.sh
# Dracut file for IB support during boot
install -D -m0644 suse/module-setup.sh %{buildroot}%{dracutlibdir}/modules.d/05rdma/module-setup.sh
%if "%{_libexecdir}" != "/usr/libexec"
sed 's-/usr/libexec-%{_libexecdir}-g' -i %{buildroot}%{_modprobedir}/50-libmlx4.conf
sed 's-/usr/libexec-%{_libexecdir}-g' -i %{buildroot}%{dracutlibdir}/modules.d/05rdma/module-setup.sh
%endif
# ibacm
cd build
LD_LIBRARY_PATH=./lib bin/ib_acme -D . -O
install -D -m0644 ibacm_opts.cfg %{buildroot}%{_sysconfdir}/rdma/
for service in rdma rdma-ndd ibacm iwpmd srp_daemon; do ln -sf %{_sbindir}/service %{buildroot}%{_sbindir}/rc${service}; done
# Delete the package's init.d scripts
rm -rf %{buildroot}/%{_initddir}/
rm -rf %{buildroot}/%{_sbindir}/srp_daemon.sh
%post -n %verbs_lname -p /sbin/ldconfig
%postun -n %verbs_lname -p /sbin/ldconfig
%post -n %efa_lname -p /sbin/ldconfig
%postun -n %efa_lname -p /sbin/ldconfig
%post -n %mana_lname -p /sbin/ldconfig
%postun -n %mana_lname -p /sbin/ldconfig
%post -n %mlx4_lname -p /sbin/ldconfig
%postun -n %mlx4_lname -p /sbin/ldconfig
%post -n %mlx5_lname -p /sbin/ldconfig
%postun -n %mlx5_lname -p /sbin/ldconfig
%post -n %umad_lname -p /sbin/ldconfig
%postun -n %umad_lname -p /sbin/ldconfig
%post -n %rdmacm_lname -p /sbin/ldconfig
%postun -n %rdmacm_lname -p /sbin/ldconfig
%post -n libibnetdisc%{ibnetdisc_major} -p /sbin/ldconfig
%postun -n libibnetdisc%{ibnetdisc_major} -p /sbin/ldconfig
%post -n libibmad%{mad_major} -p /sbin/ldconfig
%postun -n libibmad%{mad_major} -p /sbin/ldconfig
%pre
# Avoid restoring outdated stuff in posttrans
for _f in %{?modprobe_d_files}; do
[ ! -f "/etc/modprobe.d/${_f}.rpmsave" ] || \
mv -f "/etc/modprobe.d/${_f}.rpmsave" "/etc/modprobe.d/${_f}.rpmsave.old" || :
done
%post
# we ship udev rules, so trigger an update.
%{_bindir}/udevadm trigger --subsystem-match=infiniband --action=change || true
%{_bindir}/udevadm trigger --subsystem-match=infiniband_mad --action=change || true
%posttrans
# Migration of modprobe.conf files to _modprobedir
for _f in %{?modprobe_d_files}; do
[ ! -f "/etc/modprobe.d/${_f}.rpmsave" ] || \
mv -fv "/etc/modprobe.d/${_f}.rpmsave" "/etc/modprobe.d/${_f}" || :
done
#
# ibacm
#
%pre -n ibacm
%service_add_pre ibacm.service ibacm.socket
%post -n ibacm
%service_add_post ibacm.service ibacm.socket
%preun -n ibacm
%service_del_preun ibacm.service ibacm.socket
%postun -n ibacm
%service_del_postun ibacm.service ibacm.socket
#
# srp daemon
#
%pre -n srp_daemon
%service_add_pre srp_daemon.service
%post -n srp_daemon
%service_add_post srp_daemon.service
# we ship udev rules, so trigger an update.
%{_bindir}/udevadm trigger --subsystem-match=infiniband_mad --action=change
%preun -n srp_daemon
%service_del_preun srp_daemon.service
%postun -n srp_daemon
%service_del_postun srp_daemon.service
#
# iwpmd
#
%pre -n iwpmd
%service_add_pre ibiwpmd.service
%post -n iwpmd
%service_add_post iwpmd.service
%preun -n iwpmd
%service_del_preun iwpmd.service
%postun -n iwpmd
%service_del_postun iwpmd.service
#
# rdma-ndd
#
%pre -n rdma-ndd
%service_add_pre rdma-ndd.service
%preun -n rdma-ndd
%service_del_preun rdma-ndd.service
%post -n rdma-ndd
%service_add_post rdma-ndd.service
# we ship udev rules, so trigger an update.
%{_bindir}/udevadm trigger --subsystem-match=infiniband --action=change || true
%postun -n rdma-ndd
%service_del_postun rdma-ndd.service
%files
%dir %{_sysconfdir}/rdma
%dir %{_sysconfdir}/rdma/modules
%dir %{_docdir}/%{name}-%{version}
%dir %{_udevrulesdir}
%dir %{_modprobedir}
%doc %{_docdir}/%{name}-%{version}/70-persistent-ipoib.rules
%doc %{_docdir}/%{name}-%{version}/README.md
%doc %{_docdir}/%{name}-%{version}/udev.md
%config(noreplace) %{_sysconfdir}/rdma/mlx4.conf
%config(noreplace) %{_sysconfdir}/rdma/modules/infiniband.conf
%config(noreplace) %{_sysconfdir}/rdma/modules/iwarp.conf
%config(noreplace) %{_sysconfdir}/rdma/modules/opa.conf
%config(noreplace) %{_sysconfdir}/rdma/modules/rdma.conf
%config(noreplace) %{_sysconfdir}/rdma/modules/roce.conf
%if 0%{?dma_coherent}
%{_modprobedir}/mlx4.conf
%endif
%{_modprobedir}/truescale.conf
%{_unitdir}/rdma-hw.target
%{_unitdir}/rdma-load-modules@.service
%dir %{dracutlibdir}
%dir %{dracutlibdir}/modules.d
%dir %{dracutlibdir}/modules.d/05rdma
%{dracutlibdir}/modules.d/05rdma/module-setup.sh
%{_udevrulesdir}/../rdma_rename
%{_udevrulesdir}/60-rdma-persistent-naming.rules
%{_udevrulesdir}/75-rdma-description.rules
%{_udevrulesdir}/90-rdma-hw-modules.rules
%{_udevrulesdir}/90-rdma-ulp-modules.rules
%{_udevrulesdir}/90-rdma-umad.rules
%{_modprobedir}/50-libmlx4.conf
%{_libexecdir}/mlx4-setup.sh
%{_libexecdir}/truescale-serdes.cmds
%license COPYING.*
%{_sbindir}/rcrdma
%files devel
%doc %{_docdir}/%{name}-%{version}/MAINTAINERS
%dir %{_includedir}/infiniband
%dir %{_includedir}/rdma
%{_includedir}/infiniband/*
%{_includedir}/rdma/*
%if %{with_static}
%{_libdir}/lib*.a
%endif
%{_libdir}/lib*.so
%{_libdir}/pkgconfig/*.pc
%{_mandir}/man3/ibnd_*
%{_mandir}/man3/ibv_*
%{_mandir}/man3/rdma*
%{_mandir}/man3/umad*
%{_mandir}/man3/*_to_ibv_rate.*
%{_mandir}/man7/rdma_cm.*
%if 0%{?dma_coherent}
%{_mandir}/man3/efadv*
%{_mandir}/man3/manadv*
%{_mandir}/man3/mlx5dv*
%{_mandir}/man3/mlx4dv*
%{_mandir}/man7/efadv*
%{_mandir}/man7/manadv*
%{_mandir}/man7/mlx5dv*
%{_mandir}/man7/mlx4dv*
%endif
%files -n libibverbs
%dir %{_sysconfdir}/libibverbs.d
%dir %{_libdir}/libibverbs
%{_libdir}/libibverbs/*.so
%config(noreplace) %{_sysconfdir}/libibverbs.d/*.driver
%doc %{_docdir}/%{name}-%{version}/libibverbs.md
%doc %{_docdir}/%{name}-%{version}/rxe.md
%doc %{_docdir}/%{name}-%{version}/tag_matching.md
%{_mandir}/man7/rxe*
%files -n libibnetdisc%{ibnetdisc_major}
%{_libdir}/libibnetdisc.so.*
%files -n libibmad%{mad_major}
%{_libdir}/libibmad.so.*
%files -n %verbs_lname
%{_libdir}/libibverbs*.so.*
%if 0%{?dma_coherent}
%files -n %efa_lname
%{_libdir}/libefa*.so.*
%files -n %mana_lname
%{_libdir}/libmana*.so.*
%files -n %mlx4_lname
%{_libdir}/libmlx4*.so.*
%files -n %mlx5_lname
%{_libdir}/libmlx5*.so.*
%endif
%files -n libibverbs-utils
%{_bindir}/ibv_*
%{_mandir}/man1/ibv_*
%files -n ibacm
%config(noreplace) %{_sysconfdir}/rdma/ibacm_opts.cfg
%{_bindir}/ib_acme
%{_sbindir}/ibacm
%{_mandir}/man1/ib_acme.*
%{_mandir}/man7/ibacm.*
%{_mandir}/man7/ibacm_prov.*
%{_mandir}/man8/ibacm.*
%{_unitdir}/ibacm.service
%{_unitdir}/ibacm.socket
%dir %{_libdir}/ibacm
%{_libdir}/ibacm/*
%{_sbindir}/rcibacm
%doc %{_docdir}/%{name}-%{version}/ibacm.md
%files -n infiniband-diags
%dir %{_sysconfdir}/infiniband-diags
%config(noreplace) %{_sysconfdir}/infiniband-diags/*
%{_sbindir}/ibaddr
%{_mandir}/man8/ibaddr*
%{_sbindir}/ibnetdiscover
%{_mandir}/man8/ibnetdiscover*
%{_sbindir}/ibping
%{_mandir}/man8/ibping*
%{_sbindir}/ibportstate
%{_mandir}/man8/ibportstate*
%{_sbindir}/ibroute
%{_mandir}/man8/ibroute.*
%{_sbindir}/ibstat
%{_mandir}/man8/ibstat.*
%{_sbindir}/ibsysstat
%{_mandir}/man8/ibsysstat*
%{_sbindir}/ibtracert
%{_mandir}/man8/ibtracert*
%{_sbindir}/perfquery
%{_mandir}/man8/perfquery*
%{_sbindir}/sminfo
%{_mandir}/man8/sminfo*
%{_sbindir}/smpdump
%{_mandir}/man8/smpdump*
%{_sbindir}/smpquery
%{_mandir}/man8/smpquery*
%{_sbindir}/saquery
%{_mandir}/man8/saquery*
%{_sbindir}/vendstat
%{_mandir}/man8/vendstat*
%{_sbindir}/iblinkinfo
%{_mandir}/man8/iblinkinfo*
%{_sbindir}/ibqueryerrors
%{_mandir}/man8/ibqueryerrors*
%{_sbindir}/ibcacheedit
%{_mandir}/man8/ibcacheedit*
%{_sbindir}/ibccquery
%{_mandir}/man8/ibccquery*
%{_sbindir}/ibccconfig
%{_mandir}/man8/ibccconfig*
%{_sbindir}/dump_fts
%{_mandir}/man8/dump_fts*
%{_sbindir}/ibhosts
%{_mandir}/man8/ibhosts*
%{_sbindir}/ibswitches
%{_mandir}/man8/ibswitches*
%{_sbindir}/ibnodes
%{_mandir}/man8/ibnodes*
%{_sbindir}/ibrouters
%{_mandir}/man8/ibrouters*
%{_sbindir}/ibfindnodesusing.pl
%{_mandir}/man8/ibfindnodesusing*
%{_sbindir}/ibidsverify.pl
%{_mandir}/man8/ibidsverify*
%{_sbindir}/check_lft_balance.pl
%{_mandir}/man8/check_lft_balance*
%{_sbindir}/dump_lfts.sh
%{_mandir}/man8/dump_lfts*
%{_sbindir}/dump_mfts.sh
%{_mandir}/man8/dump_mfts*
%{_sbindir}/ibstatus
%{_mandir}/man8/ibstatus*
%{_mandir}/man8/infiniband-diags*
%{perl_vendorlib}/IBswcountlimits.pm
%files -n iwpmd
%dir %{_sysconfdir}/rdma
%dir %{_sysconfdir}/rdma/modules
%{_sbindir}/iwpmd
%{_sbindir}/rciwpmd
%{_unitdir}/iwpmd.service
%config(noreplace) %{_sysconfdir}/rdma/modules/iwpmd.conf
%config(noreplace) %{_sysconfdir}/iwpmd.conf
%{_udevrulesdir}/90-iwpmd.rules
%{_mandir}/man8/iwpmd.*
%{_mandir}/man5/iwpmd.*
%files -n %umad_lname
%{_libdir}/libibumad*.so.*
%files -n %rdmacm_lname
%{_libdir}/librdmacm*.so.*
%doc %{_docdir}/%{name}-%{version}/librdmacm.md
%files -n rsocket
%dir %{_libdir}/rsocket
%{_libdir}/rsocket/*.so*
%{_mandir}/man7/rsocket.*
%files -n librdmacm-utils
%{_bindir}/cmtime
%{_bindir}/mckey
%{_bindir}/rcopy
%{_bindir}/rdma_client
%{_bindir}/rdma_server
%{_bindir}/rdma_xclient
%{_bindir}/rdma_xserver
%{_bindir}/riostream
%{_bindir}/rping
%{_bindir}/rstream
%{_bindir}/ucmatose
%{_bindir}/udaddy
%{_bindir}/udpong
%{_mandir}/man1/cmtime.*
%{_mandir}/man1/mckey.*
%{_mandir}/man1/rcopy.*
%{_mandir}/man1/rdma_client.*
%{_mandir}/man1/rdma_server.*
%{_mandir}/man1/rdma_xclient.*
%{_mandir}/man1/rdma_xserver.*
%{_mandir}/man1/riostream.*
%{_mandir}/man1/rping.*
%{_mandir}/man1/rstream.*
%{_mandir}/man1/ucmatose.*
%{_mandir}/man1/udaddy.*
%{_mandir}/man1/udpong.*
%files -n srp_daemon
%dir %{_libexecdir}/srp_daemon
%dir %{_sysconfdir}/rdma
%dir %{_sysconfdir}/rdma/modules
%config(noreplace) %{_sysconfdir}/srp_daemon.conf
%config(noreplace) %{_sysconfdir}/rdma/modules/srp_daemon.conf
%{_udevrulesdir}/60-srp_daemon.rules
%{_libexecdir}/srp_daemon/start_on_all_ports
%{_unitdir}/srp_daemon.service
%{_unitdir}/srp_daemon_port@.service
%{_sbindir}/ibsrpdm
%{_sbindir}/srp_daemon
%{_sbindir}/run_srp_daemon
%{_sbindir}/rcsrp_daemon
%{_mandir}/man5/srp_daemon.service.5*
%{_mandir}/man5/srp_daemon_port@.service.5*
%{_mandir}/man8/ibsrpdm.8*
%{_mandir}/man8/srp_daemon.8*
%doc %{_docdir}/%{name}-%{version}/ibsrpdm.md
%files -n rdma-ndd
%{_sbindir}/rdma-ndd
%{_sbindir}/rcrdma-ndd
%{_unitdir}/rdma-ndd.service
%{_mandir}/man8/rdma-ndd.8*
%{_udevrulesdir}/60-rdma-ndd.rules
%if %{with_pyverbs}
%files -n python3-pyverbs
%{python3_sitearch}/pyverbs
%dir %{_docdir}/%{name}-%{version}/tests/
%{_docdir}/%{name}-%{version}/tests/*.py
%endif
%changelog