|
|
# Generated by rust2rpm 26
|
|
|
%bcond_without check
|
|
|
%global debug_package %{nil}
|
|
|
|
|
|
%global crate libdeflate-sys
|
|
|
|
|
|
Name: rust-libdeflate-sys
|
|
|
Version: 1.21.0
|
|
|
Release: %autorelease
|
|
|
Summary: Bindings to libdeflate for DEFLATE
|
|
|
|
|
|
License: Apache-2.0
|
|
|
URL: https://crates.io/crates/libdeflate-sys
|
|
|
Source: %{crates_source}
|
|
|
# Manually created patch for downstream crate metadata changes
|
|
|
# * Make the dependency on crate(pkg-config) non-optional instead of associating
|
|
|
# it with the “dynamic” feature, since we patch the crate to always link
|
|
|
# dynamically with the system libdeflate, regardless of the selected features.
|
|
|
Patch: libdeflate-sys-fix-metadata.diff
|
|
|
|
|
|
BuildRequires: cargo-rpm-macros >= 24
|
|
|
BuildRequires: pkgconfig(libdeflate)
|
|
|
|
|
|
%global _description %{expand:
|
|
|
Bindings to libdeflate for DEFLATE (de)compression exposed as non-
|
|
|
streaming buffer operations. Contains bindings for raw deflate, zlib,
|
|
|
and gzip data.}
|
|
|
|
|
|
%description %{_description}
|
|
|
|
|
|
%package devel
|
|
|
Summary: %{summary}
|
|
|
BuildArch: noarch
|
|
|
Requires: pkgconfig(libdeflate)
|
|
|
|
|
|
%description devel %{_description}
|
|
|
|
|
|
This package contains library source intended for building other packages which
|
|
|
use the "%{crate}" crate.
|
|
|
|
|
|
%files devel
|
|
|
%license %{crate_instdir}/LICENSE
|
|
|
%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}+dynamic-devel
|
|
|
Summary: %{summary}
|
|
|
BuildArch: noarch
|
|
|
|
|
|
%description -n %{name}+dynamic-devel %{_description}
|
|
|
|
|
|
This package contains library source intended for building other packages which
|
|
|
use the "dynamic" feature of the "%{crate}" crate.
|
|
|
|
|
|
%files -n %{name}+dynamic-devel
|
|
|
%ghost %{crate_instdir}/Cargo.toml
|
|
|
|
|
|
%package -n %{name}+freestanding-devel
|
|
|
Summary: %{summary}
|
|
|
BuildArch: noarch
|
|
|
|
|
|
%description -n %{name}+freestanding-devel %{_description}
|
|
|
|
|
|
This package contains library source intended for building other packages which
|
|
|
use the "freestanding" feature of the "%{crate}" crate.
|
|
|
|
|
|
%files -n %{name}+freestanding-devel
|
|
|
%ghost %{crate_instdir}/Cargo.toml
|
|
|
|
|
|
%prep
|
|
|
%autosetup -n %{crate}-%{version} -p1
|
|
|
# Remove the bundled copy of libdeflate.
|
|
|
rm -rv libdeflate
|
|
|
# Make libdeflate detection with pkg-config unconditional.
|
|
|
sed -r -i 's@^([[:blank:]]*)(#\[cfg\(feature *= *"dynamic"\)\])@\1// \2@' build.rs
|
|
|
# Don’t require an exact version match. We would *like* the versions to stay
|
|
|
# aligned, but we don’t *need* to update libdeflate and
|
|
|
# rust-libdeflate-sys/rust-libdeflater concurrently.
|
|
|
sed -r -i 's@^([[:blank:]]*)(\.exactly_version\()@\1// \2@' build.rs
|
|
|
# The above two sed-patches effectively revert “Dynamic Linking Constraints”,
|
|
|
# https://github.com/adamkewley/libdeflater/pull/32. Using sed instead of a
|
|
|
# patch file keeps us from having to update the patch every time the version
|
|
|
# number changes.
|
|
|
|
|
|
%cargo_prep
|
|
|
|
|
|
%generate_buildrequires
|
|
|
%cargo_generate_buildrequires
|
|
|
|
|
|
%build
|
|
|
%cargo_build
|
|
|
|
|
|
%install
|
|
|
%cargo_install
|
|
|
|
|
|
%if %{with check}
|
|
|
%check
|
|
|
%cargo_test
|
|
|
%endif
|
|
|
|
|
|
%changelog
|
|
|
%autochangelog
|