commit 34648a99e1c81c5821aed33cd6bb84cff43c99b8 Author: MSVSphere Packaging Team Date: Fri Dec 20 16:45:41 2024 +0300 import rust-pyo3-ffi-0.23.3-1.el10 diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..00658bf --- /dev/null +++ b/.gitignore @@ -0,0 +1 @@ +SOURCES/pyo3-ffi-0.23.3.crate diff --git a/.rust-pyo3-ffi.metadata b/.rust-pyo3-ffi.metadata new file mode 100644 index 0000000..72d56f1 --- /dev/null +++ b/.rust-pyo3-ffi.metadata @@ -0,0 +1 @@ +acb8171c947fedbd1a907d87ca7feb62fa8907ef SOURCES/pyo3-ffi-0.23.3.crate diff --git a/SOURCES/Allow-unsupported-Python-versions-in-RPM-builds.patch b/SOURCES/Allow-unsupported-Python-versions-in-RPM-builds.patch new file mode 100644 index 0000000..739b254 --- /dev/null +++ b/SOURCES/Allow-unsupported-Python-versions-in-RPM-builds.patch @@ -0,0 +1,33 @@ +From af6273b4fbc1c9439a9b1e69761838479ba4bd71 Mon Sep 17 00:00:00 2001 +From: Karolina Surma +Date: Thu, 18 Apr 2024 09:48:04 +0200 +Subject: [PATCH] Allow unsupported Python versions in RPM builds + +Downstream-only patch: always allow unsupported versions of Python. +In Fedora, we constantly attempt to integrate alpha and beta releases of Python +and rebuild all dependent packages in Copr. We need to be able to build the +packages that use pyo3-ffi without patching each and every one of them, +hence we explicitly allow to skip version check when building RPMs. +--- + build.rs | 5 +++++ + 1 file changed, 5 insertions(+) + +diff --git a/build.rs b/build.rs +index 286767d..ef666d7 100644 +--- a/build.rs ++++ b/build.rs +@@ -36,6 +36,11 @@ fn ensure_python_version(interpreter_config: &InterpreterConfig) -> Result<()> { + return Ok(()); + } + ++ // Skip version check when building RPMs - we want to build them with unsupported Python versions too ++ if std::env::var("RPM_BUILD_ROOT").as_deref().is_ok() { ++ return Ok(()); ++ } ++ + match interpreter_config.implementation { + PythonImplementation::CPython => { + let versions = SUPPORTED_VERSIONS_CPYTHON; +-- +2.44.0 + diff --git a/SOURCES/rust2rpm.toml b/SOURCES/rust2rpm.toml new file mode 100644 index 0000000..dc8d333 --- /dev/null +++ b/SOURCES/rust2rpm.toml @@ -0,0 +1,19 @@ +[[package.extra-patches]] +number = 2 +file = "Allow-unsupported-Python-versions-in-RPM-builds.patch" +comments = ["""\ +Downstream-only patch: always allow unsupported versions of Python. +We constantly attempt to integrate alpha and beta releases of Python +and need to rebuild all dependent packages in Copr, also those that +use pyo3-ffi without patching each and every one of them, hence we +explicitly allow to skip version check when building RPMs.""", +] + +[features] +# drop MSVC- and MinGW-only features +hide = ["generate-import-lib"] + +[requires] +build = ["python3-devel >= 3.7"] +lib = ["python3-devel >= 3.7"] + diff --git a/SPECS/rust-pyo3-ffi.spec b/SPECS/rust-pyo3-ffi.spec new file mode 100644 index 0000000..4dcedbd --- /dev/null +++ b/SPECS/rust-pyo3-ffi.spec @@ -0,0 +1,262 @@ +## START: Set by rpmautospec +## (rpmautospec version 0.7.3) +## 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 27 +%bcond check 1 +%global debug_package %{nil} + +%global crate pyo3-ffi + +Name: rust-pyo3-ffi +Version: 0.23.3 +Release: %autorelease +Summary: Python-API bindings for the PyO3 ecosystem + +License: MIT OR Apache-2.0 +URL: https://crates.io/crates/pyo3-ffi +Source: %{crates_source} +# * Downstream-only patch: always allow unsupported versions of Python. +# We constantly attempt to integrate alpha and beta releases of Python +# and need to rebuild all dependent packages in Copr, also those that +# use pyo3-ffi without patching each and every one of them, hence we +# explicitly allow to skip version check when building RPMs. +Patch2: Allow-unsupported-Python-versions-in-RPM-builds.patch + +BuildRequires: cargo-rpm-macros >= 24 +BuildRequires: python3-devel >= 3.7 + +%global _description %{expand: +Python-API bindings for the PyO3 ecosystem.} + +%description %{_description} + +%package devel +Summary: %{summary} +BuildArch: noarch +Requires: python3-devel >= 3.7 + +%description devel %{_description} + +This package contains library source intended for building other packages which +use the "%{crate}" crate. + +%files devel +%license %{crate_instdir}/LICENSE-APACHE +%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}+abi3-devel +Summary: %{summary} +BuildArch: noarch + +%description -n %{name}+abi3-devel %{_description} + +This package contains library source intended for building other packages which +use the "abi3" feature of the "%{crate}" crate. + +%files -n %{name}+abi3-devel +%ghost %{crate_instdir}/Cargo.toml + +%package -n %{name}+abi3-py310-devel +Summary: %{summary} +BuildArch: noarch + +%description -n %{name}+abi3-py310-devel %{_description} + +This package contains library source intended for building other packages which +use the "abi3-py310" feature of the "%{crate}" crate. + +%files -n %{name}+abi3-py310-devel +%ghost %{crate_instdir}/Cargo.toml + +%package -n %{name}+abi3-py311-devel +Summary: %{summary} +BuildArch: noarch + +%description -n %{name}+abi3-py311-devel %{_description} + +This package contains library source intended for building other packages which +use the "abi3-py311" feature of the "%{crate}" crate. + +%files -n %{name}+abi3-py311-devel +%ghost %{crate_instdir}/Cargo.toml + +%package -n %{name}+abi3-py312-devel +Summary: %{summary} +BuildArch: noarch + +%description -n %{name}+abi3-py312-devel %{_description} + +This package contains library source intended for building other packages which +use the "abi3-py312" feature of the "%{crate}" crate. + +%files -n %{name}+abi3-py312-devel +%ghost %{crate_instdir}/Cargo.toml + +%package -n %{name}+abi3-py37-devel +Summary: %{summary} +BuildArch: noarch + +%description -n %{name}+abi3-py37-devel %{_description} + +This package contains library source intended for building other packages which +use the "abi3-py37" feature of the "%{crate}" crate. + +%files -n %{name}+abi3-py37-devel +%ghost %{crate_instdir}/Cargo.toml + +%package -n %{name}+abi3-py38-devel +Summary: %{summary} +BuildArch: noarch + +%description -n %{name}+abi3-py38-devel %{_description} + +This package contains library source intended for building other packages which +use the "abi3-py38" feature of the "%{crate}" crate. + +%files -n %{name}+abi3-py38-devel +%ghost %{crate_instdir}/Cargo.toml + +%package -n %{name}+abi3-py39-devel +Summary: %{summary} +BuildArch: noarch + +%description -n %{name}+abi3-py39-devel %{_description} + +This package contains library source intended for building other packages which +use the "abi3-py39" feature of the "%{crate}" crate. + +%files -n %{name}+abi3-py39-devel +%ghost %{crate_instdir}/Cargo.toml + +%package -n %{name}+extension-module-devel +Summary: %{summary} +BuildArch: noarch + +%description -n %{name}+extension-module-devel %{_description} + +This package contains library source intended for building other packages which +use the "extension-module" feature of the "%{crate}" crate. + +%files -n %{name}+extension-module-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 +%cargo_test +%endif + +%changelog +* Fri Dec 20 2024 MSVSphere Packaging Team - 0.23.3-1 +- Rebuilt for MSVSphere 10 + +## START: Generated by rpmautospec +* Sun Dec 08 2024 Fabio Valentini - 0.23.3-1 +- Update to version 0.23.3; Fixes RHBZ#2326582 + +* Sat Nov 09 2024 Fabio Valentini - 0.22.6-1 +- Update to version 0.22.6; Fixes RHBZ#2318986 + +* Tue Oct 15 2024 Fabio Valentini - 0.22.4-1 +- Update to version 0.22.4; Fixes RHBZ#2318285 + +* Wed Sep 18 2024 Fabio Valentini - 0.22.3-1 +- Update to version 0.22.3; Fixes RHBZ#2312481 + +* Tue Jul 23 2024 Fabio Valentini - 0.22.2-1 +- Update to version 0.22.2; Fixes RHBZ#2296164 + +* Sat Jul 20 2024 Fedora Release Engineering - 0.22.0-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_41_Mass_Rebuild + +* Tue Jun 25 2024 Fabio Valentini - 0.22.0-1 +- Update to version 0.22.0; Fixes RHBZ#2293992 + +* Wed Apr 24 2024 Fabio Valentini - 0.21.2-1 +- Update to version 0.21.2; Fixes RHBZ#2275248 + +* Thu Apr 18 2024 Karolina Surma - 0.21.1-2 +- Allow unsupported Python versions in RPM builds + +* Fri Apr 12 2024 Fabio Valentini - 0.21.1-1 +- Update to version 0.21.1; Fixes RHBZ#2265634 + +* Fri Jan 26 2024 Fedora Release Engineering - 0.20.2-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild + +* Sun Jan 07 2024 Fabio Valentini - 0.20.2-1 +- Update to version 0.20.2; Fixes RHBZ#2256870 + +* Sun Dec 31 2023 Fabio Valentini - 0.20.1-1 +- Update to version 0.20.1; Fixes RHBZ#2256287 + +* Mon Nov 13 2023 Fabio Valentini - 0.20.0-1 +- Update to version 0.20.0; Fixes RHBZ#2243416 + +* Tue Aug 01 2023 Fabio Valentini - 0.19.2-1 +- Update to version 0.19.2; Fixes RHBZ#2228010 + +* Tue Jul 25 2023 Tomáš Hrnčiar - 0.19.1-3 +- Backport patch to add PyType_GetDict for Python 3.12 + +* Fri Jul 21 2023 Fedora Release Engineering - 0.19.1-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_39_Mass_Rebuild + +* Mon Jul 10 2023 Fabio Valentini - 0.19.1-1 +- Update to version 0.19.1; Fixes RHBZ#2211446 + +* Sat May 06 2023 Fabio Valentini - 0.18.3-1 +- Update to version 0.18.3; Fixes RHBZ#2186633 + +* Tue Mar 28 2023 Fabio Valentini - 0.18.2-2 +- Backport upstreamed patch make PyASCIIObject available on big-endian + arches + +* Sun Mar 26 2023 Fabio Valentini - 0.18.2-1 +- Update to version 0.18.2; Fixes RHBZ#2181652 + +* Sat Mar 04 2023 Fabio Valentini - 0.18.1-1 +- Update to version 0.18.1; Fixes RHBZ#2165270 + +* Sat Jan 28 2023 Fabio Valentini - 0.17.3-1 +- Update to version 0.17.3 + +* Sat Jan 21 2023 Fedora Release Engineering - 0.16.6-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_38_Mass_Rebuild + +* Wed Jan 18 2023 Fabio Valentini - 0.16.6-1 +- Initial import (#2161765) +## END: Generated by rpmautospec