The package rpms/rust-resctl-bench.git has added or updated architecture specific content in its spec file (ExclusiveArch/ExcludeArch or %ifarch/%ifnarch) in commit(s): https://src.fedoraproject.org/cgit/rpms/rust-resctl-bench.git/commit/?id=4d3....
Change: +ExclusiveArch: %{rust_arches}
Thanks.
Full change: ============
commit 700c18495a3a44469d392338a60c7de6eb26354f Author: Davide Cavalca dcavalca@fedoraproject.org Date: Fri Oct 22 10:28:04 2021 -0700
Build for epel8
diff --git a/.gitignore b/.gitignore index 2829c5e..f4d7de6 100644 --- a/.gitignore +++ b/.gitignore @@ -1 +1,2 @@ /resctl-bench-2.1.2.crate +/resctl-bench-2.1.2-vendor.tar.gz diff --git a/rust-resctl-bench.spec b/rust-resctl-bench.spec index 549de84..9f7a40a 100644 --- a/rust-resctl-bench.spec +++ b/rust-resctl-bench.spec @@ -4,6 +4,13 @@
%global crate resctl-bench
+%if 0%{?el8} +# el8 doesn't have these macros +%global __crates_url https://crates.io/api/v1/crates/ +%global crates_source %{__crates_url}%{crate}/%{version}/download#/%{crate}-%{version}.crate +%global version_no_tilde %{version} +%endif + Name: rust-%{crate} Version: 2.1.2 Release: %autorelease @@ -13,10 +20,16 @@ Summary: Whole system resource control benchmarks with realistic scenario License: ASL 2.0 and BSD and MIT and zlib URL: https://crates.io/crates/resctl-bench Source: %{crates_source} +# Vendored dependencies for EPEL, update with ./update-vendor-tarball.sh +Source1: %{crate}-%{version}-vendor.tar.gz
ExclusiveArch: %{rust_arches}
+%if 0%{?el8} +BuildRequires: rust-toolset +%else BuildRequires: rust-packaging +%endif
%global _description %{expand: resctl-bench is a collection of whole-system benchmarks to evaluate resource @@ -52,10 +65,14 @@ Requires: rd-hashd = %{version}
%prep %autosetup -n %{crate}-%{version_no_tilde} -p1 +%if 0%{?el8} +%cargo_prep -V 1 +%else %cargo_prep
%generate_buildrequires %cargo_generate_buildrequires +%endif
%build %cargo_build diff --git a/sources b/sources index 8e71d81..78f2783 100644 --- a/sources +++ b/sources @@ -1 +1,2 @@ SHA512 (resctl-bench-2.1.2.crate) = 55e56c9bf5d6c2d1c944291ad8908cff5a5e37e51bb8b4baa98dca5515773d22f509a14e9e85cd11066d5011a6390fbaec5d65c029b9ab253493004c937840eb +SHA512 (resctl-bench-2.1.2-vendor.tar.gz) = 5797a8d3c1524df6c78463d067bbb97e22a68c65f1a50b039636280c07f1a9f878d3f0483dede30070f5909294afa5473c6f5776bccff39bf4fb872b4bee2115 diff --git a/update-vendor-tarball.sh b/update-vendor-tarball.sh new file mode 100755 index 0000000..34c64dd --- /dev/null +++ b/update-vendor-tarball.sh @@ -0,0 +1,25 @@ +#!/bin/sh + +name='resctl-bench' +specfile="rust-${name}.spec" +version=$(rpm -q --qf '%{VERSION}\n' --specfile "$specfile" | head -1) +nv="${name}-${version}" +crate="${nv}.crate" +vendor_tarball="${nv}-vendor.tar.gz" + +if [ -f "$vendor_tarball" ]; then + echo "${vendor_tarball} already exists, aborting" + exit 1 +fi + +[ -f "$crate" ] || spectool -g "$specfile" +tardir="$PWD" +workdir=$(mktemp -d) +trap 'rm -rf "$workdir"' EXIT + +tar xvzf "$tardir/$crate" -C "$workdir" +(cd "${workdir}/${nv}" && \ + cargo vendor && \ + tar cvzf "${tardir}/${vendor_tarball}" vendor/) + +exit 0
commit 4d34baa1c5e0d942d54ec0e313bfaf01506d9a11 Author: Davide Cavalca dcavalca@fedoraproject.org Date: Fri Oct 22 08:32:30 2021 -0700
Initial import; Fixes: RHBZ#1997730
diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..2829c5e --- /dev/null +++ b/.gitignore @@ -0,0 +1 @@ +/resctl-bench-2.1.2.crate diff --git a/rust-resctl-bench.spec b/rust-resctl-bench.spec new file mode 100644 index 0000000..549de84 --- /dev/null +++ b/rust-resctl-bench.spec @@ -0,0 +1,72 @@ +# Generated by rust2rpm 18 +%bcond_without check +%global __cargo_skip_build 0 + +%global crate resctl-bench + +Name: rust-%{crate} +Version: 2.1.2 +Release: %autorelease +Summary: Whole system resource control benchmarks with realistic scenarios + +# Upstream license specification: Apache-2.0 +License: ASL 2.0 and BSD and MIT and zlib +URL: https://crates.io/crates/resctl-bench +Source: %{crates_source} + +ExclusiveArch: %{rust_arches} + +BuildRequires: rust-packaging + +%global _description %{expand: +resctl-bench is a collection of whole-system benchmarks to evaluate resource +control and hardware behaviors using realistic simulated workloads. + +Comprehensive resource control involves the whole system. Furthermore, testing +resource control end-to-end requires scenarios involving realistic workloads +and monitoring their interactions. The combination makes benchmarking resource +control challenging and error-prone. It's easy to slip up on a configuration +and testing with real workloads can be tedious and unreliable. + +resctl-bench encapsulates the whole process so that resource control benchmarks +can be performed easily and reliably. It verifies and updates system +configurations, reproduces resource contention scenarios with a realistic +latency-sensitive workload simulator and other secondary workloads, analyzes +the resulting system and workload behaviors, and generates easily +understandable reports.} + +%description %{_description} + +%package -n %{crate} +Summary: %{summary} + +Requires: rd-agent = %{version} +Requires: rd-hashd = %{version} + +%description -n %{crate} %{_description} + +%files -n %{crate} +%license LICENSE +%doc examples doc README.md +%{_bindir}/resctl-bench + +%prep +%autosetup -n %{crate}-%{version_no_tilde} -p1 +%cargo_prep + +%generate_buildrequires +%cargo_generate_buildrequires + +%build +%cargo_build + +%install +%cargo_install + +%if %{with check} +%check +%cargo_test +%endif + +%changelog +%autochangelog diff --git a/sources b/sources new file mode 100644 index 0000000..8e71d81 --- /dev/null +++ b/sources @@ -0,0 +1 @@ +SHA512 (resctl-bench-2.1.2.crate) = 55e56c9bf5d6c2d1c944291ad8908cff5a5e37e51bb8b4baa98dca5515773d22f509a14e9e85cd11066d5011a6390fbaec5d65c029b9ab253493004c937840eb
arch-excludes@lists.fedoraproject.org