Jarod Wilson d968ae
Name: rdma-core
Kamal Heib 67a28c
Version: 46.0
Michal Schmidt b4f3a4
Release: %autorelease
Jarod Wilson d968ae
Summary: RDMA core userspace libraries and daemons
Jarod Wilson d968ae
Jarod Wilson d968ae
# Almost everything is licensed under the OFA dual GPLv2, 2 Clause BSD license
Jarod Wilson d968ae
#  providers/ipathverbs/ Dual licensed using a BSD license with an extra patent clause
Jarod Wilson d968ae
#  providers/rxe/ Incorporates code from ipathverbs and contains the patent clause
Jarod Wilson d968ae
#  providers/hfi1verbs Uses the 3 Clause BSD license
Jarod Wilson d968ae
License: GPLv2 or BSD
Jarod Wilson d968ae
Url: https://github.com/linux-rdma/rdma-core
Jarod Wilson f458a9
Source: https://github.com/linux-rdma/rdma-core/releases/download/v%{version}/%{name}-%{version}.tar.gz
Michal Schmidt 514221
Patch9998: 9998-kernel-boot-Do-not-perform-device-rename-on-OPA-devi.patch
Michal Schmidt 514221
Patch9999: 9999-udev-keep-NAME_KERNEL-as-default-interface-naming-co.patch
Honggang Li b631ce
# Do not build static libs by default.
Honggang Li b631ce
%define with_static %{?_with_static: 1} %{?!_with_static: 0}
Jarod Wilson d968ae
Honggang Li ae01c2
# 32-bit arm is missing required arch-specific memory barriers,
Honggang Li ae01c2
ExcludeArch: %{arm}
Honggang Li ae01c2
Jarod Wilson d968ae
BuildRequires: binutils
Jarod Wilson d968ae
BuildRequires: cmake >= 2.8.11
Jarod Wilson d968ae
BuildRequires: gcc
Jarod Wilson d968ae
BuildRequires: libudev-devel
Jarod Wilson d968ae
BuildRequires: pkgconfig
Jarod Wilson d968ae
BuildRequires: pkgconfig(libnl-3.0)
Jarod Wilson d968ae
BuildRequires: pkgconfig(libnl-route-3.0)
Honggang Li b631ce
BuildRequires: /usr/bin/rst2man
Jarod Wilson d968ae
BuildRequires: valgrind-devel
Jarod Wilson d968ae
BuildRequires: systemd
Doug Ledford c97992
BuildRequires: systemd-devel
Honggang Li bb5640
%if 0%{?fedora} >= 32 || 0%{?rhel} >= 8
Honggang Li f92c61
%define with_pyverbs %{?_with_pyverbs: 1} %{?!_with_pyverbs: %{?!_without_pyverbs: 1} %{?_without_pyverbs: 0}}
Honggang Li 01859f
%else
Honggang Li b631ce
%define with_pyverbs %{?_with_pyverbs: 1} %{?!_with_pyverbs: 0}
Honggang Li 01859f
%endif
Honggang Li b631ce
%if %{with_pyverbs}
Honggang Li b631ce
BuildRequires: python3-devel
Honggang Li b631ce
BuildRequires: python3-Cython
Honggang Li b631ce
%else
Honggang Li f0a64c
%if 0%{?rhel} >= 8 || 0%{?fedora} >= 30
Jarod Wilson 156687
BuildRequires: python3
Honggang Li b631ce
%else
Honggang Li b631ce
BuildRequires: python
Honggang Li b631ce
%endif
Honggang Li b631ce
%endif
Honggang Li 01859f
Honggang Li 01859f
%if 0%{?rhel} >= 8 || 0%{?fedora} >= 30 || %{with_pyverbs}
Honggang Li 01859f
BuildRequires: python3-docutils
Honggang Li 01859f
%else
Honggang Li 01859f
BuildRequires: python-docutils
Honggang Li 01859f
%endif
Honggang Li 01859f
Honggang Li f0a64c
%if 0%{?fedora} >= 21 || 0%{?rhel} >= 8
Jarod Wilson 156687
BuildRequires: perl-generators
Honggang Li b631ce
%endif
Jarod Wilson d968ae
Zbigniew Jędrzejewski-Szmek 5817d8
Requires: pciutils
Jarod Wilson d968ae
# Red Hat/Fedora previously shipped redhat/ as a stand-alone
Jarod Wilson d968ae
# package called 'rdma', which we're supplanting here.
Jarod Wilson d968ae
Provides: rdma = %{version}-%{release}
Jarod Wilson d968ae
Obsoletes: rdma < %{version}-%{release}
Jarod Wilson d968ae
Conflicts: infiniband-diags <= 1.6.7
Jarod Wilson d968ae
Jarod Wilson d968ae
# Since we recommend developers use Ninja, so should packagers, for consistency.
Jarod Wilson d968ae
%define CMAKE_FLAGS %{nil}
Honggang Li f0a64c
%if 0%{?fedora} >= 23 || 0%{?rhel} >= 8
Jarod Wilson d968ae
# Ninja was introduced in FC23
Jarod Wilson d968ae
BuildRequires: ninja-build
Jarod Wilson d968ae
%define CMAKE_FLAGS -GNinja
Honggang Li 6495ad
%if 0%{?fedora} >= 33 || 0%{?rhel} >= 9
Honggang Li 486598
%define make_jobs ninja-build -C %{_vpath_builddir} -v %{?_smp_mflags}
Honggang Li 486598
%define cmake_install DESTDIR=%{buildroot} ninja-build -C %{_vpath_builddir} install
Jarod Wilson d968ae
%else
Honggang Li 80eb5d
%define make_jobs ninja-build -v %{?_smp_mflags}
Honggang Li 80eb5d
%define cmake_install DESTDIR=%{buildroot} ninja-build install
Honggang Li 80eb5d
%endif
Honggang Li 80eb5d
%else
Jarod Wilson d968ae
# Fallback to make otherwise
Jarod Wilson d968ae
BuildRequires: make
Honggang Li 55352c
%define make_jobs make VERBOSE=1 %{?_smp_mflags}
Jarod Wilson d968ae
%define cmake_install DESTDIR=%{buildroot} make install
Jarod Wilson d968ae
%endif
Jarod Wilson d968ae
Honggang Li 3145cf
%if 0%{?fedora} >= 25 || 0%{?rhel} == 8
Honggang Li f0a64c
# pandoc was introduced in FC25, Centos8
Honggang Li b631ce
BuildRequires: pandoc
Honggang Li b631ce
%endif
Honggang Li b631ce
Pete Walter 5fa695
%if 0%{?fedora} >= 34
Pete Walter 5fa695
# self obsoletes to remove i686 multilib package when updating to F34
Honggang Li 9d2f59
Obsoletes: rdma-core < %{version}-%{release}
Pete Walter 5fa695
%endif
Pete Walter 5fa695
Jarod Wilson d968ae
%description
Doug Ledford c97992
RDMA core userspace infrastructure and documentation, including initialization
Doug Ledford c97992
scripts, kernel driver-specific modprobe override configs, IPoIB network
Doug Ledford c97992
scripts, dracut rules, and the rdma-ndd utility.
Jarod Wilson d968ae
Jarod Wilson d968ae
%package devel
Jarod Wilson d968ae
Summary: RDMA core development libraries and headers
a54e53
Requires: libibverbs%{?_isa} = %{version}-%{release}
Jarod Wilson d968ae
Provides: libibverbs-devel = %{version}-%{release}
Jarod Wilson d968ae
Obsoletes: libibverbs-devel < %{version}-%{release}
a54e53
Requires: libibumad%{?_isa} = %{version}-%{release}
Jarod Wilson d968ae
Provides: libibumad-devel = %{version}-%{release}
Jarod Wilson d968ae
Obsoletes: libibumad-devel < %{version}-%{release}
a54e53
Requires: librdmacm%{?_isa} = %{version}-%{release}
Jarod Wilson d968ae
Provides: librdmacm-devel = %{version}-%{release}
Jarod Wilson d968ae
Obsoletes: librdmacm-devel < %{version}-%{release}
Jarod Wilson d968ae
Provides: ibacm-devel = %{version}-%{release}
Jarod Wilson d968ae
Obsoletes: ibacm-devel < %{version}-%{release}
a54e53
Requires: infiniband-diags%{?_isa} = %{version}-%{release}
Honggang Li b631ce
Provides: infiniband-diags-devel = %{version}-%{release}
Honggang Li b631ce
Obsoletes: infiniband-diags-devel < %{version}-%{release}
Honggang Li b631ce
Provides: libibmad-devel = %{version}-%{release}
Honggang Li b631ce
Obsoletes: libibmad-devel < %{version}-%{release}
Honggang Li b631ce
%if %{with_static}
Honggang Li b631ce
# Since our pkg-config files include private references to these packages they
Honggang Li b631ce
# need to have their .pc files installed too, even for dynamic linking, or
Honggang Li b631ce
# pkg-config breaks.
Honggang Li b631ce
BuildRequires: pkgconfig(libnl-3.0)
Honggang Li b631ce
BuildRequires: pkgconfig(libnl-route-3.0)
Doug Ledford 2c2e63
%endif
Jarod Wilson d968ae
Jarod Wilson d968ae
%description devel
Jarod Wilson d968ae
RDMA core development libraries and headers.
Jarod Wilson d968ae
Honggang Li b631ce
%package -n infiniband-diags
Honggang Li b631ce
Summary: InfiniBand Diagnostic Tools
a54e53
Requires: libibumad%{?_isa} = %{version}-%{release}
Honggang Li b631ce
Provides: perl(IBswcountlimits)
Honggang Li b631ce
Provides: libibmad = %{version}-%{release}
Honggang Li b631ce
Obsoletes: libibmad < %{version}-%{release}
Honggang Li b631ce
Obsoletes: openib-diags < 1.3
Honggang Li b631ce
Honggang Li b631ce
%description -n infiniband-diags
Honggang Li b631ce
This package provides IB diagnostic programs and scripts needed to diagnose an
Honggang Li b631ce
IB subnet.  infiniband-diags now also provides libibmad.  libibmad provides
Honggang Li b631ce
low layer IB functions for use by the IB diagnostic and management
Honggang Li b631ce
programs. These include MAD, SA, SMP, and other basic IB functions.
Honggang Li b631ce
Honggang Li b631ce
%package -n infiniband-diags-compat
Honggang Li b631ce
Summary: OpenFabrics Alliance InfiniBand Diagnostic Tools
Honggang Li b631ce
Honggang Li b631ce
%description -n infiniband-diags-compat
Honggang Li b631ce
Deprecated scripts and utilities which provide duplicated functionality, most
Honggang Li b631ce
often at a reduced performance. These are maintained for the time being for
Honggang Li b631ce
compatibility reasons.
Honggang Li b631ce
Jarod Wilson d968ae
%package -n libibverbs
Jarod Wilson d968ae
Summary: A library and drivers for direct userspace use of RDMA (InfiniBand/iWARP/RoCE) hardware
Jarod Wilson d968ae
Provides: libcxgb4 = %{version}-%{release}
Jarod Wilson d968ae
Obsoletes: libcxgb4 < %{version}-%{release}
Honggang Li b631ce
Provides: libefa = %{version}-%{release}
Honggang Li b631ce
Obsoletes: libefa < %{version}-%{release}
Jarod Wilson d968ae
Provides: libhfi1 = %{version}-%{release}
Jarod Wilson d968ae
Obsoletes: libhfi1 < %{version}-%{release}
Jarod Wilson d968ae
Provides: libipathverbs = %{version}-%{release}
Jarod Wilson d968ae
Obsoletes: libipathverbs < %{version}-%{release}
Honggang Li fb5dc6
Provides: libirdma = %{version}-%{release}
Honggang Li fb5dc6
Obsoletes: libirdma < %{version}-%{release}
Jarod Wilson d968ae
Provides: libmlx4 = %{version}-%{release}
Jarod Wilson d968ae
Obsoletes: libmlx4 < %{version}-%{release}
Jarod Wilson d968ae
Provides: libmlx5 = %{version}-%{release}
Jarod Wilson d968ae
Obsoletes: libmlx5 < %{version}-%{release}
Jarod Wilson d968ae
Provides: libmthca = %{version}-%{release}
Jarod Wilson d968ae
Obsoletes: libmthca < %{version}-%{release}
Jarod Wilson d968ae
Provides: libocrdma = %{version}-%{release}
Jarod Wilson d968ae
Obsoletes: libocrdma < %{version}-%{release}
Jarod Wilson d968ae
Provides: librxe = %{version}-%{release}
Jarod Wilson d968ae
Obsoletes: librxe < %{version}-%{release}
Pete Walter 462a00
%if 0%{?fedora} >= 34
Honggang Li 4e8f1a
Obsoletes: libibverbs-core < %{version}-%{release}
Honggang Li 4e8f1a
%endif
Jarod Wilson d968ae
Jarod Wilson d968ae
%description -n libibverbs
Jarod Wilson d968ae
libibverbs is a library that allows userspace processes to use RDMA
Jarod Wilson d968ae
"verbs" as described in the InfiniBand Architecture Specification and
Jarod Wilson d968ae
the RDMA Protocol Verbs Specification.  This includes direct hardware
Jarod Wilson d968ae
access from userspace to InfiniBand/iWARP adapters (kernel bypass) for
Jarod Wilson d968ae
fast path operations.
Jarod Wilson d968ae
Jarod Wilson d968ae
Device-specific plug-in ibverbs userspace drivers are included:
Jarod Wilson d968ae
Jarod Wilson d968ae
- libcxgb4: Chelsio T4 iWARP HCA
Honggang Li b631ce
- libefa: Amazon Elastic Fabric Adapter
Jarod Wilson d968ae
- libhfi1: Intel Omni-Path HFI
Jarod Wilson f458a9
- libhns: HiSilicon Hip06 SoC
Jarod Wilson d968ae
- libipathverbs: QLogic InfiniPath HCA
Honggang Li fb5dc6
- libirdma: Intel Ethernet Connection RDMA
Michal Schmidt d24472
- libmana: Microsoft Azure Network Adapter
Honggang Li b631ce
- libmlx4: Mellanox ConnectX-3 InfiniBand HCA
Honggang Li b631ce
- libmlx5: Mellanox Connect-IB/X-4+ InfiniBand HCA
Jarod Wilson d968ae
- libmthca: Mellanox InfiniBand HCA
Jarod Wilson d968ae
- libocrdma: Emulex OneConnect RDMA/RoCE Device
Jarod Wilson f458a9
- libqedr: QLogic QL4xxx RoCE HCA
Jarod Wilson d968ae
- librxe: A software implementation of the RoCE protocol
Honggang Li b631ce
- libsiw: A software implementation of the iWarp protocol
Jarod Wilson f458a9
- libvmw_pvrdma: VMware paravirtual RDMA device
Jarod Wilson d968ae
Jarod Wilson d968ae
%package -n libibverbs-utils
Jarod Wilson d968ae
Summary: Examples for the libibverbs library
Jarod Wilson d968ae
Requires: libibverbs%{?_isa} = %{version}-%{release}
Jarod Wilson d968ae
Jarod Wilson d968ae
%description -n libibverbs-utils
Jarod Wilson d968ae
Useful libibverbs example programs such as ibv_devinfo, which
Jarod Wilson d968ae
displays information about RDMA devices.
Jarod Wilson d968ae
Jarod Wilson d968ae
%package -n ibacm
Jarod Wilson d968ae
Summary: InfiniBand Communication Manager Assistant
Honggang Li 4dd958
%{?systemd_requires}
Jarod Wilson d968ae
Jarod Wilson d968ae
%description -n ibacm
Jarod Wilson d968ae
The ibacm daemon helps reduce the load of managing path record lookups on
Jarod Wilson d968ae
large InfiniBand fabrics by providing a user space implementation of what
Jarod Wilson d968ae
is functionally similar to an ARP cache.  The use of ibacm, when properly
Jarod Wilson d968ae
configured, can reduce the SA packet load of a large IB cluster from O(n^2)
Jarod Wilson d968ae
to O(n).  The ibacm daemon is started and normally runs in the background,
Jarod Wilson d968ae
user applications need not know about this daemon as long as their app
Jarod Wilson d968ae
uses librdmacm to handle connection bring up/tear down.  The librdmacm
Jarod Wilson d968ae
library knows how to talk directly to the ibacm daemon to retrieve data.
Jarod Wilson d968ae
Jarod Wilson d968ae
%package -n iwpmd
Jarod Wilson d968ae
Summary: iWarp Port Mapper userspace daemon
Honggang Li 4dd958
%{?systemd_requires}
Jarod Wilson d968ae
Jarod Wilson d968ae
%description -n iwpmd
Jarod Wilson d968ae
iwpmd provides a userspace service for iWarp drivers to claim
Jarod Wilson d968ae
tcp ports through the standard socket interface.
Jarod Wilson d968ae
Jarod Wilson d968ae
%package -n libibumad
Jarod Wilson d968ae
Summary: OpenFabrics Alliance InfiniBand umad (userspace management datagram) library
Jarod Wilson d968ae
Jarod Wilson d968ae
%description -n libibumad
Jarod Wilson d968ae
libibumad provides the userspace management datagram (umad) library
Jarod Wilson d968ae
functions, which sit on top of the umad modules in the kernel. These
Jarod Wilson d968ae
are used by the IB diagnostic and management tools, including OpenSM.
Jarod Wilson d968ae
Jarod Wilson d968ae
%package -n librdmacm
Jarod Wilson d968ae
Summary: Userspace RDMA Connection Manager
Jarod Wilson d968ae
Jarod Wilson d968ae
%description -n librdmacm
Doug Ledford c97992
librdmacm provides a userspace RDMA Communication Management API.
Jarod Wilson d968ae
Jarod Wilson d968ae
%package -n librdmacm-utils
Jarod Wilson d968ae
Summary: Examples for the librdmacm library
Jarod Wilson d968ae
Requires: librdmacm%{?_isa} = %{version}-%{release}
Jarod Wilson d968ae
Jarod Wilson d968ae
%description -n librdmacm-utils
Jarod Wilson d968ae
Example test programs for the librdmacm library.
Jarod Wilson d968ae
Jarod Wilson d968ae
%package -n srp_daemon
Jarod Wilson d968ae
Summary: Tools for using the InfiniBand SRP protocol devices
Jarod Wilson d968ae
Obsoletes: srptools <= 1.0.3
Jarod Wilson d968ae
Provides: srptools = %{version}-%{release}
Jarod Wilson d968ae
Obsoletes: openib-srptools <= 0.0.6
Honggang Li 4dd958
%{?systemd_requires}
Jarod Wilson d968ae
Jarod Wilson d968ae
%description -n srp_daemon
Jarod Wilson d968ae
In conjunction with the kernel ib_srp driver, srp_daemon allows you to
Jarod Wilson d968ae
discover and use SCSI devices via the SCSI RDMA Protocol over InfiniBand.
Jarod Wilson d968ae
Honggang Li b631ce
%if %{with_pyverbs}
Honggang Li b631ce
%package -n python3-pyverbs
Honggang Li b631ce
Summary: Python3 API over IB verbs
Honggang Li b631ce
%{?python_provide:%python_provide python3-pyverbs}
Honggang Li b631ce
Honggang Li b631ce
%description -n python3-pyverbs
Honggang Li b631ce
Pyverbs is a Cython-based Python API over libibverbs, providing an
Honggang Li b631ce
easy, object-oriented access to IB verbs.
Honggang Li b631ce
%endif
Honggang Li b631ce
Jarod Wilson d968ae
%prep
Honggang Li bd13c6
%setup -q
Michal Schmidt 514221
%if 0%{?fedora}
Michal Schmidt 37950d
%patch 9998 -p1
Honggang Li bd13c6
%endif
Honggang Li bd13c6
%if 0%{?rhel}
Michal Schmidt 37950d
%patch 9999 -p1
Honggang Li bd13c6
%endif
Jarod Wilson d968ae
Jarod Wilson d968ae
%build
Jarod Wilson d968ae
Jarod Wilson d968ae
# New RPM defines _rundir, usually as /run
Jarod Wilson d968ae
%if 0%{?_rundir:1}
Jarod Wilson d968ae
%else
Jarod Wilson d968ae
%define _rundir /var/run
Jarod Wilson d968ae
%endif
Jarod Wilson d968ae
Jarod Wilson 156687
%{!?EXTRA_CMAKE_FLAGS: %define EXTRA_CMAKE_FLAGS %{nil}}
Jarod Wilson 156687
Jarod Wilson d968ae
# Pass all of the rpm paths directly to GNUInstallDirs and our other defines.
Jarod Wilson d968ae
%cmake %{CMAKE_FLAGS} \
Jarod Wilson d968ae
         -DCMAKE_BUILD_TYPE=Release \
