代码拉取完成,页面将自动刷新
同步操作将从 src-openEuler/tcmu-runner 强制同步,此操作会覆盖自 Fork 仓库以来所做的任何修改,且无法恢复!!!
确定后同步将在后台操作,完成时将刷新页面,请耐心等待。
%global _hardened_build 1
# without rbd dependency
# if you wish to exclude rbd handlers in RPM, use below command
# rpmbuild -ta @PACKAGE_NAME@-@[email protected] --without rbd
%bcond_without rbd
# without glusterfs dependency
# if you wish to exclude glfs handlers in RPM, use below command
# rpmbuild -ta @PACKAGE_NAME@-@[email protected] --without glfs
%bcond_without glfs
# without qcow dependency
# if you wish to exclude qcow handlers in RPM, use below command
# rpmbuild -ta @PACKAGE_NAME@-@[email protected] --without qcow
%bcond_without qcow
# without zbc dependency
# if you wish to exclude zbc handlers in RPM, use below command
# rpmbuild -ta @PACKAGE_NAME@-@[email protected] --without zbc
%bcond_without zbc
# without file backed optical dependency
# if you wish to exclude fbo handlers in RPM, use below command
# rpmbuild -ta @PACKAGE_NAME@-@[email protected] --without fbo
%bcond_without fbo
# without tcmalloc dependency
# if you wish to exclude tcmalloc, use below command
# rpmbuild -ta @PACKAGE_NAME@-@[email protected] --without tcmalloc
%bcond_without tcmalloc
Name: tcmu-runner
Summary: A daemon that handles the userspace side of the LIO TCM-User backstore
Group: System Environment/Daemons
License: ASL 2.0 or LGPLv2+
Version: 1.6.0
Release: 1
URL: https://github.com/open-iscsi/tcmu-runner
BuildRoot: %(mktemp -udp %{_tmppath}/%{name}-%{version})
Source: %{name}-%{version}.tar.gz
ExclusiveOS: Linux
BuildRequires: cmake make gcc
BuildRequires: libnl3-devel glib2-devel zlib-devel kmod-devel
%if %{with rbd}
BuildRequires: librbd1-devel librados2-devel
Requires(pre): librados2, librbd1
%endif
%if %{with glfs}
BuildRequires: glusterfs-api-devel
Requires(pre): glusterfs-api
%endif
%if %{with tcmalloc}
BuildRequires: gperftools-devel
Requires: gperftools-libs
%endif
Requires(pre): kmod, zlib, libnl3, glib2, logrotate, rsyslog
Requires: libtcmu = %{version}-%{release}
%description
A daemon that handles the userspace side of the LIO TCM-User backstore.
LIO is the SCSI target in the Linux kernel. It is entirely kernel code, and
allows exported SCSI logical units (LUNs) to be backed by regular files or
block devices. But, if we want to get fancier with the capabilities of the
device we're emulating, the kernel is not necessarily the right place. While
there are userspace libraries for compression, encryption, and clustered
storage solutions like Ceph or Gluster, these are not accessible from the
kernel.
The TCMU userspace-passthrough backstore allows a userspace process to handle
requests to a LUN. But since the kernel-user interface that TCMU provides
must be fast and flexible, it is complex enough that we'd like to avoid each
userspace handler having to write boilerplate code.
tcmu-runner handles the messy details of the TCMU interface -- UIO, netlink,
pthreads, and DBus -- and exports a more friendly C plugin module API. Modules
using this API are called "TCMU handlers". Handler authors can write code just
to handle the SCSI commands as desired, and can also link with whatever
userspace libraries they like.
%package -n libtcmu
Summary: A library supporting LIO TCM-User backstores processing
Group: Development/Libraries
%description -n libtcmu
libtcmu provides a library for processing SCSI commands exposed by the
LIO kernel target's TCM-User backend.
%package -n libtcmu-devel
Summary: Development headers for libtcmu
Group: Development/Libraries
Requires: %{name} = %{version}-%{release}
Requires: libtcmu = %{version}-%{release}
%description -n libtcmu-devel
Development header(s) for developing against libtcmu.
%global debug_package %{nil}
%prep
%setup -n %{name}-%{version}
%build
sed -i 's/-Werror//g' CMakeLists.txt
%{__cmake} \
-DSUPPORT_SYSTEMD=ON -DCMAKE_INSTALL_PREFIX=%{_usr} \
%{?_without_rbd:-Dwith-rbd=false} \
%{?_without_zbc:-Dwith-zbc=false} \
%{?_without_qcow:-Dwith-qcow=false} \
%{?_without_glfs:-Dwith-glfs=false} \
%{?_without_fbo:-Dwith-fbo=false} \
%{?_without_tcmalloc:-Dwith-tcmalloc=false} \
.
%{__make}
%install
%{__make} DESTDIR=%{buildroot} install
%{__rm} -f %{buildroot}/etc/tcmu/tcmu.conf.old
%{__rm} -f %{buildroot}/etc/logrotate.d/tcmu-runner.bak/tcmu-runner
%files
%{_bindir}/tcmu-runner
%dir %{_sysconfdir}/dbus-1/
%dir %{_sysconfdir}/dbus-1/system.d
%config %{_sysconfdir}/dbus-1/system.d/tcmu-runner.conf
%dir %{_datadir}/dbus-1/
%dir %{_datadir}/dbus-1/system-services/
%{_datadir}/dbus-1/system-services/org.kernel.TCMUService1.service
%{_unitdir}/tcmu-runner.service
%dir %{_libdir}/tcmu-runner/
%{_libdir}/tcmu-runner/*.so
%{_mandir}/man8/*
%doc README.md LICENSE.LGPLv2.1 LICENSE.Apache2
%dir %{_sysconfdir}/tcmu/
%config %{_sysconfdir}/tcmu/tcmu.conf
%config(noreplace) %{_sysconfdir}/logrotate.d/tcmu-runner
%ghost %attr(0644,-,-) %{_sysconfdir}/tcmu/tcmu.conf.old
%ghost %attr(0644,-,-) %{_sysconfdir}/logrotate.d/tcmu-runner.bak/tcmu-runner
%files -n libtcmu
%{_libdir}/libtcmu*.so.*
%files -n libtcmu-devel
%{_libdir}/libtcmu*.so
%changelog
* Tue Jan 03 2023 zhangdaolong <[email protected]> - 1.6.0-1
- Created spec file for 1.6.0 release
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。