Make RHEL/Fedora compatible spec file

This commit is contained in:
mulhern 2021-01-14 10:18:30 -05:00
parent 7ccb12fab0
commit 32d8769707

View File

@ -1,16 +1,14 @@
# Generated by rust2rpm
%bcond_without check
%global __cargo_skip_build 0
%global udevdir %(pkg-config --variable=udevdir udev)
# Not interested in packaging lib
# stratisd is supposed to be daemon used through dbus
%global __cargo_is_lib() false
%global udevdir %(pkg-config --variable=udevdir udev)
Name: stratisd
Version: 2.3.0
Release: 1%{?dist}
Summary: Daemon that manages a pool of block devices to create flexible filesystems
Release: 2%{?dist}
Summary: Daemon that manages block devices to create filesystems
# 0BSD or MIT or ASL 2.0
# ASL 2.0
@ -23,51 +21,72 @@ Summary: Daemon that manages a pool of block devices to create flexible f
# Unlicense or MIT
License: MPLv2.0 and ASL 2.0 and BSD and MIT
URL: https://github.com/stratis-storage/stratisd
%if 0%{?rhel}
Source0: %{url}/archive/v%{version}/%{name}-%{version}.tar.gz
Source1: %{name}-%{version}-vendor.tar.xz
%else
Source: %{url}/archive/v%{version}/%{name}-%{version}.tar.gz
%endif
ExclusiveArch: %{rust_arches}
%if 0%{?rhel}
BuildRequires: rust-toolset
%else
BuildRequires: rust-packaging
BuildRequires: systemd
%endif
BuildRequires: systemd-devel
BuildRequires: dbus-devel
BuildRequires: libblkid-devel
BuildRequires: cryptsetup-devel
BuildRequires: clang
BuildRequires: %{_bindir}/a2x
%{?systemd_requires}
Requires: xfsprogs
Requires: device-mapper-persistent-data
Requires: systemd-libs
Requires: dbus-libs
Requires: clevis-luks >= 15
%description
%{summary}.
%prep
%if 0%{?rhel}
%setup -q -n %{name}-%{version}
# Source1 is vendored dependencies
%cargo_prep -V 1
%else
%autosetup -p1
%cargo_prep
%generate_buildrequires
%cargo_generate_buildrequires
echo '/usr/bin/a2x'
echo 'pkgconfig(libcryptsetup) >= 2.3.0'
echo 'pkgconfig(blkid) >= 2.32.0'
%endif
%build
%cargo_build
%cargo_build -n
a2x -f manpage docs/stratisd.txt
%install
%cargo_install
%{__install} -Dpm0644 -t %{buildroot}%{_datadir}/dbus-1/system.d stratisd.conf
# Daemon should be really private
mkdir -p %{buildroot}%{_libexecdir}
mv %{buildroot}%{_bindir}/stratisd %{buildroot}%{_libexecdir}/stratisd
mkdir -p %{buildroot}%{udevdir}
mkdir -p %{buildroot}/developer_tools
mv %{buildroot}%{_bindir}/stratisd %{buildroot}%{_libexecdir}/stratisd
mv %{buildroot}%{_bindir}/stratis_uuids_to_names %{buildroot}%{udevdir}/stratis_uuids_to_names
install -Dpm0644 -t %{buildroot}%{_datadir}/dbus-1/system.d stratisd.conf
install -Dpm0644 -t %{buildroot}%{_mandir}/man8 docs/stratisd.8
install -Dpm0644 -t %{buildroot}%{_udevrulesdir} udev/11-stratisd.rules
install -Dpm0644 -t %{buildroot}%{_unitdir} stratisd.service
install -Dpm0644 -t %{buildroot}%{_bindir} developer_tools/stratis_migrate_symlinks.sh
%{__install} -Dpm0644 -t %{buildroot}%{_mandir}/man8 docs/stratisd.8
%{__install} -Dpm0644 -t %{buildroot}%{_udevrulesdir} udev/11-stratisd.rules
%{__install} -Dpm0644 -t %{buildroot}%{_unitdir} stratisd.service
%{__install} -Dpm0755 -t %{buildroot}%{_bindir} developer_tools/stratis_migrate_symlinks.sh
%if %{with check}
%check
@ -91,13 +110,15 @@ install -Dpm0644 -t %{buildroot}%{_bindir} developer_tools/stratis_migrate_symli
%{_bindir}/stratis_dbusquery_version
%{_bindir}/stratis_migrate_symlinks.sh
%dir %{_datadir}/dbus-1
%dir %{_datadir}/dbus-1/system.d
%{_datadir}/dbus-1/system.d/stratisd.conf
%{_mandir}/man8/stratisd.8*
%{_unitdir}/stratisd.service
%{_udevrulesdir}/11-stratisd.rules
%config %{_udevrulesdir}/11-stratisd.rules
%changelog
* Thu Jan 14 2021 mulhern <amulhern@redhat.com> - 2.3.0-2
- Make RHEL/Fedora compatible spec file
* Tue Jan 12 2021 mulhern <amulhern@redhat.com> - 2.3.0-1
- Update to 2.3.0