Jarod Wilson d968ae
         -DCMAKE_INSTALL_BINDIR:PATH=%{_bindir} \
Jarod Wilson d968ae
         -DCMAKE_INSTALL_SBINDIR:PATH=%{_sbindir} \
Jarod Wilson d968ae
         -DCMAKE_INSTALL_LIBDIR:PATH=%{_libdir} \
Jarod Wilson d968ae
         -DCMAKE_INSTALL_LIBEXECDIR:PATH=%{_libexecdir} \
Jarod Wilson d968ae
         -DCMAKE_INSTALL_LOCALSTATEDIR:PATH=%{_localstatedir} \
Jarod Wilson d968ae
         -DCMAKE_INSTALL_SHAREDSTATEDIR:PATH=%{_sharedstatedir} \
Jarod Wilson d968ae
         -DCMAKE_INSTALL_INCLUDEDIR:PATH=%{_includedir} \
Jarod Wilson d968ae
         -DCMAKE_INSTALL_INFODIR:PATH=%{_infodir} \
Jarod Wilson d968ae
         -DCMAKE_INSTALL_MANDIR:PATH=%{_mandir} \
Jarod Wilson d968ae
         -DCMAKE_INSTALL_SYSCONFDIR:PATH=%{_sysconfdir} \
Jarod Wilson d968ae
         -DCMAKE_INSTALL_SYSTEMD_SERVICEDIR:PATH=%{_unitdir} \
