Use vendored dependencies in RHEL builds

RHEL does not package individual Rust dependencies.
This commit is contained in:
Yaakov Selkowitz 2023-04-28 15:15:51 -04:00
parent fcc05136ee
commit 2ca6c788b5
3 changed files with 14 additions and 1 deletions

1
.gitignore vendored
View File

@ -3,3 +3,4 @@
/virtiofsd-1.4.0.crate /virtiofsd-1.4.0.crate
/virtiofsd-1.5.0.crate /virtiofsd-1.5.0.crate
/virtiofsd-1.5.1.crate /virtiofsd-1.5.1.crate
/virtiofsd-1.5.1-vendor.tar.xz

View File

@ -1 +1,2 @@
SHA512 (virtiofsd-1.5.1.crate) = e8a4aaaa6084b5c111333fff738ed8082cd114098dbf4ff42f48192449e899e64fc406de3872adc8e8d82c7a4f9730989e691c80f85ddabb2441908be8460873 SHA512 (virtiofsd-1.5.1.crate) = e8a4aaaa6084b5c111333fff738ed8082cd114098dbf4ff42f48192449e899e64fc406de3872adc8e8d82c7a4f9730989e691c80f85ddabb2441908be8460873
SHA512 (virtiofsd-1.5.1-vendor.tar.xz) = 3a1eecdd70283d003232be0e335f044236554e8155354f7debd69b7e0387dd39b4d1da22ae967bb0e8fcf920a58f023f7a5461f7637855a715ea0ebd1b51f35b

View File

@ -7,13 +7,20 @@ Summary: Virtio-fs vhost-user device daemon (Rust version)
License: ASL 2.0 and BSD License: ASL 2.0 and BSD
URL: https://gitlab.com/virtio-fs/virtiofsd URL: https://gitlab.com/virtio-fs/virtiofsd
Source: %{crates_source} Source: %{crates_source}
Patch: virtiofsd-relax-env_logger-dep.diff # To create the vendor tarball:
# tar xf %%{name}-%%{version}.crate ; pushd %%{name}-%%{version} ; \
# cargo vendor && tar Jcvf ../%%{name}-%%{version}-vendor.tar.xz vendor/ ; popd
Source1: %{name}-%{version}-vendor.tar.xz
ExclusiveArch: %{rust_arches} ExclusiveArch: %{rust_arches}
# Some of our deps (i.e. vm-memory) are not available on 32 bits targets. # Some of our deps (i.e. vm-memory) are not available on 32 bits targets.
ExcludeArch: i686 ExcludeArch: i686
%if 0%{?rhel}
BuildRequires: rust-toolset
%else
BuildRequires: rust-packaging >= 21 BuildRequires: rust-packaging >= 21
%endif
BuildRequires: libcap-ng-devel BuildRequires: libcap-ng-devel
BuildRequires: libseccomp-devel BuildRequires: libseccomp-devel
Requires: qemu-common Requires: qemu-common
@ -29,10 +36,14 @@ Provides: qemu-virtiofsd = 2:7.2.1-1
%prep %prep
%autosetup -n %{name}-%{version_no_tilde} -p1 %autosetup -n %{name}-%{version_no_tilde} -p1
%if 0%{?rhel}
%cargo_prep -V 1
%else
%cargo_prep %cargo_prep
%generate_buildrequires %generate_buildrequires
%cargo_generate_buildrequires %cargo_generate_buildrequires
%endif
%build %build
%cargo_build %cargo_build