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.
213 lines
6.2 KiB
213 lines
6.2 KiB
# Generated by rust2rpm 26
|
|
%bcond_without check
|
|
%global debug_package %{nil}
|
|
|
|
%global crate rkyv
|
|
|
|
Name: rust-rkyv
|
|
Version: 0.8.8
|
|
Release: %autorelease
|
|
Summary: Zero-copy deserialization framework for Rust
|
|
|
|
License: MIT
|
|
URL: https://crates.io/crates/rkyv
|
|
Source: %{crates_source}
|
|
# Manually created patch for downstream crate metadata changes
|
|
# * Where possible, patch out "support for common crates" features. Many of
|
|
# these have satisfiable dependencies and could be packaged if something
|
|
# specifically requires them. Upstream plans to remove these crate-integration
|
|
# features in 1.0:
|
|
# https://github.com/rkyv/rkyv/blob/89a1bc48229ca6ac5ee620964d778293270257d0/rkyv/Cargo.toml#L29-L32
|
|
# * Patch out the ui test, which seems to require *all* integrations, even the
|
|
# patched-out ones
|
|
Patch: rkyv-fix-metadata.diff
|
|
# * Fix generic SIMD for big-endian targets:
|
|
# https://github.com/rkyv/rkyv/commit/6d6a5461e42cac18707dfee42b9f41ee7d078866
|
|
# * Fixes: “Some tests related to hash_map fail on big-endian platforms”
|
|
# https://github.com/rkyv/rkyv/issues/557
|
|
# * Exported with "git format-patch --relative" so that the patch applies to the
|
|
# released crate.
|
|
Patch10: 0001-Fix-generic-SIMD-for-big-endian-targets.patch
|
|
|
|
BuildRequires: cargo-rpm-macros >= 24
|
|
BuildRequires: dos2unix
|
|
BuildRequires: tomcli
|
|
|
|
%global _description %{expand:
|
|
Zero-copy deserialization framework for Rust.}
|
|
|
|
%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
|
|
%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}+aligned-devel
|
|
Summary: %{summary}
|
|
BuildArch: noarch
|
|
|
|
%description -n %{name}+aligned-devel %{_description}
|
|
|
|
This package contains library source intended for building other packages which
|
|
use the "aligned" feature of the "%{crate}" crate.
|
|
|
|
%files -n %{name}+aligned-devel
|
|
%ghost %{crate_instdir}/Cargo.toml
|
|
|
|
%package -n %{name}+alloc-devel
|
|
Summary: %{summary}
|
|
BuildArch: noarch
|
|
|
|
%description -n %{name}+alloc-devel %{_description}
|
|
|
|
This package contains library source intended for building other packages which
|
|
use the "alloc" feature of the "%{crate}" crate.
|
|
|
|
%files -n %{name}+alloc-devel
|
|
%ghost %{crate_instdir}/Cargo.toml
|
|
|
|
%package -n %{name}+big_endian-devel
|
|
Summary: %{summary}
|
|
BuildArch: noarch
|
|
|
|
%description -n %{name}+big_endian-devel %{_description}
|
|
|
|
This package contains library source intended for building other packages which
|
|
use the "big_endian" feature of the "%{crate}" crate.
|
|
|
|
%files -n %{name}+big_endian-devel
|
|
%ghost %{crate_instdir}/Cargo.toml
|
|
|
|
%package -n %{name}+bytecheck-devel
|
|
Summary: %{summary}
|
|
BuildArch: noarch
|
|
|
|
%description -n %{name}+bytecheck-devel %{_description}
|
|
|
|
This package contains library source intended for building other packages which
|
|
use the "bytecheck" feature of the "%{crate}" crate.
|
|
|
|
%files -n %{name}+bytecheck-devel
|
|
%ghost %{crate_instdir}/Cargo.toml
|
|
|
|
%package -n %{name}+little_endian-devel
|
|
Summary: %{summary}
|
|
BuildArch: noarch
|
|
|
|
%description -n %{name}+little_endian-devel %{_description}
|
|
|
|
This package contains library source intended for building other packages which
|
|
use the "little_endian" feature of the "%{crate}" crate.
|
|
|
|
%files -n %{name}+little_endian-devel
|
|
%ghost %{crate_instdir}/Cargo.toml
|
|
|
|
%package -n %{name}+pointer_width_16-devel
|
|
Summary: %{summary}
|
|
BuildArch: noarch
|
|
|
|
%description -n %{name}+pointer_width_16-devel %{_description}
|
|
|
|
This package contains library source intended for building other packages which
|
|
use the "pointer_width_16" feature of the "%{crate}" crate.
|
|
|
|
%files -n %{name}+pointer_width_16-devel
|
|
%ghost %{crate_instdir}/Cargo.toml
|
|
|
|
%package -n %{name}+pointer_width_32-devel
|
|
Summary: %{summary}
|
|
BuildArch: noarch
|
|
|
|
%description -n %{name}+pointer_width_32-devel %{_description}
|
|
|
|
This package contains library source intended for building other packages which
|
|
use the "pointer_width_32" feature of the "%{crate}" crate.
|
|
|
|
%files -n %{name}+pointer_width_32-devel
|
|
%ghost %{crate_instdir}/Cargo.toml
|
|
|
|
%package -n %{name}+pointer_width_64-devel
|
|
Summary: %{summary}
|
|
BuildArch: noarch
|
|
|
|
%description -n %{name}+pointer_width_64-devel %{_description}
|
|
|
|
This package contains library source intended for building other packages which
|
|
use the "pointer_width_64" feature of the "%{crate}" crate.
|
|
|
|
%files -n %{name}+pointer_width_64-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}+unaligned-devel
|
|
Summary: %{summary}
|
|
BuildArch: noarch
|
|
|
|
%description -n %{name}+unaligned-devel %{_description}
|
|
|
|
This package contains library source intended for building other packages which
|
|
use the "unaligned" feature of the "%{crate}" crate.
|
|
|
|
%files -n %{name}+unaligned-devel
|
|
%ghost %{crate_instdir}/Cargo.toml
|
|
|
|
%prep
|
|
%autosetup -n %{crate}-%{version} -p1
|
|
# Do not depend on divan; it is needed only for benchmarks.
|
|
tomcli set Cargo.toml del dev-dependencies.divan
|
|
# The crate has a mixture of newline styles.
|
|
# Fixed upstream in:
|
|
# https://github.com/rkyv/rkyv/commit/6b7ab529d32166ec0fc81b7b8828ba71e2c65c38
|
|
find . -type f | xargs -r -t dos2unix --keepdate
|
|
%cargo_prep
|
|
|
|
%generate_buildrequires
|
|
%cargo_generate_buildrequires
|
|
|
|
%build
|
|
%cargo_build
|
|
|
|
%install
|
|
%cargo_install
|
|
|
|
%if %{with check}
|
|
%check
|
|
%cargo_test
|
|
%endif
|
|
|
|
%changelog
|
|
%autochangelog
|