Jarod Wilson d968ae
         -DCMAKE_INSTALL_INITDDIR:PATH=%{_initrddir} \
Jarod Wilson d968ae
         -DCMAKE_INSTALL_RUNDIR:PATH=%{_rundir} \
Honggang Li ae01c2
         -DCMAKE_INSTALL_DOCDIR:PATH=%{_docdir}/%{name} \
Jarod Wilson 156687
         -DCMAKE_INSTALL_UDEV_RULESDIR:PATH=%{_udevrulesdir} \
Honggang Li b631ce
         -DCMAKE_INSTALL_PERLDIR:PATH=%{perl_vendorlib} \
Honggang Li b631ce
         -DENABLE_IBDIAGS_COMPAT:BOOL=True \
Honggang Li b631ce
%if %{with_static}
Honggang Li b631ce
         -DENABLE_STATIC=1 \
Honggang Li b631ce
%endif
Honggang Li b631ce
         %{EXTRA_CMAKE_FLAGS} \
Honggang Li b631ce
%if %{defined __python3}
Honggang Li b631ce
         -DPYTHON_EXECUTABLE:PATH=%{__python3} \
Honggang Li b631ce
         -DCMAKE_INSTALL_PYTHON_ARCH_LIB:PATH=%{python3_sitearch} \
