From 252c6ff4d81a203833d724082f0d8cc4fa7a281d Mon Sep 17 00:00:00 2001 From: MSVSphere Packaging Team Date: Fri, 20 Dec 2024 16:11:50 +0300 Subject: [PATCH] import rust-libdeflate-sys-1.22.0-1.el10 --- .gitignore | 1 + .rust-libdeflate-sys.metadata | 1 + SOURCES/README.md | 3 + SOURCES/libdeflate-sys-fix-metadata.diff | 12 ++ SOURCES/rust-libdeflate-sys.rpmlintrc | 4 + SOURCES/rust2rpm.toml | 35 +++++ SPECS/rust-libdeflate-sys.spec | 167 +++++++++++++++++++++++ 7 files changed, 223 insertions(+) create mode 100644 .gitignore create mode 100644 .rust-libdeflate-sys.metadata create mode 100644 SOURCES/README.md create mode 100644 SOURCES/libdeflate-sys-fix-metadata.diff create mode 100644 SOURCES/rust-libdeflate-sys.rpmlintrc create mode 100644 SOURCES/rust2rpm.toml create mode 100644 SPECS/rust-libdeflate-sys.spec diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..80518c1 --- /dev/null +++ b/.gitignore @@ -0,0 +1 @@ +SOURCES/libdeflate-sys-1.22.0.crate diff --git a/.rust-libdeflate-sys.metadata b/.rust-libdeflate-sys.metadata new file mode 100644 index 0000000..afe5428 --- /dev/null +++ b/.rust-libdeflate-sys.metadata @@ -0,0 +1 @@ +3b29aba523c4fb7282cdd0a8889b3d769cc2811f SOURCES/libdeflate-sys-1.22.0.crate diff --git a/SOURCES/README.md b/SOURCES/README.md new file mode 100644 index 0000000..c9de815 --- /dev/null +++ b/SOURCES/README.md @@ -0,0 +1,3 @@ +# rust-libdeflate-sys + +The rust-libdeflate-sys package diff --git a/SOURCES/libdeflate-sys-fix-metadata.diff b/SOURCES/libdeflate-sys-fix-metadata.diff new file mode 100644 index 0000000..1db6b05 --- /dev/null +++ b/SOURCES/libdeflate-sys-fix-metadata.diff @@ -0,0 +1,12 @@ +--- libdeflate-sys-1.22.0/Cargo.toml 1970-01-01T00:00:01+00:00 ++++ libdeflate-sys-1.22.0/Cargo.toml 2024-10-07T11:29:17.523993+00:00 +@@ -40,8 +40,7 @@ + + [build-dependencies.pkg-config] + version = "0.3.9" +-optional = true + + [features] +-dynamic = ["pkg-config"] ++dynamic = [] + freestanding = [] diff --git a/SOURCES/rust-libdeflate-sys.rpmlintrc b/SOURCES/rust-libdeflate-sys.rpmlintrc new file mode 100644 index 0000000..8a2aed3 --- /dev/null +++ b/SOURCES/rust-libdeflate-sys.rpmlintrc @@ -0,0 +1,4 @@ +# Feature metapackages are not supposed to have documentation! +addFilter(r"\+\w+-devel.noarch: W: no-documentation") +# Not real spelling errors: +addFilter(r" spelling-error \('(zlib|gzip)',") diff --git a/SOURCES/rust2rpm.toml b/SOURCES/rust2rpm.toml new file mode 100644 index 0000000..1299a49 --- /dev/null +++ b/SOURCES/rust2rpm.toml @@ -0,0 +1,35 @@ +[requires] +build = [ + "pkgconfig(libdeflate)" +] +lib = [ + "pkgconfig(libdeflate)" +] + +[package] +cargo-toml-patch-comments = [ + """\ + 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.\ + """, +] + +[scripts.prep] +pre = [ + ''' +# 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. +''' +] diff --git a/SPECS/rust-libdeflate-sys.spec b/SPECS/rust-libdeflate-sys.spec new file mode 100644 index 0000000..6353e95 --- /dev/null +++ b/SPECS/rust-libdeflate-sys.spec @@ -0,0 +1,167 @@ +## START: Set by rpmautospec +## (rpmautospec version 0.7.2) +## RPMAUTOSPEC: autorelease, autochangelog +%define autorelease(e:s:pb:n) %{?-p:0.}%{lua: + release_number = 1; + base_release_number = tonumber(rpm.expand("%{?-b*}%{!?-b:1}")); + print(release_number + base_release_number - 1); +}%{?-e:.%{-e*}}%{?-s:.%{-s*}}%{!?-n:%{?dist}} +## END: Set by rpmautospec + +# Generated by rust2rpm 26 +%bcond_without check +%global debug_package %{nil} + +%global crate libdeflate-sys + +Name: rust-libdeflate-sys +Version: 1.22.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 +* Fri Dec 20 2024 MSVSphere Packaging Team - 1.22.0-1 +- Rebuilt for MSVSphere 10 + +## START: Generated by rpmautospec +* Mon Oct 07 2024 Benjamin A. Beasley - 1.22.0-1 +- Update to 1.22.0 (close RHBZ#2316921) + +* Tue Aug 06 2024 Benjamin A. Beasley - 1.21.0-1 +- Update to 1.21.0 (close RHBZ#2303087) + +* Fri Jul 19 2024 Fedora Release Engineering - 1.20.0-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_41_Mass_Rebuild + +* Thu Apr 04 2024 Benjamin A. Beasley - 1.20.0-1 +- Update to 1.20.0 (close RHBZ#2273309) +- Automate part of the patching for using system libdeflate + +* Sun Mar 10 2024 Benjamin A. Beasley - 1.19.3-3 +- Use rust2rpm 26 features to reduce the amount of manual packaging work + +* Wed Feb 28 2024 Benjamin A. Beasley - 1.19.3-1 +- Update to 1.19.3 (close RHBZ#2266566) + +* Thu Feb 22 2024 Benjamin A. Beasley - 1.19.2-1 +- Update to 1.19.2 (close RHBZ#2265526) + +* Fri Jan 26 2024 Fedora Release Engineering - 1.19.0-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild + +* Fri Jan 05 2024 Benjamin A. Beasley - 1.19.0-1 +- Update to 1.19.0 + +* Wed Jun 23 2021 Rémi Lauzier - 0.7.3-1 +- Update to 0.7.3. +- Fixes RHBZ#1975135 + +* Wed Jun 23 2021 Rémi Lauzier - 0.7.2-1 +- Update to 0.7.2. +- Fixes RHBZ#1975135 + +* Mon May 31 2021 Rémi Lauzier - 0.7.1-1 +- Initial package + +## END: Generated by rpmautospec