Name: rdma-core Version: 27.0 Release: 1%{?dist} Summary: RDMA core userspace libraries and daemons # 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 License: GPLv2 or BSD Url: https://github.com/linux-rdma/rdma-core Source: rdma-core-%{version}.tgz # Do not build static libs by default. %define with_static %{?_with_static: 1} %{?!_with_static: 0} BuildRequires: binutils BuildRequires: cmake >= 2.8.11 BuildRequires: gcc BuildRequires: libudev-devel BuildRequires: pkgconfig BuildRequires: pkgconfig(libnl-3.0) BuildRequires: pkgconfig(libnl-route-3.0) BuildRequires: /usr/bin/rst2man BuildRequires: valgrind-devel BuildRequires: systemd BuildRequires: systemd-devel %define with_pyverbs %{?_with_pyverbs: 1} %{?!_with_pyverbs: 0} %if %{with_pyverbs} BuildRequires: python3-devel BuildRequires: python3-Cython %else %if 0%{?rhel} >= 8 || 0%{?fedora} >= 30 BuildRequires: python3 %else BuildRequires: python %endif %endif %if 0%{?fedora} >= 21 || 0%{?rhel} >= 8 BuildRequires: perl-generators %endif Requires: dracut, kmod, systemd # Red Hat/Fedora previously shipped redhat/ as a stand-alone # package called 'rdma', which we're supplanting here. Provides: rdma = %{version}-%{release} Obsoletes: rdma < %{version}-%{release} Conflicts: infiniband-diags <= 1.6.7 # Since we recommend developers use Ninja, so should packagers, for consistency. %define CMAKE_FLAGS %{nil} %if 0%{?fedora} >= 23 || 0%{?rhel} >= 8 # Ninja was introduced in FC23 BuildRequires: ninja-build %define CMAKE_FLAGS -GNinja %define make_jobs ninja-build -v %{?_smp_mflags} %define cmake_install DESTDIR=%{buildroot} ninja-build install %else # Fallback to make otherwise BuildRequires: make %define make_jobs make -v %{?_smp_mflags} %define cmake_install DESTDIR=%{buildroot} make install %endif %if 0%{?fedora} >= 25 || 0%{?rhel} >= 8 # pandoc was introduced in FC25, Centos8 BuildRequires: pandoc %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 Requires: %{name}%{?_isa} = %{version}-%{release} Requires: libibverbs = %{version}-%{release} Provides: libibverbs-devel = %{version}-%{release} Obsoletes: libibverbs-devel < %{version}-%{release} Requires: libibumad = %{version}-%{release} Provides: libibumad-devel = %{version}-%{release} Obsoletes: libibumad-devel < %{version}-%{release} Requires: librdmacm = %{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} 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}-%{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 %description devel RDMA core development libraries and headers. %package -n infiniband-diags Summary: InfiniBand Diagnostic Tools Provides: perl(IBswcountlimits) Provides: libibmad = %{version}-%{release} Obsoletes: libibmad < %{version}-%{release} Obsoletes: openib-diags < 1.3 %description -n infiniband-diags This package provides IB diagnostic programs and scripts needed to diagnose an IB subnet. infiniband-diags now also provides libibmad. 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. %package -n infiniband-diags-compat Summary: OpenFabrics Alliance InfiniBand Diagnostic Tools %description -n infiniband-diags-compat Deprecated scripts and utilities which provide duplicated functionality, most often at a reduced performance. These are maintained for the time being for compatibility reasons. %package -n libibverbs Summary: A library and drivers for direct userspace use of RDMA (InfiniBand/iWARP/RoCE) hardware Requires(post): /sbin/ldconfig Requires(postun): /sbin/ldconfig Requires: %{name}%{?_isa} = %{version}-%{release} Provides: libcxgb4 = %{version}-%{release} Obsoletes: libcxgb4 < %{version}-%{release} Provides: libefa = %{version}-%{release} Obsoletes: libefa < %{version}-%{release} Provides: libhfi1 = %{version}-%{release} Obsoletes: libhfi1 < %{version}-%{release} Provides: libi40iw = %{version}-%{release} Obsoletes: libi40iw < %{version}-%{release} Provides: libipathverbs = %{version}-%{release} Obsoletes: libipathverbs < %{version}-%{release} Provides: libmlx4 = %{version}-%{release} Obsoletes: libmlx4 < %{version}-%{release} Provides: libmlx5 = %{version}-%{release} Obsoletes: libmlx5 < %{version}-%{release} Provides: libmthca = %{version}-%{release} Obsoletes: libmthca < %{version}-%{release} Provides: libocrdma = %{version}-%{release} Obsoletes: libocrdma < %{version}-%{release} Provides: librxe = %{version}-%{release} Obsoletes: librxe < %{version}-%{release} %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 - libi40iw: Intel Ethernet Connection X722 RDMA - libipathverbs: QLogic InfiniPath HCA - 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 libibverbs-utils Summary: Examples for the libibverbs library Requires: libibverbs%{?_isa} = %{version}-%{release} %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 Requires(post): systemd-units Requires(preun): systemd-units Requires(postun): systemd-units Requires: %{name}%{?_isa} = %{version}-%{release} %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 iwpmd Summary: iWarp Port Mapper userspace daemon Requires(post): systemd-units Requires(preun): systemd-units Requires(postun): systemd-units Requires: %{name}%{?_isa} = %{version}-%{release} %description -n iwpmd iwpmd provides a userspace service for iWarp drivers to claim tcp ports through the standard socket interface. %package -n libibumad Summary: OpenFabrics Alliance InfiniBand umad (userspace management datagram) library Requires: %{name}%{?_isa} = %{version}-%{release} %description -n libibumad 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 librdmacm Summary: Userspace RDMA Connection Manager Requires: %{name}%{?_isa} = %{version}-%{release} %description -n librdmacm librdmacm provides a userspace RDMA Communication Management API. %package -n librdmacm-utils Summary: Examples for the librdmacm library Requires: librdmacm%{?_isa} = %{version}-%{release} %description -n librdmacm-utils Example test programs for the librdmacm library. %package -n srp_daemon Summary: Tools for using the InfiniBand SRP protocol devices Obsoletes: srptools <= 1.0.3 Provides: srptools = %{version}-%{release} Obsoletes: openib-srptools <= 0.0.6 Requires(post): systemd-units Requires(preun): systemd-units Requires(postun): systemd-units Requires: %{name}%{?_isa} = %{version}-%{release} %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. %if %{with_pyverbs} %package -n python3-pyverbs Summary: Python3 API over IB verbs %{?python_provide:%python_provide python3-pyverbs} %description -n python3-pyverbs Pyverbs is a Cython-based Python API over libibverbs, providing an easy, object-oriented access to IB verbs. %endif %prep %setup %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_BUILD_TYPE=Release \ -DCMAKE_INSTALL_BINDIR:PATH=%{_bindir} \ -DCMAKE_INSTALL_SBINDIR:PATH=%{_sbindir} \ -DCMAKE_INSTALL_LIBDIR:PATH=%{_libdir} \ -DCMAKE_INSTALL_LIBEXECDIR:PATH=%{_libexecdir} \ -DCMAKE_INSTALL_LOCALSTATEDIR:PATH=%{_localstatedir} \ -DCMAKE_INSTALL_SHAREDSTATEDIR:PATH=%{_sharedstatedir} \ -DCMAKE_INSTALL_INCLUDEDIR:PATH=%{_includedir} \ -DCMAKE_INSTALL_INFODIR:PATH=%{_infodir} \ -DCMAKE_INSTALL_MANDIR:PATH=%{_mandir} \ -DCMAKE_INSTALL_SYSCONFDIR:PATH=%{_sysconfdir} \ -DCMAKE_INSTALL_SYSTEMD_SERVICEDIR:PATH=%{_unitdir} \ -DCMAKE_INSTALL_INITDDIR:PATH=%{_initrddir} \ -DCMAKE_INSTALL_RUNDIR:PATH=%{_rundir} \ -DCMAKE_INSTALL_DOCDIR:PATH=%{_docdir}/%{name}-%{version} \ -DCMAKE_INSTALL_UDEV_RULESDIR:PATH=%{_udevrulesdir} \ -DCMAKE_INSTALL_PERLDIR:PATH=%{perl_vendorlib} \ -DENABLE_IBDIAGS_COMPAT:BOOL=True \ %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 %cmake_install mkdir -p %{buildroot}/%{_sysconfdir}/rdma # Red Hat specific glue %global dracutlibdir %{_prefix}/lib/dracut %global sysmodprobedir %{_prefix}/lib/modprobe.d mkdir -p %{buildroot}%{_sysconfdir}/udev/rules.d mkdir -p %{buildroot}%{_libexecdir} mkdir -p %{buildroot}%{_udevrulesdir} mkdir -p %{buildroot}%{dracutlibdir}/modules.d/05rdma mkdir -p %{buildroot}%{sysmodprobedir} install -D -m0644 redhat/rdma.conf %{buildroot}/%{_sysconfdir}/rdma/rdma.conf install -D -m0644 redhat/rdma.sriov-vfs %{buildroot}/%{_sysconfdir}/rdma/sriov-vfs install -D -m0644 redhat/rdma.mlx4.conf %{buildroot}/%{_sysconfdir}/rdma/mlx4.conf install -D -m0644 redhat/rdma.service %{buildroot}%{_unitdir}/rdma.service install -D -m0755 redhat/rdma.modules-setup.sh %{buildroot}%{dracutlibdir}/modules.d/05rdma/module-setup.sh install -D -m0644 redhat/rdma.udev-rules %{buildroot}%{_udevrulesdir}/98-rdma.rules install -D -m0644 redhat/rdma.mlx4.sys.modprobe %{buildroot}%{sysmodprobedir}/libmlx4.conf install -D -m0755 redhat/rdma.kernel-init %{buildroot}%{_libexecdir}/rdma-init-kernel install -D -m0755 redhat/rdma.sriov-init %{buildroot}%{_libexecdir}/rdma-set-sriov-vf install -D -m0755 redhat/rdma.mlx4-setup.sh %{buildroot}%{_libexecdir}/mlx4-setup.sh # ibacm bin/ib_acme -D . -O install -D -m0644 ibacm_opts.cfg %{buildroot}%{_sysconfdir}/rdma/ # Delete the package's init.d scripts rm -rf %{buildroot}/%{_initrddir}/ rm -rf %{buildroot}/%{_sbindir}/srp_daemon.sh # infiniband-diags %post -n infiniband-diags -p /sbin/ldconfig %postun -n infiniband-diags -p /sbin/ldconfig # libibverbs %post -n libibverbs -p /sbin/ldconfig %postun -n libibverbs -p /sbin/ldconfig # libibumad %post -n libibumad -p /sbin/ldconfig %postun -n libibumad -p /sbin/ldconfig # librdmacm %post -n librdmacm -p /sbin/ldconfig %postun -n librdmacm -p /sbin/ldconfig # ibacm %post -n ibacm %systemd_post ibacm.service %preun -n ibacm %systemd_preun ibacm.service %postun -n ibacm %systemd_postun_with_restart ibacm.service # srp_daemon %post -n srp_daemon %systemd_post srp_daemon.service %preun -n srp_daemon %systemd_preun srp_daemon.service %postun -n srp_daemon %systemd_postun_with_restart srp_daemon.service # iwpmd %post -n iwpmd %systemd_post iwpmd.service %preun -n iwpmd %systemd_preun iwpmd.service %postun -n iwpmd %systemd_postun_with_restart iwpmd.service %files %dir %{_sysconfdir}/rdma %dir %{_docdir}/%{name}-%{version} %doc %{_docdir}/%{name}-%{version}/README.md %doc %{_docdir}/%{name}-%{version}/rxe.md %doc %{_docdir}/%{name}-%{version}/udev.md %doc %{_docdir}/%{name}-%{version}/tag_matching.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 %config(noreplace) %{_sysconfdir}/rdma/rdma.conf %config(noreplace) %{_sysconfdir}/rdma/sriov-vfs %config(noreplace) %{_sysconfdir}/udev/rules.d/* %config(noreplace) %{_sysconfdir}/modprobe.d/mlx4.conf %config(noreplace) %{_sysconfdir}/modprobe.d/truescale.conf %{_unitdir}/rdma-hw.target %{_unitdir}/rdma-load-modules@.service %{_unitdir}/rdma.service %dir %{dracutlibdir}/modules.d/05rdma %{dracutlibdir}/modules.d/05rdma/module-setup.sh %{_udevrulesdir}/../rdma_rename %{_udevrulesdir}/60-rdma-ndd.rules %{_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 %{_udevrulesdir}/98-rdma.rules %{sysmodprobedir}/libmlx4.conf %{_libexecdir}/rdma-init-kernel %{_libexecdir}/rdma-set-sriov-vf %{_libexecdir}/mlx4-setup.sh %{_libexecdir}/truescale-serdes.cmds %{_bindir}/rxe_cfg %{_sbindir}/rdma-ndd %{_unitdir}/rdma-ndd.service %{_mandir}/man7/rxe* %{_mandir}/man8/rdma-ndd.* %{_mandir}/man8/rxe* %license COPYING.* %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/efadv* %{_mandir}/man3/ibv_* %{_mandir}/man3/rdma* %{_mandir}/man3/umad* %{_mandir}/man3/*_to_ibv_rate.* %{_mandir}/man7/rdma_cm.* %{_mandir}/man3/mlx5dv* %{_mandir}/man3/mlx4dv* %{_mandir}/man7/efadv* %{_mandir}/man7/mlx5dv* %{_mandir}/man7/mlx4dv* %{_mandir}/man3/ibnd_* %files -n infiniband-diags-compat %{_sbindir}/ibcheckerrs %{_mandir}/man8/ibcheckerrs* %{_sbindir}/ibchecknet %{_mandir}/man8/ibchecknet* %{_sbindir}/ibchecknode %{_mandir}/man8/ibchecknode* %{_sbindir}/ibcheckport %{_mandir}/man8/ibcheckport.* %{_sbindir}/ibcheckportwidth %{_mandir}/man8/ibcheckportwidth* %{_sbindir}/ibcheckportstate %{_mandir}/man8/ibcheckportstate* %{_sbindir}/ibcheckwidth %{_mandir}/man8/ibcheckwidth* %{_sbindir}/ibcheckstate %{_mandir}/man8/ibcheckstate* %{_sbindir}/ibcheckerrors %{_mandir}/man8/ibcheckerrors* %{_sbindir}/ibdatacounts %{_mandir}/man8/ibdatacounts* %{_sbindir}/ibdatacounters %{_mandir}/man8/ibdatacounters* %{_sbindir}/ibdiscover.pl %{_mandir}/man8/ibdiscover* %{_sbindir}/ibswportwatch.pl %{_mandir}/man8/ibswportwatch* %{_sbindir}/ibqueryerrors.pl %{_sbindir}/iblinkinfo.pl %{_sbindir}/ibprintca.pl %{_mandir}/man8/ibprintca* %{_sbindir}/ibprintswitch.pl %{_mandir}/man8/ibprintswitch* %{_sbindir}/ibprintrt.pl %{_mandir}/man8/ibprintrt* %{_sbindir}/set_nodedesc.sh %files -n 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}/ibclearerrors %{_mandir}/man8/ibclearerrors* %{_sbindir}/ibclearcounters %{_mandir}/man8/ibclearcounters* %{_sbindir}/ibstatus %{_mandir}/man8/ibstatus* %{_mandir}/man8/infiniband-diags* %{_libdir}/libibmad*.so.* %{_libdir}/libibnetdisc*.so.* %{perl_vendorlib}/IBswcountlimits.pm %config(noreplace) %{_sysconfdir}/infiniband-diags/error_thresholds %config(noreplace) %{_sysconfdir}/infiniband-diags/ibdiag.conf %files -n libibverbs %dir %{_sysconfdir}/libibverbs.d %dir %{_libdir}/libibverbs %{_libdir}/libefa.so.* %{_libdir}/libibverbs*.so.* %{_libdir}/libibverbs/*.so %{_libdir}/libmlx5.so.* %{_libdir}/libmlx4.so.* %config(noreplace) %{_sysconfdir}/libibverbs.d/*.driver %doc %{_docdir}/%{name}-%{version}/libibverbs.md %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/ibacm.* %{_mandir}/man1/ib_acme.* %{_mandir}/man7/ibacm.* %{_mandir}/man7/ibacm_prov.* %{_unitdir}/ibacm.service %{_unitdir}/ibacm.socket %dir %{_libdir}/ibacm %{_libdir}/ibacm/* %doc %{_docdir}/%{name}-%{version}/ibacm.md %files -n iwpmd %{_sbindir}/iwpmd %{_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 libibumad %{_libdir}/libibumad*.so.* %files -n librdmacm %{_libdir}/librdmacm*.so.* %dir %{_libdir}/rsocket %{_libdir}/rsocket/*.so* %doc %{_docdir}/%{name}-%{version}/librdmacm.md %{_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 %config(noreplace) %{_sysconfdir}/srp_daemon.conf %config(noreplace) %{_sysconfdir}/rdma/modules/srp_daemon.conf %{_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 %{_udevrulesdir}/60-srp_daemon.rules %{_mandir}/man1/ibsrpdm.1* %{_mandir}/man1/srp_daemon.1* %{_mandir}/man5/srp_daemon.service.5* %{_mandir}/man5/srp_daemon_port@.service.5* %doc %{_docdir}/%{name}-%{version}/ibsrpdm.md %if %{with_pyverbs} %files -n python3-pyverbs %{python3_sitearch}/pyverbs %{_docdir}/%{name}-%{version}/tests/*.py %endif