commit 2367fe1ca2134cd45897fcf40b9e59dd377b6206 Author: tigro Date: Sun Jan 5 22:20:58 2025 +0300 import rust-libcramjam-0.6.0-2.el10 diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..e6a00b0 --- /dev/null +++ b/.gitignore @@ -0,0 +1 @@ +SOURCES/libcramjam-0.6.0.crate diff --git a/.rust-libcramjam.metadata b/.rust-libcramjam.metadata new file mode 100644 index 0000000..e5ed8ca --- /dev/null +++ b/.rust-libcramjam.metadata @@ -0,0 +1 @@ +7037ff20a93a5fc510152538d6cb20fd5cf79257 SOURCES/libcramjam-0.6.0.crate diff --git a/SOURCES/libcramjam-fix-metadata.diff b/SOURCES/libcramjam-fix-metadata.diff new file mode 100644 index 0000000..15f48fe --- /dev/null +++ b/SOURCES/libcramjam-fix-metadata.diff @@ -0,0 +1,119 @@ +--- libcramjam-0.6.0/Cargo.toml 1970-01-01T00:00:01+00:00 ++++ libcramjam-0.6.0/Cargo.toml 2024-12-27T04:02:07.101811+00:00 +@@ -42,6 +42,7 @@ + [lib] + name = "libcramjam" + path = "src/lib.rs" ++crate-type = ["lib", "cdylib"] + + [dependencies.blosc2-rs] + version = "0.3.1+2.15.1" +@@ -70,7 +71,7 @@ + optional = true + + [dependencies.libdeflate-sys] +-version = "<1.20.0" ++version = "^1" + optional = true + + [dependencies.libdeflater] +@@ -94,17 +95,13 @@ + optional = true + + [build-dependencies.cbindgen] +-version = "^0.24" ++version = "^0.27" + + [features] +-blosc2 = ["blosc2-static"] ++blosc2 = ["blosc2-shared"] + blosc2-shared = [ + "dep:blosc2-rs", + "blosc2-rs/shared", +-] +-blosc2-static = [ +- "dep:blosc2-rs", +- "blosc2-rs/static", + ] + brotli = ["dep:brotli"] + bzip2 = ["dep:bzip2"] +@@ -124,47 +121,30 @@ + "izlib", + "zlib", + ] +-deflate = ["deflate-static"] ++deflate = ["deflate-shared"] + deflate-shared = [ + "dep:libdeflater", + "dep:libdeflate-sys", + "dep:flate2", + "libdeflate-sys/dynamic", + ] +-deflate-static = [ +- "dep:libdeflater", +- "dep:libdeflate-sys", +- "dep:flate2", +-] +-gzip = ["gzip-static"] ++gzip = ["gzip-shared"] + gzip-shared = [ + "dep:libdeflater", + "dep:libdeflate-sys", + "dep:flate2", + "libdeflate-sys/dynamic", + ] +-gzip-static = [ +- "dep:libdeflater", +- "dep:libdeflate-sys", +- "dep:flate2", +-] +-ideflate = ["isal-static"] ++ideflate = ["isal-shared"] + ideflate-shared = ["isal-shared"] +-ideflate-static = ["isal-static"] +-igzip = ["isal-static"] ++igzip = ["isal-shared"] + igzip-shared = ["isal-shared"] +-igzip-static = ["isal-static"] + isal-shared = [ + "dep:isal-rs", + "isal-rs/shared", + ] +-isal-static = [ +- "dep:isal-rs", +- "isal-rs/static", +-] +-izlib = ["isal-static"] ++izlib = ["isal-shared"] + izlib-shared = ["isal-shared"] +-izlib-static = ["isal-static"] + lz4 = ["dep:lz4"] + snappy = ["dep:snap"] + use-system-blosc2 = [ +@@ -175,24 +155,14 @@ + "dep:isal-rs", + "isal-rs/use-system-isal", + ] +-wasm32-compat = ["blosc2-rs/deactivate-zlib-optim"] +-xz = ["xz-static"] ++xz = ["xz-shared"] + xz-shared = ["dep:xz2"] +-xz-static = [ +- "dep:xz2", +- "xz2/static", +-] +-zlib = ["zlib-static"] ++zlib = ["zlib-shared"] + zlib-shared = [ + "dep:libdeflater", + "dep:libdeflate-sys", + "dep:flate2", + "libdeflate-sys/dynamic", +-] +-zlib-static = [ +- "dep:libdeflater", +- "dep:libdeflate-sys", +- "dep:flate2", + ] + zstd = ["dep:zstd"] + diff --git a/SPECS/rust-libcramjam.spec b/SPECS/rust-libcramjam.spec new file mode 100644 index 0000000..d888c65 --- /dev/null +++ b/SPECS/rust-libcramjam.spec @@ -0,0 +1,506 @@ +## START: Set by rpmautospec +## (rpmautospec version 0.7.3) +## RPMAUTOSPEC: autorelease, autochangelog +%define autorelease(e:s:pb:n) %{?-p:0.}%{lua: + release_number = 2; + 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 27 +%bcond check 1 + +%global crate libcramjam + +Name: rust-libcramjam +# Even though this is just MAJOR.MINOR from the SemVer version, we repeat it +# explicitly to help prevent undetected/unannounced SONAME version bumps in the +# libcramjam/libcramjam-devel subpackages. +%global soversion 0.6 +Version: 0.6.0 +Release: %autorelease +Summary: Compression library combining a plethora of algorithms + +License: MIT +URL: https://crates.io/crates/libcramjam +Source: %{crates_source} +# Manually created patch for downstream crate metadata changes +# * Add crate-type = ["lib", "cdylib"] to the [lib] table to get a better +# template from rust2rpm +# * Do not upper-bound the version of libdeflate-sys (which is only due to CI +# limitations) +# * Patch out the wasm-compat feature, which requires an unavailable blosc2 +# crate feature +# * Patch out all -static features +# * Update to cbindgen 0.27: https://github.com/cramjam/libcramjam/pull/20 +Patch: libcramjam-fix-metadata.diff + +# https://fedoraproject.org/wiki/Changes/EncourageI686LeafRemoval +ExcludeArch: %{ix86} + +BuildRequires: cargo-rpm-macros >= 24 +BuildRequires: cargo-c + +%global _description %{expand: +Compression library combining a plethora of algorithms in a similar as +possible API.} + +%description %{_description} + +%if %{undefined fc40} && %{undefined fc41} +%package -n %{crate} +Summary: %{summary} +# 0BSD OR MIT OR Apache-2.0 +# Apache-2.0 +# BSD-3-Clause +# BSD-3-Clause AND MIT +# MIT +# MIT OR Apache-2.0 +# MIT OR Zlib OR Apache-2.0 +License: %{shrink: + (0BSD OR MIT OR Apache-2.0) AND + Apache-2.0 AND + BSD-3-Clause AND + MIT AND + (MIT OR Apache-2.0) AND + (MIT OR Zlib OR Apache-2.0) + } +# LICENSE.dependencies contains a full license breakdown + +%description -n %{crate} %{_description} + +This package contains libraries for using the "%{crate}" crate via a C API. + +%files -n %{crate} +%license LICENSE +%license LICENSE.dependencies +%doc README.md +%{_libdir}/%{crate}.so.%{soversion}{,.*} + +%package -n %{crate}-devel +Summary: %{summary} + +Requires: %{crate}%{?_isa} = %{version}-%{release} + +%description -n %{crate}-devel %{_description} + +This package contains libraries and header files for developing applications +that use the "%{crate}" crate via a C API. + +%files -n %{crate}-devel +%{_includedir}/cramjam/cramjam.h +%{_libdir}/%{crate}.so +%{_libdir}/pkgconfig/%{crate}.pc +%else +%global debug_package %{nil} +%endif + +%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}+blosc2-devel +Summary: %{summary} +BuildArch: noarch + +%description -n %{name}+blosc2-devel %{_description} + +This package contains library source intended for building other packages which +use the "blosc2" feature of the "%{crate}" crate. + +%files -n %{name}+blosc2-devel +%ghost %{crate_instdir}/Cargo.toml + +%package -n %{name}+blosc2-shared-devel +Summary: %{summary} +BuildArch: noarch + +%description -n %{name}+blosc2-shared-devel %{_description} + +This package contains library source intended for building other packages which +use the "blosc2-shared" feature of the "%{crate}" crate. + +%files -n %{name}+blosc2-shared-devel +%ghost %{crate_instdir}/Cargo.toml + +%package -n %{name}+brotli-devel +Summary: %{summary} +BuildArch: noarch + +%description -n %{name}+brotli-devel %{_description} + +This package contains library source intended for building other packages which +use the "brotli" feature of the "%{crate}" crate. + +%files -n %{name}+brotli-devel +%ghost %{crate_instdir}/Cargo.toml + +%package -n %{name}+bzip2-devel +Summary: %{summary} +BuildArch: noarch + +%description -n %{name}+bzip2-devel %{_description} + +This package contains library source intended for building other packages which +use the "bzip2" feature of the "%{crate}" crate. + +%files -n %{name}+bzip2-devel +%ghost %{crate_instdir}/Cargo.toml + +%package -n %{name}+capi-devel +Summary: %{summary} +BuildArch: noarch + +%description -n %{name}+capi-devel %{_description} + +This package contains library source intended for building other packages which +use the "capi" feature of the "%{crate}" crate. + +%files -n %{name}+capi-devel +%ghost %{crate_instdir}/Cargo.toml + +%package -n %{name}+deflate-devel +Summary: %{summary} +BuildArch: noarch + +%description -n %{name}+deflate-devel %{_description} + +This package contains library source intended for building other packages which +use the "deflate" feature of the "%{crate}" crate. + +%files -n %{name}+deflate-devel +%ghost %{crate_instdir}/Cargo.toml + +%package -n %{name}+deflate-shared-devel +Summary: %{summary} +BuildArch: noarch + +%description -n %{name}+deflate-shared-devel %{_description} + +This package contains library source intended for building other packages which +use the "deflate-shared" feature of the "%{crate}" crate. + +%files -n %{name}+deflate-shared-devel +%ghost %{crate_instdir}/Cargo.toml + +%package -n %{name}+gzip-devel +Summary: %{summary} +BuildArch: noarch + +%description -n %{name}+gzip-devel %{_description} + +This package contains library source intended for building other packages which +use the "gzip" feature of the "%{crate}" crate. + +%files -n %{name}+gzip-devel +%ghost %{crate_instdir}/Cargo.toml + +%package -n %{name}+gzip-shared-devel +Summary: %{summary} +BuildArch: noarch + +%description -n %{name}+gzip-shared-devel %{_description} + +This package contains library source intended for building other packages which +use the "gzip-shared" feature of the "%{crate}" crate. + +%files -n %{name}+gzip-shared-devel +%ghost %{crate_instdir}/Cargo.toml + +%package -n %{name}+ideflate-devel +Summary: %{summary} +BuildArch: noarch + +%description -n %{name}+ideflate-devel %{_description} + +This package contains library source intended for building other packages which +use the "ideflate" feature of the "%{crate}" crate. + +%files -n %{name}+ideflate-devel +%ghost %{crate_instdir}/Cargo.toml + +%package -n %{name}+ideflate-shared-devel +Summary: %{summary} +BuildArch: noarch + +%description -n %{name}+ideflate-shared-devel %{_description} + +This package contains library source intended for building other packages which +use the "ideflate-shared" feature of the "%{crate}" crate. + +%files -n %{name}+ideflate-shared-devel +%ghost %{crate_instdir}/Cargo.toml + +%package -n %{name}+igzip-devel +Summary: %{summary} +BuildArch: noarch + +%description -n %{name}+igzip-devel %{_description} + +This package contains library source intended for building other packages which +use the "igzip" feature of the "%{crate}" crate. + +%files -n %{name}+igzip-devel +%ghost %{crate_instdir}/Cargo.toml + +%package -n %{name}+igzip-shared-devel +Summary: %{summary} +BuildArch: noarch + +%description -n %{name}+igzip-shared-devel %{_description} + +This package contains library source intended for building other packages which +use the "igzip-shared" feature of the "%{crate}" crate. + +%files -n %{name}+igzip-shared-devel +%ghost %{crate_instdir}/Cargo.toml + +%package -n %{name}+isal-shared-devel +Summary: %{summary} +BuildArch: noarch + +%description -n %{name}+isal-shared-devel %{_description} + +This package contains library source intended for building other packages which +use the "isal-shared" feature of the "%{crate}" crate. + +%files -n %{name}+isal-shared-devel +%ghost %{crate_instdir}/Cargo.toml + +%package -n %{name}+izlib-devel +Summary: %{summary} +BuildArch: noarch + +%description -n %{name}+izlib-devel %{_description} + +This package contains library source intended for building other packages which +use the "izlib" feature of the "%{crate}" crate. + +%files -n %{name}+izlib-devel +%ghost %{crate_instdir}/Cargo.toml + +%package -n %{name}+izlib-shared-devel +Summary: %{summary} +BuildArch: noarch + +%description -n %{name}+izlib-shared-devel %{_description} + +This package contains library source intended for building other packages which +use the "izlib-shared" feature of the "%{crate}" crate. + +%files -n %{name}+izlib-shared-devel +%ghost %{crate_instdir}/Cargo.toml + +%package -n %{name}+lz4-devel +Summary: %{summary} +BuildArch: noarch + +%description -n %{name}+lz4-devel %{_description} + +This package contains library source intended for building other packages which +use the "lz4" feature of the "%{crate}" crate. + +%files -n %{name}+lz4-devel +%ghost %{crate_instdir}/Cargo.toml + +%package -n %{name}+snappy-devel +Summary: %{summary} +BuildArch: noarch + +%description -n %{name}+snappy-devel %{_description} + +This package contains library source intended for building other packages which +use the "snappy" feature of the "%{crate}" crate. + +%files -n %{name}+snappy-devel +%ghost %{crate_instdir}/Cargo.toml + +%package -n %{name}+use-system-blosc2-devel +Summary: %{summary} +BuildArch: noarch + +%description -n %{name}+use-system-blosc2-devel %{_description} + +This package contains library source intended for building other packages which +use the "use-system-blosc2" feature of the "%{crate}" crate. + +%files -n %{name}+use-system-blosc2-devel +%ghost %{crate_instdir}/Cargo.toml + +%package -n %{name}+use-system-isal-devel +Summary: %{summary} +BuildArch: noarch + +%description -n %{name}+use-system-isal-devel %{_description} + +This package contains library source intended for building other packages which +use the "use-system-isal" feature of the "%{crate}" crate. + +%files -n %{name}+use-system-isal-devel +%ghost %{crate_instdir}/Cargo.toml + +%package -n %{name}+xz-devel +Summary: %{summary} +BuildArch: noarch + +%description -n %{name}+xz-devel %{_description} + +This package contains library source intended for building other packages which +use the "xz" feature of the "%{crate}" crate. + +%files -n %{name}+xz-devel +%ghost %{crate_instdir}/Cargo.toml + +%package -n %{name}+xz-shared-devel +Summary: %{summary} +BuildArch: noarch + +%description -n %{name}+xz-shared-devel %{_description} + +This package contains library source intended for building other packages which +use the "xz-shared" feature of the "%{crate}" crate. + +%files -n %{name}+xz-shared-devel +%ghost %{crate_instdir}/Cargo.toml + +%package -n %{name}+zlib-devel +Summary: %{summary} +BuildArch: noarch + +%description -n %{name}+zlib-devel %{_description} + +This package contains library source intended for building other packages which +use the "zlib" feature of the "%{crate}" crate. + +%files -n %{name}+zlib-devel +%ghost %{crate_instdir}/Cargo.toml + +%package -n %{name}+zlib-shared-devel +Summary: %{summary} +BuildArch: noarch + +%description -n %{name}+zlib-shared-devel %{_description} + +This package contains library source intended for building other packages which +use the "zlib-shared" feature of the "%{crate}" crate. + +%files -n %{name}+zlib-shared-devel +%ghost %{crate_instdir}/Cargo.toml + +%package -n %{name}+zstd-devel +Summary: %{summary} +BuildArch: noarch + +%description -n %{name}+zstd-devel %{_description} + +This package contains library source intended for building other packages which +use the "zstd" feature of the "%{crate}" crate. + +%files -n %{name}+zstd-devel +%ghost %{crate_instdir}/Cargo.toml + +%prep +%autosetup -n %{crate}-%{version} -p1 +%cargo_prep + +%generate_buildrequires +%cargo_generate_buildrequires -a + +%build +%cargo_build -a +%{cargo_license_summary -a} +%{cargo_license -a} > LICENSE.dependencies +%if %{undefined fc40} && %{undefined fc41} +%cargo_cbuild -a +%endif + +%install +%cargo_install -a +%if %{undefined fc40} && %{undefined fc41} +%cargo_cinstall -a +# https://docs.fedoraproject.org/en-US/packaging-guidelines/#packaging-static-libraries +rm '%{buildroot}%{_libdir}/%{crate}.a' +%endif + +%if %{with check} +%check +%cargo_test -a +%endif + +%changelog +* Sun Jan 05 2025 Arkady L. Shane - 0.6.0-2 +- Rebuilt for MSVSphere 10 + +## START: Generated by rpmautospec +* Fri Dec 27 2024 Benjamin A. Beasley - 0.6.0-2 +- Update to cbindgen 0.27 + +* Mon Dec 09 2024 Benjamin A. Beasley - 0.6.0-1 +- Update to 0.6.0 (close RHBZ#2277635) + +* Tue Nov 26 2024 Benjamin A. Beasley - 0.3.0-11 +- Remove Fedora-39 conditionals, since it has reached end of life + +* Wed Oct 02 2024 Benjamin A. Beasley - 0.3.0-10 +- Update brotli to 7.x + +* Wed Oct 02 2024 Benjamin A. Beasley - 0.3.0-9 +- Bump release number to preserve upgrade path from F41 + +* Tue Oct 01 2024 Benjamin A. Beasley - 0.3.0-8 +- F41+: Drop i686 support (leaf package on that architecture) + +* Mon Sep 30 2024 Benjamin A. Beasley - 0.3.0-7 +- Update brotli from 3.x to 6.x + +* Wed Aug 07 2024 Benjamin A. Beasley - 0.3.0-6 +- Rebuilt with latest crate dependencies + +* Fri Jul 19 2024 Fedora Release Engineering - 0.3.0-5 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_41_Mass_Rebuild + +* Sat Jul 06 2024 Benjamin A. Beasley - 0.3.0-4 +- Do not test a hard-coded expected compressed data size + +* Thu May 23 2024 Fabio Valentini - 0.3.0-3 +- Rebuild with Rust 1.78 to fix incomplete debuginfo and backtraces + +* Tue May 21 2024 Benjamin A. Beasley - 0.3.0-2 +- Drop conditionals for Fedora 38 since it is EOL + +* Sat Mar 16 2024 Benjamin A. Beasley - 0.3.0-1 +- Update to 0.3.0 (close RHBZ#2268667) + +* Sun Mar 10 2024 Benjamin A. Beasley - 0.2.0-2 +- Use rust2rpm 26 features to reduce the amount of manual packaging work +- Fix tests that assume C char is signed + +* Sat Feb 03 2024 Benjamin A. Beasley - 0.2.0-1 +- Update to 0.2.0 (close RHBZ#2262481) + +* Wed Jan 31 2024 Benjamin A. Beasley - 0.1.5-1 +- Initial package (close RHBZ#2257076) +## END: Generated by rpmautospec