Honggang Li b631ce
%endif
Honggang Li b631ce
%if %{with_pyverbs}
Honggang Li b631ce
         -DNO_PYVERBS=0
Honggang Li b631ce
%else
Honggang Li b631ce
	 -DNO_PYVERBS=1
Honggang Li b631ce
%endif
Jarod Wilson d968ae
%make_jobs
Jarod Wilson d968ae
Jarod Wilson d968ae
%install
Jarod Wilson d968ae
%cmake_install
Jarod Wilson d968ae
Jarod Wilson d968ae
mkdir -p %{buildroot}/%{_sysconfdir}/rdma
Jarod Wilson d968ae
Jarod Wilson d968ae
# Red Hat specific glue
Jarod Wilson d968ae
%global dracutlibdir %{_prefix}/lib/dracut
Jarod Wilson d968ae
%global sysmodprobedir %{_prefix}/lib/modprobe.d
Jarod Wilson d968ae
mkdir -p %{buildroot}%{_libexecdir}
Jarod Wilson d968ae
mkdir -p %{buildroot}%{_udevrulesdir}
Jarod Wilson d968ae
mkdir -p %{buildroot}%{dracutlibdir}/modules.d/05rdma
Jarod Wilson d968ae
mkdir -p %{buildroot}%{sysmodprobedir}
Jarod Wilson d968ae
install -D -m0644 redhat/rdma.mlx4.conf %{buildroot}/%{_sysconfdir}/rdma/mlx4.conf
Jarod Wilson d968ae
install -D -m0755 redhat/rdma.modules-setup.sh %{buildroot}%{dracutlibdir}/modules.d/05rdma/module-setup.sh
Honggang Li b631ce
install -D -m0644 redhat/rdma.mlx4.sys.modprobe %{buildroot}%{sysmodprobedir}/libmlx4.conf
Honggang Li b631ce
install -D -m0755 redhat/rdma.mlx4-setup.sh %{buildroot}%{_libexecdir}/mlx4-setup.sh
Honggang Li f92c61
rm -f %{buildroot}%{_sysconfdir}/rdma/modules/rdma.conf
Honggang Li f92c61
install -D -m0644 redhat/rdma.conf %{buildroot}%{_sysconfdir}/rdma/modules/rdma.conf
Jarod Wilson d968ae
Jarod Wilson d968ae
# ibacm
Honggang Li 80eb5d
(if [ -d %{__cmake_builddir} ]; then cd %{__cmake_builddir}; fi
Honggang Li 80eb5d
 ./bin/ib_acme -D . -O &&
Honggang Li 80eb5d
 install -D -m0644 ibacm_opts.cfg %{buildroot}%{_sysconfdir}/rdma/)
