You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
rust-brotli/rust-brotli.spec

295 lines
9.0 KiB

# Generated by rust2rpm 26
%bcond_without check
%global debug_package %{nil}
# prevent executables from being installed
%global cargo_install_bin 0
%global crate brotli
Name: rust-brotli
5 months ago
Version: 7.0.0
Release: %autorelease
Summary: Brotli compressor and decompressor with no_std support
License: BSD-3-Clause AND MIT
URL: https://crates.io/crates/brotli
Source: %{crates_source}
# Manually created patch for downstream crate metadata changes
# * Exclude files that are only useful for upstream development:
# https://github.com/dropbox/rust-brotli/pull/43
Patch: brotli-fix-metadata.diff
5 months ago
# * Remove unwanted executable permission from src/enc/test.rs
Patch10: https://github.com/dropbox/rust-brotli/pull/219.patch
BuildRequires: cargo-rpm-macros >= 26
%global _description %{expand:
A brotli compressor and decompressor that with an interface avoiding the
rust stdlib. This makes it suitable for embedded devices and kernels. It
is designed with a pluggable allocator so that the standard lib's
allocator may be employed. The default build also includes a stdlib
allocator and stream interface. Disable this with --features=no-stdlib.
All included code is safe.}
%description %{_description}
%package devel
Summary: %{summary}
BuildArch: noarch
%description devel %{_description}
This package contains library source intended for building other packages which
use the "%{crate}" crate.
%files devel
%license %{crate_instdir}/LICENSE.BSD-3-Clause
%license %{crate_instdir}/LICENSE.MIT
%doc %{crate_instdir}/README.md
%{crate_instdir}/
%package -n %{name}+default-devel
Summary: %{summary}
BuildArch: noarch
%description -n %{name}+default-devel %{_description}
This package contains library source intended for building other packages which
use the "default" feature of the "%{crate}" crate.
%files -n %{name}+default-devel
%ghost %{crate_instdir}/Cargo.toml
%package -n %{name}+alloc-stdlib-devel
Summary: %{summary}
BuildArch: noarch
%description -n %{name}+alloc-stdlib-devel %{_description}
This package contains library source intended for building other packages which
use the "alloc-stdlib" feature of the "%{crate}" crate.
%files -n %{name}+alloc-stdlib-devel
%ghost %{crate_instdir}/Cargo.toml
5 months ago
%package -n %{name}+billing-devel
Summary: %{summary}
BuildArch: noarch
%description -n %{name}+billing-devel %{_description}
This package contains library source intended for building other packages which
use the "billing" feature of the "%{crate}" crate.
%files -n %{name}+billing-devel
%ghost %{crate_instdir}/Cargo.toml
%package -n %{name}+disable-timer-devel
Summary: %{summary}
BuildArch: noarch
%description -n %{name}+disable-timer-devel %{_description}
This package contains library source intended for building other packages which
use the "disable-timer" feature of the "%{crate}" crate.
%files -n %{name}+disable-timer-devel
%ghost %{crate_instdir}/Cargo.toml
5 months ago
%package -n %{name}+disallow_large_window_size-devel
Summary: %{summary}
BuildArch: noarch
%description -n %{name}+disallow_large_window_size-devel %{_description}
This package contains library source intended for building other packages which
use the "disallow_large_window_size" feature of the "%{crate}" crate.
%files -n %{name}+disallow_large_window_size-devel
%ghost %{crate_instdir}/Cargo.toml
%package -n %{name}+external-literal-probability-devel
Summary: %{summary}
BuildArch: noarch
%description -n %{name}+external-literal-probability-devel %{_description}
This package contains library source intended for building other packages which
use the "external-literal-probability" feature of the "%{crate}" crate.
%files -n %{name}+external-literal-probability-devel
%ghost %{crate_instdir}/Cargo.toml
%package -n %{name}+ffi-api-devel
Summary: %{summary}
BuildArch: noarch
%description -n %{name}+ffi-api-devel %{_description}
This package contains library source intended for building other packages which
use the "ffi-api" feature of the "%{crate}" crate.
%files -n %{name}+ffi-api-devel
%ghost %{crate_instdir}/Cargo.toml
5 months ago
%package -n %{name}+float64-devel
Summary: %{summary}
BuildArch: noarch
%description -n %{name}+float64-devel %{_description}
This package contains library source intended for building other packages which
use the "float64" feature of the "%{crate}" crate.
%files -n %{name}+float64-devel
%ghost %{crate_instdir}/Cargo.toml
%package -n %{name}+floating_point_context_mixing-devel
Summary: %{summary}
BuildArch: noarch
%description -n %{name}+floating_point_context_mixing-devel %{_description}
This package contains library source intended for building other packages which
use the "floating_point_context_mixing" feature of the "%{crate}" crate.
%files -n %{name}+floating_point_context_mixing-devel
%ghost %{crate_instdir}/Cargo.toml
%package -n %{name}+no-stdlib-ffi-binding-devel
Summary: %{summary}
BuildArch: noarch
%description -n %{name}+no-stdlib-ffi-binding-devel %{_description}
This package contains library source intended for building other packages which
use the "no-stdlib-ffi-binding" feature of the "%{crate}" crate.
%files -n %{name}+no-stdlib-ffi-binding-devel
%ghost %{crate_instdir}/Cargo.toml
%package -n %{name}+pass-through-ffi-panics-devel
Summary: %{summary}
BuildArch: noarch
%description -n %{name}+pass-through-ffi-panics-devel %{_description}
This package contains library source intended for building other packages which
use the "pass-through-ffi-panics" feature of the "%{crate}" crate.
%files -n %{name}+pass-through-ffi-panics-devel
%ghost %{crate_instdir}/Cargo.toml
%package -n %{name}+seccomp-devel
Summary: %{summary}
BuildArch: noarch
%description -n %{name}+seccomp-devel %{_description}
This package contains library source intended for building other packages which
use the "seccomp" feature of the "%{crate}" crate.
%files -n %{name}+seccomp-devel
%ghost %{crate_instdir}/Cargo.toml
%package -n %{name}+sha2-devel
Summary: %{summary}
BuildArch: noarch
%description -n %{name}+sha2-devel %{_description}
This package contains library source intended for building other packages which
use the "sha2" feature of the "%{crate}" crate.
%files -n %{name}+sha2-devel
%ghost %{crate_instdir}/Cargo.toml
%package -n %{name}+simd-devel
Summary: %{summary}
BuildArch: noarch
%description -n %{name}+simd-devel %{_description}
This package contains library source intended for building other packages which
use the "simd" feature of the "%{crate}" crate.
%files -n %{name}+simd-devel
%ghost %{crate_instdir}/Cargo.toml
%package -n %{name}+std-devel
Summary: %{summary}
BuildArch: noarch
%description -n %{name}+std-devel %{_description}
This package contains library source intended for building other packages which
use the "std" feature of the "%{crate}" crate.
%files -n %{name}+std-devel
%ghost %{crate_instdir}/Cargo.toml
%package -n %{name}+validation-devel
Summary: %{summary}
BuildArch: noarch
%description -n %{name}+validation-devel %{_description}
This package contains library source intended for building other packages which
use the "validation" feature of the "%{crate}" crate.
%files -n %{name}+validation-devel
%ghost %{crate_instdir}/Cargo.toml
%package -n %{name}+vector_scratch_space-devel
Summary: %{summary}
BuildArch: noarch
%description -n %{name}+vector_scratch_space-devel %{_description}
This package contains library source intended for building other packages which
use the "vector_scratch_space" feature of the "%{crate}" crate.
%files -n %{name}+vector_scratch_space-devel
%ghost %{crate_instdir}/Cargo.toml
%prep
%autosetup -n %{crate}-%{version} -p1
%cargo_prep
%generate_buildrequires
%cargo_generate_buildrequires
%build
%cargo_build
%install
%cargo_install
%if %{with check}
%check
%if 0%{?__isa_bits} != 32
%cargo_test
%else
# Few tests fail with OOM on 32bit
# https://github.com/dropbox/rust-brotli/issues/42
# A fix was included in 7.0.0, but it was not entirely successful:
# https://github.com/dropbox/rust-brotli/issues/42#issuecomment-2388527527
skip="${skip-} --skip enc::test::test_roundtrip_10x10y"
skip="${skip-} --skip enc::test::test_roundtrip_64x"
skip="${skip-} --skip enc::test::test_roundtrip_asyoulik"
skip="${skip-} --skip enc::test::test_roundtrip_asyoulik9_5"
skip="${skip-} --skip enc::test::test_roundtrip_backward65536"
skip="${skip-} --skip enc::test::test_roundtrip_compressed_repeated"
skip="${skip-} --skip enc::test::test_roundtrip_monkey"
skip="${skip-} --skip enc::test::test_roundtrip_quickfox"
skip="${skip-} --skip enc::test::test_roundtrip_quickfox_repeated"
skip="${skip-} --skip enc::test::test_roundtrip_ukkonooa"
skip="${skip-} --skip enc::test::test_roundtrip_x"
%cargo_test -- -- --exact ${skip-}
%endif
%endif
%changelog
%autochangelog