Jarod Wilson d968ae
Jarod Wilson d968ae
# Delete the package's init.d scripts
Jarod Wilson d968ae
rm -rf %{buildroot}/%{_initrddir}/
Doug Ledford c97992
rm -f %{buildroot}/%{_sbindir}/srp_daemon.sh
Jarod Wilson d968ae
Igor Gnatenko 735c14
%ldconfig_scriptlets -n libibverbs
Jarod Wilson d968ae
Igor Gnatenko 735c14
%ldconfig_scriptlets -n libibumad
Jarod Wilson d968ae
Igor Gnatenko 735c14
%ldconfig_scriptlets -n librdmacm
Jarod Wilson d968ae
Honggang Li f0a64c
%post -n rdma-core
c166c3
if [ -x /sbin/udevadm ]; then
Honggang Li f0a64c
/sbin/udevadm trigger --subsystem-match=infiniband --action=change || true
Honggang Li f0a64c
/sbin/udevadm trigger --subsystem-match=net --action=change || true
Honggang Li f0a64c
/sbin/udevadm trigger --subsystem-match=infiniband_mad --action=change || true
c166c3
fi
Honggang Li f0a64c
Jarod Wilson d968ae
%post -n ibacm
Jarod Wilson d968ae
%systemd_post ibacm.service
Jarod Wilson d968ae
%preun -n ibacm
Jarod Wilson d968ae
%systemd_preun ibacm.service
Jarod Wilson d968ae
%postun -n ibacm
Jarod Wilson d968ae
%systemd_postun_with_restart ibacm.service
Jarod Wilson d968ae
Jarod Wilson d968ae
%post -n srp_daemon
Jarod Wilson d968ae
%systemd_post srp_daemon.service
Jarod Wilson d968ae
%preun -n srp_daemon
Jarod Wilson d968ae
%systemd_preun srp_daemon.service
Jarod Wilson d968ae
%postun -n srp_daemon
Jarod Wilson d968ae
%systemd_postun_with_restart srp_daemon.service
Jarod Wilson d968ae
Jarod Wilson d968ae
%post -n iwpmd
Jarod Wilson d968ae
%systemd_post iwpmd.service
Jarod Wilson d968ae
%preun -n iwpmd
Jarod Wilson d968ae
%systemd_preun iwpmd.service
Jarod Wilson d968ae
%postun -n iwpmd
Jarod Wilson d968ae
%systemd_postun_with_restart iwpmd.service
Jarod Wilson d968ae
Jarod Wilson d968ae
%files
Jarod Wilson d968ae
%dir %{_sysconfdir}/rdma
Honggang Li ae01c2
%dir %{_docdir}/%{name}
Michal Schmidt d24472
%doc %{_docdir}/%{name}/70-persistent-ipoib.rules
Honggang Li ae01c2
%doc %{_docdir}/%{name}/README.md
Honggang Li ae01c2
%doc %{_docdir}/%{name}/rxe.md
Honggang Li ae01c2
%doc %{_docdir}/%{name}/udev.md
Honggang Li ae01c2
%doc %{_docdir}/%{name}/tag_matching.md
Doug Ledford c97992
%config(noreplace) %{_sysconfdir}/rdma/mlx4.conf
Doug Ledford c97992
%config(noreplace) %{_sysconfdir}/rdma/modules/infiniband.conf
Doug Ledford c97992
%config(noreplace) %{_sysconfdir}/rdma/modules/iwarp.conf
Doug Ledford c97992
%config(noreplace) %{_sysconfdir}/rdma/modules/opa.conf
Doug Ledford c97992
%config(noreplace) %{_sysconfdir}/rdma/modules/rdma.conf
Doug Ledford c97992
%config(noreplace) %{_sysconfdir}/rdma/modules/roce.conf
Zbigniew Jędrzejewski-Szmek 5817d8
%dir %{_sysconfdir}/modprobe.d
Honggang Li b631ce
%config(noreplace) %{_sysconfdir}/modprobe.d/mlx4.conf
Jarod Wilson d968ae
%config(noreplace) %{_sysconfdir}/modprobe.d/truescale.conf
Doug Ledford c97992
%{_unitdir}/rdma-hw.target
Doug Ledford c97992
%{_unitdir}/rdma-load-modules@.service
Zbigniew Jędrzejewski-Szmek 5817d8
%dir %{dracutlibdir}
Zbigniew Jędrzejewski-Szmek 5817d8
%dir %{dracutlibdir}/modules.d
Jarod Wilson d968ae
%dir %{dracutlibdir}/modules.d/05rdma
Jarod Wilson d968ae
%{dracutlibdir}/modules.d/05rdma/module-setup.sh
Zbigniew Jędrzejewski-Szmek daf98f
%dir %{_udevrulesdir}
Honggang Li b631ce
%{_udevrulesdir}/../rdma_rename
Doug Ledford c97992
%{_udevrulesdir}/60-rdma-ndd.rules
Honggang Li b631ce
%{_udevrulesdir}/60-rdma-persistent-naming.rules
Doug Ledford c97992
%{_udevrulesdir}/75-rdma-description.rules
Doug Ledford c97992
%{_udevrulesdir}/90-rdma-hw-modules.rules
Doug Ledford c97992
%{_udevrulesdir}/90-rdma-ulp-modules.rules
Doug Ledford c97992
%{_udevrulesdir}/90-rdma-umad.rules
Zbigniew Jędrzejewski-Szmek 5817d8
%dir %{sysmodprobedir}
Honggang Li b631ce
%{sysmodprobedir}/libmlx4.conf
Honggang Li b631ce
%{_libexecdir}/mlx4-setup.sh
Jarod Wilson d968ae
%{_libexecdir}/truescale-serdes.cmds
Jarod Wilson d968ae
%{_sbindir}/rdma-ndd
Jarod Wilson d968ae
%{_unitdir}/rdma-ndd.service
Doug Ledford c97992
%{_mandir}/man7/rxe*
Jarod Wilson d968ae
%{_mandir}/man8/rdma-ndd.*
honli ef8db1
%license COPYING.*
Jarod Wilson d968ae
Jarod Wilson d968ae
%files devel
Honggang Li ae01c2
%doc %{_docdir}/%{name}/MAINTAINERS
Jarod Wilson f458a9
%dir %{_includedir}/infiniband
Jarod Wilson f458a9
%dir %{_includedir}/rdma
Jarod Wilson f458a9
%{_includedir}/infiniband/*
Jarod Wilson f458a9
%{_includedir}/rdma/*
Honggang Li b631ce
%if %{with_static}
Honggang Li b631ce
%{_libdir}/lib*.a
Honggang Li b631ce
%endif
Jarod Wilson d968ae
%{_libdir}/lib*.so
Jarod Wilson 156687
%{_libdir}/pkgconfig/*.pc
Honggang Li b631ce
%{_mandir}/man3/efadv*
Jarod Wilson d968ae
%{_mandir}/man3/ibv_*
Jarod Wilson d968ae
%{_mandir}/man3/rdma*
Jarod Wilson d968ae
%{_mandir}/man3/umad*
Jarod Wilson d968ae
%{_mandir}/man3/*_to_ibv_rate.*
Doug Ledford c97992
%{_mandir}/man7/rdma_cm.*
Michal Schmidt d24472
%{_mandir}/man3/manadv*
Jarod Wilson f458a9
%{_mandir}/man3/mlx5dv*
Doug Ledford c97992
%{_mandir}/man3/mlx4dv*
Honggang Li b631ce
%{_mandir}/man7/efadv*
Michal Schmidt d24472
%{_mandir}/man7/manadv*
Honggang Li b631ce
%{_mandir}/man7/mlx5dv*
Doug Ledford c97992
%{_mandir}/man7/mlx4dv*
Honggang Li b631ce
%{_mandir}/man3/ibnd_*
Honggang Li b631ce
Honggang Li b631ce
%files -n infiniband-diags-compat
Honggang Li b631ce
%{_sbindir}/ibcheckerrs
Honggang Li b631ce
%{_mandir}/man8/ibcheckerrs*
Honggang Li b631ce
%{_sbindir}/ibchecknet
Honggang Li b631ce
%{_mandir}/man8/ibchecknet*
Honggang Li b631ce
%{_sbindir}/ibchecknode
Honggang Li b631ce
%{_mandir}/man8/ibchecknode*
Honggang Li b631ce
%{_sbindir}/ibcheckport
Honggang Li b631ce
%{_mandir}/man8/ibcheckport.*
Honggang Li b631ce
%{_sbindir}/ibcheckportwidth
Honggang Li b631ce
%{_mandir}/man8/ibcheckportwidth*
Honggang Li b631ce
%{_sbindir}/ibcheckportstate
Honggang Li b631ce
%{_mandir}/man8/ibcheckportstate*
Honggang Li b631ce
%{_sbindir}/ibcheckwidth
Honggang Li b631ce
%{_mandir}/man8/ibcheckwidth*
Honggang Li b631ce
%{_sbindir}/ibcheckstate
Honggang Li b631ce
%{_mandir}/man8/ibcheckstate*
Honggang Li b631ce
%{_sbindir}/ibcheckerrors
Honggang Li b631ce
%{_mandir}/man8/ibcheckerrors*
Honggang Li b631ce
%{_sbindir}/ibdatacounts
Honggang Li b631ce
%{_mandir}/man8/ibdatacounts*
Honggang Li b631ce
%{_sbindir}/ibdatacounters
Honggang Li b631ce
%{_mandir}/man8/ibdatacounters*
Honggang Li b631ce
%{_sbindir}/ibdiscover.pl
Honggang Li b631ce
%{_mandir}/man8/ibdiscover*
Honggang Li b631ce
%{_sbindir}/ibswportwatch.pl
Honggang Li b631ce
%{_mandir}/man8/ibswportwatch*
Honggang Li b631ce
%{_sbindir}/ibqueryerrors.pl
Honggang Li b631ce
%{_sbindir}/iblinkinfo.pl
Honggang Li b631ce
%{_sbindir}/ibprintca.pl
Honggang Li b631ce
%{_mandir}/man8/ibprintca*
Honggang Li b631ce
%{_sbindir}/ibprintswitch.pl
Honggang Li b631ce
%{_mandir}/man8/ibprintswitch*
Honggang Li b631ce
%{_sbindir}/ibprintrt.pl
Honggang Li b631ce
%{_mandir}/man8/ibprintrt*
Honggang Li b631ce
%{_sbindir}/set_nodedesc.sh
Honggang Li b631ce
Honggang Li b631ce
%files -n infiniband-diags
Honggang Li b631ce
%{_sbindir}/ibaddr
Honggang Li b631ce
%{_mandir}/man8/ibaddr*
Honggang Li b631ce
%{_sbindir}/ibnetdiscover
Honggang Li b631ce
%{_mandir}/man8/ibnetdiscover*
Honggang Li b631ce
%{_sbindir}/ibping
Honggang Li b631ce
%{_mandir}/man8/ibping*
Honggang Li b631ce
%{_sbindir}/ibportstate
Honggang Li b631ce
%{_mandir}/man8/ibportstate*
Honggang Li b631ce
%{_sbindir}/ibroute
Honggang Li b631ce
%{_mandir}/man8/ibroute.*
Honggang Li b631ce
%{_sbindir}/ibstat
Honggang Li b631ce
%{_mandir}/man8/ibstat.*
Honggang Li b631ce
%{_sbindir}/ibsysstat
Honggang Li b631ce
%{_mandir}/man8/ibsysstat*
Honggang Li b631ce
%{_sbindir}/ibtracert
Honggang Li b631ce
%{_mandir}/man8/ibtracert*
Honggang Li b631ce
%{_sbindir}/perfquery
Honggang Li b631ce
%{_mandir}/man8/perfquery*
Honggang Li b631ce
%{_sbindir}/sminfo
Honggang Li b631ce
%{_mandir}/man8/sminfo*
Honggang Li b631ce
%{_sbindir}/smpdump
Honggang Li b631ce
%{_mandir}/man8/smpdump*
Honggang Li b631ce
%{_sbindir}/smpquery
Honggang Li b631ce
%{_mandir}/man8/smpquery*
Honggang Li b631ce
%{_sbindir}/saquery
Honggang Li b631ce
%{_mandir}/man8/saquery*
Honggang Li b631ce
%{_sbindir}/vendstat
Honggang Li b631ce
%{_mandir}/man8/vendstat*
Honggang Li b631ce
%{_sbindir}/iblinkinfo
Honggang Li b631ce
%{_mandir}/man8/iblinkinfo*
Honggang Li b631ce
%{_sbindir}/ibqueryerrors
Honggang Li b631ce
%{_mandir}/man8/ibqueryerrors*
Honggang Li b631ce
%{_sbindir}/ibcacheedit
Honggang Li b631ce
%{_mandir}/man8/ibcacheedit*
Honggang Li b631ce
%{_sbindir}/ibccquery
Honggang Li b631ce
%{_mandir}/man8/ibccquery*
Honggang Li b631ce
%{_sbindir}/ibccconfig
Honggang Li b631ce
%{_mandir}/man8/ibccconfig*
Honggang Li b631ce
%{_sbindir}/dump_fts
Honggang Li b631ce
%{_mandir}/man8/dump_fts*
Honggang Li b631ce
%{_sbindir}/ibhosts
Honggang Li b631ce
%{_mandir}/man8/ibhosts*
Honggang Li b631ce
%{_sbindir}/ibswitches
Honggang Li b631ce
%{_mandir}/man8/ibswitches*
Honggang Li b631ce
%{_sbindir}/ibnodes
Honggang Li b631ce
%{_mandir}/man8/ibnodes*
Honggang Li b631ce
%{_sbindir}/ibrouters
Honggang Li b631ce
%{_mandir}/man8/ibrouters*
Honggang Li b631ce
%{_sbindir}/ibfindnodesusing.pl
Honggang Li b631ce
%{_mandir}/man8/ibfindnodesusing*
Honggang Li b631ce
%{_sbindir}/ibidsverify.pl
Honggang Li b631ce
%{_mandir}/man8/ibidsverify*
Honggang Li b631ce
%{_sbindir}/check_lft_balance.pl
Honggang Li b631ce
%{_mandir}/man8/check_lft_balance*
Honggang Li b631ce
%{_sbindir}/dump_lfts.sh
Honggang Li b631ce
%{_mandir}/man8/dump_lfts*
Honggang Li b631ce
%{_sbindir}/dump_mfts.sh
Honggang Li b631ce
%{_mandir}/man8/dump_mfts*
Honggang Li b631ce
%{_sbindir}/ibclearerrors
Honggang Li b631ce
%{_mandir}/man8/ibclearerrors*
Honggang Li b631ce
%{_sbindir}/ibclearcounters
Honggang Li b631ce
%{_mandir}/man8/ibclearcounters*
Honggang Li b631ce
%{_sbindir}/ibstatus
Honggang Li b631ce
%{_mandir}/man8/ibstatus*
Honggang Li b631ce
%{_mandir}/man8/infiniband-diags*
Honggang Li b631ce
%{_libdir}/libibmad*.so.*
Honggang Li b631ce
%{_libdir}/libibnetdisc*.so.*
Honggang Li b631ce
%{perl_vendorlib}/IBswcountlimits.pm
Honggang Li b631ce
%config(noreplace) %{_sysconfdir}/infiniband-diags/error_thresholds
Honggang Li b631ce
%config(noreplace) %{_sysconfdir}/infiniband-diags/ibdiag.conf
Jarod Wilson d968ae
Jarod Wilson d968ae
%files -n libibverbs
Jarod Wilson d968ae
%dir %{_sysconfdir}/libibverbs.d
Jarod Wilson d968ae
%dir %{_libdir}/libibverbs
Honggang Li b631ce
%{_libdir}/libefa.so.*
honli ef8db1
%{_libdir}/libibverbs*.so.*
Jarod Wilson d968ae
%{_libdir}/libibverbs/*.so
Michal Schmidt d24472
%{_libdir}/libmana.so.*
Doug Ledford c97992
%{_libdir}/libmlx5.so.*
Doug Ledford c97992
%{_libdir}/libmlx4.so.*
Jarod Wilson d968ae
%config(noreplace) %{_sysconfdir}/libibverbs.d/*.driver
Honggang Li ae01c2
%doc %{_docdir}/%{name}/libibverbs.md
Jarod Wilson d968ae
Jarod Wilson d968ae
%files -n libibverbs-utils
Jarod Wilson d968ae
%{_bindir}/ibv_*
Jarod Wilson d968ae
%{_mandir}/man1/ibv_*
Jarod Wilson d968ae
Jarod Wilson d968ae
%files -n ibacm
Jarod Wilson d968ae
%config(noreplace) %{_sysconfdir}/rdma/ibacm_opts.cfg
Jarod Wilson d968ae
%{_bindir}/ib_acme
Jarod Wilson d968ae
%{_sbindir}/ibacm
Jarod Wilson d968ae
%{_mandir}/man1/ib_acme.*
Jarod Wilson d968ae
%{_mandir}/man7/ibacm.*
Jarod Wilson d968ae
%{_mandir}/man7/ibacm_prov.*
Honggang Li 6a2062
%{_mandir}/man8/ibacm.*
Jarod Wilson d968ae
%{_unitdir}/ibacm.service
Doug Ledford c97992
%{_unitdir}/ibacm.socket
Jarod Wilson d968ae
%dir %{_libdir}/ibacm
Jarod Wilson d968ae
%{_libdir}/ibacm/*
Honggang Li ae01c2
%doc %{_docdir}/%{name}/ibacm.md
Jarod Wilson d968ae
Jarod Wilson d968ae
%files -n iwpmd
Doug Ledford c97992
%{_sbindir}/iwpmd
Jarod Wilson d968ae
%{_unitdir}/iwpmd.service
Doug Ledford c97992
%config(noreplace) %{_sysconfdir}/rdma/modules/iwpmd.conf
Jarod Wilson d968ae
%config(noreplace) %{_sysconfdir}/iwpmd.conf
Doug Ledford c97992
%{_udevrulesdir}/90-iwpmd.rules
Doug Ledford c97992
%{_mandir}/man8/iwpmd.*
Jarod Wilson d968ae
%{_mandir}/man5/iwpmd.*
Jarod Wilson d968ae
Jarod Wilson d968ae
%files -n libibumad
Jarod Wilson d968ae
%{_libdir}/libibumad*.so.*
Jarod Wilson d968ae
Jarod Wilson d968ae
%files -n librdmacm
Jarod Wilson d968ae
%{_libdir}/librdmacm*.so.*
Jarod Wilson d968ae
%dir %{_libdir}/rsocket
Doug Ledford c97992
%{_libdir}/rsocket/*.so*
Honggang Li ae01c2
%doc %{_docdir}/%{name}/librdmacm.md
Jarod Wilson d968ae
%{_mandir}/man7/rsocket.*
Jarod Wilson d968ae
Jarod Wilson d968ae
%files -n librdmacm-utils
Jarod Wilson d968ae
%{_bindir}/cmtime
Jarod Wilson d968ae
%{_bindir}/mckey
Jarod Wilson d968ae
%{_bindir}/rcopy
Jarod Wilson d968ae
%{_bindir}/rdma_client
Jarod Wilson d968ae
%{_bindir}/rdma_server
Jarod Wilson d968ae
%{_bindir}/rdma_xclient
Jarod Wilson d968ae
%{_bindir}/rdma_xserver
Jarod Wilson d968ae
%{_bindir}/riostream
Jarod Wilson d968ae
%{_bindir}/rping
Jarod Wilson d968ae
%{_bindir}/rstream
Jarod Wilson d968ae
%{_bindir}/ucmatose
Jarod Wilson d968ae
%{_bindir}/udaddy
Jarod Wilson d968ae
%{_bindir}/udpong
Jarod Wilson f458a9
%{_mandir}/man1/cmtime.*
Jarod Wilson d968ae
%{_mandir}/man1/mckey.*
Jarod Wilson d968ae
%{_mandir}/man1/rcopy.*
Jarod Wilson d968ae
%{_mandir}/man1/rdma_client.*
Jarod Wilson d968ae
%{_mandir}/man1/rdma_server.*
Jarod Wilson d968ae
%{_mandir}/man1/rdma_xclient.*
Jarod Wilson d968ae
%{_mandir}/man1/rdma_xserver.*
Jarod Wilson d968ae
%{_mandir}/man1/riostream.*
Jarod Wilson d968ae
%{_mandir}/man1/rping.*
Jarod Wilson d968ae
%{_mandir}/man1/rstream.*
Jarod Wilson d968ae
%{_mandir}/man1/ucmatose.*
Jarod Wilson d968ae
%{_mandir}/man1/udaddy.*
Jarod Wilson f458a9
%{_mandir}/man1/udpong.*
Jarod Wilson d968ae
Jarod Wilson d968ae
%files -n srp_daemon
Jarod Wilson d968ae
%config(noreplace) %{_sysconfdir}/srp_daemon.conf
Doug Ledford c97992
%config(noreplace) %{_sysconfdir}/rdma/modules/srp_daemon.conf
Jarod Wilson f458a9
%{_libexecdir}/srp_daemon/start_on_all_ports
Jarod Wilson d968ae
%{_unitdir}/srp_daemon.service
Jarod Wilson f458a9
%{_unitdir}/srp_daemon_port@.service
Jarod Wilson d968ae
%{_sbindir}/ibsrpdm
Jarod Wilson d968ae
%{_sbindir}/srp_daemon
Jarod Wilson d968ae
%{_sbindir}/run_srp_daemon
Doug Ledford c97992
%{_udevrulesdir}/60-srp_daemon.rules
Jarod Wilson f458a9
%{_mandir}/man5/srp_daemon.service.5*
Jarod Wilson f458a9
%{_mandir}/man5/srp_daemon_port@.service.5*
Honggang Li 6a2062
%{_mandir}/man8/ibsrpdm.8*
Honggang Li 55352c
%{_mandir}/man8/srp_daemon.8*
Honggang Li ae01c2
%doc %{_docdir}/%{name}/ibsrpdm.md
Jarod Wilson d968ae
Honggang Li b631ce
%if %{with_pyverbs}
Honggang Li b631ce
%files -n python3-pyverbs
Honggang Li b631ce
%{python3_sitearch}/pyverbs
Honggang Li ae01c2
%{_docdir}/%{name}/tests/*.py
Honggang Li b631ce
%endif
Honggang Li b631ce
Jarod Wilson d968ae
%changelog
Michal Schmidt b4f3a4
%autochangelog