Architecture specific change in rpms/rust-io-uring.git
by githook-noreply@fedoraproject.org
The package rpms/rust-io-uring.git has added or updated architecture specific content in its
spec file (ExclusiveArch/ExcludeArch or %ifarch/%ifnarch) in commit(s):
https://src.fedoraproject.org/cgit/rpms/rust-io-uring.git/commit/?id=4e59....
Change:
+%ifnarch %{ix86}
Thanks.
Full change:
============
commit 4e59b2f534e704d943e1c6195dac719d4c97d072
Author: Fabio Valentini <decathorpe(a)gmail.com>
Date: Fri Oct 28 18:18:23 2022 +0200
Initial import (#2138378)
diff --git a/.gitignore b/.gitignore
new file mode 100644
index 0000000..6c776fb
--- /dev/null
+++ b/.gitignore
@@ -0,0 +1,4 @@
+/results_*/
+/*.src.rpm
+
+/io-uring-0.5.8.crate
diff --git a/0001-unconditionally-regenerate-bindings-with-bindgen.patch b/0001-unconditionally-regenerate-bindings-with-bindgen.patch
new file mode 100644
index 0000000..a615865
--- /dev/null
+++ b/0001-unconditionally-regenerate-bindings-with-bindgen.patch
@@ -0,0 +1,76 @@
+From 7a5eccfe4dac646a44d5035e1129f1072bce6299 Mon Sep 17 00:00:00 2001
+From: Fabio Valentini <decathorpe(a)gmail.com>
+Date: Fri, 28 Oct 2022 15:46:51 +0200
+Subject: [PATCH] unconditionally regenerate bindings with bindgen
+
+---
+ build.rs | 8 --------
+ src/sys/mod.rs | 21 ---------------------
+ 2 files changed, 29 deletions(-)
+
+diff --git a/build.rs b/build.rs
+index 111d505..6e85930 100644
+--- a/build.rs
++++ b/build.rs
+@@ -1,7 +1,3 @@
+-#[cfg(not(feature = "bindgen"))]
+-fn main() {}
+-
+-#[cfg(feature = "bindgen")]
+ fn main() {
+ use std::env;
+ use std::path::PathBuf;
+@@ -15,12 +11,8 @@ fn main() {
+ #include <linux/io_uring.h>
+ "#;
+
+- #[cfg(not(feature = "overwrite"))]
+ let outdir = PathBuf::from(env::var("OUT_DIR").unwrap());
+
+- #[cfg(feature = "overwrite")]
+- let outdir = PathBuf::from(env::var("CARGO_MANIFEST_DIR").unwrap()).join("src/sys");
+-
+ bindgen::Builder::default()
+ .header_contents("include-file.h", INCLUDE)
+ .ctypes_prefix("libc")
+diff --git a/src/sys/mod.rs b/src/sys/mod.rs
+index cae2ae5..8e90cf3 100644
+--- a/src/sys/mod.rs
++++ b/src/sys/mod.rs
+@@ -9,33 +9,12 @@
+
+ use libc::*;
+
+-#[cfg(all(feature = "bindgen", not(feature = "overwrite")))]
+ include!(concat!(env!("OUT_DIR"), "/sys.rs"));
+
+-#[cfg(any(
+- not(feature = "bindgen"),
+- all(feature = "bindgen", feature = "overwrite")
+-))]
+-include!("sys.rs");
+-
+-#[cfg(feature = "bindgen")]
+ const SYSCALL_REGISTER: c_long = __NR_io_uring_register as _;
+-
+-#[cfg(not(feature = "bindgen"))]
+-const SYSCALL_REGISTER: c_long = libc::SYS_io_uring_register;
+-
+-#[cfg(feature = "bindgen")]
+ const SYSCALL_SETUP: c_long = __NR_io_uring_setup as _;
+-
+-#[cfg(not(feature = "bindgen"))]
+-const SYSCALL_SETUP: c_long = libc::SYS_io_uring_setup;
+-
+-#[cfg(feature = "bindgen")]
+ const SYSCALL_ENTER: c_long = __NR_io_uring_enter as _;
+
+-#[cfg(not(feature = "bindgen"))]
+-const SYSCALL_ENTER: c_long = libc::SYS_io_uring_enter;
+-
+ #[cfg(not(feature = "direct-syscall"))]
+ pub unsafe fn io_uring_register(
+ fd: c_int,
+--
+2.38.1
+
diff --git a/README.md b/README.md
deleted file mode 100644
index c91e1dc..0000000
--- a/README.md
+++ /dev/null
@@ -1,3 +0,0 @@
-# rust-io-uring
-
-The rust-io-uring package
diff --git a/io-uring-fix-metadata.diff b/io-uring-fix-metadata.diff
new file mode 100644
index 0000000..54e7aad
--- /dev/null
+++ b/io-uring-fix-metadata.diff
@@ -0,0 +1,27 @@
+--- io-uring-0.5.8/Cargo.toml 1970-01-01T00:00:01+00:00
++++ io-uring-0.5.8/Cargo.toml 2022-10-28T13:02:51.981383+00:00
+@@ -36,10 +36,6 @@
+ version = "0.2.98"
+ default-features = false
+
+-[dependencies.sc]
+-version = "0.2"
+-optional = true
+-
+ [dev-dependencies.anyhow]
+ version = "1"
+
+@@ -50,11 +46,10 @@
+ version = "0.4"
+
+ [build-dependencies.bindgen]
+-version = "0.60"
+-optional = true
++version = "0.59"
+
+ [features]
+-direct-syscall = ["sc"]
++bindgen = []
+ io_safety = []
+ overwrite = ["bindgen"]
+ unstable = []
diff --git a/rust-io-uring.spec b/rust-io-uring.spec
new file mode 100644
index 0000000..1f372d2
--- /dev/null
+++ b/rust-io-uring.spec
@@ -0,0 +1,128 @@
+# Generated by rust2rpm 23
+%bcond_without check
+%global debug_package %{nil}
+
+%global crate io-uring
+
+Name: rust-io-uring
+Version: 0.5.8
+Release: %autorelease
+Summary: Low-level io_uring userspace interface for Rust
+
+# Upstream license specification: MIT/Apache-2.0
+License: MIT OR Apache-2.0
+URL: https://crates.io/crates/io-uring
+Source: %{crates_source}
+# Manually created patch for downstream crate metadata changes
+# * temporarily downgrade bindgen from 0.60 to 0.59
+# * make bindgen build-dependency non-optional
+# * drop feature for making syscalls directly (not available on all arches)
+Patch: io-uring-fix-metadata.diff
+# * patch build.rs to unconditionally regenerate bindings
+Patch: 0001-unconditionally-regenerate-bindings-with-bindgen.patch
+
+BuildRequires: rust-packaging >= 21
+
+%global _description %{expand:
+Low-level `io_uring` userspace interface 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-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}+bindgen-devel
+Summary: %{summary}
+BuildArch: noarch
+
+%description -n %{name}+bindgen-devel %{_description}
+
+This package contains library source intended for building other packages which
+use the "bindgen" feature of the "%{crate}" crate.
+
+%files -n %{name}+bindgen-devel
+%ghost %{crate_instdir}/Cargo.toml
+
+%package -n %{name}+io_safety-devel
+Summary: %{summary}
+BuildArch: noarch
+
+%description -n %{name}+io_safety-devel %{_description}
+
+This package contains library source intended for building other packages which
+use the "io_safety" feature of the "%{crate}" crate.
+
+%files -n %{name}+io_safety-devel
+%ghost %{crate_instdir}/Cargo.toml
+
+%package -n %{name}+overwrite-devel
+Summary: %{summary}
+BuildArch: noarch
+
+%description -n %{name}+overwrite-devel %{_description}
+
+This package contains library source intended for building other packages which
+use the "overwrite" feature of the "%{crate}" crate.
+
+%files -n %{name}+overwrite-devel
+%ghost %{crate_instdir}/Cargo.toml
+
+%package -n %{name}+unstable-devel
+Summary: %{summary}
+BuildArch: noarch
+
+%description -n %{name}+unstable-devel %{_description}
+
+This package contains library source intended for building other packages which
+use the "unstable" feature of the "%{crate}" crate.
+
+%files -n %{name}+unstable-devel
+%ghost %{crate_instdir}/Cargo.toml
+
+%prep
+%autosetup -n %{crate}-%{version_no_tilde} -p1
+%cargo_prep
+
+%generate_buildrequires
+%cargo_generate_buildrequires
+
+%build
+%cargo_build
+
+%install
+%cargo_install
+
+%if %{with check}
+%check
+%ifnarch %{ix86}
+# * bindgen struct layout / alignment tests are broken on i686
+%cargo_test
+%endif
+%endif
+
+%changelog
+%autochangelog
diff --git a/sources b/sources
new file mode 100644
index 0000000..352a40d
--- /dev/null
+++ b/sources
@@ -0,0 +1 @@
+SHA512 (io-uring-0.5.8.crate) = 6ac38864ad676a5aded80c33394824abac30f5758cfa1d0a6ae00447317833a32624622c72ad4fd940343c2a28d187fca850f90d2b188d63aea857e7107cf75a
1 year, 1 month
Architecture specific change in rpms/rust-io-uring.git
by githook-noreply@fedoraproject.org
The package rpms/rust-io-uring.git has added or updated architecture specific content in its
spec file (ExclusiveArch/ExcludeArch or %ifarch/%ifnarch) in commit(s):
https://src.fedoraproject.org/cgit/rpms/rust-io-uring.git/commit/?id=4e59....
Change:
+%ifnarch %{ix86}
Thanks.
Full change:
============
commit 4e59b2f534e704d943e1c6195dac719d4c97d072
Author: Fabio Valentini <decathorpe(a)gmail.com>
Date: Fri Oct 28 18:18:23 2022 +0200
Initial import (#2138378)
diff --git a/.gitignore b/.gitignore
new file mode 100644
index 0000000..6c776fb
--- /dev/null
+++ b/.gitignore
@@ -0,0 +1,4 @@
+/results_*/
+/*.src.rpm
+
+/io-uring-0.5.8.crate
diff --git a/0001-unconditionally-regenerate-bindings-with-bindgen.patch b/0001-unconditionally-regenerate-bindings-with-bindgen.patch
new file mode 100644
index 0000000..a615865
--- /dev/null
+++ b/0001-unconditionally-regenerate-bindings-with-bindgen.patch
@@ -0,0 +1,76 @@
+From 7a5eccfe4dac646a44d5035e1129f1072bce6299 Mon Sep 17 00:00:00 2001
+From: Fabio Valentini <decathorpe(a)gmail.com>
+Date: Fri, 28 Oct 2022 15:46:51 +0200
+Subject: [PATCH] unconditionally regenerate bindings with bindgen
+
+---
+ build.rs | 8 --------
+ src/sys/mod.rs | 21 ---------------------
+ 2 files changed, 29 deletions(-)
+
+diff --git a/build.rs b/build.rs
+index 111d505..6e85930 100644
+--- a/build.rs
++++ b/build.rs
+@@ -1,7 +1,3 @@
+-#[cfg(not(feature = "bindgen"))]
+-fn main() {}
+-
+-#[cfg(feature = "bindgen")]
+ fn main() {
+ use std::env;
+ use std::path::PathBuf;
+@@ -15,12 +11,8 @@ fn main() {
+ #include <linux/io_uring.h>
+ "#;
+
+- #[cfg(not(feature = "overwrite"))]
+ let outdir = PathBuf::from(env::var("OUT_DIR").unwrap());
+
+- #[cfg(feature = "overwrite")]
+- let outdir = PathBuf::from(env::var("CARGO_MANIFEST_DIR").unwrap()).join("src/sys");
+-
+ bindgen::Builder::default()
+ .header_contents("include-file.h", INCLUDE)
+ .ctypes_prefix("libc")
+diff --git a/src/sys/mod.rs b/src/sys/mod.rs
+index cae2ae5..8e90cf3 100644
+--- a/src/sys/mod.rs
++++ b/src/sys/mod.rs
+@@ -9,33 +9,12 @@
+
+ use libc::*;
+
+-#[cfg(all(feature = "bindgen", not(feature = "overwrite")))]
+ include!(concat!(env!("OUT_DIR"), "/sys.rs"));
+
+-#[cfg(any(
+- not(feature = "bindgen"),
+- all(feature = "bindgen", feature = "overwrite")
+-))]
+-include!("sys.rs");
+-
+-#[cfg(feature = "bindgen")]
+ const SYSCALL_REGISTER: c_long = __NR_io_uring_register as _;
+-
+-#[cfg(not(feature = "bindgen"))]
+-const SYSCALL_REGISTER: c_long = libc::SYS_io_uring_register;
+-
+-#[cfg(feature = "bindgen")]
+ const SYSCALL_SETUP: c_long = __NR_io_uring_setup as _;
+-
+-#[cfg(not(feature = "bindgen"))]
+-const SYSCALL_SETUP: c_long = libc::SYS_io_uring_setup;
+-
+-#[cfg(feature = "bindgen")]
+ const SYSCALL_ENTER: c_long = __NR_io_uring_enter as _;
+
+-#[cfg(not(feature = "bindgen"))]
+-const SYSCALL_ENTER: c_long = libc::SYS_io_uring_enter;
+-
+ #[cfg(not(feature = "direct-syscall"))]
+ pub unsafe fn io_uring_register(
+ fd: c_int,
+--
+2.38.1
+
diff --git a/README.md b/README.md
deleted file mode 100644
index c91e1dc..0000000
--- a/README.md
+++ /dev/null
@@ -1,3 +0,0 @@
-# rust-io-uring
-
-The rust-io-uring package
diff --git a/io-uring-fix-metadata.diff b/io-uring-fix-metadata.diff
new file mode 100644
index 0000000..54e7aad
--- /dev/null
+++ b/io-uring-fix-metadata.diff
@@ -0,0 +1,27 @@
+--- io-uring-0.5.8/Cargo.toml 1970-01-01T00:00:01+00:00
++++ io-uring-0.5.8/Cargo.toml 2022-10-28T13:02:51.981383+00:00
+@@ -36,10 +36,6 @@
+ version = "0.2.98"
+ default-features = false
+
+-[dependencies.sc]
+-version = "0.2"
+-optional = true
+-
+ [dev-dependencies.anyhow]
+ version = "1"
+
+@@ -50,11 +46,10 @@
+ version = "0.4"
+
+ [build-dependencies.bindgen]
+-version = "0.60"
+-optional = true
++version = "0.59"
+
+ [features]
+-direct-syscall = ["sc"]
++bindgen = []
+ io_safety = []
+ overwrite = ["bindgen"]
+ unstable = []
diff --git a/rust-io-uring.spec b/rust-io-uring.spec
new file mode 100644
index 0000000..1f372d2
--- /dev/null
+++ b/rust-io-uring.spec
@@ -0,0 +1,128 @@
+# Generated by rust2rpm 23
+%bcond_without check
+%global debug_package %{nil}
+
+%global crate io-uring
+
+Name: rust-io-uring
+Version: 0.5.8
+Release: %autorelease
+Summary: Low-level io_uring userspace interface for Rust
+
+# Upstream license specification: MIT/Apache-2.0
+License: MIT OR Apache-2.0
+URL: https://crates.io/crates/io-uring
+Source: %{crates_source}
+# Manually created patch for downstream crate metadata changes
+# * temporarily downgrade bindgen from 0.60 to 0.59
+# * make bindgen build-dependency non-optional
+# * drop feature for making syscalls directly (not available on all arches)
+Patch: io-uring-fix-metadata.diff
+# * patch build.rs to unconditionally regenerate bindings
+Patch: 0001-unconditionally-regenerate-bindings-with-bindgen.patch
+
+BuildRequires: rust-packaging >= 21
+
+%global _description %{expand:
+Low-level `io_uring` userspace interface 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-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}+bindgen-devel
+Summary: %{summary}
+BuildArch: noarch
+
+%description -n %{name}+bindgen-devel %{_description}
+
+This package contains library source intended for building other packages which
+use the "bindgen" feature of the "%{crate}" crate.
+
+%files -n %{name}+bindgen-devel
+%ghost %{crate_instdir}/Cargo.toml
+
+%package -n %{name}+io_safety-devel
+Summary: %{summary}
+BuildArch: noarch
+
+%description -n %{name}+io_safety-devel %{_description}
+
+This package contains library source intended for building other packages which
+use the "io_safety" feature of the "%{crate}" crate.
+
+%files -n %{name}+io_safety-devel
+%ghost %{crate_instdir}/Cargo.toml
+
+%package -n %{name}+overwrite-devel
+Summary: %{summary}
+BuildArch: noarch
+
+%description -n %{name}+overwrite-devel %{_description}
+
+This package contains library source intended for building other packages which
+use the "overwrite" feature of the "%{crate}" crate.
+
+%files -n %{name}+overwrite-devel
+%ghost %{crate_instdir}/Cargo.toml
+
+%package -n %{name}+unstable-devel
+Summary: %{summary}
+BuildArch: noarch
+
+%description -n %{name}+unstable-devel %{_description}
+
+This package contains library source intended for building other packages which
+use the "unstable" feature of the "%{crate}" crate.
+
+%files -n %{name}+unstable-devel
+%ghost %{crate_instdir}/Cargo.toml
+
+%prep
+%autosetup -n %{crate}-%{version_no_tilde} -p1
+%cargo_prep
+
+%generate_buildrequires
+%cargo_generate_buildrequires
+
+%build
+%cargo_build
+
+%install
+%cargo_install
+
+%if %{with check}
+%check
+%ifnarch %{ix86}
+# * bindgen struct layout / alignment tests are broken on i686
+%cargo_test
+%endif
+%endif
+
+%changelog
+%autochangelog
diff --git a/sources b/sources
new file mode 100644
index 0000000..352a40d
--- /dev/null
+++ b/sources
@@ -0,0 +1 @@
+SHA512 (io-uring-0.5.8.crate) = 6ac38864ad676a5aded80c33394824abac30f5758cfa1d0a6ae00447317833a32624622c72ad4fd940343c2a28d187fca850f90d2b188d63aea857e7107cf75a
1 year, 1 month
Architecture specific change in rpms/rust-rustix.git
by githook-noreply@fedoraproject.org
The package rpms/rust-rustix.git has added or updated architecture specific content in its
spec file (ExclusiveArch/ExcludeArch or %ifarch/%ifnarch) in commit(s):
https://src.fedoraproject.org/cgit/rpms/rust-rustix.git/commit/?id=88a5c9....
Change:
-ExclusiveArch: %{rust_arches}
Thanks.
Full change:
============
commit 88a5c948c5242495c05e71d4240181b841d472ce
Author: Fabio Valentini <decathorpe(a)gmail.com>
Date: Fri Oct 28 15:04:03 2022 +0200
Update to version 0.35.12; Fixes RHBZ#2050429
diff --git a/.gitignore b/.gitignore
index 864625f..298e86b 100644
--- a/.gitignore
+++ b/.gitignore
@@ -1,3 +1,4 @@
/rustix-0.29.1.crate
/rustix-0.31.3.crate
/rustix-0.33.6.crate
+/rustix-0.35.12.crate
diff --git a/.rust2rpm.conf b/.rust2rpm.conf
deleted file mode 100644
index 9a62e60..0000000
--- a/.rust2rpm.conf
+++ /dev/null
@@ -1,6 +0,0 @@
-[DEFAULT]
-unwanted-features =
- core
- alloc
- compiler_builtins
- rustc-dep-of-std
diff --git a/0001-Unconditionally-compile-C-code-from-source.patch b/0001-Unconditionally-compile-C-code-from-source.patch
index 1ee2512..2905474 100644
--- a/0001-Unconditionally-compile-C-code-from-source.patch
+++ b/0001-Unconditionally-compile-C-code-from-source.patch
@@ -1,14 +1,14 @@
-From 6a1c4bda3bd069e46803497e3185a3a266b56900 Mon Sep 17 00:00:00 2001
+From e12c8f3cedd4c0ed2efc061dea4d69953a96027d Mon Sep 17 00:00:00 2001
From: Fabio Valentini <decathorpe(a)gmail.com>
Date: Wed, 13 Apr 2022 18:54:47 +0200
-Subject: [PATCH 1/2] Unconditionally compile C code from source
+Subject: [PATCH] Unconditionally compile C code from source
---
build.rs | 44 +++++++-------------------------------------
1 file changed, 7 insertions(+), 37 deletions(-)
diff --git a/build.rs b/build.rs
-index a11e1dc..2dfada0 100644
+index 56c6b15..194a659 100644
--- a/build.rs
+++ b/build.rs
@@ -1,4 +1,3 @@
@@ -16,7 +16,7 @@ index a11e1dc..2dfada0 100644
use cc::Build;
use std::env::var;
use std::io::Write;
-@@ -105,42 +104,13 @@ fn link_in_librustix_outline(arch: &str, asm_name: &str) {
+@@ -117,42 +116,13 @@ fn link_in_librustix_outline(arch: &str, asm_name: &str) {
let to = format!("{}/{}/lib{}.a", OUTLINE_PATH, profile, name);
println!("cargo:rerun-if-changed={}", to);
@@ -67,5 +67,5 @@ index a11e1dc..2dfada0 100644
}
--
-2.35.1
+2.38.1
diff --git a/0002-Fix-vDSO-parsing-on-powerpc64.patch b/0002-Fix-vDSO-parsing-on-powerpc64.patch
deleted file mode 100644
index 7d727a9..0000000
--- a/0002-Fix-vDSO-parsing-on-powerpc64.patch
+++ /dev/null
@@ -1,44 +0,0 @@
-From 8c810c5bb124decc30511a09f5e0ea891354e618 Mon Sep 17 00:00:00 2001
-From: Fabio Valentini <decathorpe(a)gmail.com>
-Date: Fri, 15 Apr 2022 16:58:43 +0200
-Subject: [PATCH 2/2] Fix vDSO parsing on powerpc64
-
-Backported from: https://github.com/bytecodealliance/rustix/pull/286
----
- src/imp/linux_raw/elf.rs | 1 +
- src/imp/linux_raw/vdso.rs | 7 ++++++-
- 2 files changed, 7 insertions(+), 1 deletion(-)
-
-diff --git a/src/imp/linux_raw/elf.rs b/src/imp/linux_raw/elf.rs
-index 0a1205b..7b9bb32 100644
---- a/src/imp/linux_raw/elf.rs
-+++ b/src/imp/linux_raw/elf.rs
-@@ -46,6 +46,7 @@ pub(super) const DT_VERSYM: i32 = 0x6fff_fff0;
- pub(super) const DT_VERDEF: i32 = 0x6fff_fffc;
- pub(super) const STB_WEAK: u8 = 2;
- pub(super) const STB_GLOBAL: u8 = 1;
-+pub(super) const STT_NOTYPE: u8 = 0;
- pub(super) const STT_FUNC: u8 = 2;
- pub(super) const STN_UNDEF: u32 = 0;
- pub(super) const VER_FLG_BASE: u16 = 0x1;
-diff --git a/src/imp/linux_raw/vdso.rs b/src/imp/linux_raw/vdso.rs
-index 9a87182..945e0a4 100644
---- a/src/imp/linux_raw/vdso.rs
-+++ b/src/imp/linux_raw/vdso.rs
-@@ -365,7 +365,12 @@ impl Vdso {
- let sym = &*self.symtab.add(chain as usize);
-
- // Check for a defined global or weak function w/ right name.
-- if ELF_ST_TYPE(sym.st_info) != STT_FUNC
-+ //
-+ // The reference parser in Linux's parse_vdso.c requires
-+ // symbols to have type `STT_FUNC`, but on powerpc64, the vDSO
-+ // uses `STT_NOTYPE`, so allow that too.
-+ if (ELF_ST_TYPE(sym.st_info) != STT_FUNC &&
-+ ELF_ST_TYPE(sym.st_info) != STT_NOTYPE)
- || (ELF_ST_BIND(sym.st_info) != STB_GLOBAL
- && ELF_ST_BIND(sym.st_info) != STB_WEAK)
- || sym.st_shndx == SHN_UNDEF
---
-2.35.1
-
diff --git a/rust-rustix.spec b/rust-rustix.spec
index 420d2d2..668bc93 100644
--- a/rust-rustix.spec
+++ b/rust-rustix.spec
@@ -1,28 +1,27 @@
-# Generated by rust2rpm 21
+# Generated by rust2rpm 23
%bcond_without check
%global debug_package %{nil}
%global crate rustix
-Name: rust-%{crate}
-Version: 0.33.6
+Name: rust-rustix
+Version: 0.35.12
Release: %autorelease
Summary: Safe Rust bindings to POSIX/Unix/Linux/Winsock2-like syscalls
-# Upstream license specification: Apache-2.0 WITH LLVM-exception OR Apache-2.0 OR MIT
-License: ASL 2.0 or MIT
+License: Apache-2.0 WITH LLVM-exception OR Apache-2.0 OR MIT
URL: https://crates.io/crates/rustix
Source: %{crates_source}
-# Initial patched metadata
-# * drop windows-specific dependencies
+# Automatically generated patch to strip foreign dependencies
+Patch: rustix-fix-metadata-auto.diff
+# Manually created patch for downstream crate metadata changes
# * drop unused, benchmark-only criterion dev-dependency to speed up builds
-Patch0: rustix-fix-metadata.diff
-# * unconditionally compile C code from source
-Patch1: 0001-Unconditionally-compile-C-code-from-source.patch
-# * backported patch to fix vDSO parsing on ppc64le
-Patch2: 0002-Fix-vDSO-parsing-on-powerpc64.patch
-
-ExclusiveArch: %{rust_arches}
+# * drop dependencies on compiler internals
+# * make cc build-dependency non-optional
+# * add missing dependencies for s390x
+Patch: rustix-fix-metadata.diff
+# * unconditionally rebuild static objects from Assembly
+Patch: 0001-Unconditionally-compile-C-code-from-source.patch
BuildRequires: rust-packaging >= 21
@@ -46,6 +45,7 @@ use the "%{crate}" crate.
%license %{crate_instdir}/LICENSE-Apache-2.0_WITH_LLVM-exception
%license %{crate_instdir}/LICENSE-MIT
%doc %{crate_instdir}/CODE_OF_CONDUCT.md
+%doc %{crate_instdir}/CONTRIBUTING.md
%doc %{crate_instdir}/ORG_CODE_OF_CONDUCT.md
%doc %{crate_instdir}/README.md
%doc %{crate_instdir}/SECURITY.md
@@ -63,6 +63,18 @@ use the "default" feature of the "%{crate}" crate.
%files -n %{name}+default-devel
%ghost %{crate_instdir}/Cargo.toml
+%package -n %{name}+all-apis-devel
+Summary: %{summary}
+BuildArch: noarch
+
+%description -n %{name}+all-apis-devel %{_description}
+
+This package contains library source intended for building other packages which
+use the "all-apis" feature of the "%{crate}" crate.
+
+%files -n %{name}+all-apis-devel
+%ghost %{crate_instdir}/Cargo.toml
+
%package -n %{name}+all-impls-devel
Summary: %{summary}
BuildArch: noarch
@@ -87,16 +99,28 @@ use the "async-std" feature of the "%{crate}" crate.
%files -n %{name}+async-std-devel
%ghost %{crate_instdir}/Cargo.toml
-%package -n %{name}+errno-devel
+%package -n %{name}+cc-devel
Summary: %{summary}
BuildArch: noarch
-%description -n %{name}+errno-devel %{_description}
+%description -n %{name}+cc-devel %{_description}
This package contains library source intended for building other packages which
-use the "errno" feature of the "%{crate}" crate.
+use the "cc" feature of the "%{crate}" crate.
-%files -n %{name}+errno-devel
+%files -n %{name}+cc-devel
+%ghost %{crate_instdir}/Cargo.toml
+
+%package -n %{name}+fs-devel
+Summary: %{summary}
+BuildArch: noarch
+
+%description -n %{name}+fs-devel %{_description}
+
+This package contains library source intended for building other packages which
+use the "fs" feature of the "%{crate}" crate.
+
+%files -n %{name}+fs-devel
%ghost %{crate_instdir}/Cargo.toml
%package -n %{name}+fs-err-devel
@@ -123,6 +147,18 @@ use the "io-lifetimes" feature of the "%{crate}" crate.
%files -n %{name}+io-lifetimes-devel
%ghost %{crate_instdir}/Cargo.toml
+%package -n %{name}+io_uring-devel
+Summary: %{summary}
+BuildArch: noarch
+
+%description -n %{name}+io_uring-devel %{_description}
+
+This package contains library source intended for building other packages which
+use the "io_uring" feature of the "%{crate}" crate.
+
+%files -n %{name}+io_uring-devel
+%ghost %{crate_instdir}/Cargo.toml
+
%package -n %{name}+itoa-devel
Summary: %{summary}
BuildArch: noarch
@@ -147,6 +183,18 @@ use the "libc" feature of the "%{crate}" crate.
%files -n %{name}+libc-devel
%ghost %{crate_instdir}/Cargo.toml
+%package -n %{name}+libc_errno-devel
+Summary: %{summary}
+BuildArch: noarch
+
+%description -n %{name}+libc_errno-devel %{_description}
+
+This package contains library source intended for building other packages which
+use the "libc_errno" feature of the "%{crate}" crate.
+
+%files -n %{name}+libc_errno-devel
+%ghost %{crate_instdir}/Cargo.toml
+
%package -n %{name}+mio-devel
Summary: %{summary}
BuildArch: noarch
@@ -159,6 +207,30 @@ use the "mio" feature of the "%{crate}" crate.
%files -n %{name}+mio-devel
%ghost %{crate_instdir}/Cargo.toml
+%package -n %{name}+mm-devel
+Summary: %{summary}
+BuildArch: noarch
+
+%description -n %{name}+mm-devel %{_description}
+
+This package contains library source intended for building other packages which
+use the "mm" feature of the "%{crate}" crate.
+
+%files -n %{name}+mm-devel
+%ghost %{crate_instdir}/Cargo.toml
+
+%package -n %{name}+net-devel
+Summary: %{summary}
+BuildArch: noarch
+
+%description -n %{name}+net-devel %{_description}
+
+This package contains library source intended for building other packages which
+use the "net" feature of the "%{crate}" crate.
+
+%files -n %{name}+net-devel
+%ghost %{crate_instdir}/Cargo.toml
+
%package -n %{name}+once_cell-devel
Summary: %{summary}
BuildArch: noarch
@@ -183,6 +255,30 @@ use the "os_pipe" feature of the "%{crate}" crate.
%files -n %{name}+os_pipe-devel
%ghost %{crate_instdir}/Cargo.toml
+%package -n %{name}+param-devel
+Summary: %{summary}
+BuildArch: noarch
+
+%description -n %{name}+param-devel %{_description}
+
+This package contains library source intended for building other packages which
+use the "param" feature of the "%{crate}" crate.
+
+%files -n %{name}+param-devel
+%ghost %{crate_instdir}/Cargo.toml
+
+%package -n %{name}+process-devel
+Summary: %{summary}
+BuildArch: noarch
+
+%description -n %{name}+process-devel %{_description}
+
+This package contains library source intended for building other packages which
+use the "process" feature of the "%{crate}" crate.
+
+%files -n %{name}+process-devel
+%ghost %{crate_instdir}/Cargo.toml
+
%package -n %{name}+procfs-devel
Summary: %{summary}
BuildArch: noarch
@@ -195,6 +291,30 @@ use the "procfs" feature of the "%{crate}" crate.
%files -n %{name}+procfs-devel
%ghost %{crate_instdir}/Cargo.toml
+%package -n %{name}+rand-devel
+Summary: %{summary}
+BuildArch: noarch
+
+%description -n %{name}+rand-devel %{_description}
+
+This package contains library source intended for building other packages which
+use the "rand" feature of the "%{crate}" crate.
+
+%files -n %{name}+rand-devel
+%ghost %{crate_instdir}/Cargo.toml
+
+%package -n %{name}+runtime-devel
+Summary: %{summary}
+BuildArch: noarch
+
+%description -n %{name}+runtime-devel %{_description}
+
+This package contains library source intended for building other packages which
+use the "runtime" feature of the "%{crate}" crate.
+
+%files -n %{name}+runtime-devel
+%ghost %{crate_instdir}/Cargo.toml
+
%package -n %{name}+socket2-devel
Summary: %{summary}
BuildArch: noarch
@@ -219,6 +339,42 @@ use the "std" feature of the "%{crate}" crate.
%files -n %{name}+std-devel
%ghost %{crate_instdir}/Cargo.toml
+%package -n %{name}+termios-devel
+Summary: %{summary}
+BuildArch: noarch
+
+%description -n %{name}+termios-devel %{_description}
+
+This package contains library source intended for building other packages which
+use the "termios" feature of the "%{crate}" crate.
+
+%files -n %{name}+termios-devel
+%ghost %{crate_instdir}/Cargo.toml
+
+%package -n %{name}+thread-devel
+Summary: %{summary}
+BuildArch: noarch
+
+%description -n %{name}+thread-devel %{_description}
+
+This package contains library source intended for building other packages which
+use the "thread" feature of the "%{crate}" crate.
+
+%files -n %{name}+thread-devel
+%ghost %{crate_instdir}/Cargo.toml
+
+%package -n %{name}+time-devel
+Summary: %{summary}
+BuildArch: noarch
+
+%description -n %{name}+time-devel %{_description}
+
+This package contains library source intended for building other packages which
+use the "time" feature of the "%{crate}" crate.
+
+%files -n %{name}+time-devel
+%ghost %{crate_instdir}/Cargo.toml
+
%package -n %{name}+tokio-devel
Summary: %{summary}
BuildArch: noarch
@@ -243,27 +399,37 @@ use the "use-libc" feature of the "%{crate}" crate.
%files -n %{name}+use-libc-devel
%ghost %{crate_instdir}/Cargo.toml
+%package -n %{name}+use-libc-auxv-devel
+Summary: %{summary}
+BuildArch: noarch
+
+%description -n %{name}+use-libc-auxv-devel %{_description}
+
+This package contains library source intended for building other packages which
+use the "use-libc-auxv" feature of the "%{crate}" crate.
+
+%files -n %{name}+use-libc-auxv-devel
+%ghost %{crate_instdir}/Cargo.toml
+
%prep
%autosetup -n %{crate}-%{version_no_tilde} -p1
%cargo_prep
# Remove pre-built binaries
-rm src/imp/linux_raw/arch/outline/debug/*.a
-rm src/imp/linux_raw/arch/outline/release/*.a
+rm -r src/backend/linux_raw/arch/outline/debug/
+rm -r src/backend/linux_raw/arch/outline/release/
%generate_buildrequires
-%cargo_generate_buildrequires
+%cargo_generate_buildrequires -a
%build
-%cargo_build
+%cargo_build -a
%install
-%cargo_install
+%cargo_install -a
%if %{with check}
%check
-# * skip a test that requires a file which is not included in published crates
-# * skip a test that tries to build and run an example with cargo
-%cargo_test -- -- --skip test_backends --skip dup2_to_replace_stdio
+%cargo_test -a
%endif
%changelog
diff --git a/rust2rpm.conf b/rust2rpm.conf
new file mode 100644
index 0000000..f626714
--- /dev/null
+++ b/rust2rpm.conf
@@ -0,0 +1,2 @@
+[DEFAULT]
+all-features = true
diff --git a/rustix-fix-metadata-auto.diff b/rustix-fix-metadata-auto.diff
new file mode 100644
index 0000000..b44c5f3
--- /dev/null
+++ b/rustix-fix-metadata-auto.diff
@@ -0,0 +1,48 @@
+--- rustix-0.35.12/Cargo.toml 1970-01-01T00:00:01+00:00
++++ rustix-0.35.12/Cargo.toml 1970-01-01T00:00:01+00:00
+@@ -180,14 +180,6 @@
+ ]
+ use-libc-auxv = ["libc"]
+
+-[target."cfg(all(any(target_os = \"android\", target_os = \"linux\"), any(rustix_use_libc, miri, not(all(target_os = \"linux\", any(target_arch = \"x86\", all(target_arch = \"x86_64\", target_pointer_width = \"64\"), all(target_endian = \"little\", any(target_arch = \"arm\", all(target_arch = \"aarch64\", target_pointer_width = \"64\"), target_arch = \"powerpc64\", target_arch = \"riscv64\", target_arch = \"mips\", target_arch = \"mips64\"))))))))".dependencies.linux-raw-sys]
+-version = "0.0.46"
+-features = [
+- "general",
+- "no_std",
+-]
+-default-features = false
+-
+ [target."cfg(all(not(rustix_use_libc), not(miri), target_os = \"linux\", any(target_arch = \"x86\", all(target_arch = \"x86_64\", target_pointer_width = \"64\"), all(target_endian = \"little\", any(target_arch = \"arm\", all(target_arch = \"aarch64\", target_pointer_width = \"64\"), target_arch = \"powerpc64\", target_arch = \"riscv64\", target_arch = \"mips\", target_arch = \"mips64\")))))".dependencies.libc]
+ version = "0.2.133"
+ features = ["extra_traits"]
+@@ -209,15 +201,6 @@
+ ]
+ default-features = false
+
+-[target."cfg(any(rustix_use_libc, miri, not(all(target_os = \"linux\", any(target_arch = \"x86\", all(target_arch = \"x86_64\", target_pointer_width = \"64\"), all(target_endian = \"little\", any(target_arch = \"arm\", all(target_arch = \"aarch64\", target_pointer_width = \"64\"), target_arch = \"powerpc64\", target_arch = \"riscv64\", target_arch = \"mips\", target_arch = \"mips64\")))))))".dependencies.libc]
+-version = "0.2.133"
+-features = ["extra_traits"]
+-
+-[target."cfg(any(rustix_use_libc, miri, not(all(target_os = \"linux\", any(target_arch = \"x86\", all(target_arch = \"x86_64\", target_pointer_width = \"64\"), all(target_endian = \"little\", any(target_arch = \"arm\", all(target_arch = \"aarch64\", target_pointer_width = \"64\"), target_arch = \"powerpc64\", target_arch = \"riscv64\", target_arch = \"mips\", target_arch = \"mips64\")))))))".dependencies.libc_errno]
+-version = "0.2.8"
+-default-features = false
+-package = "errno"
+-
+ [target."cfg(any(target_os = \"android\", target_os = \"linux\"))".dependencies.once_cell]
+ version = "1.5.2"
+ optional = true
+@@ -225,14 +208,3 @@
+ [target."cfg(not(target_os = \"emscripten\"))".dev-dependencies.criterion]
+ version = "0.3"
+
+-[target."cfg(windows)".dependencies.windows-sys]
+-version = "0.36.0"
+-features = [
+- "Win32_Foundation",
+- "Win32_Networking_WinSock",
+- "Win32_NetworkManagement_IpHelper",
+- "Win32_System_Threading",
+-]
+-
+-[target."cfg(windows)".dev-dependencies.ctor]
+-version = "0.1.21"
diff --git a/rustix-fix-metadata.diff b/rustix-fix-metadata.diff
index c23ba2f..37aa5d8 100644
--- a/rustix-fix-metadata.diff
+++ b/rustix-fix-metadata.diff
@@ -1,25 +1,81 @@
---- rustix-0.33.6/Cargo.toml 1970-01-01T00:00:01+00:00
-+++ rustix-0.33.6/Cargo.toml 2022-04-13T16:51:09.165066+00:00
-@@ -97,7 +97,6 @@
+--- rustix-0.35.12/Cargo.toml 1970-01-01T00:00:01+00:00
++++ rustix-0.35.12/Cargo.toml 2022-10-28T14:25:16.540213+00:00
+@@ -62,22 +62,8 @@
+ name = "mod"
+ harness = false
+
+-[dependencies.alloc]
+-version = "1.0.0"
+-optional = true
+-package = "rustc-std-workspace-alloc"
+-
+ [dependencies.bitflags]
+ version = "1.2.1"
+-
+-[dependencies.compiler_builtins]
+-version = "0.1.49"
+-optional = true
+-
+-[dependencies.core]
+-version = "1.0.0"
+-optional = true
+-package = "rustc-std-workspace-core"
+
+ [dependencies.io-lifetimes]
+ version = "0.7.0"
+@@ -113,7 +99,6 @@
[build-dependencies.cc]
version = "1.0.68"
-optional = true
[features]
- all-impls = [
-@@ -156,10 +155,6 @@
+ all-apis = [
+@@ -139,6 +124,7 @@
+ "fs-err",
]
- default-features = false
+ async-std = ["io-lifetimes/async-std"]
++cc = []
+ default = [
+ "std",
+ "use-libc-auxv",
+@@ -161,13 +147,6 @@
+ ]
+ rand = []
+ runtime = []
+-rustc-dep-of-std = [
+- "core",
+- "alloc",
+- "compiler_builtins",
+- "linux-raw-sys/rustc-dep-of-std",
+- "bitflags/rustc-dep-of-std",
+-]
+ socket2 = ["io-lifetimes/socket2"]
+ std = ["io-lifetimes"]
+ termios = []
+@@ -180,18 +159,18 @@
+ ]
+ use-libc-auxv = ["libc"]
--[target."cfg(all(windows, not(target_vendor = \"uwp\")))".dependencies.winapi]
--version = "0.3.9"
--features = ["handleapi"]
--
- [target."cfg(any(rustix_use_libc, miri, not(all(target_os = \"linux\", any(target_arch = \"x86\", all(target_arch = \"x86_64\", not(target_pointer_width = \"32\")), target_arch = \"arm\", target_arch = \"aarch64\", target_arch = \"powerpc64\", target_arch = \"riscv64\", target_arch = \"mips\", target_arch = \"mips64\")))))".dependencies.errno]
+-[target."cfg(all(not(rustix_use_libc), not(miri), target_os = \"linux\", any(target_arch = \"x86\", all(target_arch = \"x86_64\", target_pointer_width = \"64\"), all(target_endian = \"little\", any(target_arch = \"arm\", all(target_arch = \"aarch64\", target_pointer_width = \"64\"), target_arch = \"powerpc64\", target_arch = \"riscv64\", target_arch = \"mips\", target_arch = \"mips64\")))))".dependencies.libc]
++[target."cfg(all(not(rustix_use_libc), not(miri), target_os = \"linux\", any(target_arch = \"x86\", all(target_arch = \"x86_64\", target_pointer_width = \"64\"), all(target_endian = \"big\", target_arch = \"s390x\"), all(target_endian = \"little\", any(target_arch = \"arm\", all(target_arch = \"aarch64\", target_pointer_width = \"64\"), target_arch = \"powerpc64\", target_arch = \"riscv64\", target_arch = \"mips\", target_arch = \"mips64\")))))".dependencies.libc]
+ version = "0.2.133"
+ features = ["extra_traits"]
+ optional = true
+
+-[target."cfg(all(not(rustix_use_libc), not(miri), target_os = \"linux\", any(target_arch = \"x86\", all(target_arch = \"x86_64\", target_pointer_width = \"64\"), all(target_endian = \"little\", any(target_arch = \"arm\", all(target_arch = \"aarch64\", target_pointer_width = \"64\"), target_arch = \"powerpc64\", target_arch = \"riscv64\", target_arch = \"mips\", target_arch = \"mips64\")))))".dependencies.libc_errno]
++[target."cfg(all(not(rustix_use_libc), not(miri), target_os = \"linux\", any(target_arch = \"x86\", all(target_arch = \"x86_64\", target_pointer_width = \"64\"), all(target_endian = \"big\", target_arch = \"s390x\"), all(target_endian = \"little\", any(target_arch = \"arm\", all(target_arch = \"aarch64\", target_pointer_width = \"64\"), target_arch = \"powerpc64\", target_arch = \"riscv64\", target_arch = \"mips\", target_arch = \"mips64\")))))".dependencies.libc_errno]
version = "0.2.8"
+ optional = true
default-features = false
-@@ -171,16 +166,3 @@
+ package = "errno"
+
+-[target."cfg(all(not(rustix_use_libc), not(miri), target_os = \"linux\", any(target_arch = \"x86\", all(target_arch = \"x86_64\", target_pointer_width = \"64\"), all(target_endian = \"little\", any(target_arch = \"arm\", all(target_arch = \"aarch64\", target_pointer_width = \"64\"), target_arch = \"powerpc64\", target_arch = \"riscv64\", target_arch = \"mips\", target_arch = \"mips64\")))))".dependencies.linux-raw-sys]
++[target."cfg(all(not(rustix_use_libc), not(miri), target_os = \"linux\", any(target_arch = \"x86\", all(target_arch = \"x86_64\", target_pointer_width = \"64\"), all(target_endian = \"big\", target_arch = \"s390x\"), all(target_endian = \"little\", any(target_arch = \"arm\", all(target_arch = \"aarch64\", target_pointer_width = \"64\"), target_arch = \"powerpc64\", target_arch = \"riscv64\", target_arch = \"mips\", target_arch = \"mips64\")))))".dependencies.linux-raw-sys]
+ version = "0.0.46"
+ features = [
+ "general",
+@@ -204,7 +183,3 @@
[target."cfg(any(target_os = \"android\", target_os = \"linux\"))".dependencies.once_cell]
version = "1.5.2"
optional = true
@@ -27,12 +83,3 @@
-[target."cfg(not(target_os = \"emscripten\"))".dev-dependencies.criterion]
-version = "0.3"
-
--[target."cfg(windows)".dependencies.winapi]
--version = "0.3.9"
--features = [
-- "ws2ipdef",
-- "ws2tcpip",
--]
--
--[target."cfg(windows)".dev-dependencies.ctor]
--version = "0.1.21"
diff --git a/sources b/sources
index 2711f10..391f43b 100644
--- a/sources
+++ b/sources
@@ -1 +1 @@
-SHA512 (rustix-0.33.6.crate) = 786afb057d5b63549342859bf2892036de0bb45388a981a33c5de9a54ccf71b9cd1f48b4fe82e3206a1688e87d2482eaf4c6df635c0e3dd9e3f10bc5c5bb17f2
+SHA512 (rustix-0.35.12.crate) = 72dbca8616a7d2102a073eab049cf34b8301560923cfaf162c81d136cffa75be5f8da79533f6c9d64f196337ef83c1f7dcc9b44141701a8dea5ec2f278624dfc
commit 8228c2e8c5a603daec03ecc77d8cc15744fb128f
Author: Fedora Release Engineering <releng(a)fedoraproject.org>
Date: Sat Jul 23 06:22:24 2022 +0000
Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild
Signed-off-by: Fedora Release Engineering <releng(a)fedoraproject.org>
1 year, 1 month
Architecture specific change in rpms/rust-rustix.git
by githook-noreply@fedoraproject.org
The package rpms/rust-rustix.git has added or updated architecture specific content in its
spec file (ExclusiveArch/ExcludeArch or %ifarch/%ifnarch) in commit(s):
https://src.fedoraproject.org/cgit/rpms/rust-rustix.git/commit/?id=88a5c9....
Change:
-ExclusiveArch: %{rust_arches}
Thanks.
Full change:
============
commit 88a5c948c5242495c05e71d4240181b841d472ce
Author: Fabio Valentini <decathorpe(a)gmail.com>
Date: Fri Oct 28 15:04:03 2022 +0200
Update to version 0.35.12; Fixes RHBZ#2050429
diff --git a/.gitignore b/.gitignore
index 864625f..298e86b 100644
--- a/.gitignore
+++ b/.gitignore
@@ -1,3 +1,4 @@
/rustix-0.29.1.crate
/rustix-0.31.3.crate
/rustix-0.33.6.crate
+/rustix-0.35.12.crate
diff --git a/.rust2rpm.conf b/.rust2rpm.conf
deleted file mode 100644
index 9a62e60..0000000
--- a/.rust2rpm.conf
+++ /dev/null
@@ -1,6 +0,0 @@
-[DEFAULT]
-unwanted-features =
- core
- alloc
- compiler_builtins
- rustc-dep-of-std
diff --git a/0001-Unconditionally-compile-C-code-from-source.patch b/0001-Unconditionally-compile-C-code-from-source.patch
index 1ee2512..2905474 100644
--- a/0001-Unconditionally-compile-C-code-from-source.patch
+++ b/0001-Unconditionally-compile-C-code-from-source.patch
@@ -1,14 +1,14 @@
-From 6a1c4bda3bd069e46803497e3185a3a266b56900 Mon Sep 17 00:00:00 2001
+From e12c8f3cedd4c0ed2efc061dea4d69953a96027d Mon Sep 17 00:00:00 2001
From: Fabio Valentini <decathorpe(a)gmail.com>
Date: Wed, 13 Apr 2022 18:54:47 +0200
-Subject: [PATCH 1/2] Unconditionally compile C code from source
+Subject: [PATCH] Unconditionally compile C code from source
---
build.rs | 44 +++++++-------------------------------------
1 file changed, 7 insertions(+), 37 deletions(-)
diff --git a/build.rs b/build.rs
-index a11e1dc..2dfada0 100644
+index 56c6b15..194a659 100644
--- a/build.rs
+++ b/build.rs
@@ -1,4 +1,3 @@
@@ -16,7 +16,7 @@ index a11e1dc..2dfada0 100644
use cc::Build;
use std::env::var;
use std::io::Write;
-@@ -105,42 +104,13 @@ fn link_in_librustix_outline(arch: &str, asm_name: &str) {
+@@ -117,42 +116,13 @@ fn link_in_librustix_outline(arch: &str, asm_name: &str) {
let to = format!("{}/{}/lib{}.a", OUTLINE_PATH, profile, name);
println!("cargo:rerun-if-changed={}", to);
@@ -67,5 +67,5 @@ index a11e1dc..2dfada0 100644
}
--
-2.35.1
+2.38.1
diff --git a/0002-Fix-vDSO-parsing-on-powerpc64.patch b/0002-Fix-vDSO-parsing-on-powerpc64.patch
deleted file mode 100644
index 7d727a9..0000000
--- a/0002-Fix-vDSO-parsing-on-powerpc64.patch
+++ /dev/null
@@ -1,44 +0,0 @@
-From 8c810c5bb124decc30511a09f5e0ea891354e618 Mon Sep 17 00:00:00 2001
-From: Fabio Valentini <decathorpe(a)gmail.com>
-Date: Fri, 15 Apr 2022 16:58:43 +0200
-Subject: [PATCH 2/2] Fix vDSO parsing on powerpc64
-
-Backported from: https://github.com/bytecodealliance/rustix/pull/286
----
- src/imp/linux_raw/elf.rs | 1 +
- src/imp/linux_raw/vdso.rs | 7 ++++++-
- 2 files changed, 7 insertions(+), 1 deletion(-)
-
-diff --git a/src/imp/linux_raw/elf.rs b/src/imp/linux_raw/elf.rs
-index 0a1205b..7b9bb32 100644
---- a/src/imp/linux_raw/elf.rs
-+++ b/src/imp/linux_raw/elf.rs
-@@ -46,6 +46,7 @@ pub(super) const DT_VERSYM: i32 = 0x6fff_fff0;
- pub(super) const DT_VERDEF: i32 = 0x6fff_fffc;
- pub(super) const STB_WEAK: u8 = 2;
- pub(super) const STB_GLOBAL: u8 = 1;
-+pub(super) const STT_NOTYPE: u8 = 0;
- pub(super) const STT_FUNC: u8 = 2;
- pub(super) const STN_UNDEF: u32 = 0;
- pub(super) const VER_FLG_BASE: u16 = 0x1;
-diff --git a/src/imp/linux_raw/vdso.rs b/src/imp/linux_raw/vdso.rs
-index 9a87182..945e0a4 100644
---- a/src/imp/linux_raw/vdso.rs
-+++ b/src/imp/linux_raw/vdso.rs
-@@ -365,7 +365,12 @@ impl Vdso {
- let sym = &*self.symtab.add(chain as usize);
-
- // Check for a defined global or weak function w/ right name.
-- if ELF_ST_TYPE(sym.st_info) != STT_FUNC
-+ //
-+ // The reference parser in Linux's parse_vdso.c requires
-+ // symbols to have type `STT_FUNC`, but on powerpc64, the vDSO
-+ // uses `STT_NOTYPE`, so allow that too.
-+ if (ELF_ST_TYPE(sym.st_info) != STT_FUNC &&
-+ ELF_ST_TYPE(sym.st_info) != STT_NOTYPE)
- || (ELF_ST_BIND(sym.st_info) != STB_GLOBAL
- && ELF_ST_BIND(sym.st_info) != STB_WEAK)
- || sym.st_shndx == SHN_UNDEF
---
-2.35.1
-
diff --git a/rust-rustix.spec b/rust-rustix.spec
index 420d2d2..668bc93 100644
--- a/rust-rustix.spec
+++ b/rust-rustix.spec
@@ -1,28 +1,27 @@
-# Generated by rust2rpm 21
+# Generated by rust2rpm 23
%bcond_without check
%global debug_package %{nil}
%global crate rustix
-Name: rust-%{crate}
-Version: 0.33.6
+Name: rust-rustix
+Version: 0.35.12
Release: %autorelease
Summary: Safe Rust bindings to POSIX/Unix/Linux/Winsock2-like syscalls
-# Upstream license specification: Apache-2.0 WITH LLVM-exception OR Apache-2.0 OR MIT
-License: ASL 2.0 or MIT
+License: Apache-2.0 WITH LLVM-exception OR Apache-2.0 OR MIT
URL: https://crates.io/crates/rustix
Source: %{crates_source}
-# Initial patched metadata
-# * drop windows-specific dependencies
+# Automatically generated patch to strip foreign dependencies
+Patch: rustix-fix-metadata-auto.diff
+# Manually created patch for downstream crate metadata changes
# * drop unused, benchmark-only criterion dev-dependency to speed up builds
-Patch0: rustix-fix-metadata.diff
-# * unconditionally compile C code from source
-Patch1: 0001-Unconditionally-compile-C-code-from-source.patch
-# * backported patch to fix vDSO parsing on ppc64le
-Patch2: 0002-Fix-vDSO-parsing-on-powerpc64.patch
-
-ExclusiveArch: %{rust_arches}
+# * drop dependencies on compiler internals
+# * make cc build-dependency non-optional
+# * add missing dependencies for s390x
+Patch: rustix-fix-metadata.diff
+# * unconditionally rebuild static objects from Assembly
+Patch: 0001-Unconditionally-compile-C-code-from-source.patch
BuildRequires: rust-packaging >= 21
@@ -46,6 +45,7 @@ use the "%{crate}" crate.
%license %{crate_instdir}/LICENSE-Apache-2.0_WITH_LLVM-exception
%license %{crate_instdir}/LICENSE-MIT
%doc %{crate_instdir}/CODE_OF_CONDUCT.md
+%doc %{crate_instdir}/CONTRIBUTING.md
%doc %{crate_instdir}/ORG_CODE_OF_CONDUCT.md
%doc %{crate_instdir}/README.md
%doc %{crate_instdir}/SECURITY.md
@@ -63,6 +63,18 @@ use the "default" feature of the "%{crate}" crate.
%files -n %{name}+default-devel
%ghost %{crate_instdir}/Cargo.toml
+%package -n %{name}+all-apis-devel
+Summary: %{summary}
+BuildArch: noarch
+
+%description -n %{name}+all-apis-devel %{_description}
+
+This package contains library source intended for building other packages which
+use the "all-apis" feature of the "%{crate}" crate.
+
+%files -n %{name}+all-apis-devel
+%ghost %{crate_instdir}/Cargo.toml
+
%package -n %{name}+all-impls-devel
Summary: %{summary}
BuildArch: noarch
@@ -87,16 +99,28 @@ use the "async-std" feature of the "%{crate}" crate.
%files -n %{name}+async-std-devel
%ghost %{crate_instdir}/Cargo.toml
-%package -n %{name}+errno-devel
+%package -n %{name}+cc-devel
Summary: %{summary}
BuildArch: noarch
-%description -n %{name}+errno-devel %{_description}
+%description -n %{name}+cc-devel %{_description}
This package contains library source intended for building other packages which
-use the "errno" feature of the "%{crate}" crate.
+use the "cc" feature of the "%{crate}" crate.
-%files -n %{name}+errno-devel
+%files -n %{name}+cc-devel
+%ghost %{crate_instdir}/Cargo.toml
+
+%package -n %{name}+fs-devel
+Summary: %{summary}
+BuildArch: noarch
+
+%description -n %{name}+fs-devel %{_description}
+
+This package contains library source intended for building other packages which
+use the "fs" feature of the "%{crate}" crate.
+
+%files -n %{name}+fs-devel
%ghost %{crate_instdir}/Cargo.toml
%package -n %{name}+fs-err-devel
@@ -123,6 +147,18 @@ use the "io-lifetimes" feature of the "%{crate}" crate.
%files -n %{name}+io-lifetimes-devel
%ghost %{crate_instdir}/Cargo.toml
+%package -n %{name}+io_uring-devel
+Summary: %{summary}
+BuildArch: noarch
+
+%description -n %{name}+io_uring-devel %{_description}
+
+This package contains library source intended for building other packages which
+use the "io_uring" feature of the "%{crate}" crate.
+
+%files -n %{name}+io_uring-devel
+%ghost %{crate_instdir}/Cargo.toml
+
%package -n %{name}+itoa-devel
Summary: %{summary}
BuildArch: noarch
@@ -147,6 +183,18 @@ use the "libc" feature of the "%{crate}" crate.
%files -n %{name}+libc-devel
%ghost %{crate_instdir}/Cargo.toml
+%package -n %{name}+libc_errno-devel
+Summary: %{summary}
+BuildArch: noarch
+
+%description -n %{name}+libc_errno-devel %{_description}
+
+This package contains library source intended for building other packages which
+use the "libc_errno" feature of the "%{crate}" crate.
+
+%files -n %{name}+libc_errno-devel
+%ghost %{crate_instdir}/Cargo.toml
+
%package -n %{name}+mio-devel
Summary: %{summary}
BuildArch: noarch
@@ -159,6 +207,30 @@ use the "mio" feature of the "%{crate}" crate.
%files -n %{name}+mio-devel
%ghost %{crate_instdir}/Cargo.toml
+%package -n %{name}+mm-devel
+Summary: %{summary}
+BuildArch: noarch
+
+%description -n %{name}+mm-devel %{_description}
+
+This package contains library source intended for building other packages which
+use the "mm" feature of the "%{crate}" crate.
+
+%files -n %{name}+mm-devel
+%ghost %{crate_instdir}/Cargo.toml
+
+%package -n %{name}+net-devel
+Summary: %{summary}
+BuildArch: noarch
+
+%description -n %{name}+net-devel %{_description}
+
+This package contains library source intended for building other packages which
+use the "net" feature of the "%{crate}" crate.
+
+%files -n %{name}+net-devel
+%ghost %{crate_instdir}/Cargo.toml
+
%package -n %{name}+once_cell-devel
Summary: %{summary}
BuildArch: noarch
@@ -183,6 +255,30 @@ use the "os_pipe" feature of the "%{crate}" crate.
%files -n %{name}+os_pipe-devel
%ghost %{crate_instdir}/Cargo.toml
+%package -n %{name}+param-devel
+Summary: %{summary}
+BuildArch: noarch
+
+%description -n %{name}+param-devel %{_description}
+
+This package contains library source intended for building other packages which
+use the "param" feature of the "%{crate}" crate.
+
+%files -n %{name}+param-devel
+%ghost %{crate_instdir}/Cargo.toml
+
+%package -n %{name}+process-devel
+Summary: %{summary}
+BuildArch: noarch
+
+%description -n %{name}+process-devel %{_description}
+
+This package contains library source intended for building other packages which
+use the "process" feature of the "%{crate}" crate.
+
+%files -n %{name}+process-devel
+%ghost %{crate_instdir}/Cargo.toml
+
%package -n %{name}+procfs-devel
Summary: %{summary}
BuildArch: noarch
@@ -195,6 +291,30 @@ use the "procfs" feature of the "%{crate}" crate.
%files -n %{name}+procfs-devel
%ghost %{crate_instdir}/Cargo.toml
+%package -n %{name}+rand-devel
+Summary: %{summary}
+BuildArch: noarch
+
+%description -n %{name}+rand-devel %{_description}
+
+This package contains library source intended for building other packages which
+use the "rand" feature of the "%{crate}" crate.
+
+%files -n %{name}+rand-devel
+%ghost %{crate_instdir}/Cargo.toml
+
+%package -n %{name}+runtime-devel
+Summary: %{summary}
+BuildArch: noarch
+
+%description -n %{name}+runtime-devel %{_description}
+
+This package contains library source intended for building other packages which
+use the "runtime" feature of the "%{crate}" crate.
+
+%files -n %{name}+runtime-devel
+%ghost %{crate_instdir}/Cargo.toml
+
%package -n %{name}+socket2-devel
Summary: %{summary}
BuildArch: noarch
@@ -219,6 +339,42 @@ use the "std" feature of the "%{crate}" crate.
%files -n %{name}+std-devel
%ghost %{crate_instdir}/Cargo.toml
+%package -n %{name}+termios-devel
+Summary: %{summary}
+BuildArch: noarch
+
+%description -n %{name}+termios-devel %{_description}
+
+This package contains library source intended for building other packages which
+use the "termios" feature of the "%{crate}" crate.
+
+%files -n %{name}+termios-devel
+%ghost %{crate_instdir}/Cargo.toml
+
+%package -n %{name}+thread-devel
+Summary: %{summary}
+BuildArch: noarch
+
+%description -n %{name}+thread-devel %{_description}
+
+This package contains library source intended for building other packages which
+use the "thread" feature of the "%{crate}" crate.
+
+%files -n %{name}+thread-devel
+%ghost %{crate_instdir}/Cargo.toml
+
+%package -n %{name}+time-devel
+Summary: %{summary}
+BuildArch: noarch
+
+%description -n %{name}+time-devel %{_description}
+
+This package contains library source intended for building other packages which
+use the "time" feature of the "%{crate}" crate.
+
+%files -n %{name}+time-devel
+%ghost %{crate_instdir}/Cargo.toml
+
%package -n %{name}+tokio-devel
Summary: %{summary}
BuildArch: noarch
@@ -243,27 +399,37 @@ use the "use-libc" feature of the "%{crate}" crate.
%files -n %{name}+use-libc-devel
%ghost %{crate_instdir}/Cargo.toml
+%package -n %{name}+use-libc-auxv-devel
+Summary: %{summary}
+BuildArch: noarch
+
+%description -n %{name}+use-libc-auxv-devel %{_description}
+
+This package contains library source intended for building other packages which
+use the "use-libc-auxv" feature of the "%{crate}" crate.
+
+%files -n %{name}+use-libc-auxv-devel
+%ghost %{crate_instdir}/Cargo.toml
+
%prep
%autosetup -n %{crate}-%{version_no_tilde} -p1
%cargo_prep
# Remove pre-built binaries
-rm src/imp/linux_raw/arch/outline/debug/*.a
-rm src/imp/linux_raw/arch/outline/release/*.a
+rm -r src/backend/linux_raw/arch/outline/debug/
+rm -r src/backend/linux_raw/arch/outline/release/
%generate_buildrequires
-%cargo_generate_buildrequires
+%cargo_generate_buildrequires -a
%build
-%cargo_build
+%cargo_build -a
%install
-%cargo_install
+%cargo_install -a
%if %{with check}
%check
-# * skip a test that requires a file which is not included in published crates
-# * skip a test that tries to build and run an example with cargo
-%cargo_test -- -- --skip test_backends --skip dup2_to_replace_stdio
+%cargo_test -a
%endif
%changelog
diff --git a/rust2rpm.conf b/rust2rpm.conf
new file mode 100644
index 0000000..f626714
--- /dev/null
+++ b/rust2rpm.conf
@@ -0,0 +1,2 @@
+[DEFAULT]
+all-features = true
diff --git a/rustix-fix-metadata-auto.diff b/rustix-fix-metadata-auto.diff
new file mode 100644
index 0000000..b44c5f3
--- /dev/null
+++ b/rustix-fix-metadata-auto.diff
@@ -0,0 +1,48 @@
+--- rustix-0.35.12/Cargo.toml 1970-01-01T00:00:01+00:00
++++ rustix-0.35.12/Cargo.toml 1970-01-01T00:00:01+00:00
+@@ -180,14 +180,6 @@
+ ]
+ use-libc-auxv = ["libc"]
+
+-[target."cfg(all(any(target_os = \"android\", target_os = \"linux\"), any(rustix_use_libc, miri, not(all(target_os = \"linux\", any(target_arch = \"x86\", all(target_arch = \"x86_64\", target_pointer_width = \"64\"), all(target_endian = \"little\", any(target_arch = \"arm\", all(target_arch = \"aarch64\", target_pointer_width = \"64\"), target_arch = \"powerpc64\", target_arch = \"riscv64\", target_arch = \"mips\", target_arch = \"mips64\"))))))))".dependencies.linux-raw-sys]
+-version = "0.0.46"
+-features = [
+- "general",
+- "no_std",
+-]
+-default-features = false
+-
+ [target."cfg(all(not(rustix_use_libc), not(miri), target_os = \"linux\", any(target_arch = \"x86\", all(target_arch = \"x86_64\", target_pointer_width = \"64\"), all(target_endian = \"little\", any(target_arch = \"arm\", all(target_arch = \"aarch64\", target_pointer_width = \"64\"), target_arch = \"powerpc64\", target_arch = \"riscv64\", target_arch = \"mips\", target_arch = \"mips64\")))))".dependencies.libc]
+ version = "0.2.133"
+ features = ["extra_traits"]
+@@ -209,15 +201,6 @@
+ ]
+ default-features = false
+
+-[target."cfg(any(rustix_use_libc, miri, not(all(target_os = \"linux\", any(target_arch = \"x86\", all(target_arch = \"x86_64\", target_pointer_width = \"64\"), all(target_endian = \"little\", any(target_arch = \"arm\", all(target_arch = \"aarch64\", target_pointer_width = \"64\"), target_arch = \"powerpc64\", target_arch = \"riscv64\", target_arch = \"mips\", target_arch = \"mips64\")))))))".dependencies.libc]
+-version = "0.2.133"
+-features = ["extra_traits"]
+-
+-[target."cfg(any(rustix_use_libc, miri, not(all(target_os = \"linux\", any(target_arch = \"x86\", all(target_arch = \"x86_64\", target_pointer_width = \"64\"), all(target_endian = \"little\", any(target_arch = \"arm\", all(target_arch = \"aarch64\", target_pointer_width = \"64\"), target_arch = \"powerpc64\", target_arch = \"riscv64\", target_arch = \"mips\", target_arch = \"mips64\")))))))".dependencies.libc_errno]
+-version = "0.2.8"
+-default-features = false
+-package = "errno"
+-
+ [target."cfg(any(target_os = \"android\", target_os = \"linux\"))".dependencies.once_cell]
+ version = "1.5.2"
+ optional = true
+@@ -225,14 +208,3 @@
+ [target."cfg(not(target_os = \"emscripten\"))".dev-dependencies.criterion]
+ version = "0.3"
+
+-[target."cfg(windows)".dependencies.windows-sys]
+-version = "0.36.0"
+-features = [
+- "Win32_Foundation",
+- "Win32_Networking_WinSock",
+- "Win32_NetworkManagement_IpHelper",
+- "Win32_System_Threading",
+-]
+-
+-[target."cfg(windows)".dev-dependencies.ctor]
+-version = "0.1.21"
diff --git a/rustix-fix-metadata.diff b/rustix-fix-metadata.diff
index c23ba2f..37aa5d8 100644
--- a/rustix-fix-metadata.diff
+++ b/rustix-fix-metadata.diff
@@ -1,25 +1,81 @@
---- rustix-0.33.6/Cargo.toml 1970-01-01T00:00:01+00:00
-+++ rustix-0.33.6/Cargo.toml 2022-04-13T16:51:09.165066+00:00
-@@ -97,7 +97,6 @@
+--- rustix-0.35.12/Cargo.toml 1970-01-01T00:00:01+00:00
++++ rustix-0.35.12/Cargo.toml 2022-10-28T14:25:16.540213+00:00
+@@ -62,22 +62,8 @@
+ name = "mod"
+ harness = false
+
+-[dependencies.alloc]
+-version = "1.0.0"
+-optional = true
+-package = "rustc-std-workspace-alloc"
+-
+ [dependencies.bitflags]
+ version = "1.2.1"
+-
+-[dependencies.compiler_builtins]
+-version = "0.1.49"
+-optional = true
+-
+-[dependencies.core]
+-version = "1.0.0"
+-optional = true
+-package = "rustc-std-workspace-core"
+
+ [dependencies.io-lifetimes]
+ version = "0.7.0"
+@@ -113,7 +99,6 @@
[build-dependencies.cc]
version = "1.0.68"
-optional = true
[features]
- all-impls = [
-@@ -156,10 +155,6 @@
+ all-apis = [
+@@ -139,6 +124,7 @@
+ "fs-err",
]
- default-features = false
+ async-std = ["io-lifetimes/async-std"]
++cc = []
+ default = [
+ "std",
+ "use-libc-auxv",
+@@ -161,13 +147,6 @@
+ ]
+ rand = []
+ runtime = []
+-rustc-dep-of-std = [
+- "core",
+- "alloc",
+- "compiler_builtins",
+- "linux-raw-sys/rustc-dep-of-std",
+- "bitflags/rustc-dep-of-std",
+-]
+ socket2 = ["io-lifetimes/socket2"]
+ std = ["io-lifetimes"]
+ termios = []
+@@ -180,18 +159,18 @@
+ ]
+ use-libc-auxv = ["libc"]
--[target."cfg(all(windows, not(target_vendor = \"uwp\")))".dependencies.winapi]
--version = "0.3.9"
--features = ["handleapi"]
--
- [target."cfg(any(rustix_use_libc, miri, not(all(target_os = \"linux\", any(target_arch = \"x86\", all(target_arch = \"x86_64\", not(target_pointer_width = \"32\")), target_arch = \"arm\", target_arch = \"aarch64\", target_arch = \"powerpc64\", target_arch = \"riscv64\", target_arch = \"mips\", target_arch = \"mips64\")))))".dependencies.errno]
+-[target."cfg(all(not(rustix_use_libc), not(miri), target_os = \"linux\", any(target_arch = \"x86\", all(target_arch = \"x86_64\", target_pointer_width = \"64\"), all(target_endian = \"little\", any(target_arch = \"arm\", all(target_arch = \"aarch64\", target_pointer_width = \"64\"), target_arch = \"powerpc64\", target_arch = \"riscv64\", target_arch = \"mips\", target_arch = \"mips64\")))))".dependencies.libc]
++[target."cfg(all(not(rustix_use_libc), not(miri), target_os = \"linux\", any(target_arch = \"x86\", all(target_arch = \"x86_64\", target_pointer_width = \"64\"), all(target_endian = \"big\", target_arch = \"s390x\"), all(target_endian = \"little\", any(target_arch = \"arm\", all(target_arch = \"aarch64\", target_pointer_width = \"64\"), target_arch = \"powerpc64\", target_arch = \"riscv64\", target_arch = \"mips\", target_arch = \"mips64\")))))".dependencies.libc]
+ version = "0.2.133"
+ features = ["extra_traits"]
+ optional = true
+
+-[target."cfg(all(not(rustix_use_libc), not(miri), target_os = \"linux\", any(target_arch = \"x86\", all(target_arch = \"x86_64\", target_pointer_width = \"64\"), all(target_endian = \"little\", any(target_arch = \"arm\", all(target_arch = \"aarch64\", target_pointer_width = \"64\"), target_arch = \"powerpc64\", target_arch = \"riscv64\", target_arch = \"mips\", target_arch = \"mips64\")))))".dependencies.libc_errno]
++[target."cfg(all(not(rustix_use_libc), not(miri), target_os = \"linux\", any(target_arch = \"x86\", all(target_arch = \"x86_64\", target_pointer_width = \"64\"), all(target_endian = \"big\", target_arch = \"s390x\"), all(target_endian = \"little\", any(target_arch = \"arm\", all(target_arch = \"aarch64\", target_pointer_width = \"64\"), target_arch = \"powerpc64\", target_arch = \"riscv64\", target_arch = \"mips\", target_arch = \"mips64\")))))".dependencies.libc_errno]
version = "0.2.8"
+ optional = true
default-features = false
-@@ -171,16 +166,3 @@
+ package = "errno"
+
+-[target."cfg(all(not(rustix_use_libc), not(miri), target_os = \"linux\", any(target_arch = \"x86\", all(target_arch = \"x86_64\", target_pointer_width = \"64\"), all(target_endian = \"little\", any(target_arch = \"arm\", all(target_arch = \"aarch64\", target_pointer_width = \"64\"), target_arch = \"powerpc64\", target_arch = \"riscv64\", target_arch = \"mips\", target_arch = \"mips64\")))))".dependencies.linux-raw-sys]
++[target."cfg(all(not(rustix_use_libc), not(miri), target_os = \"linux\", any(target_arch = \"x86\", all(target_arch = \"x86_64\", target_pointer_width = \"64\"), all(target_endian = \"big\", target_arch = \"s390x\"), all(target_endian = \"little\", any(target_arch = \"arm\", all(target_arch = \"aarch64\", target_pointer_width = \"64\"), target_arch = \"powerpc64\", target_arch = \"riscv64\", target_arch = \"mips\", target_arch = \"mips64\")))))".dependencies.linux-raw-sys]
+ version = "0.0.46"
+ features = [
+ "general",
+@@ -204,7 +183,3 @@
[target."cfg(any(target_os = \"android\", target_os = \"linux\"))".dependencies.once_cell]
version = "1.5.2"
optional = true
@@ -27,12 +83,3 @@
-[target."cfg(not(target_os = \"emscripten\"))".dev-dependencies.criterion]
-version = "0.3"
-
--[target."cfg(windows)".dependencies.winapi]
--version = "0.3.9"
--features = [
-- "ws2ipdef",
-- "ws2tcpip",
--]
--
--[target."cfg(windows)".dev-dependencies.ctor]
--version = "0.1.21"
diff --git a/sources b/sources
index 2711f10..391f43b 100644
--- a/sources
+++ b/sources
@@ -1 +1 @@
-SHA512 (rustix-0.33.6.crate) = 786afb057d5b63549342859bf2892036de0bb45388a981a33c5de9a54ccf71b9cd1f48b4fe82e3206a1688e87d2482eaf4c6df635c0e3dd9e3f10bc5c5bb17f2
+SHA512 (rustix-0.35.12.crate) = 72dbca8616a7d2102a073eab049cf34b8301560923cfaf162c81d136cffa75be5f8da79533f6c9d64f196337ef83c1f7dcc9b44141701a8dea5ec2f278624dfc
commit 8228c2e8c5a603daec03ecc77d8cc15744fb128f
Author: Fedora Release Engineering <releng(a)fedoraproject.org>
Date: Sat Jul 23 06:22:24 2022 +0000
Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild
Signed-off-by: Fedora Release Engineering <releng(a)fedoraproject.org>
1 year, 1 month
Architecture specific change in rpms/rust-rustix.git
by githook-noreply@fedoraproject.org
The package rpms/rust-rustix.git has added or updated architecture specific content in its
spec file (ExclusiveArch/ExcludeArch or %ifarch/%ifnarch) in commit(s):
https://src.fedoraproject.org/cgit/rpms/rust-rustix.git/commit/?id=88a5c9....
Change:
-ExclusiveArch: %{rust_arches}
Thanks.
Full change:
============
commit 88a5c948c5242495c05e71d4240181b841d472ce
Author: Fabio Valentini <decathorpe(a)gmail.com>
Date: Fri Oct 28 15:04:03 2022 +0200
Update to version 0.35.12; Fixes RHBZ#2050429
diff --git a/.gitignore b/.gitignore
index 864625f..298e86b 100644
--- a/.gitignore
+++ b/.gitignore
@@ -1,3 +1,4 @@
/rustix-0.29.1.crate
/rustix-0.31.3.crate
/rustix-0.33.6.crate
+/rustix-0.35.12.crate
diff --git a/.rust2rpm.conf b/.rust2rpm.conf
deleted file mode 100644
index 9a62e60..0000000
--- a/.rust2rpm.conf
+++ /dev/null
@@ -1,6 +0,0 @@
-[DEFAULT]
-unwanted-features =
- core
- alloc
- compiler_builtins
- rustc-dep-of-std
diff --git a/0001-Unconditionally-compile-C-code-from-source.patch b/0001-Unconditionally-compile-C-code-from-source.patch
index 1ee2512..2905474 100644
--- a/0001-Unconditionally-compile-C-code-from-source.patch
+++ b/0001-Unconditionally-compile-C-code-from-source.patch
@@ -1,14 +1,14 @@
-From 6a1c4bda3bd069e46803497e3185a3a266b56900 Mon Sep 17 00:00:00 2001
+From e12c8f3cedd4c0ed2efc061dea4d69953a96027d Mon Sep 17 00:00:00 2001
From: Fabio Valentini <decathorpe(a)gmail.com>
Date: Wed, 13 Apr 2022 18:54:47 +0200
-Subject: [PATCH 1/2] Unconditionally compile C code from source
+Subject: [PATCH] Unconditionally compile C code from source
---
build.rs | 44 +++++++-------------------------------------
1 file changed, 7 insertions(+), 37 deletions(-)
diff --git a/build.rs b/build.rs
-index a11e1dc..2dfada0 100644
+index 56c6b15..194a659 100644
--- a/build.rs
+++ b/build.rs
@@ -1,4 +1,3 @@
@@ -16,7 +16,7 @@ index a11e1dc..2dfada0 100644
use cc::Build;
use std::env::var;
use std::io::Write;
-@@ -105,42 +104,13 @@ fn link_in_librustix_outline(arch: &str, asm_name: &str) {
+@@ -117,42 +116,13 @@ fn link_in_librustix_outline(arch: &str, asm_name: &str) {
let to = format!("{}/{}/lib{}.a", OUTLINE_PATH, profile, name);
println!("cargo:rerun-if-changed={}", to);
@@ -67,5 +67,5 @@ index a11e1dc..2dfada0 100644
}
--
-2.35.1
+2.38.1
diff --git a/0002-Fix-vDSO-parsing-on-powerpc64.patch b/0002-Fix-vDSO-parsing-on-powerpc64.patch
deleted file mode 100644
index 7d727a9..0000000
--- a/0002-Fix-vDSO-parsing-on-powerpc64.patch
+++ /dev/null
@@ -1,44 +0,0 @@
-From 8c810c5bb124decc30511a09f5e0ea891354e618 Mon Sep 17 00:00:00 2001
-From: Fabio Valentini <decathorpe(a)gmail.com>
-Date: Fri, 15 Apr 2022 16:58:43 +0200
-Subject: [PATCH 2/2] Fix vDSO parsing on powerpc64
-
-Backported from: https://github.com/bytecodealliance/rustix/pull/286
----
- src/imp/linux_raw/elf.rs | 1 +
- src/imp/linux_raw/vdso.rs | 7 ++++++-
- 2 files changed, 7 insertions(+), 1 deletion(-)
-
-diff --git a/src/imp/linux_raw/elf.rs b/src/imp/linux_raw/elf.rs
-index 0a1205b..7b9bb32 100644
---- a/src/imp/linux_raw/elf.rs
-+++ b/src/imp/linux_raw/elf.rs
-@@ -46,6 +46,7 @@ pub(super) const DT_VERSYM: i32 = 0x6fff_fff0;
- pub(super) const DT_VERDEF: i32 = 0x6fff_fffc;
- pub(super) const STB_WEAK: u8 = 2;
- pub(super) const STB_GLOBAL: u8 = 1;
-+pub(super) const STT_NOTYPE: u8 = 0;
- pub(super) const STT_FUNC: u8 = 2;
- pub(super) const STN_UNDEF: u32 = 0;
- pub(super) const VER_FLG_BASE: u16 = 0x1;
-diff --git a/src/imp/linux_raw/vdso.rs b/src/imp/linux_raw/vdso.rs
-index 9a87182..945e0a4 100644
---- a/src/imp/linux_raw/vdso.rs
-+++ b/src/imp/linux_raw/vdso.rs
-@@ -365,7 +365,12 @@ impl Vdso {
- let sym = &*self.symtab.add(chain as usize);
-
- // Check for a defined global or weak function w/ right name.
-- if ELF_ST_TYPE(sym.st_info) != STT_FUNC
-+ //
-+ // The reference parser in Linux's parse_vdso.c requires
-+ // symbols to have type `STT_FUNC`, but on powerpc64, the vDSO
-+ // uses `STT_NOTYPE`, so allow that too.
-+ if (ELF_ST_TYPE(sym.st_info) != STT_FUNC &&
-+ ELF_ST_TYPE(sym.st_info) != STT_NOTYPE)
- || (ELF_ST_BIND(sym.st_info) != STB_GLOBAL
- && ELF_ST_BIND(sym.st_info) != STB_WEAK)
- || sym.st_shndx == SHN_UNDEF
---
-2.35.1
-
diff --git a/rust-rustix.spec b/rust-rustix.spec
index 420d2d2..668bc93 100644
--- a/rust-rustix.spec
+++ b/rust-rustix.spec
@@ -1,28 +1,27 @@
-# Generated by rust2rpm 21
+# Generated by rust2rpm 23
%bcond_without check
%global debug_package %{nil}
%global crate rustix
-Name: rust-%{crate}
-Version: 0.33.6
+Name: rust-rustix
+Version: 0.35.12
Release: %autorelease
Summary: Safe Rust bindings to POSIX/Unix/Linux/Winsock2-like syscalls
-# Upstream license specification: Apache-2.0 WITH LLVM-exception OR Apache-2.0 OR MIT
-License: ASL 2.0 or MIT
+License: Apache-2.0 WITH LLVM-exception OR Apache-2.0 OR MIT
URL: https://crates.io/crates/rustix
Source: %{crates_source}
-# Initial patched metadata
-# * drop windows-specific dependencies
+# Automatically generated patch to strip foreign dependencies
+Patch: rustix-fix-metadata-auto.diff
+# Manually created patch for downstream crate metadata changes
# * drop unused, benchmark-only criterion dev-dependency to speed up builds
-Patch0: rustix-fix-metadata.diff
-# * unconditionally compile C code from source
-Patch1: 0001-Unconditionally-compile-C-code-from-source.patch
-# * backported patch to fix vDSO parsing on ppc64le
-Patch2: 0002-Fix-vDSO-parsing-on-powerpc64.patch
-
-ExclusiveArch: %{rust_arches}
+# * drop dependencies on compiler internals
+# * make cc build-dependency non-optional
+# * add missing dependencies for s390x
+Patch: rustix-fix-metadata.diff
+# * unconditionally rebuild static objects from Assembly
+Patch: 0001-Unconditionally-compile-C-code-from-source.patch
BuildRequires: rust-packaging >= 21
@@ -46,6 +45,7 @@ use the "%{crate}" crate.
%license %{crate_instdir}/LICENSE-Apache-2.0_WITH_LLVM-exception
%license %{crate_instdir}/LICENSE-MIT
%doc %{crate_instdir}/CODE_OF_CONDUCT.md
+%doc %{crate_instdir}/CONTRIBUTING.md
%doc %{crate_instdir}/ORG_CODE_OF_CONDUCT.md
%doc %{crate_instdir}/README.md
%doc %{crate_instdir}/SECURITY.md
@@ -63,6 +63,18 @@ use the "default" feature of the "%{crate}" crate.
%files -n %{name}+default-devel
%ghost %{crate_instdir}/Cargo.toml
+%package -n %{name}+all-apis-devel
+Summary: %{summary}
+BuildArch: noarch
+
+%description -n %{name}+all-apis-devel %{_description}
+
+This package contains library source intended for building other packages which
+use the "all-apis" feature of the "%{crate}" crate.
+
+%files -n %{name}+all-apis-devel
+%ghost %{crate_instdir}/Cargo.toml
+
%package -n %{name}+all-impls-devel
Summary: %{summary}
BuildArch: noarch
@@ -87,16 +99,28 @@ use the "async-std" feature of the "%{crate}" crate.
%files -n %{name}+async-std-devel
%ghost %{crate_instdir}/Cargo.toml
-%package -n %{name}+errno-devel
+%package -n %{name}+cc-devel
Summary: %{summary}
BuildArch: noarch
-%description -n %{name}+errno-devel %{_description}
+%description -n %{name}+cc-devel %{_description}
This package contains library source intended for building other packages which
-use the "errno" feature of the "%{crate}" crate.
+use the "cc" feature of the "%{crate}" crate.
-%files -n %{name}+errno-devel
+%files -n %{name}+cc-devel
+%ghost %{crate_instdir}/Cargo.toml
+
+%package -n %{name}+fs-devel
+Summary: %{summary}
+BuildArch: noarch
+
+%description -n %{name}+fs-devel %{_description}
+
+This package contains library source intended for building other packages which
+use the "fs" feature of the "%{crate}" crate.
+
+%files -n %{name}+fs-devel
%ghost %{crate_instdir}/Cargo.toml
%package -n %{name}+fs-err-devel
@@ -123,6 +147,18 @@ use the "io-lifetimes" feature of the "%{crate}" crate.
%files -n %{name}+io-lifetimes-devel
%ghost %{crate_instdir}/Cargo.toml
+%package -n %{name}+io_uring-devel
+Summary: %{summary}
+BuildArch: noarch
+
+%description -n %{name}+io_uring-devel %{_description}
+
+This package contains library source intended for building other packages which
+use the "io_uring" feature of the "%{crate}" crate.
+
+%files -n %{name}+io_uring-devel
+%ghost %{crate_instdir}/Cargo.toml
+
%package -n %{name}+itoa-devel
Summary: %{summary}
BuildArch: noarch
@@ -147,6 +183,18 @@ use the "libc" feature of the "%{crate}" crate.
%files -n %{name}+libc-devel
%ghost %{crate_instdir}/Cargo.toml
+%package -n %{name}+libc_errno-devel
+Summary: %{summary}
+BuildArch: noarch
+
+%description -n %{name}+libc_errno-devel %{_description}
+
+This package contains library source intended for building other packages which
+use the "libc_errno" feature of the "%{crate}" crate.
+
+%files -n %{name}+libc_errno-devel
+%ghost %{crate_instdir}/Cargo.toml
+
%package -n %{name}+mio-devel
Summary: %{summary}
BuildArch: noarch
@@ -159,6 +207,30 @@ use the "mio" feature of the "%{crate}" crate.
%files -n %{name}+mio-devel
%ghost %{crate_instdir}/Cargo.toml
+%package -n %{name}+mm-devel
+Summary: %{summary}
+BuildArch: noarch
+
+%description -n %{name}+mm-devel %{_description}
+
+This package contains library source intended for building other packages which
+use the "mm" feature of the "%{crate}" crate.
+
+%files -n %{name}+mm-devel
+%ghost %{crate_instdir}/Cargo.toml
+
+%package -n %{name}+net-devel
+Summary: %{summary}
+BuildArch: noarch
+
+%description -n %{name}+net-devel %{_description}
+
+This package contains library source intended for building other packages which
+use the "net" feature of the "%{crate}" crate.
+
+%files -n %{name}+net-devel
+%ghost %{crate_instdir}/Cargo.toml
+
%package -n %{name}+once_cell-devel
Summary: %{summary}
BuildArch: noarch
@@ -183,6 +255,30 @@ use the "os_pipe" feature of the "%{crate}" crate.
%files -n %{name}+os_pipe-devel
%ghost %{crate_instdir}/Cargo.toml
+%package -n %{name}+param-devel
+Summary: %{summary}
+BuildArch: noarch
+
+%description -n %{name}+param-devel %{_description}
+
+This package contains library source intended for building other packages which
+use the "param" feature of the "%{crate}" crate.
+
+%files -n %{name}+param-devel
+%ghost %{crate_instdir}/Cargo.toml
+
+%package -n %{name}+process-devel
+Summary: %{summary}
+BuildArch: noarch
+
+%description -n %{name}+process-devel %{_description}
+
+This package contains library source intended for building other packages which
+use the "process" feature of the "%{crate}" crate.
+
+%files -n %{name}+process-devel
+%ghost %{crate_instdir}/Cargo.toml
+
%package -n %{name}+procfs-devel
Summary: %{summary}
BuildArch: noarch
@@ -195,6 +291,30 @@ use the "procfs" feature of the "%{crate}" crate.
%files -n %{name}+procfs-devel
%ghost %{crate_instdir}/Cargo.toml
+%package -n %{name}+rand-devel
+Summary: %{summary}
+BuildArch: noarch
+
+%description -n %{name}+rand-devel %{_description}
+
+This package contains library source intended for building other packages which
+use the "rand" feature of the "%{crate}" crate.
+
+%files -n %{name}+rand-devel
+%ghost %{crate_instdir}/Cargo.toml
+
+%package -n %{name}+runtime-devel
+Summary: %{summary}
+BuildArch: noarch
+
+%description -n %{name}+runtime-devel %{_description}
+
+This package contains library source intended for building other packages which
+use the "runtime" feature of the "%{crate}" crate.
+
+%files -n %{name}+runtime-devel
+%ghost %{crate_instdir}/Cargo.toml
+
%package -n %{name}+socket2-devel
Summary: %{summary}
BuildArch: noarch
@@ -219,6 +339,42 @@ use the "std" feature of the "%{crate}" crate.
%files -n %{name}+std-devel
%ghost %{crate_instdir}/Cargo.toml
+%package -n %{name}+termios-devel
+Summary: %{summary}
+BuildArch: noarch
+
+%description -n %{name}+termios-devel %{_description}
+
+This package contains library source intended for building other packages which
+use the "termios" feature of the "%{crate}" crate.
+
+%files -n %{name}+termios-devel
+%ghost %{crate_instdir}/Cargo.toml
+
+%package -n %{name}+thread-devel
+Summary: %{summary}
+BuildArch: noarch
+
+%description -n %{name}+thread-devel %{_description}
+
+This package contains library source intended for building other packages which
+use the "thread" feature of the "%{crate}" crate.
+
+%files -n %{name}+thread-devel
+%ghost %{crate_instdir}/Cargo.toml
+
+%package -n %{name}+time-devel
+Summary: %{summary}
+BuildArch: noarch
+
+%description -n %{name}+time-devel %{_description}
+
+This package contains library source intended for building other packages which
+use the "time" feature of the "%{crate}" crate.
+
+%files -n %{name}+time-devel
+%ghost %{crate_instdir}/Cargo.toml
+
%package -n %{name}+tokio-devel
Summary: %{summary}
BuildArch: noarch
@@ -243,27 +399,37 @@ use the "use-libc" feature of the "%{crate}" crate.
%files -n %{name}+use-libc-devel
%ghost %{crate_instdir}/Cargo.toml
+%package -n %{name}+use-libc-auxv-devel
+Summary: %{summary}
+BuildArch: noarch
+
+%description -n %{name}+use-libc-auxv-devel %{_description}
+
+This package contains library source intended for building other packages which
+use the "use-libc-auxv" feature of the "%{crate}" crate.
+
+%files -n %{name}+use-libc-auxv-devel
+%ghost %{crate_instdir}/Cargo.toml
+
%prep
%autosetup -n %{crate}-%{version_no_tilde} -p1
%cargo_prep
# Remove pre-built binaries
-rm src/imp/linux_raw/arch/outline/debug/*.a
-rm src/imp/linux_raw/arch/outline/release/*.a
+rm -r src/backend/linux_raw/arch/outline/debug/
+rm -r src/backend/linux_raw/arch/outline/release/
%generate_buildrequires
-%cargo_generate_buildrequires
+%cargo_generate_buildrequires -a
%build
-%cargo_build
+%cargo_build -a
%install
-%cargo_install
+%cargo_install -a
%if %{with check}
%check
-# * skip a test that requires a file which is not included in published crates
-# * skip a test that tries to build and run an example with cargo
-%cargo_test -- -- --skip test_backends --skip dup2_to_replace_stdio
+%cargo_test -a
%endif
%changelog
diff --git a/rust2rpm.conf b/rust2rpm.conf
new file mode 100644
index 0000000..f626714
--- /dev/null
+++ b/rust2rpm.conf
@@ -0,0 +1,2 @@
+[DEFAULT]
+all-features = true
diff --git a/rustix-fix-metadata-auto.diff b/rustix-fix-metadata-auto.diff
new file mode 100644
index 0000000..b44c5f3
--- /dev/null
+++ b/rustix-fix-metadata-auto.diff
@@ -0,0 +1,48 @@
+--- rustix-0.35.12/Cargo.toml 1970-01-01T00:00:01+00:00
++++ rustix-0.35.12/Cargo.toml 1970-01-01T00:00:01+00:00
+@@ -180,14 +180,6 @@
+ ]
+ use-libc-auxv = ["libc"]
+
+-[target."cfg(all(any(target_os = \"android\", target_os = \"linux\"), any(rustix_use_libc, miri, not(all(target_os = \"linux\", any(target_arch = \"x86\", all(target_arch = \"x86_64\", target_pointer_width = \"64\"), all(target_endian = \"little\", any(target_arch = \"arm\", all(target_arch = \"aarch64\", target_pointer_width = \"64\"), target_arch = \"powerpc64\", target_arch = \"riscv64\", target_arch = \"mips\", target_arch = \"mips64\"))))))))".dependencies.linux-raw-sys]
+-version = "0.0.46"
+-features = [
+- "general",
+- "no_std",
+-]
+-default-features = false
+-
+ [target."cfg(all(not(rustix_use_libc), not(miri), target_os = \"linux\", any(target_arch = \"x86\", all(target_arch = \"x86_64\", target_pointer_width = \"64\"), all(target_endian = \"little\", any(target_arch = \"arm\", all(target_arch = \"aarch64\", target_pointer_width = \"64\"), target_arch = \"powerpc64\", target_arch = \"riscv64\", target_arch = \"mips\", target_arch = \"mips64\")))))".dependencies.libc]
+ version = "0.2.133"
+ features = ["extra_traits"]
+@@ -209,15 +201,6 @@
+ ]
+ default-features = false
+
+-[target."cfg(any(rustix_use_libc, miri, not(all(target_os = \"linux\", any(target_arch = \"x86\", all(target_arch = \"x86_64\", target_pointer_width = \"64\"), all(target_endian = \"little\", any(target_arch = \"arm\", all(target_arch = \"aarch64\", target_pointer_width = \"64\"), target_arch = \"powerpc64\", target_arch = \"riscv64\", target_arch = \"mips\", target_arch = \"mips64\")))))))".dependencies.libc]
+-version = "0.2.133"
+-features = ["extra_traits"]
+-
+-[target."cfg(any(rustix_use_libc, miri, not(all(target_os = \"linux\", any(target_arch = \"x86\", all(target_arch = \"x86_64\", target_pointer_width = \"64\"), all(target_endian = \"little\", any(target_arch = \"arm\", all(target_arch = \"aarch64\", target_pointer_width = \"64\"), target_arch = \"powerpc64\", target_arch = \"riscv64\", target_arch = \"mips\", target_arch = \"mips64\")))))))".dependencies.libc_errno]
+-version = "0.2.8"
+-default-features = false
+-package = "errno"
+-
+ [target."cfg(any(target_os = \"android\", target_os = \"linux\"))".dependencies.once_cell]
+ version = "1.5.2"
+ optional = true
+@@ -225,14 +208,3 @@
+ [target."cfg(not(target_os = \"emscripten\"))".dev-dependencies.criterion]
+ version = "0.3"
+
+-[target."cfg(windows)".dependencies.windows-sys]
+-version = "0.36.0"
+-features = [
+- "Win32_Foundation",
+- "Win32_Networking_WinSock",
+- "Win32_NetworkManagement_IpHelper",
+- "Win32_System_Threading",
+-]
+-
+-[target."cfg(windows)".dev-dependencies.ctor]
+-version = "0.1.21"
diff --git a/rustix-fix-metadata.diff b/rustix-fix-metadata.diff
index c23ba2f..37aa5d8 100644
--- a/rustix-fix-metadata.diff
+++ b/rustix-fix-metadata.diff
@@ -1,25 +1,81 @@
---- rustix-0.33.6/Cargo.toml 1970-01-01T00:00:01+00:00
-+++ rustix-0.33.6/Cargo.toml 2022-04-13T16:51:09.165066+00:00
-@@ -97,7 +97,6 @@
+--- rustix-0.35.12/Cargo.toml 1970-01-01T00:00:01+00:00
++++ rustix-0.35.12/Cargo.toml 2022-10-28T14:25:16.540213+00:00
+@@ -62,22 +62,8 @@
+ name = "mod"
+ harness = false
+
+-[dependencies.alloc]
+-version = "1.0.0"
+-optional = true
+-package = "rustc-std-workspace-alloc"
+-
+ [dependencies.bitflags]
+ version = "1.2.1"
+-
+-[dependencies.compiler_builtins]
+-version = "0.1.49"
+-optional = true
+-
+-[dependencies.core]
+-version = "1.0.0"
+-optional = true
+-package = "rustc-std-workspace-core"
+
+ [dependencies.io-lifetimes]
+ version = "0.7.0"
+@@ -113,7 +99,6 @@
[build-dependencies.cc]
version = "1.0.68"
-optional = true
[features]
- all-impls = [
-@@ -156,10 +155,6 @@
+ all-apis = [
+@@ -139,6 +124,7 @@
+ "fs-err",
]
- default-features = false
+ async-std = ["io-lifetimes/async-std"]
++cc = []
+ default = [
+ "std",
+ "use-libc-auxv",
+@@ -161,13 +147,6 @@
+ ]
+ rand = []
+ runtime = []
+-rustc-dep-of-std = [
+- "core",
+- "alloc",
+- "compiler_builtins",
+- "linux-raw-sys/rustc-dep-of-std",
+- "bitflags/rustc-dep-of-std",
+-]
+ socket2 = ["io-lifetimes/socket2"]
+ std = ["io-lifetimes"]
+ termios = []
+@@ -180,18 +159,18 @@
+ ]
+ use-libc-auxv = ["libc"]
--[target."cfg(all(windows, not(target_vendor = \"uwp\")))".dependencies.winapi]
--version = "0.3.9"
--features = ["handleapi"]
--
- [target."cfg(any(rustix_use_libc, miri, not(all(target_os = \"linux\", any(target_arch = \"x86\", all(target_arch = \"x86_64\", not(target_pointer_width = \"32\")), target_arch = \"arm\", target_arch = \"aarch64\", target_arch = \"powerpc64\", target_arch = \"riscv64\", target_arch = \"mips\", target_arch = \"mips64\")))))".dependencies.errno]
+-[target."cfg(all(not(rustix_use_libc), not(miri), target_os = \"linux\", any(target_arch = \"x86\", all(target_arch = \"x86_64\", target_pointer_width = \"64\"), all(target_endian = \"little\", any(target_arch = \"arm\", all(target_arch = \"aarch64\", target_pointer_width = \"64\"), target_arch = \"powerpc64\", target_arch = \"riscv64\", target_arch = \"mips\", target_arch = \"mips64\")))))".dependencies.libc]
++[target."cfg(all(not(rustix_use_libc), not(miri), target_os = \"linux\", any(target_arch = \"x86\", all(target_arch = \"x86_64\", target_pointer_width = \"64\"), all(target_endian = \"big\", target_arch = \"s390x\"), all(target_endian = \"little\", any(target_arch = \"arm\", all(target_arch = \"aarch64\", target_pointer_width = \"64\"), target_arch = \"powerpc64\", target_arch = \"riscv64\", target_arch = \"mips\", target_arch = \"mips64\")))))".dependencies.libc]
+ version = "0.2.133"
+ features = ["extra_traits"]
+ optional = true
+
+-[target."cfg(all(not(rustix_use_libc), not(miri), target_os = \"linux\", any(target_arch = \"x86\", all(target_arch = \"x86_64\", target_pointer_width = \"64\"), all(target_endian = \"little\", any(target_arch = \"arm\", all(target_arch = \"aarch64\", target_pointer_width = \"64\"), target_arch = \"powerpc64\", target_arch = \"riscv64\", target_arch = \"mips\", target_arch = \"mips64\")))))".dependencies.libc_errno]
++[target."cfg(all(not(rustix_use_libc), not(miri), target_os = \"linux\", any(target_arch = \"x86\", all(target_arch = \"x86_64\", target_pointer_width = \"64\"), all(target_endian = \"big\", target_arch = \"s390x\"), all(target_endian = \"little\", any(target_arch = \"arm\", all(target_arch = \"aarch64\", target_pointer_width = \"64\"), target_arch = \"powerpc64\", target_arch = \"riscv64\", target_arch = \"mips\", target_arch = \"mips64\")))))".dependencies.libc_errno]
version = "0.2.8"
+ optional = true
default-features = false
-@@ -171,16 +166,3 @@
+ package = "errno"
+
+-[target."cfg(all(not(rustix_use_libc), not(miri), target_os = \"linux\", any(target_arch = \"x86\", all(target_arch = \"x86_64\", target_pointer_width = \"64\"), all(target_endian = \"little\", any(target_arch = \"arm\", all(target_arch = \"aarch64\", target_pointer_width = \"64\"), target_arch = \"powerpc64\", target_arch = \"riscv64\", target_arch = \"mips\", target_arch = \"mips64\")))))".dependencies.linux-raw-sys]
++[target."cfg(all(not(rustix_use_libc), not(miri), target_os = \"linux\", any(target_arch = \"x86\", all(target_arch = \"x86_64\", target_pointer_width = \"64\"), all(target_endian = \"big\", target_arch = \"s390x\"), all(target_endian = \"little\", any(target_arch = \"arm\", all(target_arch = \"aarch64\", target_pointer_width = \"64\"), target_arch = \"powerpc64\", target_arch = \"riscv64\", target_arch = \"mips\", target_arch = \"mips64\")))))".dependencies.linux-raw-sys]
+ version = "0.0.46"
+ features = [
+ "general",
+@@ -204,7 +183,3 @@
[target."cfg(any(target_os = \"android\", target_os = \"linux\"))".dependencies.once_cell]
version = "1.5.2"
optional = true
@@ -27,12 +83,3 @@
-[target."cfg(not(target_os = \"emscripten\"))".dev-dependencies.criterion]
-version = "0.3"
-
--[target."cfg(windows)".dependencies.winapi]
--version = "0.3.9"
--features = [
-- "ws2ipdef",
-- "ws2tcpip",
--]
--
--[target."cfg(windows)".dev-dependencies.ctor]
--version = "0.1.21"
diff --git a/sources b/sources
index 2711f10..391f43b 100644
--- a/sources
+++ b/sources
@@ -1 +1 @@
-SHA512 (rustix-0.33.6.crate) = 786afb057d5b63549342859bf2892036de0bb45388a981a33c5de9a54ccf71b9cd1f48b4fe82e3206a1688e87d2482eaf4c6df635c0e3dd9e3f10bc5c5bb17f2
+SHA512 (rustix-0.35.12.crate) = 72dbca8616a7d2102a073eab049cf34b8301560923cfaf162c81d136cffa75be5f8da79533f6c9d64f196337ef83c1f7dcc9b44141701a8dea5ec2f278624dfc
1 year, 1 month
[Report] Packages Restricting Arches
by root
New package excluding arches (2)
============================
- rust-pretty-bytes
ExclusiveArch: %{rust_arches}
- xbyak
ExclusiveArch: x86_64
List of packages currently excluding arches (2863)
===========================================
- 0ad
ExclusiveArch: %{ix86} x86_64 %{arm} aarch64 ppc64le
- 90-Second-Portraits
ExclusiveArch: %{arm} %{ix86} x86_64 aarch64 ppc64le
- BareBonesBrowserLaunch
ExclusiveArch: %{java_arches} noarch
- CFR
ExclusiveArch: %{java_arches} noarch
- CardManager
ExclusiveArch: %{java_arches} noarch
- GAPDoc
ExclusiveArch: aarch64 ppc64le s390x x86_64 noarch
- GoldenCheetah
ExclusiveArch: %{qt5_qtwebengine_arches}
- GtkAda
ExclusiveArch: %{GPRbuild_arches}
- GtkAda3
ExclusiveArch: %{GPRbuild_arches}
- IPAddress
ExclusiveArch: %{java_arches} noarch
- Mars
ExclusiveArch: %{java_arches} noarch
- OpenColorIO
ExclusiveArch: x86_64 ppc64le
- OpenImageIO
ExclusiveArch: x86_64 ppc64le
- OpenMolcas
ExclusiveArch: x86_64 aarch64 ppc64le s390x
- OpenStego
ExclusiveArch: %{java_arches} noarch
- PragmARC
ExclusiveArch: %{GPRbuild_arches}
- RdRand
ExclusiveArch: %{ix86} x86_64
- RediSearch
ExclusiveArch: x86_64
- SLOF
ExclusiveArch: ppc64le
- YafaRay
ExclusiveArch: %{ix86} x86_64
- aardvark-dns
ExclusiveArch: %{rust_arches}
- aboot
ExclusiveArch: alpha
- accel-config
ExclusiveArch: %{ix86} x86_64
- acpid
ExclusiveArch: ia64 x86_64 %{ix86} %{arm} aarch64
- ahven
ExclusiveArch: %{GPRbuild_arches}
- algobox
ExclusiveArch: %{qt5_qtwebengine_arches}
- alleyoop
ExclusiveArch: %{ix86} x86_64 ppc ppc64 ppc64le s390x %{arm} aarch64
- american-fuzzy-lop
ExclusiveArch: %{ix86} x86_64 s390x
- anet
ExclusiveArch: %{GPRbuild_arches}
- anki
ExclusiveArch: %{qt5_qtwebengine_arches} noarch
- ant
ExclusiveArch: %{java_arches} noarch
- ant-antunit
ExclusiveArch: %{java_arches} noarch
- antlr
ExclusiveArch: %{java_arches}
- antlr-maven-plugin
ExclusiveArch: %{java_arches} noarch
- antlr3
ExclusiveArch: %{java_arches}
- antlr32
ExclusiveArch: %{java_arches} noarch
- antlr4-project
ExclusiveArch: %{java_arches}
- antlrworks
ExclusiveArch: %{java_arches} noarch
- aopalliance
ExclusiveArch: %{java_arches} noarch
- apache-commons-beanutils
ExclusiveArch: %{java_arches} noarch
- apache-commons-cli
ExclusiveArch: %{java_arches} noarch
- apache-commons-codec
ExclusiveArch: %{java_arches} noarch
- apache-commons-collections
ExclusiveArch: %{java_arches} noarch
- apache-commons-collections4
ExclusiveArch: %{java_arches} noarch
- apache-commons-compress
ExclusiveArch: %{java_arches} noarch
- apache-commons-digester
ExclusiveArch: %{java_arches} noarch
- apache-commons-exec
ExclusiveArch: %{java_arches} noarch
- apache-commons-fileupload
ExclusiveArch: %{java_arches} noarch
- apache-commons-io
ExclusiveArch: %{java_arches} noarch
- apache-commons-jxpath
ExclusiveArch: %{java_arches} noarch
- apache-commons-lang3
ExclusiveArch: %{java_arches} noarch
- apache-commons-logging
ExclusiveArch: %{java_arches} noarch
- apache-commons-math
ExclusiveArch: %{java_arches} noarch
- apache-commons-modeler
ExclusiveArch: %{java_arches} noarch
- apache-commons-net
ExclusiveArch: %{java_arches} noarch
- apache-commons-parent
ExclusiveArch: %{java_arches} noarch
- apache-commons-pool
ExclusiveArch: %{java_arches} noarch
- apache-ivy
ExclusiveArch: %{java_arches} noarch
- apache-parent
ExclusiveArch: %{java_arches} noarch
- apache-resource-bundles
ExclusiveArch: %{java_arches} noarch
- apache-sshd
ExclusiveArch: %{java_arches} noarch
- apiguardian
ExclusiveArch: %{java_arches} noarch
- apmd
ExclusiveArch: %{ix86}
- appstream-generator
ExclusiveArch: %{ldc_arches}
- aqute-bnd
ExclusiveArch: %{java_arches} noarch
- args4j
ExclusiveArch: %{java_arches} noarch
- arm-trusted-firmware
ExclusiveArch: aarch64
- assertj-core
ExclusiveArch: %{java_arches} noarch
- atinject
ExclusiveArch: %{java_arches} noarch
- aunit
ExclusiveArch: %GPRbuild_arches
- auto
ExclusiveArch: %{java_arches} noarch
- avgtime
ExclusiveArch: %{ldc_arches}
- aws
ExclusiveArch: %GPRbuild_arches
- azure-cli
ExclusiveArch: %{java_arches} noarch
- batik
ExclusiveArch: %{java_arches} noarch
- bcal
ExclusiveArch: x86_64 aarch64 ia64 ppc64 ppc64le s390x
- bcc
ExclusiveArch: x86_64 %{power64} aarch64 s390x armv7hl
- bcel
ExclusiveArch: %{java_arches} noarch
- bcm283x-firmware
ExclusiveArch: %{arm} aarch64
- beansbinding
ExclusiveArch: %{java_arches} noarch
- belle-sip
ExclusiveArch: %{java_arches}
- berusky2
ExclusiveArch: %{ix86} x86_64 %{arm} aarch64 %{mips}
- beust-jcommander
ExclusiveArch: %{java_arches} noarch
- biosdevname
ExclusiveArch: %{ix86} x86_64
- blender
ExclusiveArch: x86_64 aarch64 ppc64le s390x
- bless
ExclusiveArch: %mono_arches
- bolzplatz2006
ExclusiveArch: %{java_arches}
- bouncycastle
ExclusiveArch: %{java_arches} noarch
- bpftrace
ExclusiveArch: x86_64 %{power64} aarch64 s390x
- brazil
ExclusiveArch: %{java_arches} noarch
- bsf
ExclusiveArch: %{java_arches} noarch
- bsh
ExclusiveArch: %{java_arches} noarch
- buildnumber-maven-plugin
ExclusiveArch: %{java_arches} noarch
- byte-buddy
ExclusiveArch: %{java_arches} noarch
- byteman
ExclusiveArch: %{java_arches} noarch
- cachelib
ExclusiveArch: x86_64 aarch64 ppc64le
- calamares
ExclusiveArch: %{ix86} x86_64 aarch64
- calibre
ExclusiveArch: %{qt5_qtwebengine_arches}
- cambozola
ExclusiveArch: %{java_arches} noarch
- canl-java
ExclusiveArch: %{java_arches} noarch
- ccdciel
ExclusiveArch: %{fpc_arches}
- cdcollect
ExclusiveArch: %{mono_arches}
- cdi-api
ExclusiveArch: %{java_arches} noarch
- ceph
ExclusiveArch: x86_64 aarch64 ppc64le s390x
- cglib
ExclusiveArch: %{java_arches} noarch
- chromium
ExclusiveArch: x86_64 i686
ExclusiveArch: x86_64 aarch64
ExclusiveArch: x86_64 i686 aarch64
- cjdns
ExclusiveArch: %{nodejs_arches}
- classloader-leak-test-framework
ExclusiveArch: %{java_arches} noarch
- classpathless-compiler
ExclusiveArch: %{java_arches} noarch
- clevis-pin-tpm2
ExclusiveArch: %{rust_arches}
- clojure
ExclusiveArch: %{java_arches} noarch
- clojure-core-specs-alpha
ExclusiveArch: %{java_arches} noarch
- clojure-maven-plugin
ExclusiveArch: %{java_arches} noarch
- clojure-spec-alpha
ExclusiveArch: %{java_arches} noarch
- cmospwd
ExclusiveArch: %{ix86} x86_64
- cmrt
ExclusiveArch: %{ix86} x86_64 ia64
- codehaus-parent
ExclusiveArch: %{java_arches} noarch
- coffee-script
ExclusiveArch: %{nodejs_arches} noarch
- colorful
ExclusiveArch: %{fpc_arches}
- colossus
ExclusiveArch: %{java_arches} noarch
- console-image-viewer
ExclusiveArch: %{java_arches} noarch
- coq
ExclusiveArch: %{java_arches}
- cortado
ExclusiveArch: %{java_arches} noarch
- cpu-x
ExclusiveArch: i686 x86_64
- cpufetch
ExclusiveArch: %{arm} aarch64 x86_64 ppc ppc64 ppc64le
- cpuid
ExclusiveArch: %{ix86} x86_64
- cqrlog
ExclusiveArch: %{fpc_arches}
- crash
ExclusiveArch: %{ix86} ia64 x86_64 ppc ppc64 s390 s390x %{arm} aarch64 ppc64le
- crash-gcore-command
ExclusiveArch: aarch64 ppc64le x86_64
- crash-trace-command
ExclusiveArch: aarch64 ppc64le s390x x86_64
- cri-o
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- cri-tools
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- criu
ExclusiveArch: x86_64 %{arm} ppc64le aarch64 s390x
- cryptlib
ExclusiveArch: x86_64 aarch64 ppc64le
- crypto-policies
ExclusiveArch: %{java_arches} noarch
- cryptobone
ExclusiveArch: x86_64 ppc64le aarch64
- csslint
ExclusiveArch: %{nodejs_arches} noarch
- cvc4
ExclusiveArch: %{java_arches}
- daq
ExclusiveArch: x86_64 aarch64
- dbus-parsec
ExclusiveArch: %{rust_arches}
- dbus-sharp
ExclusiveArch: %mono_arches
- dbus-sharp-glib
ExclusiveArch: %mono_arches
- decentxml
ExclusiveArch: %{java_arches} noarch
- deepin-daemon
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- deepin-desktop-schemas
ExclusiveArch: %{go_arches}
- directory-maven-plugin
ExclusiveArch: %{java_arches} noarch
- dirgra
ExclusiveArch: %{java_arches} noarch
- disruptor
ExclusiveArch: %{java_arches} noarch
- ditaa
ExclusiveArch: %{java_arches} noarch
- dlm
ExclusiveArch: i686 x86_64
- dmidecode
ExclusiveArch: %{ix86} x86_64 ia64 aarch64
- dmtcp
ExclusiveArch: x86_64
- docker-distribution
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- dolphin-emu
ExclusiveArch: x86_64 aarch64
- dom4j
ExclusiveArch: %{java_arches} noarch
- dotnet6.0
ExclusiveArch: aarch64 x86_64 s390x
ExclusiveArch: x86_64
- doublecmd
ExclusiveArch: %{ix86} x86_64
- dpdk
ExclusiveArch: x86_64 i686 aarch64 ppc64le
- dub
ExclusiveArch: %{ldc_arches}
- dxvk-native
ExclusiveArch: %{ix86} x86_64
- dyninst
ExclusiveArch: %{ix86} x86_64 ppc64le aarch64
- e3
ExclusiveArch: %{ix86} x86_64
- easymock
ExclusiveArch: %{java_arches} noarch
- ecj
ExclusiveArch: %{java_arches} noarch
- eclipse-swt
ExclusiveArch: %{java_arches}
- ed25519-java
ExclusiveArch: %{java_arches} noarch
- edk2
ExclusiveArch: x86_64 aarch64
- efibootmgr
ExclusiveArch: %{efi}
- efifs
ExclusiveArch: %{efi}
- efitools
ExclusiveArch: %{efi}
- efivar
ExclusiveArch: %{efi}
- elk
ExclusiveArch: x86_64 %{ix86}
ExclusiveArch: x86_64 %{ix86} aarch64 %{arm} %{power64}
- emacs-slime
ExclusiveArch: %{arm} %{ix86} x86_64 ppc sparcv9 aarch64
- enjarify
ExclusiveArch: %{java_arches} noarch
- enki
ExclusiveArch: %{qt5_qtwebengine_arches} noarch
- envytools
ExclusiveArch: %{ix86} x86_64 %{arm} aarch64
- eric
ExclusiveArch: %{qt5_qtwebengine_arches} noarch
- erlang-corba
ExclusiveArch: %{java_arches}
- eth-tools
ExclusiveArch: x86_64
- exec-maven-plugin
ExclusiveArch: %{java_arches} noarch
- extra-enforcer-rules
ExclusiveArch: %{java_arches} noarch
- fasterxml-oss-parent
ExclusiveArch: %{java_arches} noarch
- fb303
ExclusiveArch: x86_64 aarch64 ppc64le
- fbthrift
ExclusiveArch: x86_64 aarch64 ppc64le
- fcitx-libpinyin
ExclusiveArch: %{qt5_qtwebengine_arches}
- fedora-dockerfiles
ExclusiveArch: %{go_arches}
- felix-parent
ExclusiveArch: %{java_arches} noarch
- felix-utils
ExclusiveArch: %{java_arches} noarch
- fernflower
ExclusiveArch: %{java_arches} noarch
- fes
ExclusiveArch: %{ix86} x86_64
- filedrop
ExclusiveArch: %{java_arches} noarch
- fishbowl
ExclusiveArch: %{java_arches} noarch
- fizz
ExclusiveArch: x86_64 aarch64 ppc64le
- flocq
ExclusiveArch: %{java_arches}
- florist
ExclusiveArch: %{GPRbuild_arches}
- fluent-bit
ExclusiveArch: x86_64 aarch64
- flute
ExclusiveArch: %{java_arches} noarch
- folly
ExclusiveArch: x86_64 aarch64 ppc64le
- fop
ExclusiveArch: %{java_arches} noarch
- forge-parent
ExclusiveArch: %{java_arches} noarch
- fpc
ExclusiveArch: %{arm} aarch64 %{ix86} x86_64 ppc64le
- frama-c
ExclusiveArch: %{java_arches}
- freecol
ExclusiveArch: %{java_arches} noarch
- freemarker
ExclusiveArch: %{java_arches} noarch
- freerouting
ExclusiveArch: %{java_arches} noarch
- frescobaldi
ExclusiveArch: %{qt5_qtwebengine_arches}
- frysk
ExclusiveArch: x86_64 ppc64
- fusesource-pom
ExclusiveArch: %{java_arches} noarch
- fwts
ExclusiveArch: x86_64 %{arm} aarch64 s390x riscv64 %{power64}
- fwupd-efi
ExclusiveArch: x86_64 aarch64
- ga
ExclusiveArch: %{ix86} x86_64 %{arm} aarch64 ppc64le
- gap-pkg-ace
ExclusiveArch: aarch64 ppc64le s390x x86_64
- gap-pkg-aclib
ExclusiveArch: aarch64 ppc64le s390x x86_64 noarch
- gap-pkg-alnuth
ExclusiveArch: aarch64 ppc64le s390x x86_64 noarch
- gap-pkg-atlasrep
ExclusiveArch: aarch64 ppc64le s390x x86_64 noarch
- gap-pkg-autodoc
ExclusiveArch: aarch64 ppc64le s390x x86_64 noarch
- gap-pkg-automata
ExclusiveArch: aarch64 ppc64le s390x x86_64 noarch
- gap-pkg-autpgrp
ExclusiveArch: aarch64 ppc64le s390x x86_64 noarch
- gap-pkg-browse
ExclusiveArch: aarch64 ppc64le s390x x86_64
- gap-pkg-caratinterface
ExclusiveArch: aarch64 ppc64le s390x x86_64 noarch
- gap-pkg-circle
ExclusiveArch: aarch64 ppc64le s390x x86_64 noarch
- gap-pkg-cohomolo
ExclusiveArch: aarch64 ppc64le s390x x86_64
- gap-pkg-congruence
ExclusiveArch: aarch64 ppc64le s390x x86_64 noarch
- gap-pkg-corelg
ExclusiveArch: aarch64 ppc64le s390x x86_64 noarch
- gap-pkg-crime
ExclusiveArch: aarch64 ppc64le s390x x86_64 noarch
- gap-pkg-crisp
ExclusiveArch: aarch64 ppc64le s390x x86_64 noarch
- gap-pkg-crypting
ExclusiveArch: aarch64 ppc64le s390x x86_64
- gap-pkg-cryst
ExclusiveArch: aarch64 ppc64le s390x x86_64 noarch
- gap-pkg-crystcat
ExclusiveArch: aarch64 ppc64le s390x x86_64 noarch
- gap-pkg-ctbllib
ExclusiveArch: aarch64 ppc64le s390x x86_64 noarch
- gap-pkg-curlinterface
ExclusiveArch: aarch64 ppc64le s390x x86_64
- gap-pkg-cvec
ExclusiveArch: aarch64 ppc64le s390x x86_64
- gap-pkg-datastructures
ExclusiveArch: aarch64 ppc64le s390x x86_64
- gap-pkg-design
ExclusiveArch: aarch64 ppc64le s390x x86_64 noarch
- gap-pkg-digraphs
ExclusiveArch: aarch64 ppc64le s390x x86_64
- gap-pkg-edim
ExclusiveArch: aarch64 ppc64le s390x x86_64
- gap-pkg-factint
ExclusiveArch: aarch64 ppc64le s390x x86_64 noarch
- gap-pkg-ferret
ExclusiveArch: aarch64 ppc64le s390x x86_64
- gap-pkg-fga
ExclusiveArch: aarch64 ppc64le s390x x86_64 noarch
- gap-pkg-fining
ExclusiveArch: aarch64 ppc64le s390x x86_64 noarch
- gap-pkg-float
ExclusiveArch: aarch64 ppc64le s390x x86_64
- gap-pkg-format
ExclusiveArch: aarch64 ppc64le s390x x86_64 noarch
- gap-pkg-forms
ExclusiveArch: aarch64 ppc64le s390x x86_64 noarch
- gap-pkg-fr
ExclusiveArch: aarch64 ppc64le s390x x86_64 noarch
- gap-pkg-francy
ExclusiveArch: aarch64 ppc64le s390x x86_64 noarch
- gap-pkg-gbnp
ExclusiveArch: aarch64 ppc64le s390x x86_64 noarch
- gap-pkg-genss
ExclusiveArch: aarch64 ppc64le s390x x86_64 noarch
- gap-pkg-grape
ExclusiveArch: aarch64 ppc64le s390x x86_64 noarch
- gap-pkg-groupoids
ExclusiveArch: aarch64 ppc64le s390x x86_64 noarch
- gap-pkg-grpconst
ExclusiveArch: aarch64 ppc64le s390x x86_64 noarch
- gap-pkg-guava
ExclusiveArch: aarch64 ppc64le s390x x86_64
- gap-pkg-hap
ExclusiveArch: aarch64 ppc64le s390x x86_64 noarch
- gap-pkg-hapcryst
ExclusiveArch: aarch64 ppc64le s390x x86_64 noarch
- gap-pkg-hecke
ExclusiveArch: aarch64 ppc64le s390x x86_64 noarch noarch
- gap-pkg-images
ExclusiveArch: aarch64 ppc64le s390x x86_64 noarch
- gap-pkg-io
ExclusiveArch: aarch64 ppc64le s390x x86_64
- gap-pkg-irredsol
ExclusiveArch: aarch64 ppc64le s390x x86_64 noarch
- gap-pkg-json
ExclusiveArch: aarch64 ppc64le s390x x86_64
- gap-pkg-jupyterkernel
ExclusiveArch: aarch64 ppc64le s390x x86_64 noarch
- gap-pkg-jupyterviz
ExclusiveArch: aarch64 ppc64le s390x x86_64 noarch
- gap-pkg-laguna
ExclusiveArch: aarch64 ppc64le s390x x86_64 noarch
- gap-pkg-liealgdb
ExclusiveArch: aarch64 ppc64le s390x x86_64 noarch
- gap-pkg-liepring
ExclusiveArch: aarch64 ppc64le s390x x86_64 noarch
- gap-pkg-liering
ExclusiveArch: aarch64 ppc64le s390x x86_64 noarch
- gap-pkg-loops
ExclusiveArch: aarch64 ppc64le s390x x86_64 noarch
- gap-pkg-lpres
ExclusiveArch: aarch64 ppc64le s390x x86_64 noarch
- gap-pkg-mapclass
ExclusiveArch: aarch64 ppc64le s390x x86_64 noarch
- gap-pkg-nautytracesinterface
ExclusiveArch: aarch64 ppc64le s390x x86_64
- gap-pkg-nq
ExclusiveArch: aarch64 ppc64le s390x x86_64
- gap-pkg-openmath
ExclusiveArch: aarch64 ppc64le s390x x86_64 noarch
- gap-pkg-orb
ExclusiveArch: aarch64 ppc64le s390x x86_64
- gap-pkg-polenta
ExclusiveArch: aarch64 ppc64le s390x x86_64 noarch
- gap-pkg-polycyclic
ExclusiveArch: aarch64 ppc64le s390x x86_64 noarch
- gap-pkg-polymaking
ExclusiveArch: aarch64 ppc64le s390x x86_64 noarch
- gap-pkg-primgrp
ExclusiveArch: aarch64 ppc64le s390x x86_64 noarch
- gap-pkg-profiling
ExclusiveArch: aarch64 ppc64le s390x x86_64
- gap-pkg-qpa
ExclusiveArch: aarch64 ppc64le s390x x86_64 noarch
- gap-pkg-quagroup
ExclusiveArch: aarch64 ppc64le s390x x86_64 noarch
- gap-pkg-radiroot
ExclusiveArch: aarch64 ppc64le s390x x86_64 noarch
- gap-pkg-recog
ExclusiveArch: aarch64 ppc64le s390x x86_64 noarch
- gap-pkg-repsn
ExclusiveArch: aarch64 ppc64le s390x x86_64 noarch
- gap-pkg-resclasses
ExclusiveArch: aarch64 ppc64le s390x x86_64 noarch
- gap-pkg-scscp
ExclusiveArch: aarch64 ppc64le s390x x86_64 noarch
- gap-pkg-semigroups
ExclusiveArch: aarch64 ppc64le s390x x86_64
- gap-pkg-singular
ExclusiveArch: aarch64 ppc64le s390x x86_64 noarch
- gap-pkg-sla
ExclusiveArch: aarch64 ppc64le s390x x86_64 noarch
- gap-pkg-smallgrp
ExclusiveArch: aarch64 ppc64le s390x x86_64 noarch
- gap-pkg-smallsemi
ExclusiveArch: aarch64 ppc64le s390x x86_64 noarch
- gap-pkg-sonata
ExclusiveArch: aarch64 ppc64le s390x x86_64 noarch
- gap-pkg-sophus
ExclusiveArch: aarch64 ppc64le s390x x86_64 noarch
- gap-pkg-spinsym
ExclusiveArch: aarch64 ppc64le s390x x86_64 noarch
- gap-pkg-tomlib
ExclusiveArch: aarch64 ppc64le s390x x86_64 noarch
- gap-pkg-toric
ExclusiveArch: aarch64 ppc64le s390x x86_64 noarch
- gap-pkg-transgrp
ExclusiveArch: aarch64 ppc64le s390x x86_64 noarch
- gap-pkg-utils
ExclusiveArch: aarch64 ppc64le s390x x86_64 noarch
- gap-pkg-uuid
ExclusiveArch: aarch64 ppc64le s390x x86_64 noarch
- gap-pkg-xmod
ExclusiveArch: aarch64 ppc64le s390x x86_64 noarch
- gap-pkg-zeromqinterface
ExclusiveArch: aarch64 ppc64le s390x x86_64
- gappalib-coq
ExclusiveArch: %{java_arches}
- gbrainy
ExclusiveArch: %mono_arches
- gdb
ExclusiveArch: %{ix86} x86_64
- gdb-exploitable
ExclusiveArch: x86_64 i386
ExclusiveArch: x86_64 noarch
- gearhead1
ExclusiveArch: %{fpc_arches}
- gearhead2
ExclusiveArch: %{fpc_arches}
- ghdl
ExclusiveArch: %{GNAT_arches}
- ghostwriter
ExclusiveArch: %{qt5_qtwebengine_arches}
- gio-sharp
ExclusiveArch: %mono_arches
- gir-to-d
ExclusiveArch: %{ldc_arches}
- git-octopus
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- gitqlient
ExclusiveArch: %{qt5_qtwebengine_arches}
- giver
ExclusiveArch: %{mono_arches}
- gkeyfile-sharp
ExclusiveArch: %mono_arches
- glibc32
ExclusiveArch: x86_64
- glibd
ExclusiveArch: %{ldc_arches}
- gnatcoll
ExclusiveArch: %{GPRbuild_arches}
- gnatcoll-bindings
ExclusiveArch: %{GPRbuild_arches}
- gnatcoll-db
ExclusiveArch: %{GPRbuild_arches}
- gnome-boxes
ExclusiveArch: x86_64
- gnome-desktop-sharp
ExclusiveArch: %mono_arches
- gnome-do
ExclusiveArch: %mono_arches
- gnome-keyring-sharp
ExclusiveArch: %mono_arches
- gnome-rdp
ExclusiveArch: %{mono_arches}
- gnome-sharp
ExclusiveArch: %mono_arches
- gnome-subtitles
ExclusiveArch: %mono_arches
- gnu-efi
ExclusiveArch: %{efi}
- go-bindata
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- go-compilers
ExclusiveArch: %{go_arches}
- godep
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- golang
ExclusiveArch: %{golang_arches}
- gomtree
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- google-gson
ExclusiveArch: %{java_arches} noarch
- google-guice
ExclusiveArch: %{java_arches} noarch
- gotun
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
ExclusiveArch: x86_64
- goverlay
ExclusiveArch: %{fpc_arches}
- gprbuild
ExclusiveArch: %{GPRbuild_arches} %{bootstrap_arch}
- gprolog
ExclusiveArch: x86_64 %{ix86} ppc alpha aarch64
- grafana
ExclusiveArch: %{grafana_arches}
- grafana-pcp
ExclusiveArch: %{grafanapcp_arches}
- greetd
ExclusiveArch: %{rust_arches}
- gtk-sharp-beans
ExclusiveArch: %mono_arches
- gtk-sharp2
ExclusiveArch: %mono_arches
- gtk-sharp3
ExclusiveArch: %{mono_arches}
- gtkd
ExclusiveArch: %{ldc_arches}
- guava
ExclusiveArch: %{java_arches} noarch
- gudev-sharp
ExclusiveArch: %mono_arches
- guestfs-tools
ExclusiveArch: %{kernel_arches}
- hamcrest
ExclusiveArch: %{java_arches} noarch
- hawtjni
ExclusiveArch: %{java_arches} noarch
- hedgewars
ExclusiveArch: %{fpc_arches}
- hibernate-jpa-2.0-api
ExclusiveArch: %{java_arches} noarch
- hibernate-jpa-2.1-api
ExclusiveArch: %{java_arches} noarch
- hid4java
ExclusiveArch: %{java_arches} noarch
- hsakmt
ExclusiveArch: x86_64 aarch64 ppc64le
- httpcomponents-client
ExclusiveArch: %{java_arches} noarch
- httpcomponents-core
ExclusiveArch: %{java_arches} noarch
- httpcomponents-project
ExclusiveArch: %{java_arches} noarch
- hyena
ExclusiveArch: %{mono_arches}
- hyperscan
ExclusiveArch: x86_64
- hyperv-daemons
ExclusiveArch: i686 x86_64 aarch64
- i3status-rs
ExclusiveArch: %{rust_arches}
- icaro
ExclusiveArch: %{ix86} x86_64 noarch
- icu4j
ExclusiveArch: %{java_arches} noarch
- imagej
ExclusiveArch: %{java_arches} noarch
- imhex
ExclusiveArch: x86_64 %{arm64} ppc64le
- imvirt
ExclusiveArch: %{ix86} x86_64 ia64
- indistarter
ExclusiveArch: %{fpc_arches}
- infinipath-psm
ExclusiveArch: x86_64
- intel-cm-compiler
ExclusiveArch: i686 x86_64
- intel-cmt-cat
ExclusiveArch: x86_64 i686 i586
ExclusiveArch: x86_64 i686 i586
- intel-compute-runtime
ExclusiveArch: x86_64
- intel-gmmlib
ExclusiveArch: x86_64 i686
- intel-igc
ExclusiveArch: x86_64
- intel-ipp-crypto-mb
ExclusiveArch: x86_64
ExclusiveArch: x86_64
- intel-ipsec-mb
ExclusiveArch: x86_64
ExclusiveArch: x86_64
- intel-mediasdk
ExclusiveArch: x86_64
- intel-undervolt
ExclusiveArch: i386 x86_64
- ioport
ExclusiveArch: %{ix86} x86_64
- ipmctl
ExclusiveArch: x86_64
- ispc
ExclusiveArch: x86_64 aarch64
- iucode-tool
ExclusiveArch: %{ix86} x86_64
- iyfct
ExclusiveArch: %{arm} %{ix86} x86_64 aarch64 ppc64le
- jFormatString
ExclusiveArch: %{java_arches} noarch
- jackson-annotations
ExclusiveArch: %{java_arches} noarch
- jackson-bom
ExclusiveArch: %{java_arches} noarch
- jackson-core
ExclusiveArch: %{java_arches} noarch
- jackson-databind
ExclusiveArch: %{java_arches} noarch
- jackson-dataformats-binary
ExclusiveArch: %{java_arches} noarch
- jackson-dataformats-text
ExclusiveArch: %{java_arches} noarch
- jackson-jaxrs-providers
ExclusiveArch: %{java_arches} noarch
- jackson-modules-base
ExclusiveArch: %{java_arches} noarch
- jackson-parent
ExclusiveArch: %{java_arches} noarch
- jacoco
ExclusiveArch: %{java_arches} noarch
- jacop
ExclusiveArch: %{java_arches} noarch
- jakarta-activation
ExclusiveArch: %{java_arches} noarch
- jakarta-annotations
ExclusiveArch: %{java_arches} noarch
- jakarta-el
ExclusiveArch: %{java_arches} noarch
- jakarta-interceptors
ExclusiveArch: %{java_arches} noarch
- jakarta-json
ExclusiveArch: %{java_arches} noarch
- jakarta-mail
ExclusiveArch: %{java_arches} noarch
- jakarta-oro
ExclusiveArch: %{java_arches} noarch
- jakarta-saaj
ExclusiveArch: %{java_arches} noarch
- jakarta-server-pages
ExclusiveArch: %{java_arches} noarch
- jakarta-servlet
ExclusiveArch: %{java_arches} noarch
- jakarta-xml-ws
ExclusiveArch: %{java_arches} noarch
- janino
ExclusiveArch: %{java_arches} noarch
- jansi
ExclusiveArch: %{java_arches}
- jansi-native
ExclusiveArch: %{java_arches}
- jansi1
ExclusiveArch: %{java_arches} noarch
- jargs
ExclusiveArch: %{java_arches} noarch
- java-1.8.0-openjdk
ExclusiveArch: %{java_arches}
- java-1.8.0-openjdk-aarch32
ExclusiveArch: %{arm}
- java-11-openjdk
ExclusiveArch: %{java_arches}
- java-17-openjdk
ExclusiveArch: %{java_arches}
- java-diff-utils
ExclusiveArch: %{java_arches} noarch
- java-dirq
ExclusiveArch: %{java_arches} noarch
- java-jd-decompiler
ExclusiveArch: %{java_arches} noarch
- java-latest-openjdk
ExclusiveArch: %{java_arches}
- java-mersenne-twister
ExclusiveArch: %{java_arches} noarch
- java-runtime-decompiler
ExclusiveArch: %{java_arches} noarch
- java-scrypt
ExclusiveArch: %{java_arches} noarch
- java_cup
ExclusiveArch: %{java_arches} noarch
- javacc
ExclusiveArch: %{java_arches} noarch
- javacc-maven-plugin
ExclusiveArch: %{java_arches} noarch
- javadocofflinesearch
ExclusiveArch: %{java_arches} noarch
- javaewah
ExclusiveArch: %{java_arches} noarch
- javapackages-bootstrap
ExclusiveArch: %{java_arches} noarch
- javaparser
ExclusiveArch: %{java_arches} noarch
- javapoet
ExclusiveArch: %{java_arches} noarch
- javassist
ExclusiveArch: %{java_arches} noarch
- jaxb
ExclusiveArch: %{java_arches} noarch
- jaxb-api
ExclusiveArch: %{java_arches} noarch
- jaxb-dtd-parser
ExclusiveArch: %{java_arches} noarch
- jaxb-fi
ExclusiveArch: %{java_arches} noarch
- jaxb-istack-commons
ExclusiveArch: %{java_arches} noarch
- jaxb-stax-ex
ExclusiveArch: %{java_arches} noarch
- jaxen
ExclusiveArch: %{java_arches} noarch
- jboss-jaxrs-2.0-api
ExclusiveArch: %{java_arches} noarch
- jboss-logging
ExclusiveArch: %{java_arches} noarch
- jboss-logging-tools
ExclusiveArch: %{java_arches} noarch
- jboss-parent
ExclusiveArch: %{java_arches} noarch
- jchardet
ExclusiveArch: %{java_arches} noarch
- jcip-annotations
ExclusiveArch: %{java_arches} noarch
- jcodings
ExclusiveArch: %{java_arches} noarch
- jcommon
ExclusiveArch: %{java_arches} noarch
- jcommon-serializer
ExclusiveArch: %{java_arches} noarch
- jctools
ExclusiveArch: %{java_arches} noarch
- jcuber
ExclusiveArch: %{java_arches} noarch
- jdeparser
ExclusiveArch: %{java_arches} noarch
- jdepend
ExclusiveArch: %{java_arches} noarch
- jdependency
ExclusiveArch: %{java_arches} noarch
- jdom
ExclusiveArch: %{java_arches} noarch
- jdom2
ExclusiveArch: %{java_arches} noarch
- jericho-html
ExclusiveArch: %{java_arches} noarch
- jetty
ExclusiveArch: %{java_arches} noarch
- jffi
ExclusiveArch: %{java_arches}
- jflex
ExclusiveArch: %{java_arches} noarch
- jfreechart
ExclusiveArch: %{java_arches} noarch
- jgit
ExclusiveArch: %{java_arches} noarch
- jglobus
ExclusiveArch: %{java_arches} noarch
- jgoodies-common
ExclusiveArch: %{java_arches} noarch
- jgoodies-forms
ExclusiveArch: %{java_arches} noarch
- jgoodies-looks
ExclusiveArch: %{java_arches} noarch
- jgrapht
ExclusiveArch: %{java_arches} noarch
- jigawatts
ExclusiveArch: x86_64 %{arm} ppc64le aarch64 s390x
- jline
ExclusiveArch: %{java_arches} noarch
- jline2
ExclusiveArch: %{java_arches} noarch
- jmock
ExclusiveArch: %{java_arches} noarch
- jmol
ExclusiveArch: %{java_arches} noarch
- jna
ExclusiveArch: %{java_arches}
- jneuroml-core
ExclusiveArch: %{java_arches} noarch
- jni-inchi
ExclusiveArch: %{java_arches}
- jnr-constants
ExclusiveArch: %{java_arches} noarch
- jnr-ffi
ExclusiveArch: %{java_arches} noarch
- jnr-netdb
ExclusiveArch: %{java_arches} noarch
- jnr-posix
ExclusiveArch: %{java_arches} noarch
- jnr-x86asm
ExclusiveArch: %{java_arches} noarch
- jol
ExclusiveArch: %{java_arches} noarch
- jolokia-jvm-agent
ExclusiveArch: %{java_arches} noarch
- joni
ExclusiveArch: %{java_arches} noarch
- jopt-simple
ExclusiveArch: %{java_arches} noarch
- jorbis
ExclusiveArch: %{java_arches} noarch
- jowl
ExclusiveArch: %{nodejs_arches} noarch
- jpanoramamaker
ExclusiveArch: %{java_arches} noarch
- jpcap
ExclusiveArch: %java_arches
- jsch
ExclusiveArch: %{java_arches} noarch
- jsch-agent-proxy
ExclusiveArch: %{java_arches} noarch
- json_simple
ExclusiveArch: %{java_arches} noarch
- jsr-305
ExclusiveArch: %{java_arches} noarch
- jssc
ExclusiveArch: %{java_arches}
- jtidy
ExclusiveArch: %{java_arches} noarch
- junit
ExclusiveArch: %{java_arches} noarch
- junit5
ExclusiveArch: %{java_arches} noarch
- juniversalchardet
ExclusiveArch: %{java_arches} noarch
- jzlib
ExclusiveArch: %{java_arches} noarch
- kchmviewer
ExclusiveArch: %{qt5_qtwebengine_arches}
- kernel
ExclusiveArch: noarch x86_64 s390x %{arm} aarch64 ppc64le
ExclusiveArch: noarch i386 i686 x86_64 s390x %{arm} aarch64 ppc64le
- keylime-agent-rust
ExclusiveArch: %{rust_arches}
- keyring-ima-signer
ExclusiveArch: %{rust_arches}
- kf5-akonadi-search
ExclusiveArch: x86_64 ppc64le aarch64 %{arm}
- kf5-audiocd-kio
ExclusiveArch: x86_64 ppc64le aarch64 %{arm}
- kf5-kalarmcal
ExclusiveArch: x86_64 ppc64le aarch64 %{arm}
- kf5-kblog
ExclusiveArch: x86_64 ppc64le aarch64 %{arm}
- kf5-kcalendarcore
ExclusiveArch: x86_64 ppc64le aarch64 %{arm}
- kf5-kcalendarutils
ExclusiveArch: x86_64 ppc64le aarch64 %{arm}
- kf5-kitinerary
ExclusiveArch: x86_64 ppc64le aarch64 %{arm}
- kf5-ktnef
ExclusiveArch: x86_64 ppc64le aarch64 %{arm}
- kf5-libkdcraw
ExclusiveArch: x86_64 ppc64le %{arm}
- kicad
ExclusiveArch: %{ix86} x86_64 %{arm} aarch64 ppc64le
- kiwix-desktop
ExclusiveArch: %{qt5_qtwebengine_arches}
- klee
ExclusiveArch: x86_64
- knot-resolver
ExclusiveArch: %{ix86} x86_64
ExclusiveArch: %{arm} aarch64 %{ix86} x86_64
- knotes
ExclusiveArch: x86_64 %{arm}
- kompose
ExclusiveArch: %{ix86} x86_64 %{arm} aarch64 s390x
- kubernetes
ExclusiveArch: x86_64 aarch64 ppc64le s390x %{arm}
- laf-plugin
ExclusiveArch: %{java_arches} noarch
- lazarus
ExclusiveArch: %{fpc_arches}
- lazpaint
ExclusiveArch: %{fpc_arches}
- ldapjdk
ExclusiveArch: %{java_arches} noarch
- ldc
ExclusiveArch: %{ldc_arches}
- libbase
ExclusiveArch: %{java_arches} noarch
- libbsr
ExclusiveArch: %{power64}
- libclc
ExclusiveArch: %{ix86} x86_64 %{arm} aarch64 %{power64} s390x
- libcxl
ExclusiveArch: %{power64}
- libdfp
ExclusiveArch: ppc ppc64 ppc64le s390 s390x x86_64
- libdispatch
ExclusiveArch: x86_64 aarch64 ppc64le
- libfonts
ExclusiveArch: %{java_arches} noarch
- libformula
ExclusiveArch: %{java_arches} noarch
- libguestfs
ExclusiveArch: %{kernel_arches}
- libica
ExclusiveArch: s390 s390x
- libipt
ExclusiveArch: %{ix86} x86_64
ExclusiveArch: %{ix86} x86_64
- libkgapi
ExclusiveArch: x86_64 ppc64le aarch64 %{arm}
- libkrun
ExclusiveArch: x86_64 aarch64
- libkrunfw
ExclusiveArch: x86_64 aarch64
- liblayout
ExclusiveArch: %{java_arches} noarch
- libloader
ExclusiveArch: %{java_arches} noarch
- libnxz
ExclusiveArch: ppc64le
- libocxl
ExclusiveArch: ppc64le
- libpmemobj-cpp
ExclusiveArch: x86_64 ppc64le
- libpsm2
ExclusiveArch: x86_64
- libquentier
ExclusiveArch: %{qt5_qtwebengine_arches}
- libreoffice-TexMaths
ExclusiveArch: %{java_arches}
- librepository
ExclusiveArch: %{java_arches} noarch
- libretro-desmume2015
ExclusiveArch: i686 x86_64
- librtas
ExclusiveArch: %{power64}
- libserializer
ExclusiveArch: %{java_arches} noarch
- libservicelog
ExclusiveArch: ppc %{power64}
- libsmbios
ExclusiveArch: x86_64 %{ix86}
- libunwind
ExclusiveArch: %{arm} aarch64 hppa ia64 mips ppc %{power64} s390x %{ix86} x86_64
- libva-intel-hybrid-driver
ExclusiveArch: %{ix86} x86_64 ia64
- libvirt-java
ExclusiveArch: %{java_arches} noarch
- libvma
ExclusiveArch: x86_64 ppc64le ppc64 aarch64
- libvmi
ExclusiveArch: x86_64
- libvpd
ExclusiveArch: %{power64}
- libxsmm
ExclusiveArch: x86_64
- libzdnn
ExclusiveArch: s390x
- libzfcphbaapi
ExclusiveArch: s390 s390x
- libzpc
ExclusiveArch: s390x
- llhttp
ExclusiveArch: %{nodejs_arches}
- log4j
ExclusiveArch: %{java_arches} noarch
- log4net
ExclusiveArch: %mono_arches
- lrmi
ExclusiveArch: %{ix86}
- lsvpd
ExclusiveArch: %{power64}
- luajit
ExclusiveArch: %{arm} %{ix86} x86_64 %{mips} aarch64
- lucene
ExclusiveArch: %{java_arches} noarch
- luxcorerender
ExclusiveArch: x86_64
- mactel-boot
ExclusiveArch: x86_64
- manifest-tool
ExclusiveArch: x86_64 aarch64 ppc64le s390x
- mariadb-java-client
ExclusiveArch: %{java_arches} noarch
- marked
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- matreshka
ExclusiveArch: %GPRbuild_arches
- maui-mauikit
ExclusiveArch: %{ix86} s390x aarch64 x86_64
- maven
ExclusiveArch: %{java_arches} noarch
- maven-antrun-plugin
ExclusiveArch: %{java_arches} noarch
- maven-archetype
ExclusiveArch: %{java_arches} noarch
- maven-archiver
ExclusiveArch: %{java_arches} noarch
- maven-artifact-transfer
ExclusiveArch: %{java_arches} noarch
- maven-assembly-plugin
ExclusiveArch: %{java_arches} noarch
- maven-clean-plugin
ExclusiveArch: %{java_arches} noarch
- maven-common-artifact-filters
ExclusiveArch: %{java_arches} noarch
- maven-compiler-plugin
ExclusiveArch: %{java_arches} noarch
- maven-dependency-analyzer
ExclusiveArch: %{java_arches} noarch
- maven-dependency-plugin
ExclusiveArch: %{java_arches} noarch
- maven-dependency-tree
ExclusiveArch: %{java_arches} noarch
- maven-doxia
ExclusiveArch: %{java_arches} noarch
- maven-doxia-sitetools
ExclusiveArch: %{java_arches} noarch
- maven-enforcer
ExclusiveArch: %{java_arches} noarch
- maven-file-management
ExclusiveArch: %{java_arches} noarch
- maven-filtering
ExclusiveArch: %{java_arches} noarch
- maven-invoker
ExclusiveArch: %{java_arches} noarch
- maven-invoker-plugin
ExclusiveArch: %{java_arches} noarch
- maven-jar-plugin
ExclusiveArch: %{java_arches} noarch
- maven-mapping
ExclusiveArch: %{java_arches} noarch
- maven-native
ExclusiveArch: %{java_arches} noarch
- maven-parent
ExclusiveArch: %{java_arches} noarch
- maven-patch-plugin
ExclusiveArch: %{java_arches} noarch
- maven-plugin-build-helper
ExclusiveArch: %{java_arches} noarch
- maven-plugin-bundle
ExclusiveArch: %{java_arches} noarch
- maven-plugin-testing
ExclusiveArch: %{java_arches} noarch
- maven-plugin-tools
ExclusiveArch: %{java_arches} noarch
- maven-remote-resources-plugin
ExclusiveArch: %{java_arches} noarch
- maven-reporting-api
ExclusiveArch: %{java_arches} noarch
- maven-reporting-impl
ExclusiveArch: %{java_arches} noarch
- maven-resolver
ExclusiveArch: %{java_arches} noarch
- maven-resources-plugin
ExclusiveArch: %{java_arches} noarch
- maven-scm
ExclusiveArch: %{java_arches} noarch
- maven-script-interpreter
ExclusiveArch: %{java_arches} noarch
- maven-shade-plugin
ExclusiveArch: %{java_arches} noarch
- maven-shared-incremental
ExclusiveArch: %{java_arches} noarch
- maven-shared-io
ExclusiveArch: %{java_arches} noarch
- maven-shared-utils
ExclusiveArch: %{java_arches} noarch
- maven-source-plugin
ExclusiveArch: %{java_arches} noarch
- maven-surefire
ExclusiveArch: %{java_arches} noarch
- maven-verifier
ExclusiveArch: %{java_arches} noarch
- maven-verifier-plugin
ExclusiveArch: %{java_arches} noarch
- maven-wagon
ExclusiveArch: %{java_arches} noarch
- maven2
ExclusiveArch: %{java_arches} noarch
- maxima
ExclusiveArch: %{arm} %{ix86} x86_64 aarch64 ppc sparcv9
ExclusiveArch: %{ix86} x86_64 ppc sparcv9
- mbpfan
ExclusiveArch: x86_64
- mcelog
ExclusiveArch: i686 x86_64
- mcrouter
ExclusiveArch: x86_64 aarch64 ppc64le
- mdevctl
ExclusiveArch: %{rust_arches}
- mecab-java
ExclusiveArch: %java_arches
- mediaconch
ExclusiveArch: %{qt5_qtwebengine_arches}
- mellowplayer
ExclusiveArch: %{qt5_qtwebengine_arches}
- memkind
ExclusiveArch: x86_64 ppc64 ppc64le s390x aarch64
- memtest86+
ExclusiveArch: %{ix86} x86_64
- mesos
ExclusiveArch: x86_64
- microcode_ctl
ExclusiveArch: %{ix86} x86_64
- micropython
ExclusiveArch: %{arm} x86_64
ExclusiveArch: %{arm} %{ix86} x86_64
- miglayout
ExclusiveArch: %{java_arches} noarch
- mine_detector
ExclusiveArch: %{GPRbuild_arches}
- minetest
ExclusiveArch: %{ix86} x86_64
ExclusiveArch: %{arm} %{ix86} x86_64 %{mips} aarch64
- mingw-libidn2
ExclusiveArch: %{ix86} x86_64 %{arm}
- mingw-wine-gecko
ExclusiveArch: %{ix86} x86_64 %{arm} aarch64
- mirrorlist-server
ExclusiveArch: %{rust_arches}
- mkbootdisk
ExclusiveArch: %{ix86} sparc sparc64 x86_64
- moby-engine
ExclusiveArch: %{golang_arches}
- mockito
ExclusiveArch: %{java_arches} noarch
- mod_mono
ExclusiveArch: %mono_arches
- modello
ExclusiveArch: %{java_arches} noarch
- module-build-service
ExclusiveArch: %{ix86} x86_64 noarch
- mojo-executor
ExclusiveArch: %{java_arches} noarch
- mojo-parent
ExclusiveArch: %{java_arches} noarch
- mokutil
ExclusiveArch: %{ix86} x86_64 aarch64 %{arm}
- mold
ExclusiveArch: %{ix86} x86_64 %{arm32} aarch64 %{power64} %{riscv32} %{riscv64} s390x sparc64 sparc64v
- mono
ExclusiveArch: %mono_arches
- mono-addins
ExclusiveArch: %mono_arches
- mono-basic
ExclusiveArch: %{mono_arches}
- mono-bouncycastle
ExclusiveArch: %mono_arches
- mono-cecil
ExclusiveArch: %mono_arches
- mono-cecil-flowanalysis
ExclusiveArch: %mono_arches
- mono-reflection
ExclusiveArch: %mono_arches
- mono-tools
ExclusiveArch: %mono_arches
- mono-zeroconf
ExclusiveArch: %mono_arches
- monodevelop
ExclusiveArch: %mono_arches
- monodevelop-debugger-gdb
ExclusiveArch: %{mono_arches}
- monosim
ExclusiveArch: %mono_arches
- mrrescue
ExclusiveArch: %{arm} %{ix86} x86_64 aarch64 ppc64le
- msr-tools
ExclusiveArch: %{ix86} x86_64
- munge-maven-plugin
ExclusiveArch: %{java_arches} noarch
- mxparser
ExclusiveArch: %{java_arches} noarch
- mysql-connector-java
ExclusiveArch: %{java_arches} noarch
- mysql-connector-net
ExclusiveArch: %{mono_arches}
- naev
ExclusiveArch: %{arm} %{ix86} x86_64 %{mips} aarch64
- naga
ExclusiveArch: %{java_arches} noarch
- nant
ExclusiveArch: %mono_arches
- nativejit
ExclusiveArch: x86_64
- nbc
ExclusiveArch: %{fpc_arches}
- nbdkit
ExclusiveArch: x86_64
- ndesk-dbus
ExclusiveArch: %{mono_arches}
- ndesk-dbus-glib
ExclusiveArch: %{mono_arches}
- nekohtml
ExclusiveArch: %{java_arches} noarch
- netavark
ExclusiveArch: %{rust_arches}
- newtonsoft-json
ExclusiveArch: %{mono_arches}
- nispor
ExclusiveArch: %{rust_arches}
- nodejs
ExclusiveArch: %{nodejs_arches}
- nodejs-acorn-object-spread
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-backbone
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-bash-language-server
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-buble
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-colors
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-generic-pool
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-less
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-linefix
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nodejs-nodemon
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-packaging
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-replace-require-self
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-supervisor
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-tape
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-typescript
ExclusiveArch: %{nodejs_arches} noarch
- nodejs-underscore
ExclusiveArch: %{nodejs_arches} noarch
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
- nom-tam-fits
ExclusiveArch: %{java_arches} noarch
- notify-sharp
ExclusiveArch: %{mono_arches}
- notify-sharp3
ExclusiveArch: %{mono_arches}
- nuget
ExclusiveArch: %{mono_arches}
- numatop
ExclusiveArch: x86_64 ppc64le
- nunit
ExclusiveArch: %{mono_arches}
- nunit2
ExclusiveArch: %{mono_arches}
- nvml
ExclusiveArch: x86_64 ppc64le
- nwchem
ExclusiveArch: %{ix86} x86_64 %{arm} aarch64 ppc64le
- objectweb-asm
ExclusiveArch: %{java_arches} noarch
- objenesis
ExclusiveArch: %{java_arches} noarch
- obs-service-rust2rpm
ExclusiveArch: %{rust_arches} noarch
- oci-seccomp-bpf-hook
ExclusiveArch: x86_64 %{power64} aarch64 s390x armv7hl
- oci-umount
ExclusiveArch: %{ix86} x86_64 %{arm} aarch64 ppc64le s390x %{mips}
- oidn
ExclusiveArch: x86_64
- olpc-kbdshim
ExclusiveArch: %{ix86} %{arm}
- olpc-utils
ExclusiveArch: %{ix86} %{arm}
- oneVPL
ExclusiveArch: x86_64
- oneVPL-intel-gpu
ExclusiveArch: x86_64
- onednn
ExclusiveArch: x86_64 aarch64 ppc64le s390x
- onedrive
ExclusiveArch: %{ldc_arches}
- ongres-scram
ExclusiveArch: %{java_arches} noarch
- ongres-stringprep
ExclusiveArch: %{java_arches} noarch
- opae
ExclusiveArch: x86_64
- opal-prd
ExclusiveArch: ppc64le
- open-vm-tools
ExclusiveArch: x86_64 aarch64
ExclusiveArch: %{ix86} x86_64 aarch64
ExclusiveArch: x86_64
- openas2
ExclusiveArch: %{java_arches} noarch
ExclusiveArch: %{java_arches} noarch
- openblas
ExclusiveArch: %{openblas_arches}
- openjdk-asmtools
ExclusiveArch: %{java_arches} noarch
- openjfx
ExclusiveArch: %{java_arches}
- openjfx8
ExclusiveArch: x86_64
- openlibm
ExclusiveArch: %{arm} %{ix86} x86_64 aarch64 %{power64}
- openms
ExclusiveArch: %{qt5_qtwebengine_arches}
- openni
ExclusiveArch: %{ix86} x86_64 %{arm}
- openni-primesense
ExclusiveArch: %{ix86} x86_64 %{arm}
- openshadinglanguage
ExclusiveArch: x86_64 aarch64 ppc64le s390x
- openssl-ibmca
ExclusiveArch: s390 s390x
- openstack-java-sdk
ExclusiveArch: %{java_arches} noarch
- opentest4j
ExclusiveArch: %{java_arches} noarch
- options
ExclusiveArch: %{java_arches} noarch
- orthorobot
ExclusiveArch: %{arm} %{ix86} x86_64 aarch64 ppc64le
- osgi-annotation
ExclusiveArch: %{java_arches} noarch
- osgi-compendium
ExclusiveArch: %{java_arches} noarch
- osgi-core
ExclusiveArch: %{java_arches} noarch
- pacemaker
ExclusiveArch: aarch64 i686 ppc64le s390x x86_64 %{arm}
ExclusiveArch: aarch64 i686 ppc64le s390x x86_64
- paflib
ExclusiveArch: ppc %{power64}
- pageedit
ExclusiveArch: %{qt5_qtwebengine_arches}
- parsec
ExclusiveArch: %{rust_arches}
- parsec-tool
ExclusiveArch: %{rust_arches}
- pasdoc
ExclusiveArch: %{fpc_arches}
- pcc
ExclusiveArch: %{ix86} x86_64
- pcfi
ExclusiveArch: %{java_arches} noarch
- pcm
ExclusiveArch: %{ix86} x86_64
- pcmciautils
ExclusiveArch: %{ix86} x86_64 ia64 ppc ppc64 %{arm}
- pdbg
ExclusiveArch: ppc64le
- pdfbox
ExclusiveArch: %{java_arches} noarch
- pdfmod
ExclusiveArch: %mono_arches
- pdftk-java
ExclusiveArch: %{java_arches} noarch
- pentaho-libxml
ExclusiveArch: %{java_arches} noarch
- pentaho-reporting-flow-engine
ExclusiveArch: %{java_arches} noarch
- perl-Dumbbench
ExclusiveArch: %{ix86} x86_64 noarch
- perl-Parse-DMIDecode
ExclusiveArch: %{ix86} x86_64 ia64 aarch64
- pesign
ExclusiveArch: %{ix86} x86_64 ia64 aarch64 %{arm}
- pesign-test-app
ExclusiveArch: x86_64
- picocli
ExclusiveArch: %{java_arches} noarch
- pinta
ExclusiveArch: %mono_arches
- pioneer
ExclusiveArch: %{ix86} x86_64
- plantuml
ExclusiveArch: %{java_arches} noarch
- playonlinux
ExclusiveArch: %{arm} aarch64 %{ix86} x86_64
- plexus-active-collections
ExclusiveArch: %{java_arches} noarch
- plexus-archiver
ExclusiveArch: %{java_arches} noarch
- plexus-build-api
ExclusiveArch: %{java_arches} noarch
- plexus-cipher
ExclusiveArch: %{java_arches} noarch
- plexus-classworlds
ExclusiveArch: %{java_arches} noarch
- plexus-compiler
ExclusiveArch: %{java_arches} noarch
- plexus-component-api
ExclusiveArch: %{java_arches} noarch
- plexus-components-pom
ExclusiveArch: %{java_arches} noarch
- plexus-containers
ExclusiveArch: %{java_arches} noarch
- plexus-i18n
ExclusiveArch: %{java_arches} noarch
- plexus-interpolation
ExclusiveArch: %{java_arches} noarch
- plexus-io
ExclusiveArch: %{java_arches} noarch
- plexus-languages
ExclusiveArch: %{java_arches} noarch
- plexus-pom
ExclusiveArch: %{java_arches} noarch
- plexus-resources
ExclusiveArch: %{java_arches} noarch
- plexus-sec-dispatcher
ExclusiveArch: %{java_arches} noarch
- plexus-utils
ExclusiveArch: %{java_arches} noarch
- plexus-velocity
ExclusiveArch: %{java_arches} noarch
- pmdk-convert
ExclusiveArch: x86_64
- pmemkv
ExclusiveArch: x86_64
- podman
ExclusiveArch: %{golang_arches}
- pomchecker
ExclusiveArch: %{java_arches} noarch
- poppler-sharp
ExclusiveArch: %mono_arches
- popub
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- portlet-2.0-api
ExclusiveArch: %{java_arches} noarch
- postgresql-jdbc
ExclusiveArch: %{java_arches} noarch
- powerpc-utils
ExclusiveArch: ppc %{power64}
- ppc64-diag
ExclusiveArch: ppc %{power64}
- procyon
ExclusiveArch: %{java_arches} noarch
ExclusiveArch: %{java_arches} noarch
ExclusiveArch: %{java_arches} noarch
ExclusiveArch: %{java_arches} noarch
ExclusiveArch: %{java_arches} noarch
ExclusiveArch: %{java_arches} noarch
- proguard
ExclusiveArch: %{java_arches} noarch
- prometheus-jmx-exporter
ExclusiveArch: %{java_arches} noarch
- prometheus-simpleclient-java
ExclusiveArch: %{java_arches} noarch
- proxygen
ExclusiveArch: x86_64 aarch64 ppc64le
- pveclib
ExclusiveArch: ppc %{power64}
- pvs-sbcl
ExclusiveArch: x86_64
- pyqtwebengine
ExclusiveArch: %{qt5_qtwebengine_arches}
- python-cryptography
ExclusiveArch: %{rust_arches}
- python-etcd
ExclusiveArch: noarch %{ix86} x86_64 %{arm} aarch64 ppc64le s390x
- python-javaobj
ExclusiveArch: %{java_arches} noarch
- python-jep
ExclusiveArch: %{java_arches}
- python-jupyter-polymake
ExclusiveArch: noarch aarch64 ppc64le s390x x86_64
- python-openoffice
ExclusiveArch: noarch x86_64
- python-pymoc
ExclusiveArch: aarch64 ppc64 ppc64le x86_64 s390x
- python-setuptools-rust
ExclusiveArch: %{rust_arches}
- q4wine
ExclusiveArch: %{ix86} x86_64 %{arm} aarch64
- qatzip
ExclusiveArch: x86_64
- qbe
ExclusiveArch: x86_64 aarch64
- qcint
ExclusiveArch: x86_64
- qclib
ExclusiveArch: s390 s390x
- qdox
ExclusiveArch: %{java_arches} noarch
- qemu-sanity-check
ExclusiveArch: %{kernel_arches}
- qevercloud
ExclusiveArch: %{qt5_qtwebengine_arches}
- qmapshack
ExclusiveArch: %{qt5_qtwebengine_arches}
- qt4pas
ExclusiveArch: %{fpc_arches}
- qt5-qtwebengine
ExclusiveArch: %{qt5_qtwebengine_arches}
- quantum-espresso
ExclusiveArch: x86_64 %{ix86} aarch64 %{power64}
- quentier
ExclusiveArch: %{qt5_qtwebengine_arches}
- rEFInd
ExclusiveArch: %{efi}
- rachota
ExclusiveArch: %{java_arches} noarch
- rear
ExclusiveArch: %ix86 x86_64 ppc ppc64 ppc64le ia64
- reflections
ExclusiveArch: %{java_arches} noarch
- reg
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 aarch64 %{arm}}
- regexp
ExclusiveArch: %{java_arches} noarch
- replacer
ExclusiveArch: %{java_arches} noarch
- reptyr
ExclusiveArch: %{ix86} x86_64 %{arm} aarch64
- rescene
ExclusiveArch: %{mono_arches}
- resteasy
ExclusiveArch: %{java_arches} noarch
- restool
ExclusiveArch: aarch64
- restsharp
ExclusiveArch: %{mono_arches}
- retsnoop
ExclusiveArch: %{rust_arches}
- rhino
ExclusiveArch: %{java_arches} noarch
- rhythmbox-alternative-toolbar
ExclusiveArch: %{ix86} %{arm} x86_64 ppc64 ppc64le
- river
ExclusiveArch: %{zig_arches}
- rocm-compilersupport
ExclusiveArch: x86_64 aarch64 ppc64le
- rocm-device-libs
ExclusiveArch: x86_64 aarch64 ppc64le
- rocm-opencl
ExclusiveArch: x86_64 aarch64
ExclusiveArch: x86_64 aarch64 ppc64le
- rocm-runtime
ExclusiveArch: x86_64 aarch64 ppc64le
- rocminfo
ExclusiveArch: x86_64 aarch64 ppc64le
- rpm-ostree
ExclusiveArch: %{rust_arches}
- rr
ExclusiveArch: %{ix86} x86_64 aarch64
- rssguard
ExclusiveArch: %{qt5_qtwebengine_arches}
- rstudio
ExclusiveArch: %{java_arches}
- rsyntaxtextarea
ExclusiveArch: %{java_arches} noarch
- rubygem-childprocess
ExclusiveArch: %{ix86} x86_64 noarch
- runc
ExclusiveArch: %{ix86} x86_64 %{arm} aarch64 ppc64le %{mips} s390x
- rundoc
ExclusiveArch: %{java_arches} noarch
- rust
ExclusiveArch: %{rust_arches}
- rust-Inflector
ExclusiveArch: %{rust_arches}
- rust-abomonation
ExclusiveArch: %{rust_arches}
- rust-actix
ExclusiveArch: %{rust_arches}
- rust-actix-codec
ExclusiveArch: %{rust_arches}
- rust-actix-http
ExclusiveArch: %{rust_arches}
- rust-actix-macros
ExclusiveArch: %{rust_arches}
- rust-actix-router
ExclusiveArch: %{rust_arches}
- rust-actix-rt
ExclusiveArch: %{rust_arches}
- rust-actix-server
ExclusiveArch: %{rust_arches}
- rust-actix-service
ExclusiveArch: %{rust_arches}
- rust-actix-tls
ExclusiveArch: %{rust_arches}
- rust-actix-utils
ExclusiveArch: %{rust_arches}
- rust-actix-web
ExclusiveArch: %{rust_arches}
- rust-actix-web-codegen
ExclusiveArch: %{rust_arches}
- rust-actix_derive
ExclusiveArch: %{rust_arches}
- rust-addr2line
ExclusiveArch: %{rust_arches}
- rust-adler
ExclusiveArch: %{rust_arches}
- rust-adler32
ExclusiveArch: %{rust_arches}
- rust-aead
ExclusiveArch: %{rust_arches}
- rust-aes
ExclusiveArch: %{rust_arches}
- rust-aes-gcm
ExclusiveArch: %{rust_arches}
- rust-aes0.7
ExclusiveArch: %{rust_arches}
- rust-afterburn
ExclusiveArch: %{rust_arches}
- rust-ahash
ExclusiveArch: %{rust_arches}
- rust-ahash0.4
ExclusiveArch: %{rust_arches}
- rust-aho-corasick
ExclusiveArch: %{rust_arches}
- rust-alacritty
ExclusiveArch: %{rust_arches}
- rust-alacritty_config_derive
ExclusiveArch: %{rust_arches}
- rust-alacritty_terminal
ExclusiveArch: %{rust_arches}
- rust-alga
ExclusiveArch: %{rust_arches}
- rust-alga_derive
ExclusiveArch: %{rust_arches}
- rust-aliasable
ExclusiveArch: %{rust_arches}
- rust-alloc-no-stdlib
ExclusiveArch: %{rust_arches}
- rust-alloc-stdlib
ExclusiveArch: %{rust_arches}
- rust-ammonia
ExclusiveArch: %{rust_arches}
- rust-ansi_colours
ExclusiveArch: %{rust_arches}
- rust-ansi_term
ExclusiveArch: %{rust_arches}
- rust-ansi_term0.11
ExclusiveArch: %{rust_arches}
- rust-anyhow
ExclusiveArch: %{rust_arches}
- rust-aom-sys
ExclusiveArch: %{rust_arches}
- rust-aparato
ExclusiveArch: %{rust_arches}
- rust-app_dirs
ExclusiveArch: %{rust_arches}
- rust-approx
ExclusiveArch: %{rust_arches}
- rust-ar
ExclusiveArch: %{rust_arches}
- rust-arbitrary
ExclusiveArch: %{rust_arches}
- rust-arbitrary0.4
ExclusiveArch: %{rust_arches}
- rust-arc-swap
ExclusiveArch: %{rust_arches}
- rust-arg_enum_proc_macro
ExclusiveArch: %{rust_arches}
- rust-argh
ExclusiveArch: %{rust_arches}
- rust-argh_derive
ExclusiveArch: %{rust_arches}
- rust-argh_shared
ExclusiveArch: %{rust_arches}
- rust-argmax
ExclusiveArch: %{rust_arches}
- rust-argparse
ExclusiveArch: %{rust_arches}
- rust-array-init
ExclusiveArch: %{rust_arches}
- rust-arrayvec
ExclusiveArch: %{rust_arches}
- rust-arrayvec0.5
ExclusiveArch: %{rust_arches}
- rust-ascii
ExclusiveArch: %{rust_arches}
- rust-ascii-canvas
ExclusiveArch: %{rust_arches}
- rust-askalono
ExclusiveArch: %{rust_arches}
- rust-askalono-cli
ExclusiveArch: %{rust_arches}
- rust-askama
ExclusiveArch: %{rust_arches}
- rust-askama_derive
ExclusiveArch: %{rust_arches}
- rust-askama_escape
ExclusiveArch: %{rust_arches}
- rust-askama_shared
ExclusiveArch: %{rust_arches}
- rust-asn1
ExclusiveArch: %{rust_arches}
- rust-asn1_derive
ExclusiveArch: %{rust_arches}
- rust-assert-impl
ExclusiveArch: %{rust_arches}
- rust-assert-json-diff
ExclusiveArch: %{rust_arches}
- rust-assert_approx_eq
ExclusiveArch: %{rust_arches}
- rust-assert_cli
ExclusiveArch: %{rust_arches}
- rust-assert_cmd
ExclusiveArch: %{rust_arches}
- rust-assert_fs
ExclusiveArch: %{rust_arches}
- rust-assert_matches
ExclusiveArch: %{rust_arches}
- rust-async-attributes
ExclusiveArch: %{rust_arches}
- rust-async-broadcast
ExclusiveArch: %{rust_arches}
- rust-async-channel
ExclusiveArch: %{rust_arches}
- rust-async-compression
ExclusiveArch: %{rust_arches}
- rust-async-executor
ExclusiveArch: %{rust_arches}
- rust-async-global-executor
ExclusiveArch: %{rust_arches}
- rust-async-io
ExclusiveArch: %{rust_arches}
- rust-async-lock
ExclusiveArch: %{rust_arches}
- rust-async-mutex
ExclusiveArch: %{rust_arches}
- rust-async-process
ExclusiveArch: %{rust_arches}
- rust-async-recursion
ExclusiveArch: %{rust_arches}
- rust-async-std
ExclusiveArch: %{rust_arches}
- rust-async-stream
ExclusiveArch: %{rust_arches}
- rust-async-stream-impl
ExclusiveArch: %{rust_arches}
- rust-async-task
ExclusiveArch: %{rust_arches}
- rust-async-trait
ExclusiveArch: %{rust_arches}
- rust-asyncgit
ExclusiveArch: %{rust_arches}
- rust-atk
ExclusiveArch: %{rust_arches}
- rust-atk-sys
ExclusiveArch: %{rust_arches}
- rust-atom
ExclusiveArch: %{rust_arches}
- rust-atomic
ExclusiveArch: %{rust_arches}
- rust-atomic-traits
ExclusiveArch: %{rust_arches}
- rust-atomic-waker
ExclusiveArch: %{rust_arches}
- rust-atty
ExclusiveArch: %{rust_arches}
- rust-autocfg
ExclusiveArch: %{rust_arches}
- rust-automod
ExclusiveArch: %{rust_arches}
- rust-av-metrics
ExclusiveArch: %{rust_arches}
- rust-average
ExclusiveArch: %{rust_arches}
- rust-awc
ExclusiveArch: %{rust_arches}
- rust-aws-nitro-enclaves-cose
ExclusiveArch: %{rust_arches}
- rust-az
ExclusiveArch: %{rust_arches}
- rust-backtrace
ExclusiveArch: %{rust_arches}
- rust-base-x
ExclusiveArch: %{rust_arches}
- rust-base100
ExclusiveArch: %{rust_arches}
- rust-base64
ExclusiveArch: %{rust_arches}
- rust-base64_0.12
ExclusiveArch: %{rust_arches}
- rust-base64ct
ExclusiveArch: %{rust_arches}
- rust-bat
ExclusiveArch: %{rust_arches}
- rust-beef
ExclusiveArch: %{rust_arches}
- rust-below
ExclusiveArch: %{rust_arches}
- rust-below-common
ExclusiveArch: %{rust_arches}
- rust-below-config
ExclusiveArch: %{rust_arches}
- rust-below-dump
ExclusiveArch: %{rust_arches}
- rust-below-model
ExclusiveArch: %{rust_arches}
- rust-below-render
ExclusiveArch: %{rust_arches}
- rust-below-store
ExclusiveArch: %{rust_arches}
- rust-below-view
ExclusiveArch: %{rust_arches}
- rust-below_derive
ExclusiveArch: %{rust_arches}
- rust-bencher
ExclusiveArch: %{rust_arches}
- rust-benfred-read-process-memory
ExclusiveArch: %{rust_arches}
- rust-bigdecimal
ExclusiveArch: %{rust_arches}
- rust-binascii
ExclusiveArch: %{rust_arches}
- rust-bincode
ExclusiveArch: %{rust_arches}
- rust-bindgen
ExclusiveArch: %{rust_arches}
- rust-bit-set
ExclusiveArch: %{rust_arches}
- rust-bit-vec
ExclusiveArch: %{rust_arches}
- rust-bit_field
ExclusiveArch: %{rust_arches}
- rust-bitfield
ExclusiveArch: %{rust_arches}
- rust-bitflags
ExclusiveArch: %{rust_arches}
- rust-bitmaps
ExclusiveArch: %{rust_arches}
- rust-bitstream-io
ExclusiveArch: %{rust_arches}
- rust-bitvec
ExclusiveArch: %{rust_arches}
- rust-blake2
ExclusiveArch: %{rust_arches}
- rust-blobby
ExclusiveArch: %{rust_arches}
- rust-blobby0.1
ExclusiveArch: %{rust_arches}
- rust-block-buffer
ExclusiveArch: %{rust_arches}
- rust-block-buffer0.9
ExclusiveArch: %{rust_arches}
- rust-block-modes
ExclusiveArch: %{rust_arches}
- rust-block-padding
ExclusiveArch: %{rust_arches}
- rust-block-padding0.2
ExclusiveArch: %{rust_arches}
- rust-blocking
ExclusiveArch: %{rust_arches}
- rust-blsctl
ExclusiveArch: %{rust_arches}
- rust-bodhi
ExclusiveArch: %{rust_arches}
- rust-bodhi-cli
ExclusiveArch: %{rust_arches}
- rust-bootupd
ExclusiveArch: x86_64 aarch64
- rust-box_drawing
ExclusiveArch: %{rust_arches}
- rust-boxfnonce
ExclusiveArch: %{rust_arches}
- rust-brotli
ExclusiveArch: %{rust_arches}
- rust-brotli-decompressor
ExclusiveArch: %{rust_arches}
- rust-bstr
ExclusiveArch: %{rust_arches}
- rust-btrd
ExclusiveArch: %{rust_arches}
- rust-buffered-reader
ExclusiveArch: %{rust_arches}
- rust-bufstream
ExclusiveArch: %{rust_arches}
- rust-bugreport
ExclusiveArch: %{rust_arches}
- rust-bumpalo
ExclusiveArch: %{rust_arches}
- rust-byte-unit
ExclusiveArch: %{rust_arches}
- rust-byte-unit3
ExclusiveArch: %{rust_arches}
- rust-bytecheck
ExclusiveArch: %{rust_arches}
- rust-bytecheck_derive
ExclusiveArch: %{rust_arches}
- rust-bytecount
ExclusiveArch: %{rust_arches}
- rust-bytelines
ExclusiveArch: %{rust_arches}
- rust-bytemuck
ExclusiveArch: %{rust_arches}
- rust-bytemuck_derive
ExclusiveArch: %{rust_arches}
- rust-byteorder
ExclusiveArch: %{rust_arches}
- rust-bytes
ExclusiveArch: %{rust_arches}
- rust-bytes-cast
ExclusiveArch: %{rust_arches}
- rust-bytes-cast-derive
ExclusiveArch: %{rust_arches}
- rust-bytes0.4
ExclusiveArch: %{rust_arches}
- rust-bytes0.5
ExclusiveArch: %{rust_arches}
- rust-bytesize
ExclusiveArch: %{rust_arches}
- rust-bytestring
ExclusiveArch: %{rust_arches}
- rust-bzip2
ExclusiveArch: %{rust_arches}
- rust-bzip2-sys
ExclusiveArch: %{rust_arches}
- rust-cache-padded
ExclusiveArch: %{rust_arches}
- rust-cairo-rs
ExclusiveArch: %{rust_arches}
- rust-cairo-sys-rs
ExclusiveArch: %{rust_arches}
- rust-calloop
ExclusiveArch: %{rust_arches}
- rust-camino
ExclusiveArch: %{rust_arches}
- rust-cap
ExclusiveArch: %{rust_arches}
- rust-capng
ExclusiveArch: %{rust_arches}
- rust-capnp
ExclusiveArch: %{rust_arches}
- rust-capnp-futures
ExclusiveArch: %{rust_arches}
- rust-capnp-rpc
ExclusiveArch: %{rust_arches}
- rust-caps
ExclusiveArch: %{rust_arches}
- rust-cargo
ExclusiveArch: %{rust_arches}
- rust-cargo-c
ExclusiveArch: %{rust_arches}
- rust-cargo-edit
ExclusiveArch: %{rust_arches}
- rust-cargo-husky
ExclusiveArch: %{rust_arches}
- rust-cargo-insta
ExclusiveArch: %{rust_arches}
- rust-cargo-manifest
ExclusiveArch: %{rust_arches}
- rust-cargo-platform
ExclusiveArch: %{rust_arches}
- rust-cargo-readme
ExclusiveArch: %{rust_arches}
- rust-cargo-util
ExclusiveArch: %{rust_arches}
- rust-cargo_metadata
ExclusiveArch: %{rust_arches}
- rust-cascade
ExclusiveArch: %{rust_arches}
- rust-case
ExclusiveArch: %{rust_arches}
- rust-cassowary
ExclusiveArch: %{rust_arches}
- rust-cast
ExclusiveArch: %{rust_arches}
- rust-cbindgen
ExclusiveArch: %{rust_arches}
- rust-cc
ExclusiveArch: %{rust_arches}
- rust-cdylib-link-lines
ExclusiveArch: %{rust_arches}
- rust-cexpr
ExclusiveArch: %{rust_arches}
- rust-cfb
ExclusiveArch: %{rust_arches}
- rust-cfg-expr
ExclusiveArch: %{rust_arches}
- rust-cfg-if
ExclusiveArch: %{rust_arches}
- rust-cfg-if0.1
ExclusiveArch: %{rust_arches}
- rust-cgroupfs
ExclusiveArch: %{rust_arches}
- rust-chainerror
ExclusiveArch: %{rust_arches}
- rust-charset
ExclusiveArch: %{rust_arches}
- rust-choosier
ExclusiveArch: %{rust_arches}
- rust-chrono
ExclusiveArch: %{rust_arches}
- rust-chrono-humanize
ExclusiveArch: %{rust_arches}
- rust-chrono-tz
ExclusiveArch: %{rust_arches}
- rust-chunked_transfer
ExclusiveArch: %{rust_arches}
- rust-ciborium
ExclusiveArch: %{rust_arches}
- rust-ciborium-io
ExclusiveArch: %{rust_arches}
- rust-ciborium-ll
ExclusiveArch: %{rust_arches}
- rust-cint
ExclusiveArch: %{rust_arches}
- rust-cipher
ExclusiveArch: %{rust_arches}
- rust-cipher0.3
ExclusiveArch: %{rust_arches}
- rust-clang-ast
ExclusiveArch: %{rust_arches}
- rust-clang-sys
ExclusiveArch: %{rust_arches}
- rust-clap
ExclusiveArch: %{rust_arches}
- rust-clap-verbosity-flag
ExclusiveArch: %{rust_arches}
- rust-clap2
ExclusiveArch: %{rust_arches}
- rust-clap_complete
ExclusiveArch: %{rust_arches}
- rust-clap_complete_fig
ExclusiveArch: %{rust_arches}
- rust-clap_derive
ExclusiveArch: %{rust_arches}
- rust-clap_generate
ExclusiveArch: %{rust_arches}
- rust-clap_generate_fig
ExclusiveArch: %{rust_arches}
- rust-clap_lex
ExclusiveArch: %{rust_arches}
- rust-clicolors-control
ExclusiveArch: %{rust_arches}
- rust-clircle
ExclusiveArch: %{rust_arches}
- rust-cmake
ExclusiveArch: %{rust_arches}
- rust-codespan-reporting
ExclusiveArch: %{rust_arches}
- rust-codicon
ExclusiveArch: %{rust_arches}
- rust-color-backtrace
ExclusiveArch: %{rust_arches}
- rust-color_quant
ExclusiveArch: %{rust_arches}
- rust-colored
ExclusiveArch: %{rust_arches}
- rust-colored1
ExclusiveArch: %{rust_arches}
- rust-colored_json
ExclusiveArch: %{rust_arches}
- rust-colorful
ExclusiveArch: %{rust_arches}
- rust-combine
ExclusiveArch: %{rust_arches}
- rust-comfy-table
ExclusiveArch: %{rust_arches}
- rust-common-path
ExclusiveArch: %{rust_arches}
- rust-compiletest_rs
ExclusiveArch: %{rust_arches}
- rust-compress-tools
ExclusiveArch: %{rust_arches}
- rust-comrak
ExclusiveArch: %{rust_arches}
- rust-concolor
ExclusiveArch: %{rust_arches}
- rust-concolor-control
ExclusiveArch: %{rust_arches}
- rust-concolor-query
ExclusiveArch: %{rust_arches}
- rust-concurrent-queue
ExclusiveArch: %{rust_arches}
- rust-config
ExclusiveArch: %{rust_arches}
- rust-configparser
ExclusiveArch: %{rust_arches}
- rust-confy
ExclusiveArch: %{rust_arches}
- rust-conhash
ExclusiveArch: %{rust_arches}
- rust-console
ExclusiveArch: %{rust_arches}
- rust-console0.11
ExclusiveArch: %{rust_arches}
- rust-console0.12
ExclusiveArch: %{rust_arches}
- rust-console0.13
ExclusiveArch: %{rust_arches}
- rust-console0.14
ExclusiveArch: %{rust_arches}
- rust-console0.9
ExclusiveArch: %{rust_arches}
- rust-const-cstr
ExclusiveArch: %{rust_arches}
- rust-const-oid
ExclusiveArch: %{rust_arches}
- rust-const-oid0.6
ExclusiveArch: %{rust_arches}
- rust-const-random
ExclusiveArch: %{rust_arches}
- rust-const-random-macro
ExclusiveArch: %{rust_arches}
- rust-const_fn
ExclusiveArch: %{rust_arches}
- rust-const_format
ExclusiveArch: %{rust_arches}
- rust-const_format_proc_macros
ExclusiveArch: %{rust_arches}
- rust-constant_time_eq
ExclusiveArch: %{rust_arches}
- rust-content_inspector
ExclusiveArch: %{rust_arches}
- rust-conv
ExclusiveArch: %{rust_arches}
- rust-convert_case
ExclusiveArch: %{rust_arches}
- rust-cookie
ExclusiveArch: %{rust_arches}
- rust-cookie-factory
ExclusiveArch: %{rust_arches}
- rust-cookie_store
ExclusiveArch: %{rust_arches}
- rust-coolor
ExclusiveArch: %{rust_arches}
- rust-copydeps
ExclusiveArch: %{rust_arches}
- rust-copypasta
ExclusiveArch: %{rust_arches}
- rust-cordic
ExclusiveArch: %{rust_arches}
- rust-coreos-installer
ExclusiveArch: %{rust_arches}
- rust-count-zeroes
ExclusiveArch: %{rust_arches}
- rust-counted-array
ExclusiveArch: %{rust_arches}
- rust-cpc
ExclusiveArch: %{rust_arches}
- rust-cpio
ExclusiveArch: %{rust_arches}
- rust-cpp_demangle
ExclusiveArch: %{rust_arches}
- rust-cpufeatures
ExclusiveArch: %{rust_arches}
- rust-cpython
ExclusiveArch: %{rust_arches}
- rust-crates-io
ExclusiveArch: %{rust_arches}
- rust-crc
ExclusiveArch: %{rust_arches}
- rust-crc-catalog
ExclusiveArch: %{rust_arches}
- rust-crc32fast
ExclusiveArch: %{rust_arches}
- rust-criterion
ExclusiveArch: %{rust_arches}
- rust-criterion-plot
ExclusiveArch: %{rust_arches}
- rust-crossbeam
ExclusiveArch: %{rust_arches}
- rust-crossbeam-channel
ExclusiveArch: %{rust_arches}
- rust-crossbeam-channel0.4
ExclusiveArch: %{rust_arches}
- rust-crossbeam-deque
ExclusiveArch: %{rust_arches}
- rust-crossbeam-deque0.7
ExclusiveArch: %{rust_arches}
- rust-crossbeam-epoch
ExclusiveArch: %{rust_arches}
- rust-crossbeam-epoch0.8
ExclusiveArch: %{rust_arches}
- rust-crossbeam-queue
ExclusiveArch: %{rust_arches}
- rust-crossbeam-queue0.2
ExclusiveArch: %{rust_arches}
- rust-crossbeam-utils
ExclusiveArch: %{rust_arches}
- rust-crossbeam-utils0.7
ExclusiveArch: %{rust_arches}
- rust-crossbeam0.7
ExclusiveArch: %{rust_arches}
- rust-crossfont
ExclusiveArch: %{rust_arches}
- rust-crossterm
ExclusiveArch: %{rust_arches}
- rust-crossterm0.17
ExclusiveArch: %{rust_arches}
- rust-crossterm0.19
ExclusiveArch: %{rust_arches}
- rust-crosstermion
ExclusiveArch: %{rust_arches}
- rust-crunchy
ExclusiveArch: %{rust_arches}
- rust-crypto-bigint
ExclusiveArch: %{rust_arches}
- rust-crypto-common
ExclusiveArch: %{rust_arches}
- rust-crypto-hash
ExclusiveArch: %{rust_arches}
- rust-crypto-mac
ExclusiveArch: %{rust_arches}
- rust-cryptoki
ExclusiveArch: %{rust_arches}
- rust-cryptoki-sys
ExclusiveArch: %{rust_arches}
- rust-csscolorparser
ExclusiveArch: %{rust_arches}
- rust-cssparser
ExclusiveArch: %{rust_arches}
- rust-cssparser-macros
ExclusiveArch: %{rust_arches}
- rust-cstr_core
ExclusiveArch: %{rust_arches}
- rust-csv
ExclusiveArch: %{rust_arches}
- rust-csv-core
ExclusiveArch: %{rust_arches}
- rust-ct-logs
ExclusiveArch: %{rust_arches}
- rust-ctor
ExclusiveArch: %{rust_arches}
- rust-ctr
ExclusiveArch: %{rust_arches}
- rust-ctr0.8
ExclusiveArch: %{rust_arches}
- rust-ctrlc
ExclusiveArch: %{rust_arches}
- rust-cty
ExclusiveArch: %{rust_arches}
- rust-curl
ExclusiveArch: %{rust_arches}
- rust-curl-sys
ExclusiveArch: %{rust_arches}
- rust-cursive
ExclusiveArch: %{rust_arches}
- rust-cursive-tabs
ExclusiveArch: %{rust_arches}
- rust-cursive_buffered_backend
ExclusiveArch: %{rust_arches}
- rust-cursive_core
ExclusiveArch: %{rust_arches}
- rust-curve25519-dalek
ExclusiveArch: %{rust_arches}
- rust-custom_derive
ExclusiveArch: %{rust_arches}
- rust-custom_error
ExclusiveArch: %{rust_arches}
- rust-cxx
ExclusiveArch: %{rust_arches}
- rust-cxx-build
ExclusiveArch: %{rust_arches}
- rust-cxx-gen
ExclusiveArch: %{rust_arches}
- rust-cxxbridge-flags
ExclusiveArch: %{rust_arches}
- rust-cxxbridge-macro
ExclusiveArch: %{rust_arches}
- rust-daemonize
ExclusiveArch: %{rust_arches}
- rust-darling
ExclusiveArch: %{rust_arches}
- rust-darling0.12
ExclusiveArch: %{rust_arches}
- rust-darling_core
ExclusiveArch: %{rust_arches}
- rust-darling_core0.12
ExclusiveArch: %{rust_arches}
- rust-darling_macro
ExclusiveArch: %{rust_arches}
- rust-darling_macro0.12
ExclusiveArch: %{rust_arches}
- rust-dashmap
ExclusiveArch: %{rust_arches}
- rust-dashmap4
ExclusiveArch: %{rust_arches}
- rust-data-encoding
ExclusiveArch: %{rust_arches}
- rust-data-encoding-macro
ExclusiveArch: %{rust_arches}
- rust-data-encoding-macro-internal
ExclusiveArch: %{rust_arches}
- rust-data-url
ExclusiveArch: %{rust_arches}
- rust-datetime
ExclusiveArch: %{rust_arches}
- rust-dav1d-sys
ExclusiveArch: %{rust_arches}
- rust-dbus
ExclusiveArch: %{rust_arches}
- rust-dbus-codegen
ExclusiveArch: %{rust_arches}
- rust-dbus-crossroads
ExclusiveArch: %{rust_arches}
- rust-dbus-tokio
ExclusiveArch: %{rust_arches}
- rust-dbus-tree
ExclusiveArch: %{rust_arches}
- rust-dbus0.8
ExclusiveArch: %{rust_arches}
- rust-decimal
ExclusiveArch: %{rust_arches}
- rust-defer-drop
ExclusiveArch: %{rust_arches}
- rust-deflate
ExclusiveArch: %{rust_arches}
- rust-deflate0.8
ExclusiveArch: %{rust_arches}
- rust-defmac
ExclusiveArch: %{rust_arches}
- rust-deltae
ExclusiveArch: %{rust_arches}
- rust-der
ExclusiveArch: %{rust_arches}
- rust-der_derive
ExclusiveArch: %{rust_arches}
- rust-derivative
ExclusiveArch: %{rust_arches}
- rust-derive-new
ExclusiveArch: %{rust_arches}
- rust-derive_arbitrary
ExclusiveArch: %{rust_arches}
- rust-derive_arbitrary0.4
ExclusiveArch: %{rust_arches}
- rust-derive_builder
ExclusiveArch: %{rust_arches}
- rust-derive_builder0.9
ExclusiveArch: %{rust_arches}
- rust-derive_builder_core
ExclusiveArch: %{rust_arches}
- rust-derive_builder_core0.9
ExclusiveArch: %{rust_arches}
- rust-derive_builder_macro
ExclusiveArch: %{rust_arches}
- rust-derive_more
ExclusiveArch: %{rust_arches}
- rust-des
ExclusiveArch: %{rust_arches}
- rust-des0.7
ExclusiveArch: %{rust_arches}
- rust-desed
ExclusiveArch: %{rust_arches}
- rust-deser-hjson
ExclusiveArch: %{rust_arches}
- rust-deunicode
ExclusiveArch: %{rust_arches}
- rust-devicemapper
ExclusiveArch: %{rust_arches}
- rust-devicemapper-sys
ExclusiveArch: %{rust_arches}
- rust-dialoguer
ExclusiveArch: %{rust_arches}
- rust-diesel
ExclusiveArch: %{rust_arches}
- rust-diesel_derives
ExclusiveArch: %{rust_arches}
- rust-diff
ExclusiveArch: %{rust_arches}
- rust-difference
ExclusiveArch: %{rust_arches}
- rust-difflib
ExclusiveArch: %{rust_arches}
- rust-digest
ExclusiveArch: %{rust_arches}
- rust-digest0.9
ExclusiveArch: %{rust_arches}
- rust-digest_auth
ExclusiveArch: %{rust_arches}
- rust-directories
ExclusiveArch: %{rust_arches}
- rust-directories-next
ExclusiveArch: %{rust_arches}
- rust-directories3
ExclusiveArch: %{rust_arches}
- rust-dirs
ExclusiveArch: %{rust_arches}
- rust-dirs-next
ExclusiveArch: %{rust_arches}
- rust-dirs-sys
ExclusiveArch: %{rust_arches}
- rust-dirs-sys-next
ExclusiveArch: %{rust_arches}
- rust-dirs2
ExclusiveArch: %{rust_arches}
- rust-dirs3
ExclusiveArch: %{rust_arches}
- rust-diskonaut
ExclusiveArch: %{rust_arches}
- rust-displaydoc
ExclusiveArch: %{rust_arches}
- rust-dissimilar
ExclusiveArch: %{rust_arches}
- rust-dlib
ExclusiveArch: %{rust_arches}
- rust-dlv-list
ExclusiveArch: %{rust_arches}
- rust-dns-lookup
ExclusiveArch: %{rust_arches}
- rust-doc-comment
ExclusiveArch: %{rust_arches}
- rust-docmatic
ExclusiveArch: %{rust_arches}
- rust-docopt
ExclusiveArch: %{rust_arches}
- rust-dotenv
ExclusiveArch: %{rust_arches}
- rust-downcast
ExclusiveArch: %{rust_arches}
- rust-downcast-rs
ExclusiveArch: %{rust_arches}
- rust-drg
ExclusiveArch: %{rust_arches}
- rust-dtoa
ExclusiveArch: %{rust_arches}
- rust-dtoa-short
ExclusiveArch: %{rust_arches}
- rust-dua-cli
ExclusiveArch: %{rust_arches}
- rust-duct
ExclusiveArch: %{rust_arches}
- rust-dummy
ExclusiveArch: %{rust_arches}
- rust-dunce
ExclusiveArch: %{rust_arches}
- rust-dutree
ExclusiveArch: %{rust_arches}
- rust-dyn-clone
ExclusiveArch: %{rust_arches}
- rust-easy-cast
ExclusiveArch: %{rust_arches}
- rust-easy-parallel
ExclusiveArch: %{rust_arches}
- rust-edit
ExclusiveArch: %{rust_arches}
- rust-edit-distance
ExclusiveArch: %{rust_arches}
- rust-either
ExclusiveArch: %{rust_arches}
- rust-elf
ExclusiveArch: %{rust_arches}
- rust-elfcat
ExclusiveArch: %{rust_arches}
- rust-email-encoding
ExclusiveArch: %{rust_arches}
- rust-ena
ExclusiveArch: %{rust_arches}
- rust-encode_unicode
ExclusiveArch: %{rust_arches}
- rust-encoding
ExclusiveArch: %{rust_arches}
- rust-encoding-index-japanese
ExclusiveArch: %{rust_arches}
- rust-encoding-index-korean
ExclusiveArch: %{rust_arches}
- rust-encoding-index-simpchinese
ExclusiveArch: %{rust_arches}
- rust-encoding-index-singlebyte
ExclusiveArch: %{rust_arches}
- rust-encoding-index-tradchinese
ExclusiveArch: %{rust_arches}
- rust-encoding_index_tests
ExclusiveArch: %{rust_arches}
- rust-encoding_rs
ExclusiveArch: %{rust_arches}
- rust-encoding_rs_io
ExclusiveArch: %{rust_arches}
- rust-endian-type
ExclusiveArch: %{rust_arches}
- rust-enquote
ExclusiveArch: %{rust_arches}
- rust-entities
ExclusiveArch: %{rust_arches}
- rust-enum-as-inner
ExclusiveArch: %{rust_arches}
- rust-enum-iterator
ExclusiveArch: %{rust_arches}
- rust-enum-iterator-derive
ExclusiveArch: %{rust_arches}
- rust-enum-map
ExclusiveArch: %{rust_arches}
- rust-enum-map-derive
ExclusiveArch: %{rust_arches}
- rust-enumflags2
ExclusiveArch: %{rust_arches}
- rust-enumflags2_0.6
ExclusiveArch: %{rust_arches}
- rust-enumflags2_derive
ExclusiveArch: %{rust_arches}
- rust-enumflags2_derive0.6
ExclusiveArch: %{rust_arches}
- rust-enumset
ExclusiveArch: %{rust_arches}
- rust-enumset_derive
ExclusiveArch: %{rust_arches}
- rust-env_logger
ExclusiveArch: %{rust_arches}
- rust-env_logger0.4
ExclusiveArch: %{rust_arches}
- rust-env_logger0.5
ExclusiveArch: %{rust_arches}
- rust-env_logger0.6
ExclusiveArch: %{rust_arches}
- rust-env_logger0.7
ExclusiveArch: %{rust_arches}
- rust-env_logger0.8
ExclusiveArch: %{rust_arches}
- rust-env_proxy
ExclusiveArch: %{rust_arches}
- rust-environment
ExclusiveArch: %{rust_arches}
- rust-envsubst
ExclusiveArch: %{rust_arches}
- rust-epoll
ExclusiveArch: %{rust_arches}
- rust-erased-serde
ExclusiveArch: %{rust_arches}
- rust-err-derive
ExclusiveArch: %{rust_arches}
- rust-errno
ExclusiveArch: %{rust_arches}
- rust-error-chain
ExclusiveArch: %{rust_arches}
- rust-escape_string
ExclusiveArch: %{rust_arches}
- rust-escargot
ExclusiveArch: %{rust_arches}
- rust-esphome
ExclusiveArch: %{rust_arches}
- rust-ethtool
ExclusiveArch: %{rust_arches}
- rust-event-listener
ExclusiveArch: %{rust_arches}
- rust-exa
ExclusiveArch: %{rust_arches}
- rust-executable-path
ExclusiveArch: %{rust_arches}
- rust-exitcode
ExclusiveArch: %{rust_arches}
- rust-exitfailure
ExclusiveArch: %{rust_arches}
- rust-expat-sys
ExclusiveArch: %{rust_arches}
- rust-eyre
ExclusiveArch: %{rust_arches}
- rust-faccess
ExclusiveArch: %{rust_arches}
- rust-fail
ExclusiveArch: %{rust_arches}
- rust-failure
ExclusiveArch: %{rust_arches}
- rust-failure-tools
ExclusiveArch: %{rust_arches}
- rust-failure_derive
ExclusiveArch: %{rust_arches}
- rust-fake
ExclusiveArch: %{rust_arches}
- rust-fake-simd
ExclusiveArch: %{rust_arches}
- rust-fallible-iterator
ExclusiveArch: %{rust_arches}
- rust-fallible-streaming-iterator
ExclusiveArch: %{rust_arches}
- rust-fancy-regex
ExclusiveArch: %{rust_arches}
- rust-fastrand
ExclusiveArch: %{rust_arches}
- rust-fatfs
ExclusiveArch: %{rust_arches}
- rust-fb_procfs
ExclusiveArch: %{rust_arches}
- rust-fbthrift_codegen_includer_proc_macro
ExclusiveArch: %{rust_arches}
- rust-fd-find
ExclusiveArch: %{rust_arches}
- rust-fd-lock
ExclusiveArch: %{rust_arches}
- rust-fdlimit
ExclusiveArch: %{rust_arches}
- rust-fedora
ExclusiveArch: %{rust_arches}
- rust-fedora-update-feedback
ExclusiveArch: %{rust_arches}
- rust-femme
ExclusiveArch: %{rust_arches}
- rust-fern
ExclusiveArch: %{rust_arches}
- rust-field-offset
ExclusiveArch: %{rust_arches}
- rust-filedescriptor
ExclusiveArch: %{rust_arches}
- rust-filesize
ExclusiveArch: %{rust_arches}
- rust-filetime
ExclusiveArch: %{rust_arches}
- rust-filetreelist
ExclusiveArch: %{rust_arches}
- rust-find-crate
ExclusiveArch: %{rust_arches}
- rust-findshlibs
ExclusiveArch: %{rust_arches}
- rust-firestorm
ExclusiveArch: %{rust_arches}
- rust-fixed
ExclusiveArch: %{rust_arches}
- rust-fixedbitset
ExclusiveArch: %{rust_arches}
- rust-fixedbitset0.2
ExclusiveArch: %{rust_arches}
- rust-flate2
ExclusiveArch: %{rust_arches}
- rust-float-cmp
ExclusiveArch: %{rust_arches}
- rust-float-ord
ExclusiveArch: %{rust_arches}
- rust-fluent
ExclusiveArch: %{rust_arches}
- rust-fluent-bundle
ExclusiveArch: %{rust_arches}
- rust-fluent-langneg
ExclusiveArch: %{rust_arches}
- rust-fluent-syntax
ExclusiveArch: %{rust_arches}
- rust-flume
ExclusiveArch: %{rust_arches}
- rust-fn-error-context
ExclusiveArch: %{rust_arches}
- rust-fnv
ExclusiveArch: %{rust_arches}
- rust-font-kit
ExclusiveArch: %{rust_arches}
- rust-foreign-types
ExclusiveArch: %{rust_arches}
- rust-foreign-types-macros
ExclusiveArch: %{rust_arches}
- rust-foreign-types-shared
ExclusiveArch: %{rust_arches}
- rust-foreign-types-shared0.1
ExclusiveArch: %{rust_arches}
- rust-foreign-types0.3
ExclusiveArch: %{rust_arches}
- rust-form_urlencoded
ExclusiveArch: %{rust_arches}
- rust-format-bytes
ExclusiveArch: %{rust_arches}
- rust-format-bytes-macros
ExclusiveArch: %{rust_arches}
- rust-fragile
ExclusiveArch: %{rust_arches}
- rust-freetype
ExclusiveArch: %{rust_arches}
- rust-freetype-rs
ExclusiveArch: %{rust_arches}
- rust-freetype-sys
ExclusiveArch: %{rust_arches}
- rust-fs-err
ExclusiveArch: %{rust_arches}
- rust-fs2
ExclusiveArch: %{rust_arches}
- rust-fs_extra
ExclusiveArch: %{rust_arches}
- rust-fscommon
ExclusiveArch: %{rust_arches}
- rust-fslock
ExclusiveArch: %{rust_arches}
- rust-funty
ExclusiveArch: %{rust_arches}
- rust-futf
ExclusiveArch: %{rust_arches}
- rust-futures
ExclusiveArch: %{rust_arches}
- rust-futures-channel
ExclusiveArch: %{rust_arches}
- rust-futures-core
ExclusiveArch: %{rust_arches}
- rust-futures-cpupool
ExclusiveArch: %{rust_arches}
- rust-futures-executor
ExclusiveArch: %{rust_arches}
- rust-futures-io
ExclusiveArch: %{rust_arches}
- rust-futures-lite
ExclusiveArch: %{rust_arches}
- rust-futures-macro
ExclusiveArch: %{rust_arches}
- rust-futures-sink
ExclusiveArch: %{rust_arches}
- rust-futures-task
ExclusiveArch: %{rust_arches}
- rust-futures-test
ExclusiveArch: %{rust_arches}
- rust-futures-timer
ExclusiveArch: %{rust_arches}
- rust-futures-util
ExclusiveArch: %{rust_arches}
- rust-futures0.1
ExclusiveArch: %{rust_arches}
- rust-fuzzy-matcher
ExclusiveArch: %{rust_arches}
- rust-fxhash
ExclusiveArch: %{rust_arches}
- rust-gag
ExclusiveArch: %{rust_arches}
- rust-gdk
ExclusiveArch: %{rust_arches}
- rust-gdk-pixbuf
ExclusiveArch: %{rust_arches}
- rust-gdk-pixbuf-sys
ExclusiveArch: %{rust_arches}
- rust-gdk-sys
ExclusiveArch: %{rust_arches}
- rust-gdk4
ExclusiveArch: %{rust_arches}
- rust-gdk4-sys
ExclusiveArch: %{rust_arches}
- rust-generic-array
ExclusiveArch: %{rust_arches}
- rust-generic-array0.12
ExclusiveArch: %{rust_arches}
- rust-genetlink
ExclusiveArch: %{rust_arches}
- rust-getch
ExclusiveArch: %{rust_arches}
- rust-gethostname
ExclusiveArch: %{rust_arches}
- rust-getopts
ExclusiveArch: %{rust_arches}
- rust-getrandom
ExclusiveArch: %{rust_arches}
- rust-getrandom0.1
ExclusiveArch: %{rust_arches}
- rust-getset
ExclusiveArch: %{rust_arches}
- rust-gettext-rs
ExclusiveArch: %{rust_arches}
- rust-gettext-sys
ExclusiveArch: %{rust_arches}
- rust-gh-emoji
ExclusiveArch: %{rust_arches}
- rust-ghash
ExclusiveArch: %{rust_arches}
- rust-ghost
ExclusiveArch: %{rust_arches}
- rust-gif
ExclusiveArch: %{rust_arches}
- rust-gimli
ExclusiveArch: %{rust_arches}
- rust-gio
ExclusiveArch: %{rust_arches}
- rust-gio-sys
ExclusiveArch: %{rust_arches}
- rust-gir-format-check
ExclusiveArch: %{rust_arches}
- rust-git-delta
ExclusiveArch: %{rust_arches}
- rust-git-version
ExclusiveArch: %{rust_arches}
- rust-git-version-macro
ExclusiveArch: %{rust_arches}
- rust-git2
ExclusiveArch: %{rust_arches}
- rust-git2-curl
ExclusiveArch: %{rust_arches}
- rust-git2_0.13
ExclusiveArch: %{rust_arches}
- rust-gitui
ExclusiveArch: %{rust_arches}
- rust-gl_generator
ExclusiveArch: %{rust_arches}
- rust-glam
ExclusiveArch: %{rust_arches}
- rust-glib
ExclusiveArch: %{rust_arches}
- rust-glib-macros
ExclusiveArch: %{rust_arches}
- rust-glib-sys
ExclusiveArch: %{rust_arches}
- rust-glob
ExclusiveArch: %{rust_arches}
- rust-globset
ExclusiveArch: %{rust_arches}
- rust-globwalk
ExclusiveArch: %{rust_arches}
- rust-glutin
ExclusiveArch: %{rust_arches}
- rust-glutin_egl_sys
ExclusiveArch: %{rust_arches}
- rust-glutin_glx_sys
ExclusiveArch: %{rust_arches}
- rust-gmp-mpfr-sys
ExclusiveArch: %{rust_arches}
- rust-gobject-sys
ExclusiveArch: %{rust_arches}
- rust-goblin
ExclusiveArch: %{rust_arches}
- rust-gptman
ExclusiveArch: %{rust_arches}
- rust-graphene-rs
ExclusiveArch: %{rust_arches}
- rust-graphene-sys
ExclusiveArch: %{rust_arches}
- rust-greetd_ipc
ExclusiveArch: %{rust_arches}
- rust-grep
ExclusiveArch: %{rust_arches}
- rust-grep-cli
ExclusiveArch: %{rust_arches}
- rust-grep-matcher
ExclusiveArch: %{rust_arches}
- rust-grep-pcre2
ExclusiveArch: %{rust_arches}
- rust-grep-printer
ExclusiveArch: %{rust_arches}
- rust-grep-regex
ExclusiveArch: %{rust_arches}
- rust-grep-searcher
ExclusiveArch: %{rust_arches}
- rust-groupable
ExclusiveArch: %{rust_arches}
- rust-gsk4
ExclusiveArch: %{rust_arches}
- rust-gsk4-sys
ExclusiveArch: %{rust_arches}
- rust-gstreamer
ExclusiveArch: %{rust_arches}
- rust-gstreamer-audio
ExclusiveArch: %{rust_arches}
- rust-gstreamer-audio-sys
ExclusiveArch: %{rust_arches}
- rust-gstreamer-base
ExclusiveArch: %{rust_arches}
- rust-gstreamer-base-sys
ExclusiveArch: %{rust_arches}
- rust-gstreamer-editing-services
ExclusiveArch: %{rust_arches}
- rust-gstreamer-editing-services-sys
ExclusiveArch: %{rust_arches}
- rust-gstreamer-pbutils
ExclusiveArch: %{rust_arches}
- rust-gstreamer-pbutils-sys
ExclusiveArch: %{rust_arches}
- rust-gstreamer-player
ExclusiveArch: %{rust_arches}
- rust-gstreamer-player-sys
ExclusiveArch: %{rust_arches}
- rust-gstreamer-sys
ExclusiveArch: %{rust_arches}
- rust-gstreamer-video
ExclusiveArch: %{rust_arches}
- rust-gstreamer-video-sys
ExclusiveArch: %{rust_arches}
- rust-gtk
ExclusiveArch: %{rust_arches}
- rust-gtk-sys
ExclusiveArch: %{rust_arches}
- rust-gtk3-macros
ExclusiveArch: %{rust_arches}
- rust-gtk4
ExclusiveArch: %{rust_arches}
- rust-gtk4-macros
ExclusiveArch: %{rust_arches}
- rust-gtk4-sys
ExclusiveArch: %{rust_arches}
- rust-gzip-header
ExclusiveArch: %{rust_arches}
- rust-h2
ExclusiveArch: %{rust_arches}
- rust-half
ExclusiveArch: %{rust_arches}
- rust-hamcrest2
ExclusiveArch: %{rust_arches}
- rust-hamming
ExclusiveArch: %{rust_arches}
- rust-handlebars
ExclusiveArch: %{rust_arches}
- rust-hashbrown
ExclusiveArch: %{rust_arches}
- rust-hashbrown0.11
ExclusiveArch: %{rust_arches}
- rust-hashbrown0.9
ExclusiveArch: %{rust_arches}
- rust-hashlink
ExclusiveArch: %{rust_arches}
- rust-headers
ExclusiveArch: %{rust_arches}
- rust-headers-core
ExclusiveArch: %{rust_arches}
- rust-heapsize
ExclusiveArch: %{rust_arches}
- rust-heatseeker
ExclusiveArch: %{rust_arches}
- rust-heck
ExclusiveArch: %{rust_arches}
- rust-heck0.3
ExclusiveArch: %{rust_arches}
- rust-helvum
ExclusiveArch: %{rust_arches}
- rust-hex
ExclusiveArch: %{rust_arches}
- rust-hex-literal
ExclusiveArch: %{rust_arches}
- rust-hex-literal-impl
ExclusiveArch: %{rust_arches}
- rust-hex-literal0.2
ExclusiveArch: %{rust_arches}
- rust-hexyl
ExclusiveArch: %{rust_arches}
- rust-hidapi
ExclusiveArch: %{rust_arches}
- rust-hkdf
ExclusiveArch: %{rust_arches}
- rust-hkdf0.11
ExclusiveArch: %{rust_arches}
- rust-hmac
ExclusiveArch: %{rust_arches}
- rust-hmac0.11
ExclusiveArch: %{rust_arches}
- rust-home
ExclusiveArch: %{rust_arches}
- rust-hostname
ExclusiveArch: %{rust_arches}
- rust-hostname-validator
ExclusiveArch: %{rust_arches}
- rust-html-escape
ExclusiveArch: %{rust_arches}
- rust-html2pango
ExclusiveArch: %{rust_arches}
- rust-html5ever
ExclusiveArch: %{rust_arches}
- rust-http
ExclusiveArch: %{rust_arches}
- rust-http-body
ExclusiveArch: %{rust_arches}
- rust-http0.1
ExclusiveArch: %{rust_arches}
- rust-httparse
ExclusiveArch: %{rust_arches}
- rust-httpdate
ExclusiveArch: %{rust_arches}
- rust-human-panic
ExclusiveArch: %{rust_arches}
- rust-human-sort
ExclusiveArch: %{rust_arches}
- rust-humansize
ExclusiveArch: %{rust_arches}
- rust-humantime
ExclusiveArch: %{rust_arches}
- rust-humantime-serde
ExclusiveArch: %{rust_arches}
- rust-humantime1
ExclusiveArch: %{rust_arches}
- rust-hyper
ExclusiveArch: %{rust_arches}
- rust-hyper-rustls
ExclusiveArch: %{rust_arches}
- rust-hyper-tls
ExclusiveArch: %{rust_arches}
- rust-hyperfine
ExclusiveArch: %{rust_arches}
- rust-hyperlocal
ExclusiveArch: %{rust_arches}
- rust-i18n-config
ExclusiveArch: %{rust_arches}
- rust-i18n-embed
ExclusiveArch: %{rust_arches}
- rust-i18n-embed-fl
ExclusiveArch: %{rust_arches}
- rust-i18n-embed-impl
ExclusiveArch: %{rust_arches}
- rust-i3ipc
ExclusiveArch: %{rust_arches}
- rust-iai
ExclusiveArch: %{rust_arches}
- rust-iana-time-zone
ExclusiveArch: %{rust_arches}
- rust-id-arena
ExclusiveArch: %{rust_arches}
- rust-ident_case
ExclusiveArch: %{rust_arches}
- rust-idna
ExclusiveArch: %{rust_arches}
- rust-idna0.1
ExclusiveArch: %{rust_arches}
- rust-ifcfg-devname
ExclusiveArch: %{rust_arches}
- rust-ignition-config
ExclusiveArch: %{rust_arches}
- rust-ignore
ExclusiveArch: %{rust_arches}
- rust-im-rc
ExclusiveArch: %{rust_arches}
- rust-image
ExclusiveArch: %{rust_arches}
- rust-image0.23
ExclusiveArch: %{rust_arches}
- rust-imgref
ExclusiveArch: %{rust_arches}
- rust-impls
ExclusiveArch: %{rust_arches}
- rust-indenter
ExclusiveArch: %{rust_arches}
- rust-indexmap
ExclusiveArch: %{rust_arches}
- rust-indicatif
ExclusiveArch: %{rust_arches}
- rust-indicatif0.15
ExclusiveArch: %{rust_arches}
- rust-indoc
ExclusiveArch: %{rust_arches}
- rust-infer
ExclusiveArch: %{rust_arches}
- rust-inferno
ExclusiveArch: %{rust_arches}
- rust-inflate
ExclusiveArch: %{rust_arches}
- rust-inlinable_string
ExclusiveArch: %{rust_arches}
- rust-inotify
ExclusiveArch: %{rust_arches}
- rust-inotify-sys
ExclusiveArch: %{rust_arches}
- rust-inout
ExclusiveArch: %{rust_arches}
- rust-input_buffer
ExclusiveArch: %{rust_arches}
- rust-insta
ExclusiveArch: %{rust_arches}
- rust-instant
ExclusiveArch: %{rust_arches}
- rust-integer-encoding
ExclusiveArch: %{rust_arches}
- rust-interpolate_name
ExclusiveArch: %{rust_arches}
- rust-intervaltree
ExclusiveArch: %{rust_arches}
- rust-intl-memoizer
ExclusiveArch: %{rust_arches}
- rust-intl_pluralrules
ExclusiveArch: %{rust_arches}
- rust-invalidstring
ExclusiveArch: %{rust_arches}
- rust-inventory
ExclusiveArch: %{rust_arches}
- rust-inventory-impl
ExclusiveArch: %{rust_arches}
- rust-inventory0.1
ExclusiveArch: %{rust_arches}
- rust-io-lifetimes
ExclusiveArch: %{rust_arches}
- rust-ioctl-rs
ExclusiveArch: %{rust_arches}
- rust-iocuddle
ExclusiveArch: %{rust_arches}
- rust-iovec
ExclusiveArch: %{rust_arches}
- rust-ipnet
ExclusiveArch: %{rust_arches}
- rust-ipnetwork
ExclusiveArch: %{rust_arches}
- rust-ipnetwork0.17
ExclusiveArch: %{rust_arches}
- rust-iptables
ExclusiveArch: %{rust_arches}
- rust-is_ci
ExclusiveArch: %{rust_arches}
- rust-is_debug
ExclusiveArch: %{rust_arches}
- rust-is_executable
ExclusiveArch: %{rust_arches}
- rust-iso8601
ExclusiveArch: %{rust_arches}
- rust-iter-read
ExclusiveArch: %{rust_arches}
- rust-itertools
ExclusiveArch: %{rust_arches}
- rust-itertools-num
ExclusiveArch: %{rust_arches}
- rust-itertools0.8
ExclusiveArch: %{rust_arches}
- rust-itertools0.9
ExclusiveArch: %{rust_arches}
- rust-itoa
ExclusiveArch: %{rust_arches}
- rust-itoa0.4
ExclusiveArch: %{rust_arches}
- rust-ivf
ExclusiveArch: %{rust_arches}
- rust-jobserver
ExclusiveArch: %{rust_arches}
- rust-josekit
ExclusiveArch: %{rust_arches}
- rust-jpeg-decoder
ExclusiveArch: %{rust_arches}
- rust-jpeg-decoder0.1
ExclusiveArch: %{rust_arches}
- rust-jql
ExclusiveArch: %{rust_arches}
- rust-json
ExclusiveArch: %{rust_arches}
- rust-json5
ExclusiveArch: %{rust_arches}
- rust-json_value_merge
ExclusiveArch: %{rust_arches}
- rust-just
ExclusiveArch: %{rust_arches}
- rust-jwalk
ExclusiveArch: %{rust_arches}
- rust-k9
ExclusiveArch: %{rust_arches}
- rust-keccak
ExclusiveArch: %{rust_arches}
- rust-khronos_api
ExclusiveArch: %{rust_arches}
- rust-konst
ExclusiveArch: %{rust_arches}
- rust-konst_macro_rules
ExclusiveArch: %{rust_arches}
- rust-konst_proc_macros
ExclusiveArch: %{rust_arches}
- rust-krunvm
ExclusiveArch: x86_64 aarch64
- rust-kstring
ExclusiveArch: %{rust_arches}
- rust-kv-log-macro
ExclusiveArch: %{rust_arches}
- rust-kvm-bindings
ExclusiveArch: %{rust_arches}
- rust-kvm-ioctls
ExclusiveArch: x86_64 aarch64
- rust-lab
ExclusiveArch: %{rust_arches}
- rust-lalrpop
ExclusiveArch: %{rust_arches}
- rust-lalrpop-util
ExclusiveArch: %{rust_arches}
- rust-language-tags
ExclusiveArch: %{rust_arches}
- rust-lazy_static
ExclusiveArch: %{rust_arches}
- rust-lazycell
ExclusiveArch: %{rust_arches}
- rust-leb128
ExclusiveArch: %{rust_arches}
- rust-lebe
ExclusiveArch: %{rust_arches}
- rust-lev_distance
ExclusiveArch: %{rust_arches}
- rust-lexical-core
ExclusiveArch: %{rust_arches}
- rust-lexiclean
ExclusiveArch: %{rust_arches}
- rust-lexopt
ExclusiveArch: %{rust_arches}
- rust-libblkid-rs
ExclusiveArch: %{rust_arches}
- rust-libblkid-rs-sys
ExclusiveArch: %{rust_arches}
- rust-libbpf-cargo
ExclusiveArch: %{rust_arches}
- rust-libbpf-rs
ExclusiveArch: %{rust_arches}
- rust-libbpf-sys
ExclusiveArch: %{rust_arches}
- rust-libc
ExclusiveArch: %{rust_arches}
- rust-libcryptsetup-rs
ExclusiveArch: %{rust_arches}
- rust-libcryptsetup-rs-sys
ExclusiveArch: %{rust_arches}
- rust-libdbus-sys
ExclusiveArch: %{rust_arches}
- rust-libflate
ExclusiveArch: %{rust_arches}
- rust-libflate_lz77
ExclusiveArch: %{rust_arches}
- rust-libgit2-sys
ExclusiveArch: %{rust_arches}
- rust-libgit2-sys0.12
ExclusiveArch: %{rust_arches}
- rust-libhandy
ExclusiveArch: %{rust_arches}
- rust-libhandy-sys
ExclusiveArch: %{rust_arches}
- rust-libloading
ExclusiveArch: %{rust_arches}
- rust-libm
ExclusiveArch: %{rust_arches}
- rust-libmount
ExclusiveArch: %{rust_arches}
- rust-libnotcurses-sys
ExclusiveArch: %{rust_arches}
- rust-liboverdrop
ExclusiveArch: %{rust_arches}
- rust-libpulse-binding
ExclusiveArch: %{rust_arches}
- rust-libpulse-sys
ExclusiveArch: %{rust_arches}
- rust-libseccomp-sys
ExclusiveArch: %{rust_arches}
- rust-libslirp
ExclusiveArch: %{rust_arches}
- rust-libslirp-sys
ExclusiveArch: %{rust_arches}
- rust-libsodium-sys
ExclusiveArch: %{rust_arches}
- rust-libspa
ExclusiveArch: %{rust_arches}
- rust-libspa-sys
ExclusiveArch: %{rust_arches}
- rust-libsqlite3-sys
ExclusiveArch: %{rust_arches}
- rust-libssh2-sys
ExclusiveArch: %{rust_arches}
- rust-libsystemd
ExclusiveArch: %{rust_arches}
- rust-libudev
ExclusiveArch: %{rust_arches}
- rust-libudev-sys
ExclusiveArch: %{rust_arches}
- rust-libxml
ExclusiveArch: %{rust_arches}
- rust-libz-sys
ExclusiveArch: %{rust_arches}
- rust-line-wrap
ExclusiveArch: %{rust_arches}
- rust-link-cplusplus
ExclusiveArch: %{rust_arches}
- rust-linked-hash-map
ExclusiveArch: %{rust_arches}
- rust-linkify
ExclusiveArch: %{rust_arches}
- rust-linreg
ExclusiveArch: %{rust_arches}
- rust-linux-raw-sys
ExclusiveArch: %{rust_arches}
- rust-linux_proc
ExclusiveArch: %{rust_arches}
- rust-lipsum
ExclusiveArch: %{rust_arches}
- rust-listenfd
ExclusiveArch: %{rust_arches}
- rust-lmdb
ExclusiveArch: %{rust_arches}
- rust-lmdb-sys
ExclusiveArch: %{rust_arches}
- rust-local-channel
ExclusiveArch: %{rust_arches}
- rust-local-encoding
ExclusiveArch: %{rust_arches}
- rust-local-waker
ExclusiveArch: %{rust_arches}
- rust-local_ipaddress
ExclusiveArch: %{rust_arches}
- rust-locale
ExclusiveArch: %{rust_arches}
- rust-locale_config
ExclusiveArch: %{rust_arches}
- rust-lock_api
ExclusiveArch: %{rust_arches}
- rust-lockfree
ExclusiveArch: %{rust_arches}
- rust-log
ExclusiveArch: %{rust_arches}
- rust-log-mdc
ExclusiveArch: %{rust_arches}
- rust-log-panics
ExclusiveArch: %{rust_arches}
- rust-log0.3
ExclusiveArch: %{rust_arches}
- rust-loggerv
ExclusiveArch: %{rust_arches}
- rust-loopdev
ExclusiveArch: %{rust_arches}
- rust-lru-cache
ExclusiveArch: %{rust_arches}
- rust-lscolors
ExclusiveArch: %{rust_arches}
- rust-lsd
ExclusiveArch: %{rust_arches}
- rust-lzma-sys
ExclusiveArch: %{rust_arches}
- rust-lzw
ExclusiveArch: %{rust_arches}
- rust-mac
ExclusiveArch: %{rust_arches}
- rust-mac_address
ExclusiveArch: %{rust_arches}
- rust-macro-attr
ExclusiveArch: %{rust_arches}
- rust-madvr_parse
ExclusiveArch: %{rust_arches}
- rust-maildir
ExclusiveArch: %{rust_arches}
- rust-mailparse
ExclusiveArch: %{rust_arches}
- rust-man
ExclusiveArch: %{rust_arches}
- rust-maplit
ExclusiveArch: %{rust_arches}
- rust-markup5ever
ExclusiveArch: %{rust_arches}
- rust-markup5ever_rcdom
ExclusiveArch: %{rust_arches}
- rust-match_cfg
ExclusiveArch: %{rust_arches}
- rust-matches
ExclusiveArch: %{rust_arches}
- rust-matrixcompare
ExclusiveArch: %{rust_arches}
- rust-matrixcompare-core
ExclusiveArch: %{rust_arches}
- rust-matrixcompare-mock
ExclusiveArch: %{rust_arches}
- rust-matrixmultiply
ExclusiveArch: %{rust_arches}
- rust-maxminddb
ExclusiveArch: %{rust_arches}
- rust-maybe-uninit
ExclusiveArch: %{rust_arches}
- rust-mbox
ExclusiveArch: %{rust_arches}
- rust-mbrman
ExclusiveArch: %{rust_arches}
- rust-md-5
ExclusiveArch: %{rust_arches}
- rust-md-5_0.9
ExclusiveArch: %{rust_arches}
- rust-md5
ExclusiveArch: %{rust_arches}
- rust-mdl
ExclusiveArch: %{rust_arches}
- rust-memcached-rs
ExclusiveArch: %{rust_arches}
- rust-memchr
ExclusiveArch: %{rust_arches}
- rust-memmap
ExclusiveArch: %{rust_arches}
- rust-memmap2
ExclusiveArch: %{rust_arches}
- rust-memmap2_0.3
ExclusiveArch: %{rust_arches}
- rust-memmem
ExclusiveArch: %{rust_arches}
- rust-memoffset
ExclusiveArch: %{rust_arches}
- rust-memoffset0.5
ExclusiveArch: %{rust_arches}
- rust-memsec
ExclusiveArch: %{rust_arches}
- rust-micro-timer
ExclusiveArch: %{rust_arches}
- rust-micro-timer-macros
ExclusiveArch: %{rust_arches}
- rust-miette
ExclusiveArch: %{rust_arches}
- rust-miette-derive
ExclusiveArch: %{rust_arches}
- rust-mime
ExclusiveArch: %{rust_arches}
- rust-mime_guess
ExclusiveArch: %{rust_arches}
- rust-minimad
ExclusiveArch: %{rust_arches}
- rust-minimal-lexical
ExclusiveArch: %{rust_arches}
- rust-miniz_oxide
ExclusiveArch: %{rust_arches}
- rust-miniz_oxide0.3
ExclusiveArch: %{rust_arches}
- rust-mint
ExclusiveArch: %{rust_arches}
- rust-mio
ExclusiveArch: %{rust_arches}
- rust-mio-extras
ExclusiveArch: %{rust_arches}
- rust-mio-uds
ExclusiveArch: %{rust_arches}
- rust-mio0.6
ExclusiveArch: %{rust_arches}
- rust-mio0.7
ExclusiveArch: %{rust_arches}
- rust-mktemp
ExclusiveArch: %{rust_arches}
- rust-mnt
ExclusiveArch: %{rust_arches}
- rust-mockall
ExclusiveArch: %{rust_arches}
- rust-mockall_derive
ExclusiveArch: %{rust_arches}
- rust-mockall_double
ExclusiveArch: %{rust_arches}
- rust-mockito
ExclusiveArch: %{rust_arches}
- rust-mptcp-pm
ExclusiveArch: %{rust_arches}
- rust-muldiv
ExclusiveArch: %{rust_arches}
- rust-multer
ExclusiveArch: %{rust_arches}
- rust-multimap
ExclusiveArch: %{rust_arches}
- rust-mustache
ExclusiveArch: %{rust_arches}
- rust-nalgebra
ExclusiveArch: %{rust_arches}
- rust-nalgebra-macros
ExclusiveArch: %{rust_arches}
- rust-nanorand
ExclusiveArch: %{rust_arches}
- rust-nasm-rs
ExclusiveArch: %{rust_arches}
- rust-native-tls
ExclusiveArch: %{rust_arches}
- rust-natord
ExclusiveArch: %{rust_arches}
- rust-navi
ExclusiveArch: %{rust_arches}
- rust-nb-connect
ExclusiveArch: %{rust_arches}
- rust-ncurses
ExclusiveArch: %{rust_arches}
- rust-net2
ExclusiveArch: %{rust_arches}
- rust-netlink-packet-core
ExclusiveArch: %{rust_arches}
- rust-netlink-packet-generic
ExclusiveArch: %{rust_arches}
- rust-netlink-packet-route
ExclusiveArch: %{rust_arches}
- rust-netlink-packet-utils
ExclusiveArch: %{rust_arches}
- rust-netlink-proto
ExclusiveArch: %{rust_arches}
- rust-netlink-sys
ExclusiveArch: %{rust_arches}
- rust-netmap_sys
ExclusiveArch: %{rust_arches}
- rust-netstat2
ExclusiveArch: %{rust_arches}
- rust-nettle
ExclusiveArch: %{rust_arches}
- rust-nettle-sys
ExclusiveArch: %{rust_arches}
- rust-new_debug_unreachable
ExclusiveArch: %{rust_arches}
- rust-newtype_derive
ExclusiveArch: %{rust_arches}
- rust-nibble_vec
ExclusiveArch: %{rust_arches}
- rust-nix
ExclusiveArch: %{rust_arches}
- rust-nix0.14
ExclusiveArch: %{rust_arches}
- rust-nix0.17
ExclusiveArch: %{rust_arches}
- rust-nix0.18
ExclusiveArch: %{rust_arches}
- rust-nix0.20
ExclusiveArch: %{rust_arches}
- rust-nix0.22
ExclusiveArch: %{rust_arches}
- rust-nix0.23
ExclusiveArch: %{rust_arches}
- rust-no-panic
ExclusiveArch: %{rust_arches}
- rust-nodrop
ExclusiveArch: %{rust_arches}
- rust-nohash-hasher
ExclusiveArch: %{rust_arches}
- rust-nom
ExclusiveArch: %{rust_arches}
- rust-nom4
ExclusiveArch: %{rust_arches}
- rust-nom5
ExclusiveArch: %{rust_arches}
- rust-noop_proc_macro
ExclusiveArch: %{rust_arches}
- rust-normalize-line-endings
ExclusiveArch: %{rust_arches}
- rust-notify
ExclusiveArch: %{rust_arches}
- rust-notify-rust
ExclusiveArch: %{rust_arches}
- rust-nu-ansi-term
ExclusiveArch: %{rust_arches}
- rust-nu-engine
ExclusiveArch: %{rust_arches}
- rust-nu-glob
ExclusiveArch: %{rust_arches}
- rust-nu-json
ExclusiveArch: %{rust_arches}
- rust-nu-parser
ExclusiveArch: %{rust_arches}
- rust-nu-path
ExclusiveArch: %{rust_arches}
- rust-nu-plugin
ExclusiveArch: %{rust_arches}
- rust-nu-protocol
ExclusiveArch: %{rust_arches}
- rust-nu-system
ExclusiveArch: %{rust_arches}
- rust-nu-utils
ExclusiveArch: %{rust_arches}
- rust-num
ExclusiveArch: %{rust_arches}
- rust-num-bigint
ExclusiveArch: %{rust_arches}
- rust-num-bigint-dig
ExclusiveArch: %{rust_arches}
- rust-num-bigint0.3
ExclusiveArch: %{rust_arches}
- rust-num-complex
ExclusiveArch: %{rust_arches}
- rust-num-complex0.3
ExclusiveArch: %{rust_arches}
- rust-num-derive
ExclusiveArch: %{rust_arches}
- rust-num-format
ExclusiveArch: %{rust_arches}
- rust-num-integer
ExclusiveArch: %{rust_arches}
- rust-num-iter
ExclusiveArch: %{rust_arches}
- rust-num-rational
ExclusiveArch: %{rust_arches}
- rust-num-rational0.3
ExclusiveArch: %{rust_arches}
- rust-num-traits
ExclusiveArch: %{rust_arches}
- rust-num-traits0.1
ExclusiveArch: %{rust_arches}
- rust-num0.3
ExclusiveArch: %{rust_arches}
- rust-num_cpus
ExclusiveArch: %{rust_arches}
- rust-num_enum
ExclusiveArch: %{rust_arches}
- rust-num_enum_derive
ExclusiveArch: %{rust_arches}
- rust-num_threads
ExclusiveArch: %{rust_arches}
- rust-number_prefix
ExclusiveArch: %{rust_arches}
- rust-numtoa
ExclusiveArch: %{rust_arches}
- rust-oauth2
ExclusiveArch: %{rust_arches}
- rust-object
ExclusiveArch: %{rust_arches}
- rust-odds
ExclusiveArch: %{rust_arches}
- rust-oid
ExclusiveArch: %{rust_arches}
- rust-once_cell
ExclusiveArch: %{rust_arches}
- rust-onig
ExclusiveArch: %{rust_arches}
- rust-onig_sys
ExclusiveArch: %{rust_arches}
- rust-oorandom
ExclusiveArch: %{rust_arches}
- rust-opaque-debug
ExclusiveArch: %{rust_arches}
- rust-open
ExclusiveArch: %{rust_arches}
- rust-openat
ExclusiveArch: %{rust_arches}
- rust-openat-ext
ExclusiveArch: %{rust_arches}
- rust-opener
ExclusiveArch: %{rust_arches}
- rust-openssh-keys
ExclusiveArch: %{rust_arches}
- rust-openssl
ExclusiveArch: %{rust_arches}
- rust-openssl-kdf
ExclusiveArch: %{rust_arches}
- rust-openssl-macros
ExclusiveArch: %{rust_arches}
- rust-openssl-probe
ExclusiveArch: %{rust_arches}
- rust-openssl-sys
ExclusiveArch: %{rust_arches}
- rust-option-operations
ExclusiveArch: %{rust_arches}
- rust-ord_subset
ExclusiveArch: %{rust_arches}
- rust-ordered-float
ExclusiveArch: %{rust_arches}
- rust-ordered-float2
ExclusiveArch: %{rust_arches}
- rust-ordered-multimap
ExclusiveArch: %{rust_arches}
- rust-ordered-stream
ExclusiveArch: %{rust_arches}
- rust-os-release
ExclusiveArch: %{rust_arches}
- rust-os_display
ExclusiveArch: %{rust_arches}
- rust-os_info
ExclusiveArch: %{rust_arches}
- rust-os_pipe
ExclusiveArch: %{rust_arches}
- rust-os_pipe0.9
ExclusiveArch: %{rust_arches}
- rust-os_str_bytes
ExclusiveArch: %{rust_arches}
- rust-os_type
ExclusiveArch: %{rust_arches}
- rust-osmesa-sys
ExclusiveArch: %{rust_arches}
- rust-osstrtools
ExclusiveArch: %{rust_arches}
- rust-ouroboros
ExclusiveArch: %{rust_arches}
- rust-ouroboros_macro
ExclusiveArch: %{rust_arches}
- rust-overload
ExclusiveArch: %{rust_arches}
- rust-owned-alloc
ExclusiveArch: %{rust_arches}
- rust-owning_ref
ExclusiveArch: %{rust_arches}
- rust-owo-colors
ExclusiveArch: %{rust_arches}
- rust-packaging
ExclusiveArch: %{rust_arches}
- rust-pad
ExclusiveArch: %{rust_arches}
- rust-page_size
ExclusiveArch: %{rust_arches}
- rust-pager
ExclusiveArch: %{rust_arches}
- rust-palette
ExclusiveArch: %{rust_arches}
- rust-palette_derive
ExclusiveArch: %{rust_arches}
- rust-pam
ExclusiveArch: %{rust_arches}
- rust-pam-sys
ExclusiveArch: %{rust_arches}
- rust-pancurses
ExclusiveArch: %{rust_arches}
- rust-pango
ExclusiveArch: %{rust_arches}
- rust-pango-sys
ExclusiveArch: %{rust_arches}
- rust-pangocairo
ExclusiveArch: %{rust_arches}
- rust-pangocairo-sys
ExclusiveArch: %{rust_arches}
- rust-paris
ExclusiveArch: %{rust_arches}
- rust-parking
ExclusiveArch: %{rust_arches}
- rust-parking_lot
ExclusiveArch: %{rust_arches}
- rust-parking_lot0.11
ExclusiveArch: %{rust_arches}
- rust-parking_lot_core
ExclusiveArch: %{rust_arches}
- rust-parking_lot_core0.8
ExclusiveArch: %{rust_arches}
- rust-parse-zoneinfo
ExclusiveArch: %{rust_arches}
- rust-parse_cfg
ExclusiveArch: %{rust_arches}
- rust-parsec-client
ExclusiveArch: %{rust_arches}
- rust-parsec-interface
ExclusiveArch: %{rust_arches}
- rust-partial-io
ExclusiveArch: %{rust_arches}
- rust-partition-identity
ExclusiveArch: %{rust_arches}
- rust-passwd
ExclusiveArch: %{rust_arches}
- rust-password-hash
ExclusiveArch: %{rust_arches}
- rust-paste
ExclusiveArch: %{rust_arches}
- rust-path-absolutize
ExclusiveArch: %{rust_arches}
- rust-path-dedot
ExclusiveArch: %{rust_arches}
- rust-path-slash
ExclusiveArch: %{rust_arches}
- rust-pathdiff
ExclusiveArch: %{rust_arches}
- rust-pathfinder_geometry
ExclusiveArch: %{rust_arches}
- rust-pathfinder_simd
ExclusiveArch: %{rust_arches}
- rust-pathsearch
ExclusiveArch: %{rust_arches}
- rust-pbkdf2
ExclusiveArch: %{rust_arches}
- rust-pcap
ExclusiveArch: %{rust_arches}
- rust-pcre2
ExclusiveArch: %{rust_arches}
- rust-pcre2-sys
ExclusiveArch: %{rust_arches}
- rust-peeking_take_while
ExclusiveArch: %{rust_arches}
- rust-peg
ExclusiveArch: %{rust_arches}
- rust-peg-macros
ExclusiveArch: %{rust_arches}
- rust-peg-runtime
ExclusiveArch: %{rust_arches}
- rust-peg0.5
ExclusiveArch: %{rust_arches}
- rust-pem
ExclusiveArch: %{rust_arches}
- rust-pem-rfc7468
ExclusiveArch: %{rust_arches}
- rust-pem0.8
ExclusiveArch: %{rust_arches}
- rust-percent-encoding
ExclusiveArch: %{rust_arches}
- rust-percent-encoding1
ExclusiveArch: %{rust_arches}
- rust-peresil
ExclusiveArch: %{rust_arches}
- rust-permutate
ExclusiveArch: %{rust_arches}
- rust-permutohedron
ExclusiveArch: %{rust_arches}
- rust-pest
ExclusiveArch: %{rust_arches}
- rust-pest_derive
ExclusiveArch: %{rust_arches}
- rust-pest_generator
ExclusiveArch: %{rust_arches}
- rust-pest_meta
ExclusiveArch: %{rust_arches}
- rust-petgraph
ExclusiveArch: %{rust_arches}
- rust-petgraph0.5
ExclusiveArch: %{rust_arches}
- rust-phf
ExclusiveArch: %{rust_arches}
- rust-phf0.8
ExclusiveArch: %{rust_arches}
- rust-phf_codegen
ExclusiveArch: %{rust_arches}
- rust-phf_generator
ExclusiveArch: %{rust_arches}
- rust-phf_generator0.8
ExclusiveArch: %{rust_arches}
- rust-phf_macros
ExclusiveArch: %{rust_arches}
- rust-phf_macros0.8
ExclusiveArch: %{rust_arches}
- rust-phf_shared
ExclusiveArch: %{rust_arches}
- rust-phf_shared0.8
ExclusiveArch: %{rust_arches}
- rust-picky-asn1
ExclusiveArch: %{rust_arches}
- rust-picky-asn1-der
ExclusiveArch: %{rust_arches}
- rust-picky-asn1-x509
ExclusiveArch: %{rust_arches}
- rust-pico-args
ExclusiveArch: %{rust_arches}
- rust-pid
ExclusiveArch: %{rust_arches}
- rust-pin-project
ExclusiveArch: %{rust_arches}
- rust-pin-project-internal
ExclusiveArch: %{rust_arches}
- rust-pin-project-internal0.4
ExclusiveArch: %{rust_arches}
- rust-pin-project-lite
ExclusiveArch: %{rust_arches}
- rust-pin-project-lite0.1
ExclusiveArch: %{rust_arches}
- rust-pin-project0.4
ExclusiveArch: %{rust_arches}
- rust-pin-utils
ExclusiveArch: %{rust_arches}
- rust-pipe
ExclusiveArch: %{rust_arches}
- rust-piper
ExclusiveArch: %{rust_arches}
- rust-pipewire
ExclusiveArch: %{rust_arches}
- rust-pipewire-sys
ExclusiveArch: %{rust_arches}
- rust-pkcs1
ExclusiveArch: %{rust_arches}
- rust-pkcs5
ExclusiveArch: %{rust_arches}
- rust-pkcs8
ExclusiveArch: %{rust_arches}
- rust-pkg-config
ExclusiveArch: %{rust_arches}
- rust-plain
ExclusiveArch: %{rust_arches}
- rust-platform-info
ExclusiveArch: %{rust_arches}
- rust-pleaser
ExclusiveArch: %{rust_arches}
- rust-plist
ExclusiveArch: %{rust_arches}
- rust-plotlib
ExclusiveArch: %{rust_arches}
- rust-plotters
ExclusiveArch: %{rust_arches}
- rust-plotters-backend
ExclusiveArch: %{rust_arches}
- rust-plotters-bitmap
ExclusiveArch: %{rust_arches}
- rust-plotters-svg
ExclusiveArch: %{rust_arches}
- rust-pnet_base
ExclusiveArch: %{rust_arches}
- rust-pnet_datalink
ExclusiveArch: %{rust_arches}
- rust-pnet_sys
ExclusiveArch: %{rust_arches}
- rust-png
ExclusiveArch: %{rust_arches}
- rust-png0.16
ExclusiveArch: %{rust_arches}
- rust-podio
ExclusiveArch: %{rust_arches}
- rust-polling
ExclusiveArch: %{rust_arches}
- rust-polyval
ExclusiveArch: %{rust_arches}
- rust-pom
ExclusiveArch: %{rust_arches}
- rust-pommes
ExclusiveArch: %{rust_arches}
- rust-ppv-lite86
ExclusiveArch: %{rust_arches}
- rust-pq-sys
ExclusiveArch: %{rust_arches}
- rust-precomputed-hash
ExclusiveArch: %{rust_arches}
- rust-predicates
ExclusiveArch: %{rust_arches}
- rust-predicates-core
ExclusiveArch: %{rust_arches}
- rust-predicates-tree
ExclusiveArch: %{rust_arches}
- rust-predicates1
ExclusiveArch: %{rust_arches}
- rust-pretty
ExclusiveArch: %{rust_arches}
- rust-pretty-bytes
ExclusiveArch: %{rust_arches}
- rust-pretty-git-prompt
ExclusiveArch: %{rust_arches}
- rust-pretty-hex
ExclusiveArch: %{rust_arches}
- rust-pretty_assertions
ExclusiveArch: %{rust_arches}
- rust-pretty_assertions0.6
ExclusiveArch: %{rust_arches}
- rust-pretty_assertions0.7
ExclusiveArch: %{rust_arches}
- rust-pretty_env_logger
ExclusiveArch: %{rust_arches}
- rust-prettytable-rs
ExclusiveArch: %{rust_arches}
- rust-primal-bit
ExclusiveArch: %{rust_arches}
- rust-primal-check
ExclusiveArch: %{rust_arches}
- rust-primal-estimate
ExclusiveArch: %{rust_arches}
- rust-primal-sieve
ExclusiveArch: %{rust_arches}
- rust-primal-slowsieve
ExclusiveArch: %{rust_arches}
- rust-print_bytes
ExclusiveArch: %{rust_arches}
- rust-proc-macro-crate
ExclusiveArch: %{rust_arches}
- rust-proc-macro-crate0.1
ExclusiveArch: %{rust_arches}
- rust-proc-macro-error
ExclusiveArch: %{rust_arches}
- rust-proc-macro-error-attr
ExclusiveArch: %{rust_arches}
- rust-proc-macro-hack
ExclusiveArch: %{rust_arches}
- rust-proc-macro2
ExclusiveArch: %{rust_arches}
- rust-proc-macro2-0.4
ExclusiveArch: %{rust_arches}
- rust-proc-maps
ExclusiveArch: %{rust_arches}
- rust-proc-mounts
ExclusiveArch: %{rust_arches}
- rust-proc-quote-impl
ExclusiveArch: %{rust_arches}
- rust-process_control
ExclusiveArch: %{rust_arches}
- rust-process_path
ExclusiveArch: %{rust_arches}
- rust-procfs
ExclusiveArch: %{rust_arches}
- rust-procfs0.9
ExclusiveArch: %{rust_arches}
- rust-procs
ExclusiveArch: %{rust_arches}
- rust-progress-streams
ExclusiveArch: %{rust_arches}
- rust-prometheus
ExclusiveArch: %{rust_arches}
- rust-proptest
ExclusiveArch: %{rust_arches}
- rust-proptest-derive
ExclusiveArch: %{rust_arches}
- rust-proptest0.10
ExclusiveArch: %{rust_arches}
- rust-prost
ExclusiveArch: %{rust_arches}
- rust-prost-build
ExclusiveArch: %{rust_arches}
- rust-prost-derive
ExclusiveArch: %{rust_arches}
- rust-prost-derive0.8
ExclusiveArch: %{rust_arches}
- rust-prost-types
ExclusiveArch: %{rust_arches}
- rust-prost0.8
ExclusiveArch: %{rust_arches}
- rust-protobuf
ExclusiveArch: %{rust_arches}
- rust-protobuf-codegen
ExclusiveArch: %{rust_arches}
- rust-protobuf-codegen-pure
ExclusiveArch: %{rust_arches}
- rust-protoc
ExclusiveArch: %{rust_arches}
- rust-protoc-rust
ExclusiveArch: %{rust_arches}
- rust-psa-crypto
ExclusiveArch: %{rust_arches}
- rust-psa-crypto-sys
ExclusiveArch: %{rust_arches}
- rust-psl-types
ExclusiveArch: %{rust_arches}
- rust-psm
ExclusiveArch: %{rust_arches}
- rust-ptr_meta
ExclusiveArch: %{rust_arches}
- rust-ptr_meta_derive
ExclusiveArch: %{rust_arches}
- rust-publicsuffix
ExclusiveArch: %{rust_arches}
- rust-pulldown-cmark
ExclusiveArch: %{rust_arches}
- rust-pulse
ExclusiveArch: %{rust_arches}
- rust-pure-rust-locales
ExclusiveArch: %{rust_arches}
- rust-pwd
ExclusiveArch: %{rust_arches}
- rust-pyo3
ExclusiveArch: %{rust_arches}
- rust-pyo3-build-config
ExclusiveArch: %{rust_arches}
- rust-pyo3-macros
ExclusiveArch: %{rust_arches}
- rust-pyo3-macros-backend
ExclusiveArch: %{rust_arches}
- rust-python-launcher
ExclusiveArch: %{rust_arches}
- rust-python3-sys
ExclusiveArch: %{rust_arches}
- rust-qstring
ExclusiveArch: %{rust_arches}
- rust-quantiles
ExclusiveArch: %{rust_arches}
- rust-quick-error
ExclusiveArch: %{rust_arches}
- rust-quick-error1
ExclusiveArch: %{rust_arches}
- rust-quick-xml
ExclusiveArch: %{rust_arches}
- rust-quick-xml0.22
ExclusiveArch: %{rust_arches}
- rust-quickcheck
ExclusiveArch: %{rust_arches}
- rust-quickcheck0.6
ExclusiveArch: %{rust_arches}
- rust-quickcheck0.9
ExclusiveArch: %{rust_arches}
- rust-quickcheck_macros
ExclusiveArch: %{rust_arches}
- rust-quickersort
ExclusiveArch: %{rust_arches}
- rust-quicli
ExclusiveArch: %{rust_arches}
- rust-quote
ExclusiveArch: %{rust_arches}
- rust-quote0.3
ExclusiveArch: %{rust_arches}
- rust-quote0.6
ExclusiveArch: %{rust_arches}
- rust-quoted_printable
ExclusiveArch: %{rust_arches}
- rust-r2d2
ExclusiveArch: %{rust_arches}
- rust-radium
ExclusiveArch: %{rust_arches}
- rust-radix_trie
ExclusiveArch: %{rust_arches}
- rust-rand
ExclusiveArch: %{rust_arches}
- rust-rand0.4
ExclusiveArch: %{rust_arches}
- rust-rand0.5
ExclusiveArch: %{rust_arches}
- rust-rand0.6
ExclusiveArch: %{rust_arches}
- rust-rand0.7
ExclusiveArch: %{rust_arches}
- rust-rand_chacha
ExclusiveArch: %{rust_arches}
- rust-rand_chacha0.1
ExclusiveArch: %{rust_arches}
- rust-rand_chacha0.2
ExclusiveArch: %{rust_arches}
- rust-rand_core
ExclusiveArch: %{rust_arches}
- rust-rand_core0.3
ExclusiveArch: %{rust_arches}
- rust-rand_core0.4
ExclusiveArch: %{rust_arches}
- rust-rand_core0.5
ExclusiveArch: %{rust_arches}
- rust-rand_distr
ExclusiveArch: %{rust_arches}
- rust-rand_hc
ExclusiveArch: %{rust_arches}
- rust-rand_hc0.1
ExclusiveArch: %{rust_arches}
- rust-rand_isaac
ExclusiveArch: %{rust_arches}
- rust-rand_isaac0.1
ExclusiveArch: %{rust_arches}
- rust-rand_jitter
ExclusiveArch: %{rust_arches}
- rust-rand_jitter0.1
ExclusiveArch: %{rust_arches}
- rust-rand_os
ExclusiveArch: %{rust_arches}
- rust-rand_os0.1
ExclusiveArch: %{rust_arches}
- rust-rand_pcg
ExclusiveArch: %{rust_arches}
- rust-rand_pcg0.1
ExclusiveArch: %{rust_arches}
- rust-rand_pcg0.2
ExclusiveArch: %{rust_arches}
- rust-rand_xorshift
ExclusiveArch: %{rust_arches}
- rust-rand_xorshift0.1
ExclusiveArch: %{rust_arches}
- rust-rand_xorshift0.2
ExclusiveArch: %{rust_arches}
- rust-rand_xoshiro
ExclusiveArch: %{rust_arches}
- rust-random
ExclusiveArch: %{rust_arches}
- rust-random-fast-rng
ExclusiveArch: %{rust_arches}
- rust-random-trait
ExclusiveArch: %{rust_arches}
- rust-randomize
ExclusiveArch: %{rust_arches}
- rust-rav1e
ExclusiveArch: %{rust_arches}
- rust-raw-window-handle
ExclusiveArch: %{rust_arches}
- rust-rawpointer
ExclusiveArch: %{rust_arches}
- rust-rawslice
ExclusiveArch: %{rust_arches}
- rust-rayon
ExclusiveArch: %{rust_arches}
- rust-rayon-core
ExclusiveArch: %{rust_arches}
- rust-rbspy
ExclusiveArch: %{rust_arches}
- rust-rbspy-ruby-structs
ExclusiveArch: %{rust_arches}
- rust-rbspy-testdata
ExclusiveArch: %{rust_arches}
- rust-rctree
ExclusiveArch: %{rust_arches}
- rust-rd-agent
ExclusiveArch: %{rust_arches}
- rust-rd-agent-intf
ExclusiveArch: %{rust_arches}
- rust-rd-hashd
ExclusiveArch: %{rust_arches}
- rust-rd-hashd-intf
ExclusiveArch: %{rust_arches}
- rust-rd-util
ExclusiveArch: %{rust_arches}
- rust-read-process-memory
ExclusiveArch: %{rust_arches}
- rust-read_input
ExclusiveArch: %{rust_arches}
- rust-readwrite
ExclusiveArch: %{rust_arches}
- rust-recycler
ExclusiveArch: %{rust_arches}
- rust-ref-cast
ExclusiveArch: %{rust_arches}
- rust-ref-cast-impl
ExclusiveArch: %{rust_arches}
- rust-regex
ExclusiveArch: %{rust_arches}
- rust-regex-automata
ExclusiveArch: %{rust_arches}
- rust-regex-syntax
ExclusiveArch: %{rust_arches}
- rust-region
ExclusiveArch: %{rust_arches}
- rust-relay
ExclusiveArch: %{rust_arches}
- rust-remoteprocess
ExclusiveArch: %{rust_arches}
- rust-remove_dir_all
ExclusiveArch: %{rust_arches}
- rust-rend
ExclusiveArch: %{rust_arches}
- rust-reqwest
ExclusiveArch: %{rust_arches}
- rust-resctl-bench
ExclusiveArch: %{rust_arches}
- rust-resctl-bench-intf
ExclusiveArch: %{rust_arches}
- rust-resctl-demo
ExclusiveArch: %{rust_arches}
- rust-resize
ExclusiveArch: %{rust_arches}
- rust-resolv-conf
ExclusiveArch: %{rust_arches}
- rust-retry
ExclusiveArch: %{rust_arches}
- rust-rgb
ExclusiveArch: %{rust_arches}
- rust-ring
ExclusiveArch: %{rust_arches}
- rust-ripgrep
ExclusiveArch: %{rust_arches}
- rust-rkyv
ExclusiveArch: %{rust_arches}
- rust-rkyv_derive
ExclusiveArch: %{rust_arches}
- rust-rle-decode-fast
ExclusiveArch: %{rust_arches}
- rust-rmp
ExclusiveArch: %{rust_arches}
- rust-rmp-serde
ExclusiveArch: %{rust_arches}
- rust-rmpv
ExclusiveArch: %{rust_arches}
- rust-roff
ExclusiveArch: %{rust_arches}
- rust-ron
ExclusiveArch: %{rust_arches}
- rust-roxmltree
ExclusiveArch: %{rust_arches}
- rust-rpassword
ExclusiveArch: %{rust_arches}
- rust-rpick
ExclusiveArch: %{rust_arches}
- rust-rpm-sequoia
ExclusiveArch: %{rust_arches}
- rust-rsa
ExclusiveArch: %{rust_arches}
- rust-rspec
ExclusiveArch: %{rust_arches}
- rust-rtnetlink
ExclusiveArch: %{rust_arches}
- rust-rusqlite
ExclusiveArch: %{rust_arches}
- rust-rust-embed
ExclusiveArch: %{rust_arches}
- rust-rust-embed-impl
ExclusiveArch: %{rust_arches}
- rust-rust-embed-utils
ExclusiveArch: %{rust_arches}
- rust-rust-ini
ExclusiveArch: %{rust_arches}
- rust-rust_decimal
ExclusiveArch: %{rust_arches}
- rust-rustbus
ExclusiveArch: %{rust_arches}
- rust-rustbus_derive
ExclusiveArch: %{rust_arches}
- rust-rustc-demangle
ExclusiveArch: %{rust_arches}
- rust-rustc-hash
ExclusiveArch: %{rust_arches}
- rust-rustc-serialize
ExclusiveArch: %{rust_arches}
- rust-rustc-test
ExclusiveArch: %{rust_arches}
- rust-rustc_tools_util
ExclusiveArch: %{rust_arches}
- rust-rustc_version
ExclusiveArch: %{rust_arches}
- rust-rustc_version0.3
ExclusiveArch: %{rust_arches}
- rust-rustcat
ExclusiveArch: %{rust_arches}
- rust-rustdoc-stripper
ExclusiveArch: %{rust_arches}
- rust-rustfilt
ExclusiveArch: %{rust_arches}
- rust-rustfix
ExclusiveArch: %{rust_arches}
- rust-rustix
ExclusiveArch: %{rust_arches}
- rust-rustls
ExclusiveArch: %{rust_arches}
- rust-rustls-native-certs
ExclusiveArch: %{rust_arches}
- rust-rustls-pemfile
ExclusiveArch: %{rust_arches}
- rust-rustversion
ExclusiveArch: %{rust_arches}
- rust-rusty-fork
ExclusiveArch: %{rust_arches}
- rust-rustyline
ExclusiveArch: %{rust_arches}
- rust-rustyline-derive
ExclusiveArch: %{rust_arches}
- rust-ryu
ExclusiveArch: %{rust_arches}
- rust-safe-transmute
ExclusiveArch: %{rust_arches}
- rust-safe_arch
ExclusiveArch: %{rust_arches}
- rust-safemem
ExclusiveArch: %{rust_arches}
- rust-salsa20
ExclusiveArch: %{rust_arches}
- rust-same-file
ExclusiveArch: %{rust_arches}
- rust-scan_fmt
ExclusiveArch: %{rust_arches}
- rust-scheduled-thread-pool
ExclusiveArch: %{rust_arches}
- rust-scoped-tls
ExclusiveArch: %{rust_arches}
- rust-scoped-tls-hkt
ExclusiveArch: %{rust_arches}
- rust-scoped_threadpool
ExclusiveArch: %{rust_arches}
- rust-scopeguard
ExclusiveArch: %{rust_arches}
- rust-scopetime
ExclusiveArch: %{rust_arches}
- rust-scratch
ExclusiveArch: %{rust_arches}
- rust-scroll
ExclusiveArch: %{rust_arches}
- rust-scroll_derive
ExclusiveArch: %{rust_arches}
- rust-scrypt
ExclusiveArch: %{rust_arches}
- rust-sct
ExclusiveArch: %{rust_arches}
- rust-sd
ExclusiveArch: %{rust_arches}
- rust-sd-notify
ExclusiveArch: %{rust_arches}
- rust-seahash
ExclusiveArch: %{rust_arches}
- rust-seahash3
ExclusiveArch: %{rust_arches}
- rust-secrecy
ExclusiveArch: %{rust_arches}
- rust-secret-service
ExclusiveArch: %{rust_arches}
- rust-selectors
ExclusiveArch: %{rust_arches}
- rust-self_cell
ExclusiveArch: %{rust_arches}
- rust-semver
ExclusiveArch: %{rust_arches}
- rust-semver-parser
ExclusiveArch: %{rust_arches}
- rust-semver-parser0.9
ExclusiveArch: %{rust_arches}
- rust-semver0.11
ExclusiveArch: %{rust_arches}
- rust-sequoia-autocrypt
ExclusiveArch: %{rust_arches}
- rust-sequoia-ipc
ExclusiveArch: %{rust_arches}
- rust-sequoia-keyring-linter
ExclusiveArch: %{rust_arches}
- rust-sequoia-net
ExclusiveArch: %{rust_arches}
- rust-sequoia-octopus-librnp
ExclusiveArch: %{rust_arches}
- rust-sequoia-openpgp
ExclusiveArch: %{rust_arches}
- rust-sequoia-openpgp-mt
ExclusiveArch: %{rust_arches}
- rust-sequoia-sop
ExclusiveArch: %{rust_arches}
- rust-sequoia-sq
ExclusiveArch: %{rust_arches}
- rust-sequoia-sqv
ExclusiveArch: %{rust_arches}
- rust-serde
ExclusiveArch: %{rust_arches}
- rust-serde-big-array
ExclusiveArch: %{rust_arches}
- rust-serde-pickle
ExclusiveArch: %{rust_arches}
- rust-serde-value
ExclusiveArch: %{rust_arches}
- rust-serde-xml-rs
ExclusiveArch: %{rust_arches}
- rust-serde_bser
ExclusiveArch: %{rust_arches}
- rust-serde_bytes
ExclusiveArch: %{rust_arches}
- rust-serde_cbor
ExclusiveArch: %{rust_arches}
- rust-serde_derive
ExclusiveArch: %{rust_arches}
- rust-serde_fmt
ExclusiveArch: %{rust_arches}
- rust-serde_ignored
ExclusiveArch: %{rust_arches}
- rust-serde_json
ExclusiveArch: %{rust_arches}
- rust-serde_qs
ExclusiveArch: %{rust_arches}
- rust-serde_repr
ExclusiveArch: %{rust_arches}
- rust-serde_stacker
ExclusiveArch: %{rust_arches}
- rust-serde_test
ExclusiveArch: %{rust_arches}
- rust-serde_url_params
ExclusiveArch: %{rust_arches}
- rust-serde_urlencoded
ExclusiveArch: %{rust_arches}
- rust-serde_with
ExclusiveArch: %{rust_arches}
- rust-serde_with_macros
ExclusiveArch: %{rust_arches}
- rust-serde_yaml
ExclusiveArch: %{rust_arches}
- rust-serde_yaml0.8
ExclusiveArch: %{rust_arches}
- rust-serial-core
ExclusiveArch: %{rust_arches}
- rust-serial_test
ExclusiveArch: %{rust_arches}
- rust-serial_test0.5
ExclusiveArch: %{rust_arches}
- rust-serial_test_derive
ExclusiveArch: %{rust_arches}
- rust-serial_test_derive0.5
ExclusiveArch: %{rust_arches}
- rust-servo-fontconfig
ExclusiveArch: %{rust_arches}
- rust-servo-fontconfig-sys
ExclusiveArch: %{rust_arches}
- rust-servo_arc
ExclusiveArch: %{rust_arches}
- rust-sev
ExclusiveArch: x86_64
- rust-sevctl
ExclusiveArch: x86_64
- rust-sha-1
ExclusiveArch: %{rust_arches}
- rust-sha-1_0.9
ExclusiveArch: %{rust_arches}
- rust-sha1
ExclusiveArch: %{rust_arches}
- rust-sha1_0.6
ExclusiveArch: %{rust_arches}
- rust-sha1_smol
ExclusiveArch: %{rust_arches}
- rust-sha1collisiondetection
ExclusiveArch: %{rust_arches}
- rust-sha2
ExclusiveArch: %{rust_arches}
- rust-sha2_0.9
ExclusiveArch: %{rust_arches}
- rust-sha3
ExclusiveArch: %{rust_arches}
- rust-sha3_0.9
ExclusiveArch: %{rust_arches}
- rust-shadow-rs
ExclusiveArch: %{rust_arches}
- rust-sharded-slab
ExclusiveArch: %{rust_arches}
- rust-shared_child
ExclusiveArch: %{rust_arches}
- rust-shared_library
ExclusiveArch: %{rust_arches}
- rust-shell-escape
ExclusiveArch: %{rust_arches}
- rust-shell-words
ExclusiveArch: %{rust_arches}
- rust-shellexpand
ExclusiveArch: %{rust_arches}
- rust-shellwords
ExclusiveArch: %{rust_arches}
- rust-shlex
ExclusiveArch: %{rust_arches}
- rust-signal
ExclusiveArch: %{rust_arches}
- rust-signal-hook
ExclusiveArch: %{rust_arches}
- rust-signal-hook-mio
ExclusiveArch: %{rust_arches}
- rust-signal-hook-registry
ExclusiveArch: %{rust_arches}
- rust-signal-hook0.1
ExclusiveArch: %{rust_arches}
- rust-signature
ExclusiveArch: %{rust_arches}
- rust-signature_derive
ExclusiveArch: %{rust_arches}
- rust-silver
ExclusiveArch: %{rust_arches}
- rust-simba
ExclusiveArch: %{rust_arches}
- rust-simd_helpers
ExclusiveArch: %{rust_arches}
- rust-simdutf8
ExclusiveArch: %{rust_arches}
- rust-similar
ExclusiveArch: %{rust_arches}
- rust-similar-asserts
ExclusiveArch: %{rust_arches}
- rust-simple-error
ExclusiveArch: %{rust_arches}
- rust-simple_asn1
ExclusiveArch: %{rust_arches}
- rust-simple_logger
ExclusiveArch: %{rust_arches}
- rust-simplelog
ExclusiveArch: %{rust_arches}
- rust-sinit
ExclusiveArch: %{rust_arches}
- rust-siphasher
ExclusiveArch: %{rust_arches}
- rust-sized-chunks
ExclusiveArch: %{rust_arches}
- rust-skeptic
ExclusiveArch: %{rust_arches}
- rust-skim
ExclusiveArch: %{rust_arches}
- rust-slab
ExclusiveArch: %{rust_arches}
- rust-slog
ExclusiveArch: %{rust_arches}
- rust-slog-async
ExclusiveArch: %{rust_arches}
- rust-slog-scope
ExclusiveArch: %{rust_arches}
- rust-slog-term
ExclusiveArch: %{rust_arches}
- rust-slug
ExclusiveArch: %{rust_arches}
- rust-sluice
ExclusiveArch: %{rust_arches}
- rust-smallbitvec
ExclusiveArch: %{rust_arches}
- rust-smallstr
ExclusiveArch: %{rust_arches}
- rust-smallvec
ExclusiveArch: %{rust_arches}
- rust-smart-default
ExclusiveArch: %{rust_arches}
- rust-smawk
ExclusiveArch: %{rust_arches}
- rust-smithay-client-toolkit
ExclusiveArch: %{rust_arches}
- rust-smithay-clipboard
ExclusiveArch: %{rust_arches}
- rust-smol_str
ExclusiveArch: %{rust_arches}
- rust-snafu
ExclusiveArch: %{rust_arches}
- rust-snafu-derive
ExclusiveArch: %{rust_arches}
- rust-snake_case
ExclusiveArch: %{rust_arches}
- rust-socket2
ExclusiveArch: %{rust_arches}
- rust-sop
ExclusiveArch: %{rust_arches}
- rust-spin
ExclusiveArch: %{rust_arches}
- rust-spin0.5
ExclusiveArch: %{rust_arches}
- rust-spin_on
ExclusiveArch: %{rust_arches}
- rust-spinning_top
ExclusiveArch: %{rust_arches}
- rust-spki
ExclusiveArch: %{rust_arches}
- rust-spmc
ExclusiveArch: %{rust_arches}
- rust-ssh-key-dir
ExclusiveArch: %{rust_arches}
- rust-stable_deref_trait
ExclusiveArch: %{rust_arches}
- rust-stacker
ExclusiveArch: %{rust_arches}
- rust-standback
ExclusiveArch: %{rust_arches}
- rust-static_assertions
ExclusiveArch: %{rust_arches}
- rust-statistical
ExclusiveArch: %{rust_arches}
- rust-statrs
ExclusiveArch: %{rust_arches}
- rust-stb_truetype
ExclusiveArch: %{rust_arches}
- rust-stderrlog
ExclusiveArch: %{rust_arches}
- rust-stfu8
ExclusiveArch: %{rust_arches}
- rust-str_stack
ExclusiveArch: %{rust_arches}
- rust-stratisd_proc_macros
ExclusiveArch: %{rust_arches}
- rust-streaming-stats
ExclusiveArch: %{rust_arches}
- rust-streebog
ExclusiveArch: %{rust_arches}
- rust-streebog0.9
ExclusiveArch: %{rust_arches}
- rust-strict
ExclusiveArch: %{rust_arches}
- rust-string_cache
ExclusiveArch: %{rust_arches}
- rust-string_cache_codegen
ExclusiveArch: %{rust_arches}
- rust-string_cache_shared
ExclusiveArch: %{rust_arches}
- rust-strings
ExclusiveArch: %{rust_arches}
- rust-strip-ansi-escapes
ExclusiveArch: %{rust_arches}
- rust-strsim
ExclusiveArch: %{rust_arches}
- rust-structopt
ExclusiveArch: %{rust_arches}
- rust-structopt-derive
ExclusiveArch: %{rust_arches}
- rust-structopt-derive0.2
ExclusiveArch: %{rust_arches}
- rust-structopt0.2
ExclusiveArch: %{rust_arches}
- rust-strum
ExclusiveArch: %{rust_arches}
- rust-strum0.21
ExclusiveArch: %{rust_arches}
- rust-strum_macros
ExclusiveArch: %{rust_arches}
- rust-strum_macros0.21
ExclusiveArch: %{rust_arches}
- rust-subprocess
ExclusiveArch: %{rust_arches}
- rust-subtle
ExclusiveArch: %{rust_arches}
- rust-sudo_plugin
ExclusiveArch: %{rust_arches}
- rust-sudo_plugin-sys
ExclusiveArch: %{rust_arches}
- rust-supports-color
ExclusiveArch: %{rust_arches}
- rust-supports-hyperlinks
ExclusiveArch: %{rust_arches}
- rust-supports-unicode
ExclusiveArch: %{rust_arches}
- rust-sval
ExclusiveArch: %{rust_arches}
- rust-sval_derive
ExclusiveArch: %{rust_arches}
- rust-sval_json
ExclusiveArch: %{rust_arches}
- rust-svg
ExclusiveArch: %{rust_arches}
- rust-svgtypes
ExclusiveArch: %{rust_arches}
- rust-sxd-document
ExclusiveArch: %{rust_arches}
- rust-syn
ExclusiveArch: %{rust_arches}
- rust-syn0.15
ExclusiveArch: %{rust_arches}
- rust-synom
ExclusiveArch: %{rust_arches}
- rust-synstructure
ExclusiveArch: %{rust_arches}
- rust-syntect
ExclusiveArch: %{rust_arches}
- rust-syntect4
ExclusiveArch: %{rust_arches}
- rust-sys-info
ExclusiveArch: %{rust_arches}
- rust-sys-locale
ExclusiveArch: %{rust_arches}
- rust-sysctl
ExclusiveArch: %{rust_arches}
- rust-sysinfo
ExclusiveArch: %{rust_arches}
- rust-sysinfo0.19
ExclusiveArch: %{rust_arches}
- rust-syslog
ExclusiveArch: %{rust_arches}
- rust-system-deps
ExclusiveArch: %{rust_arches}
- rust-system76_ectool
ExclusiveArch: %{rust_arches}
- rust-tabular
ExclusiveArch: %{rust_arches}
- rust-tabwriter
ExclusiveArch: %{rust_arches}
- rust-take
ExclusiveArch: %{rust_arches}
- rust-take_mut
ExclusiveArch: %{rust_arches}
- rust-tap
ExclusiveArch: %{rust_arches}
- rust-tar
ExclusiveArch: %{rust_arches}
- rust-target
ExclusiveArch: %{rust_arches}
- rust-target-lexicon
ExclusiveArch: %{rust_arches}
- rust-tealdeer
ExclusiveArch: %{rust_arches}
- rust-teloxide
ExclusiveArch: %{rust_arches}
- rust-teloxide-macros
ExclusiveArch: %{rust_arches}
- rust-temp_testdir
ExclusiveArch: %{rust_arches}
- rust-tempdir
ExclusiveArch: %{rust_arches}
- rust-tempfile
ExclusiveArch: %{rust_arches}
- rust-temporary
ExclusiveArch: %{rust_arches}
- rust-temptree
ExclusiveArch: %{rust_arches}
- rust-tendril
ExclusiveArch: %{rust_arches}
- rust-tera
ExclusiveArch: %{rust_arches}
- rust-term
ExclusiveArch: %{rust_arches}
- rust-term0.6
ExclusiveArch: %{rust_arches}
- rust-term_grid
ExclusiveArch: %{rust_arches}
- rust-term_size
ExclusiveArch: %{rust_arches}
- rust-termbg
ExclusiveArch: %{rust_arches}
- rust-termcolor
ExclusiveArch: %{rust_arches}
- rust-terminal_size
ExclusiveArch: %{rust_arches}
- rust-terminfo
ExclusiveArch: %{rust_arches}
- rust-termion
ExclusiveArch: %{rust_arches}
- rust-termios
ExclusiveArch: %{rust_arches}
- rust-termwiz
ExclusiveArch: %{rust_arches}
- rust-test-assembler
ExclusiveArch: %{rust_arches}
- rust-test-case
ExclusiveArch: %{rust_arches}
- rust-tester
ExclusiveArch: %{rust_arches}
- rust-testing_logger
ExclusiveArch: %{rust_arches}
- rust-textwrap
ExclusiveArch: %{rust_arches}
- rust-textwrap0.11
ExclusiveArch: %{rust_arches}
- rust-textwrap0.14
ExclusiveArch: %{rust_arches}
- rust-thiserror
ExclusiveArch: %{rust_arches}
- rust-thiserror-impl
ExclusiveArch: %{rust_arches}
- rust-thread-id
ExclusiveArch: %{rust_arches}
- rust-thread-tree
ExclusiveArch: %{rust_arches}
- rust-thread_local
ExclusiveArch: %{rust_arches}
- rust-threadpool
ExclusiveArch: %{rust_arches}
- rust-tiff
ExclusiveArch: %{rust_arches}
- rust-tiff0.6
ExclusiveArch: %{rust_arches}
- rust-tiger
ExclusiveArch: %{rust_arches}
- rust-time
ExclusiveArch: %{rust_arches}
- rust-time-macros
ExclusiveArch: %{rust_arches}
- rust-time-macros-impl
ExclusiveArch: %{rust_arches}
- rust-time-macros0.1
ExclusiveArch: %{rust_arches}
- rust-time0.1
ExclusiveArch: %{rust_arches}
- rust-time0.2
ExclusiveArch: %{rust_arches}
- rust-timebomb
ExclusiveArch: %{rust_arches}
- rust-timer
ExclusiveArch: %{rust_arches}
- rust-timerfd
ExclusiveArch: %{rust_arches}
- rust-tiny-keccak
ExclusiveArch: %{rust_arches}
- rust-tiny_http
ExclusiveArch: %{rust_arches}
- rust-tiny_http0.6
ExclusiveArch: %{rust_arches}
- rust-tinystr
ExclusiveArch: %{rust_arches}
- rust-tinytemplate
ExclusiveArch: %{rust_arches}
- rust-tinyvec
ExclusiveArch: %{rust_arches}
- rust-tinyvec_macros
ExclusiveArch: %{rust_arches}
- rust-tokei
ExclusiveArch: %{rust_arches}
- rust-tokio
ExclusiveArch: %{rust_arches}
- rust-tokio-codec
ExclusiveArch: %{rust_arches}
- rust-tokio-compat
ExclusiveArch: %{rust_arches}
- rust-tokio-core
ExclusiveArch: %{rust_arches}
- rust-tokio-current-thread
ExclusiveArch: %{rust_arches}
- rust-tokio-executor
ExclusiveArch: %{rust_arches}
- rust-tokio-fs
ExclusiveArch: %{rust_arches}
- rust-tokio-io
ExclusiveArch: %{rust_arches}
- rust-tokio-macros
ExclusiveArch: %{rust_arches}
- rust-tokio-macros0.2
ExclusiveArch: %{rust_arches}
- rust-tokio-mock-task
ExclusiveArch: %{rust_arches}
- rust-tokio-native-tls
ExclusiveArch: %{rust_arches}
- rust-tokio-openssl
ExclusiveArch: %{rust_arches}
- rust-tokio-reactor
ExclusiveArch: %{rust_arches}
- rust-tokio-rustls
ExclusiveArch: %{rust_arches}
- rust-tokio-socks
ExclusiveArch: %{rust_arches}
- rust-tokio-stream
ExclusiveArch: %{rust_arches}
- rust-tokio-sync
ExclusiveArch: %{rust_arches}
- rust-tokio-tcp
ExclusiveArch: %{rust_arches}
- rust-tokio-test
ExclusiveArch: %{rust_arches}
- rust-tokio-threadpool
ExclusiveArch: %{rust_arches}
- rust-tokio-timer
ExclusiveArch: %{rust_arches}
- rust-tokio-tungstenite
ExclusiveArch: %{rust_arches}
- rust-tokio-udp
ExclusiveArch: %{rust_arches}
- rust-tokio-uds
ExclusiveArch: %{rust_arches}
- rust-tokio-util
ExclusiveArch: %{rust_arches}
- rust-tokio-util0.3
ExclusiveArch: %{rust_arches}
- rust-tokio-util0.6
ExclusiveArch: %{rust_arches}
- rust-tokio0.1
ExclusiveArch: %{rust_arches}
- rust-tokio0.2
ExclusiveArch: %{rust_arches}
- rust-toml
ExclusiveArch: %{rust_arches}
- rust-toml0.4
ExclusiveArch: %{rust_arches}
- rust-toml_edit
ExclusiveArch: %{rust_arches}
- rust-totp-lite
ExclusiveArch: %{rust_arches}
- rust-tower-layer
ExclusiveArch: %{rust_arches}
- rust-tower-service
ExclusiveArch: %{rust_arches}
- rust-tower-test
ExclusiveArch: %{rust_arches}
- rust-tower-util
ExclusiveArch: %{rust_arches}
- rust-tpm2-policy
ExclusiveArch: %{rust_arches}
- rust-tracing
ExclusiveArch: %{rust_arches}
- rust-tracing-attributes
ExclusiveArch: %{rust_arches}
- rust-tracing-core
ExclusiveArch: %{rust_arches}
- rust-tracing-futures
ExclusiveArch: %{rust_arches}
- rust-tracing-log
ExclusiveArch: %{rust_arches}
- rust-trash
ExclusiveArch: %{rust_arches}
- rust-tree-sitter
ExclusiveArch: %{rust_arches}
- rust-tree-sitter-cli
ExclusiveArch: %{rust_arches}
- rust-tree-sitter-config
ExclusiveArch: %{rust_arches}
- rust-tree-sitter-highlight
ExclusiveArch: %{rust_arches}
- rust-tree-sitter-loader
ExclusiveArch: %{rust_arches}
- rust-tree-sitter-tags
ExclusiveArch: %{rust_arches}
- rust-treebitmap
ExclusiveArch: %{rust_arches}
- rust-treeline
ExclusiveArch: %{rust_arches}
- rust-trust-dns-proto
ExclusiveArch: %{rust_arches}
- rust-trust-dns-resolver
ExclusiveArch: %{rust_arches}
- rust-try-lock
ExclusiveArch: %{rust_arches}
- rust-trybuild
ExclusiveArch: %{rust_arches}
- rust-tss-esapi
ExclusiveArch: %{rust_arches}
- rust-tss-esapi-sys
ExclusiveArch: %{rust_arches}
- rust-ttf-parser
ExclusiveArch: %{rust_arches}
- rust-ttf-parser0.12
ExclusiveArch: %{rust_arches}
- rust-tui
ExclusiveArch: %{rust_arches}
- rust-tui-react
ExclusiveArch: %{rust_arches}
- rust-tui0.11
ExclusiveArch: %{rust_arches}
- rust-tui0.9
ExclusiveArch: %{rust_arches}
- rust-tuikit
ExclusiveArch: %{rust_arches}
- rust-tungstenite
ExclusiveArch: %{rust_arches}
- rust-twoway
ExclusiveArch: %{rust_arches}
- rust-twox-hash
ExclusiveArch: %{rust_arches}
- rust-type-map
ExclusiveArch: %{rust_arches}
- rust-typed-arena
ExclusiveArch: %{rust_arches}
- rust-typed-arena1
ExclusiveArch: %{rust_arches}
- rust-typed-builder
ExclusiveArch: %{rust_arches}
- rust-typenum
ExclusiveArch: %{rust_arches}
- rust-typetag
ExclusiveArch: %{rust_arches}
- rust-typetag-impl
ExclusiveArch: %{rust_arches}
- rust-tzfile
ExclusiveArch: %{rust_arches}
- rust-ubyte
ExclusiveArch: %{rust_arches}
- rust-ucd-parse
ExclusiveArch: %{rust_arches}
- rust-ucd-trie
ExclusiveArch: %{rust_arches}
- rust-ucd-util
ExclusiveArch: %{rust_arches}
- rust-uefi-run
ExclusiveArch: %{rust_arches}
- rust-umask
ExclusiveArch: %{rust_arches}
- rust-uncased
ExclusiveArch: %{rust_arches}
- rust-unchecked-index
ExclusiveArch: %{rust_arches}
- rust-unescape
ExclusiveArch: %{rust_arches}
- rust-unic-char-property
ExclusiveArch: %{rust_arches}
- rust-unic-char-range
ExclusiveArch: %{rust_arches}
- rust-unic-common
ExclusiveArch: %{rust_arches}
- rust-unic-langid
ExclusiveArch: %{rust_arches}
- rust-unic-langid-impl
ExclusiveArch: %{rust_arches}
- rust-unic-langid-macros
ExclusiveArch: %{rust_arches}
- rust-unic-langid-macros-impl
ExclusiveArch: %{rust_arches}
- rust-unic-locale
ExclusiveArch: %{rust_arches}
- rust-unic-locale-impl
ExclusiveArch: %{rust_arches}
- rust-unic-locale-macros
ExclusiveArch: %{rust_arches}
- rust-unic-locale-macros-impl
ExclusiveArch: %{rust_arches}
- rust-unic-segment
ExclusiveArch: %{rust_arches}
- rust-unic-ucd-category
ExclusiveArch: %{rust_arches}
- rust-unic-ucd-common
ExclusiveArch: %{rust_arches}
- rust-unic-ucd-segment
ExclusiveArch: %{rust_arches}
- rust-unic-ucd-version
ExclusiveArch: %{rust_arches}
- rust-unicase
ExclusiveArch: %{rust_arches}
- rust-unicase1
ExclusiveArch: %{rust_arches}
- rust-unicode-bidi
ExclusiveArch: %{rust_arches}
- rust-unicode-ident
ExclusiveArch: %{rust_arches}
- rust-unicode-linebreak
ExclusiveArch: %{rust_arches}
- rust-unicode-normalization
ExclusiveArch: %{rust_arches}
- rust-unicode-segmentation
ExclusiveArch: %{rust_arches}
- rust-unicode-truncate
ExclusiveArch: %{rust_arches}
- rust-unicode-width
ExclusiveArch: %{rust_arches}
- rust-unicode-xid
ExclusiveArch: %{rust_arches}
- rust-unicode-xid0.1
ExclusiveArch: %{rust_arches}
- rust-unicode_categories
ExclusiveArch: %{rust_arches}
- rust-unindent
ExclusiveArch: %{rust_arches}
- rust-universal-hash
ExclusiveArch: %{rust_arches}
- rust-unix_socket
ExclusiveArch: %{rust_arches}
- rust-unreachable
ExclusiveArch: %{rust_arches}
- rust-unsafe-libyaml
ExclusiveArch: %{rust_arches}
- rust-untrusted
ExclusiveArch: %{rust_arches}
- rust-url
ExclusiveArch: %{rust_arches}
- rust-url1
ExclusiveArch: %{rust_arches}
- rust-url_serde
ExclusiveArch: %{rust_arches}
- rust-urlencoding
ExclusiveArch: %{rust_arches}
- rust-urlocator
ExclusiveArch: %{rust_arches}
- rust-users
ExclusiveArch: %{rust_arches}
- rust-users0.10
ExclusiveArch: %{rust_arches}
- rust-utf-8
ExclusiveArch: %{rust_arches}
- rust-utf8-ranges
ExclusiveArch: %{rust_arches}
- rust-utf8-width
ExclusiveArch: %{rust_arches}
- rust-utf8parse
ExclusiveArch: %{rust_arches}
- rust-uucore
ExclusiveArch: %{rust_arches}
- rust-uucore_procs
ExclusiveArch: %{rust_arches}
- rust-uuid
ExclusiveArch: %{rust_arches}
- rust-uuid0.7
ExclusiveArch: %{rust_arches}
- rust-uuid0.8
ExclusiveArch: %{rust_arches}
- rust-v_frame
ExclusiveArch: %{rust_arches}
- rust-value-bag
ExclusiveArch: %{rust_arches}
- rust-varbincode
ExclusiveArch: %{rust_arches}
- rust-varlink
ExclusiveArch: %{rust_arches}
- rust-varlink-cli
ExclusiveArch: %{rust_arches}
- rust-varlink_generator
ExclusiveArch: %{rust_arches}
- rust-varlink_parser
ExclusiveArch: %{rust_arches}
- rust-varlink_stdinterfaces
ExclusiveArch: %{rust_arches}
- rust-vcsgraph
ExclusiveArch: %{rust_arches}
- rust-vec_map
ExclusiveArch: %{rust_arches}
- rust-vergen
ExclusiveArch: %{rust_arches}
- rust-vergen3
ExclusiveArch: %{rust_arches}
- rust-version
ExclusiveArch: %{rust_arches}
- rust-version-compare
ExclusiveArch: %{rust_arches}
- rust-version-sync
ExclusiveArch: %{rust_arches}
- rust-version-sync0.8
ExclusiveArch: %{rust_arches}
- rust-version_check
ExclusiveArch: %{rust_arches}
- rust-vhost
ExclusiveArch: %{rust_arches}
- rust-vhost-user-backend
ExclusiveArch: %{rust_arches}
- rust-virtio-bindings
ExclusiveArch: x86_64 aarch64 ppc64le
- rust-virtio-queue
ExclusiveArch: %{rust_arches}
- rust-vm-memory
ExclusiveArch: %{rust_arches}
- rust-vmm-sys-util
ExclusiveArch: x86_64 aarch64 ppc64le
- rust-vmw_backdoor
ExclusiveArch: %{rust_arches}
- rust-void
ExclusiveArch: %{rust_arches}
- rust-vsprintf
ExclusiveArch: %{rust_arches}
- rust-vte
ExclusiveArch: %{rust_arches}
- rust-vte_generate_state_changes
ExclusiveArch: %{rust_arches}
- rust-vtparse
ExclusiveArch: %{rust_arches}
- rust-wait-timeout
ExclusiveArch: %{rust_arches}
- rust-waker-fn
ExclusiveArch: %{rust_arches}
- rust-walkdir
ExclusiveArch: %{rust_arches}
- rust-want
ExclusiveArch: %{rust_arches}
- rust-warp
ExclusiveArch: %{rust_arches}
- rust-wasmer_enumset
ExclusiveArch: %{rust_arches}
- rust-wasmer_enumset_derive
ExclusiveArch: %{rust_arches}
- rust-watchman_client
ExclusiveArch: %{rust_arches}
- rust-wayland-client
ExclusiveArch: %{rust_arches}
- rust-wayland-commons
ExclusiveArch: %{rust_arches}
- rust-wayland-cursor
ExclusiveArch: %{rust_arches}
- rust-wayland-egl
ExclusiveArch: %{rust_arches}
- rust-wayland-protocols
ExclusiveArch: %{rust_arches}
- rust-wayland-scanner
ExclusiveArch: %{rust_arches}
- rust-wayland-server
ExclusiveArch: %{rust_arches}
- rust-wayland-sys
ExclusiveArch: %{rust_arches}
- rust-web-ext-native-messaging
ExclusiveArch: %{rust_arches}
- rust-webbrowser
ExclusiveArch: %{rust_arches}
- rust-webpki
ExclusiveArch: %{rust_arches}
- rust-webpki-roots
ExclusiveArch: %{rust_arches}
- rust-weezl
ExclusiveArch: %{rust_arches}
- rust-wezterm-bidi
ExclusiveArch: %{rust_arches}
- rust-wezterm-dynamic
ExclusiveArch: %{rust_arches}
- rust-wezterm-dynamic-derive
ExclusiveArch: %{rust_arches}
- rust-which
ExclusiveArch: %{rust_arches}
- rust-wide
ExclusiveArch: %{rust_arches}
- rust-wild
ExclusiveArch: %{rust_arches}
- rust-winit
ExclusiveArch: %{rust_arches}
- rust-wyz
ExclusiveArch: %{rust_arches}
- rust-x11
ExclusiveArch: %{rust_arches}
- rust-x11-clipboard
ExclusiveArch: %{rust_arches}
- rust-x11-dl
ExclusiveArch: %{rust_arches}
- rust-xattr
ExclusiveArch: %{rust_arches}
- rust-xcb
ExclusiveArch: %{rust_arches}
- rust-xcursor
ExclusiveArch: %{rust_arches}
- rust-xdg
ExclusiveArch: %{rust_arches}
- rust-xi-unicode
ExclusiveArch: %{rust_arches}
- rust-xkbcommon
ExclusiveArch: %{rust_arches}
- rust-xml-rs
ExclusiveArch: %{rust_arches}
- rust-xml5ever
ExclusiveArch: %{rust_arches}
- rust-xmlparser
ExclusiveArch: %{rust_arches}
- rust-xmlwriter
ExclusiveArch: %{rust_arches}
- rust-xxhash-c-sys
ExclusiveArch: %{rust_arches}
- rust-xxhash-rust
ExclusiveArch: %{rust_arches}
- rust-xz2
ExclusiveArch: %{rust_arches}
- rust-y4m
ExclusiveArch: %{rust_arches}
- rust-yaml-rust
ExclusiveArch: %{rust_arches}
- rust-yaml-rust0.3
ExclusiveArch: %{rust_arches}
- rust-yansi
ExclusiveArch: %{rust_arches}
- rust-ybaas
ExclusiveArch: %{rust_arches}
- rust-yubibomb
ExclusiveArch: %{rust_arches}
- rust-z85
ExclusiveArch: %{rust_arches}
- rust-zbase32
ExclusiveArch: %{rust_arches}
- rust-zbus
ExclusiveArch: %{rust_arches}
- rust-zbus1
ExclusiveArch: %{rust_arches}
- rust-zbus_macros
ExclusiveArch: %{rust_arches}
- rust-zbus_macros1
ExclusiveArch: %{rust_arches}
- rust-zbus_names
ExclusiveArch: %{rust_arches}
- rust-zeroize
ExclusiveArch: %{rust_arches}
- rust-zeroize_derive
ExclusiveArch: %{rust_arches}
- rust-zincati
ExclusiveArch: %{rust_arches}
- rust-zip
ExclusiveArch: %{rust_arches}
- rust-zmq
ExclusiveArch: %{rust_arches}
- rust-zmq-sys
ExclusiveArch: %{rust_arches}
- rust-zoneinfo_compiled
ExclusiveArch: %{rust_arches}
- rust-zoxide
ExclusiveArch: %{rust_arches}
- rust-zram-generator
ExclusiveArch: %{rust_arches}
- rust-zstd
ExclusiveArch: %{rust_arches}
- rust-zstd-safe
ExclusiveArch: %{rust_arches}
- rust-zstd-sys
ExclusiveArch: %{rust_arches}
- rust-zvariant
ExclusiveArch: %{rust_arches}
- rust-zvariant2
ExclusiveArch: %{rust_arches}
- rust-zvariant_derive
ExclusiveArch: %{rust_arches}
- rust-zvariant_derive2
ExclusiveArch: %{rust_arches}
- s390utils
ExclusiveArch: s390 s390x
- sac
ExclusiveArch: %{java_arches} noarch
- safetyblanket
ExclusiveArch: %{arm} %{ix86} x86_64 aarch64 ppc64le
- sagemath
ExclusiveArch: aarch64 x86_64
- sat4j
ExclusiveArch: %{java_arches} noarch
- sbcl
ExclusiveArch: %{arm} %{ix86} x86_64 ppc sparcv9 aarch64
- sbd
ExclusiveArch: i686 x86_64 s390x aarch64 ppc64le
- sblim-cim-client
ExclusiveArch: %{java_arches} noarch
- sblim-cim-client2
ExclusiveArch: %{java_arches} noarch
- sbsigntools
ExclusiveArch: x86_64 aarch64 %{arm} %{ix86}
- scala
ExclusiveArch: %{java_arches} noarch
- scalacheck
ExclusiveArch: %{java_arches} noarch
- scannotation
ExclusiveArch: %{java_arches} noarch
- sdljava
ExclusiveArch: %{java_arches}
- sdrangel
ExclusiveArch: %{qt5_qtwebengine_arches}
- sdsl-lite
ExclusiveArch: %{power64} x86_64 aarch64
- seabios
ExclusiveArch: x86_64
- seadrive-gui
ExclusiveArch: %{qt5_qtwebengine_arches}
- seafile-client
ExclusiveArch: %{qt5_qtwebengine_arches}
- seamonkey
ExclusiveArch: x86_64
- seqan3
ExclusiveArch: %{power64} x86_64 aarch64
- sequence-library
ExclusiveArch: %{java_arches} noarch
- serp
ExclusiveArch: %{java_arches} noarch
- servicelog
ExclusiveArch: ppc %{power64}
- sgabios
ExclusiveArch: %{ix86} x86_64
- shaman
ExclusiveArch: %{java_arches} noarch
- sharpfont
ExclusiveArch: %mono_arches
- sharpziplib
ExclusiveArch: %{mono_arches}
- shim
ExclusiveArch: %{efi}
- shim-unsigned-aarch64
ExclusiveArch: aarch64
- shim-unsigned-x64
ExclusiveArch: x86_64
- sigul
ExclusiveArch: x86_64
- sisu
ExclusiveArch: %{java_arches} noarch
- sisu-mojos
ExclusiveArch: %{java_arches} noarch
- skopeo
ExclusiveArch: %{go_arches}
- skychart
ExclusiveArch: %{fpc_arches}
- slf4j
ExclusiveArch: %{java_arches} noarch
- snakeyaml
ExclusiveArch: %{java_arches} noarch
- snapd
ExclusiveArch: %{?golang_arches}%{!?golang_arches:%{ix86} x86_64 %{arm} aarch64 ppc64le s390x}
- snip
ExclusiveArch: %{java_arches} noarch
- softnet-stat
ExclusiveArch: %{rust_arches}
- soup-sharp
ExclusiveArch: %{mono_arches}
- sparkleshare
ExclusiveArch: %{mono_arches}
- spec-version-maven-plugin
ExclusiveArch: %{java_arches} noarch
- spicctrl
ExclusiveArch: %{ix86} x86_64
- spice
ExclusiveArch: x86_64
ExclusiveArch: %{ix86} x86_64 %{arm} aarch64
- spice-parent
ExclusiveArch: %{java_arches} noarch
- springlobby
ExclusiveArch: %{ix86} x86_64
- sqljet
ExclusiveArch: %{java_arches} noarch
- squeekboard
ExclusiveArch: %{rust_arches}
- startdde
ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}}
- statsd
ExclusiveArch: %{nodejs_arches} noarch
- stratis-cli
ExclusiveArch: %{rust_arches} noarch
- stratisd
ExclusiveArch: %{rust_arches}
ExclusiveArch: %{rust_arches}
- string-template-maven-plugin
ExclusiveArch: %{java_arches} noarch
- stringtemplate
ExclusiveArch: %{java_arches} noarch
- stringtemplate4
ExclusiveArch: %{java_arches} noarch
- stripesnoop
ExclusiveArch: %{ix86} x86_64
- subscription-manager-cockpit
ExclusiveArch: %{nodejs_arches} noarch
- supercollider
ExclusiveArch: %{qt5_qtwebengine_arches}
- supermin
ExclusiveArch: %{kernel_arches}
- svnkit
ExclusiveArch: %{java_arches} noarch
- svt-av1
ExclusiveArch: x86_64
- svt-vp9
ExclusiveArch: x86_64
- swift-lang
ExclusiveArch: x86_64 aarch64
- swing-layout
ExclusiveArch: %{java_arches} noarch
- sysbench
ExclusiveArch: %{arm} %{ix86} x86_64 %{mips}
ExclusiveArch: %{arm} %{ix86} x86_64 %{mips} aarch64
ExclusiveArch: %{arm} %{ix86} x86_64 %{mips} aarch64 ppc64le s390x
- syslinux
ExclusiveArch: %{ix86} x86_64
ExclusiveArch: %{ix86} x86_64
- system-rules
ExclusiveArch: %{java_arches} noarch
- system76-keyboard-configurator
ExclusiveArch: %{rust_arches}
- t-digest
ExclusiveArch: %{java_arches} noarch
- taggle
ExclusiveArch: %{java_arches} noarch
- taglib-sharp
ExclusiveArch: %{mono_arches}
- tagsoup
ExclusiveArch: %{java_arches} noarch
- tarantool
ExclusiveArch: %{ix86} x86_64
- tboot
ExclusiveArch: %{ix86} x86_64
- tdlib
ExclusiveArch: x86_64 aarch64
- templates_parser
ExclusiveArch: %GPRbuild_arches
- ternimal
ExclusiveArch: %{rust_arches}
- test-interface
ExclusiveArch: %{java_arches} noarch
- testcloud
ExclusiveArch: %{kernel_arches} noarch
- testng
ExclusiveArch: %{java_arches} noarch
- texlive
ExclusiveArch: %{java_arches} noarch
- themonospot-base
ExclusiveArch: %mono_arches
- themonospot-console
ExclusiveArch: %mono_arches
- themonospot-gui-gtk
ExclusiveArch: %mono_arches
- themonospot-plugin-avi
ExclusiveArch: %mono_arches
- themonospot-plugin-mkv
ExclusiveArch: %mono_arches
- thermald
ExclusiveArch: %{ix86} x86_64
- tilix
ExclusiveArch: %{ldc_arches}
- tomboy
ExclusiveArch: %{mono_arches}
- tomcat
ExclusiveArch: %{java_arches} noarch
- tomcat-native
ExclusiveArch: %{java_arches}
- tomcat-taglibs-parent
ExclusiveArch: %{java_arches} noarch
- tomcatjss
ExclusiveArch: %{java_arches} noarch
- torbrowser-launcher
ExclusiveArch: %{ix86} x86_64
- treelayout
ExclusiveArch: %{java_arches} noarch
- trilead-ssh2
ExclusiveArch: %{java_arches} noarch
- truth
ExclusiveArch: %{java_arches} noarch
- tuned-profiles-nfv-host-bin
ExclusiveArch: %{ix86} x86_64
- typescript
ExclusiveArch: %{nodejs_arches} noarch
- uClibc
ExclusiveArch: %{arm} %{ix86} x86_64 %{mips}
- ucx
ExclusiveArch: aarch64 ppc64le x86_64
- uglify-js
ExclusiveArch: %{nodejs_arches} noarch
- unetbootin
ExclusiveArch: %{ix86} x86_64
- univocity-parsers
ExclusiveArch: %{java_arches} noarch
- ursa-major
ExclusiveArch: noarch aarch64 ppc64le s390x x86_64
- usd
ExclusiveArch: aarch64 x86_64
- v8-314
ExclusiveArch: %{ix86} x86_64 %{arm} mips mipsel ppc ppc64
- valgrind
ExclusiveArch: %{ix86} x86_64 ppc ppc64 ppc64le s390x armv7hl aarch64
- vboot-utils
ExclusiveArch: %{arm} aarch64 %{ix86} x86_64
- vecmath1.2
ExclusiveArch: %{java_arches} noarch
- velocity
ExclusiveArch: %{java_arches} noarch
- vim-go
ExclusiveArch: %{?golang_arches}%{!?golang_arches:%{ix86} x86_64 %{arm}}
- vim-syntastic
ExclusiveArch: %{java_arches} noarch
- virt-p2v
ExclusiveArch: x86_64
- virt-v2v
ExclusiveArch: x86_64
- virtiofsd
ExclusiveArch: %{rust_arches}
- virtualbox-guest-additions
ExclusiveArch: i686 x86_64
- vkd3d
ExclusiveArch: %{ix86} x86_64 %{arm}
ExclusiveArch: %{ix86} x86_64 %{arm} aarch64
- vmaf
ExclusiveArch: x86_64
- vmemcache
ExclusiveArch: x86_64 ppc64 ppc64le s390x aarch64
- voms-api-java
ExclusiveArch: %{java_arches} noarch
- voms-clients-java
ExclusiveArch: %{java_arches} noarch
- vrq
ExclusiveArch: %{ix86} x86_64
- wangle
ExclusiveArch: x86_64 aarch64 ppc64le
- warsow
ExclusiveArch: %{ix86} x86_64 %{arm}
- warsow-data
ExclusiveArch: %{ix86} x86_64 %{arm} noarch
ExclusiveArch: %{ix86} x86_64 %{arm}
- wasmedge
ExclusiveArch: x86_64 aarch64
- watchman
ExclusiveArch: x86_64 aarch64 ppc64le
- wdt
ExclusiveArch: x86_64 aarch64 ppc64le
- webkit2-sharp
ExclusiveArch: %mono_arches
- weld-parent
ExclusiveArch: %{java_arches} noarch
- why3
ExclusiveArch: %{java_arches}
- wine
ExclusiveArch: %{ix86} x86_64 aarch64
ExclusiveArch: %{ix86}
- wine-dxvk
ExclusiveArch: %{ix86} x86_64
- winetricks
ExclusiveArch: %{ix86} x86_64 %{arm} aarch64
- writer2latex
ExclusiveArch: %{java_arches}
- ws-commons-util
ExclusiveArch: %{java_arches} noarch
- wsdl4j
ExclusiveArch: %{java_arches} noarch
- wxMaxima
ExclusiveArch: %{arm} %{ix86} x86_64 aarch64 ppc sparcv9
- x2goclient
ExclusiveArch: x86_64
- xalan-j2
ExclusiveArch: %{java_arches} noarch
- xbean
ExclusiveArch: %{java_arches} noarch
- xbyak
ExclusiveArch: x86_64
- xe-guest-utilities-latest
ExclusiveArch: %{ix86} x86_64
- xen
ExclusiveArch: x86_64 aarch64
- xerces-j2
ExclusiveArch: %{java_arches} noarch
- xgap
ExclusiveArch: aarch64 ppc64le s390x x86_64
- xjparse
ExclusiveArch: %{java_arches} noarch
- xml-commons-apis
ExclusiveArch: %{java_arches} noarch
- xml-commons-resolver
ExclusiveArch: %{java_arches} noarch
- xml-maven-plugin
ExclusiveArch: %{java_arches} noarch
- xmlada
ExclusiveArch: %{GPRbuild_arches}
- xmlgraphics-commons
ExclusiveArch: %{java_arches} noarch
- xmlpull
ExclusiveArch: %{java_arches} noarch
- xmlstreambuffer
ExclusiveArch: %{java_arches} noarch
- xmltool
ExclusiveArch: %{java_arches} noarch
- xmlunit
ExclusiveArch: %{java_arches} noarch
- xmpcore
ExclusiveArch: %{java_arches} noarch
- xmvn
ExclusiveArch: %{java_arches} noarch
- xmvn-connector-ivy
ExclusiveArch: %{java_arches} noarch
- xorg-x11-drv-armsoc
ExclusiveArch: %{arm} aarch64
- xorg-x11-drv-intel
ExclusiveArch: %{ix86} x86_64
- xorg-x11-drv-openchrome
ExclusiveArch: %{ix86} x86_64
- xorg-x11-drv-vesa
ExclusiveArch: %{ix86} x86_64
- xorg-x11-drv-vmware
ExclusiveArch: %{ix86} x86_64 ia64
- xsp
ExclusiveArch: %mono_arches
- xstream
ExclusiveArch: %{java_arches} noarch
- xz-java
ExclusiveArch: %{java_arches} noarch
- yarnpkg
ExclusiveArch: %{nodejs_arches} noarch
- yuicompressor
ExclusiveArch: %{java_arches} noarch
- zcfan
ExclusiveArch: x86_64
- zeal
ExclusiveArch: %{qt5_qtwebengine_arches}
- zenon
ExclusiveArch: %{java_arches}
- zeromq-ada
ExclusiveArch: %{GPRbuild_arches}
- zig
ExclusiveArch: %{zig_arches}
- zlib-ada
ExclusiveArch: %{GPRbuild_arches}
- zlib-ng
ExclusiveArch: aarch64 i686 ppc64le s390x x86_64
- zola
ExclusiveArch: %{rust_arches}
1 year, 1 month
Architecture specific change in rpms/python3.12.git
by githook-noreply@fedoraproject.org
The package rpms/python3.12.git has added or updated architecture specific content in its
spec file (ExclusiveArch/ExcludeArch or %ifarch/%ifnarch) in commit(s):
https://src.fedoraproject.org/cgit/rpms/python3.12.git/commit/?id=6e2dac6....
Change:
+ExcludeArch: %{arm}
Thanks.
Full change:
============
commit fe95b37f25338c94bcfa2fb653e53b5262ec2812
Author: Miro Hrončok <miro(a)hroncok.cz>
Date: Fri Oct 28 00:12:41 2022 +0200
Make the package buildable without bootstrap
diff --git a/00390-gh-98776-fix-make-regen-test-levenshtein-for-out-of-tree-builds.patch b/00390-gh-98776-fix-make-regen-test-levenshtein-for-out-of-tree-builds.patch
new file mode 100644
index 0000000..e87b16d
--- /dev/null
+++ b/00390-gh-98776-fix-make-regen-test-levenshtein-for-out-of-tree-builds.patch
@@ -0,0 +1,34 @@
+From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Miro=20Hron=C4=8Dok?= <miro(a)hroncok.cz>
+Date: Thu, 27 Oct 2022 19:46:06 +0200
+Subject: [PATCH] 00390: gh-98776: Fix make regen-test-levenshtein for
+ out-of-tree builds
+
+Fixes https://github.com/python/cpython/issues/98776
+---
+ Makefile.pre.in | 2 +-
+ .../next/Build/2022-10-27-19-47-31.gh-issue-98776.lt_UOG.rst | 2 ++
+ 2 files changed, 3 insertions(+), 1 deletion(-)
+ create mode 100644 Misc/NEWS.d/next/Build/2022-10-27-19-47-31.gh-issue-98776.lt_UOG.rst
+
+diff --git a/Makefile.pre.in b/Makefile.pre.in
+index 7550414aae..691fc1c5f1 100644
+--- a/Makefile.pre.in
++++ b/Makefile.pre.in
+@@ -961,7 +961,7 @@ regen-test-frozenmain: $(BUILDPYTHON)
+ .PHONY: regen-test-levenshtein
+ regen-test-levenshtein:
+ # Regenerate Lib/test/levenshtein_examples.json
+- $(PYTHON_FOR_REGEN) $(srcdir)/Tools/build/generate_levenshtein_examples.py Lib/test/levenshtein_examples.json
++ $(PYTHON_FOR_REGEN) $(srcdir)/Tools/build/generate_levenshtein_examples.py $(srcdir)/Lib/test/levenshtein_examples.json
+
+ .PHONY: regen-re
+ regen-re: $(BUILDPYTHON)
+diff --git a/Misc/NEWS.d/next/Build/2022-10-27-19-47-31.gh-issue-98776.lt_UOG.rst b/Misc/NEWS.d/next/Build/2022-10-27-19-47-31.gh-issue-98776.lt_UOG.rst
+new file mode 100644
+index 0000000000..f8c0bb21b7
+--- /dev/null
++++ b/Misc/NEWS.d/next/Build/2022-10-27-19-47-31.gh-issue-98776.lt_UOG.rst
+@@ -0,0 +1,2 @@
++When building Python out-of-tree, don't crash during ``make
++regen-test-levenshtein``.
diff --git a/python3.12.spec b/python3.12.spec
index fe812a7..abb36aa 100644
--- a/python3.12.spec
+++ b/python3.12.spec
@@ -360,6 +360,12 @@ Patch371: 00371-revert-bpo-1596321-fix-threading-_shutdown-for-the-main-thread-g
# Fixes https://github.com/python/cpython/issues/98707
Patch389: 00389-don-t-let---with-system-libmpdec---with-system-expat-use-the-vendored-headers.patch
+# 00390 # 1b549f4b0f00f9b782f254eca0d4dee9cd764085
+# gh-98776: Fix make regen-test-levenshtein for out-of-tree builds
+#
+# Fixes https://github.com/python/cpython/issues/98776
+Patch390: 00390-gh-98776-fix-make-regen-test-levenshtein-for-out-of-tree-builds.patch
+
# (New patches go here ^^^)
#
# When adding new patches to "python" and "python3" in Fedora, EL, etc.,
@@ -828,6 +834,12 @@ DirHoldingGdbPy=%{_usr}/lib/debug/%{_libdir}
mkdir -p %{buildroot}$DirHoldingGdbPy
%endif # with gdb_hooks
+# When the actual %%{dynload_dir} exists (it does when python3.X is installed for regen-all)
+# %%{buildroot}%%{dynload_dir} is not created by make install and the extension modules are missing
+# Reported upstream as https://github.com/python/cpython/issues/98782
+# A workaround is to create the directory before running make install
+mkdir -p %{buildroot}%{dynload_dir}
+
# Multilib support for pyconfig.h
# 32- and 64-bit versions of pyconfig.h are different. For multilib support
# (making it possible to install 32- and 64-bit versions simultaneously),
commit 6e2dac669d0fe4486b91a9ae1b25ee6bef234f61
Author: Tomáš Hrnčiar <thrnciar(a)redhat.com>
Date: Thu Oct 27 17:03:45 2022 +0200
Exclude 32bit ARM from Python 3.12
diff --git a/python3.12.spec b/python3.12.spec
index ce51bbf..fe812a7 100644
--- a/python3.12.spec
+++ b/python3.12.spec
@@ -20,6 +20,17 @@ Version: %{general_version}%{?prerel:~%{prerel}}
Release: 1%{?dist}
License: Python-2.0.1
+# Getting this build in Koji on 32bit ARM is frustrating due to technical problems
+# https://pagure.io/releng/issue/11095
+# Fedora 37+ dropped that architecture
+# https://fedoraproject.org/wiki/Changes/RetireARMv7
+# Upstream does not support it anyway
+# https://peps.python.org/pep-0011/
+# Hence, we exclude it starting with Python 3.12
+# https://lists.fedoraproject.org/archives/list/python-devel@lists.fedorapr...
+# Once Fedora 36 goes EOL, this line can be dropped.
+ExcludeArch: %{arm}
+
# ==================================
# Conditionals controlling the build
commit 8003a0743841d0fa13246365e4a22172fb4cebcc
Author: Tomáš Hrnčiar <thrnciar(a)redhat.com>
Date: Thu Oct 27 16:50:15 2022 +0200
Initial Python 3.12 package forked from Python 3.11
diff --git a/00251-change-user-install-location.patch b/00251-change-user-install-location.patch
index 6c3caac..d4538dd 100644
--- a/00251-change-user-install-location.patch
+++ b/00251-change-user-install-location.patch
@@ -35,7 +35,7 @@ Co-authored-by: Lumír Balhar <frenzy.madness(a)gmail.com>
4 files changed, 77 insertions(+), 6 deletions(-)
diff --git a/Lib/distutils/command/install.py b/Lib/distutils/command/install.py
-index 01d5331a63..79f70f0de4 100644
+index a22a5d094d..804505d861 100644
--- a/Lib/distutils/command/install.py
+++ b/Lib/distutils/command/install.py
@@ -159,6 +159,8 @@ class install(Command):
@@ -160,10 +160,10 @@ index ebe3711827..55af57b335 100644
# On Windows we want to substitute 'lib' for schemes rather
# than the native value (without modifying vars, in case it
diff --git a/Lib/test/test_sysconfig.py b/Lib/test/test_sysconfig.py
-index 578ac1db50..dc58e7db18 100644
+index b6dbf3d52c..4f06a7673c 100644
--- a/Lib/test/test_sysconfig.py
+++ b/Lib/test/test_sysconfig.py
-@@ -111,8 +111,19 @@ def test_get_path(self):
+@@ -110,8 +110,19 @@ def test_get_path(self):
for scheme in _INSTALL_SCHEMES:
for name in _INSTALL_SCHEMES[scheme]:
expected = _INSTALL_SCHEMES[scheme][name].format(**config_vars)
@@ -184,7 +184,7 @@ index 578ac1db50..dc58e7db18 100644
os.path.normpath(expected),
)
-@@ -336,7 +347,7 @@ def test_get_config_h_filename(self):
+@@ -335,7 +346,7 @@ def test_get_config_h_filename(self):
self.assertTrue(os.path.isfile(config_h), config_h)
def test_get_scheme_names(self):
@@ -193,7 +193,7 @@ index 578ac1db50..dc58e7db18 100644
if HAS_USER_BASE:
wanted.extend(['nt_user', 'osx_framework_user', 'posix_user'])
self.assertEqual(get_scheme_names(), tuple(sorted(wanted)))
-@@ -348,6 +359,8 @@ def test_symlink(self): # Issue 7880
+@@ -347,6 +358,8 @@ def test_symlink(self): # Issue 7880
cmd = "-c", "import sysconfig; print(sysconfig.get_platform())"
self.assertEqual(py.call_real(*cmd), py.call_link(*cmd))
diff --git a/00328-pyc-timestamp-invalidation-mode.patch b/00328-pyc-timestamp-invalidation-mode.patch
index d04a267..e8f3ad6 100644
--- a/00328-pyc-timestamp-invalidation-mode.patch
+++ b/00328-pyc-timestamp-invalidation-mode.patch
@@ -33,7 +33,7 @@ index 388614e51b..db52725016 100644
else:
return PycInvalidationMode.TIMESTAMP
diff --git a/Lib/test/test_py_compile.py b/Lib/test/test_py_compile.py
-index a4a52b180d..e53f5d92aa 100644
+index 5e0a44ad96..ac14a6a54c 100644
--- a/Lib/test/test_py_compile.py
+++ b/Lib/test/test_py_compile.py
@@ -19,6 +19,7 @@ def without_source_date_epoch(fxn):
diff --git a/00371-revert-bpo-1596321-fix-threading-_shutdown-for-the-main-thread-gh-28549-gh-28589.patch b/00371-revert-bpo-1596321-fix-threading-_shutdown-for-the-main-thread-gh-28549-gh-28589.patch
index 1d39233..20a6a13 100644
--- a/00371-revert-bpo-1596321-fix-threading-_shutdown-for-the-main-thread-gh-28549-gh-28589.patch
+++ b/00371-revert-bpo-1596321-fix-threading-_shutdown-for-the-main-thread-gh-28549-gh-28589.patch
@@ -1,6 +1,6 @@
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Tom=C3=A1=C5=A1=20Hrn=C4=8Diar?= <thrnciar(a)redhat.com>
-Date: Tue, 7 Dec 2021 14:41:59 +0100
+Date: Tue, 25 Oct 2022 12:02:33 +0200
Subject: [PATCH] 00371: Revert "bpo-1596321: Fix threading._shutdown() for the
main thread (GH-28549) (GH-28589)"
@@ -16,12 +16,12 @@ https://github.com/GrahamDumpleton/mod_wsgi/issues/730
2 files changed, 8 insertions(+), 50 deletions(-)
diff --git a/Lib/test/test_threading.py b/Lib/test/test_threading.py
-index 9c6561c099..84714c03fe 100644
+index c664996233..0877b4f227 100644
--- a/Lib/test/test_threading.py
+++ b/Lib/test/test_threading.py
-@@ -956,39 +956,6 @@ def test_debug_deprecation(self):
- b'is deprecated and will be removed in Python 3.12')
- self.assertIn(msg, err)
+@@ -1002,39 +1002,6 @@ def noop(): pass
+ threading.Thread(target=noop).start()
+ # Thread.join() is not called
- def test_import_from_another_thread(self):
- # bpo-1596321: If the threading module is first import from a thread
@@ -60,10 +60,10 @@ index 9c6561c099..84714c03fe 100644
class ThreadJoinOnShutdown(BaseTestCase):
diff --git a/Lib/threading.py b/Lib/threading.py
-index 4f72938551..18c10e6489 100644
+index d030e12436..16ab0aceba 100644
--- a/Lib/threading.py
+++ b/Lib/threading.py
-@@ -1546,29 +1546,20 @@ def _shutdown():
+@@ -1557,29 +1557,20 @@ def _shutdown():
global _SHUTTING_DOWN
_SHUTTING_DOWN = True
diff --git a/00389-don-t-let---with-system-libmpdec---with-system-expat-use-the-vendored-headers.patch b/00389-don-t-let---with-system-libmpdec---with-system-expat-use-the-vendored-headers.patch
new file mode 100644
index 0000000..5f226f7
--- /dev/null
+++ b/00389-don-t-let---with-system-libmpdec---with-system-expat-use-the-vendored-headers.patch
@@ -0,0 +1,111 @@
+From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Miro=20Hron=C4=8Dok?= <miro(a)hroncok.cz>
+Date: Thu, 27 Oct 2022 15:24:03 +0200
+Subject: [PATCH] 00389: Don't let --with-system-libmpdec / --with-system-expat
+ use the vendored headers
+
+This was a regression in Python 3.12.0a2 that prevented Fedora doing
+this:
+
+ $ rm -r Modules/_decimal/libmpdec
+ $ rm -r Modules/expat
+
+Before building Python with --with-system-libmpdec --with-system-expat.
+
+The errors were:
+
+ make: *** No rule to make target
+'Modules/_decimal/libmpdec/basearith.h', needed by
+'Modules/_decimal/_decimal.o'. Stop.
+ make: *** No rule to make target 'Modules/expat/ascii.h', needed by
+'Modules/pyexpat.o'. Stop.
+
+Now the make-dependency on the headers only exists
+when --with-system-libmpdec / --with-system-expat is **not** used.
+
+Fixes https://github.com/python/cpython/issues/98707
+
+Co-authored-by: Erlend E. Aasland <erlend.aasland(a)protonmail.com>
+---
+ Makefile.pre.in | 6 +++---
+ .../Build/2022-10-26-12-37-52.gh-issue-98707.eVXGEx.rst | 4 ++++
+ configure | 4 ++--
+ configure.ac | 4 ++--
+ 4 files changed, 11 insertions(+), 7 deletions(-)
+ create mode 100644 Misc/NEWS.d/next/Build/2022-10-26-12-37-52.gh-issue-98707.eVXGEx.rst
+
+diff --git a/Makefile.pre.in b/Makefile.pre.in
+index 5b4bf15eb8..7550414aae 100644
+--- a/Makefile.pre.in
++++ b/Makefile.pre.in
+@@ -2581,13 +2581,13 @@ MODULE_DEPS=$(PYTHON_HEADERS) Modules/config.c $(EXPORTSYMS)
+
+ MODULE_CMATH_DEPS=$(srcdir)/Modules/_math.h
+ MODULE_MATH_DEPS=$(srcdir)/Modules/_math.h
+-MODULE_PYEXPAT_DEPS=$(LIBEXPAT_HEADERS) @LIBEXPAT_INTERNAL@
++MODULE_PYEXPAT_DEPS=@LIBEXPAT_INTERNAL@
+ MODULE_UNICODEDATA_DEPS=$(srcdir)/Modules/unicodedata_db.h $(srcdir)/Modules/unicodename_db.h
+ MODULE__BLAKE2_DEPS=$(srcdir)/Modules/_blake2/impl/blake2-config.h $(srcdir)/Modules/_blake2/impl/blake2-impl.h $(srcdir)/Modules/_blake2/impl/blake2.h $(srcdir)/Modules/_blake2/impl/blake2b-load-sse2.h $(srcdir)/Modules/_blake2/impl/blake2b-load-sse41.h $(srcdir)/Modules/_blake2/impl/blake2b-ref.c $(srcdir)/Modules/_blake2/impl/blake2b-round.h $(srcdir)/Modules/_blake2/impl/blake2b.c $(srcdir)/Modules/_blake2/impl/blake2s-load-sse2.h $(srcdir)/Modules/_blake2/impl/blake2s-load-sse41.h $(srcdir)/Modules/_blake2/impl/blake2s-load-xop.h $(srcdir)/Modules/_blake2/impl/blake2s-ref.c $(srcdir)/Modules/_blake2/impl/blake2s-round.h $(srcdir)/Modules/_blake2/impl/blake2s.c $(srcdir)/Modules/_blake2/blake2module.h $(srcdir)/Modules/hashlib.h
+ MODULE__CTYPES_DEPS=$(srcdir)/Modules/_ctypes/ctypes.h $(srcdir)/Modules/_ctypes/darwin/dlfcn.h
+ MODULE__CTYPES_MALLOC_CLOSURE=@MODULE__CTYPES_MALLOC_CLOSURE@
+-MODULE__DECIMAL_DEPS=$(srcdir)/Modules/_decimal/docstrings.h $(LIBMPDEC_HEADERS) @LIBMPDEC_INTERNAL@
+-MODULE__ELEMENTTREE_DEPS=$(srcdir)/Modules/pyexpat.c $(LIBEXPAT_HEADERS) @LIBEXPAT_INTERNAL@
++MODULE__DECIMAL_DEPS=$(srcdir)/Modules/_decimal/docstrings.h @LIBMPDEC_INTERNAL@
++MODULE__ELEMENTTREE_DEPS=$(srcdir)/Modules/pyexpat.c @LIBEXPAT_INTERNAL@
+ MODULE__HASHLIB_DEPS=$(srcdir)/Modules/hashlib.h
+ MODULE__IO_DEPS=$(srcdir)/Modules/_io/_iomodule.h
+ MODULE__MD5_DEPS=$(srcdir)/Modules/hashlib.h
+diff --git a/Misc/NEWS.d/next/Build/2022-10-26-12-37-52.gh-issue-98707.eVXGEx.rst b/Misc/NEWS.d/next/Build/2022-10-26-12-37-52.gh-issue-98707.eVXGEx.rst
+new file mode 100644
+index 0000000000..69afa9dea3
+--- /dev/null
++++ b/Misc/NEWS.d/next/Build/2022-10-26-12-37-52.gh-issue-98707.eVXGEx.rst
+@@ -0,0 +1,4 @@
++Don't use vendored ``libmpdec`` headers if :option:`--with-system-libmpdec`
++is passed to :program:`configure`.
++Don't use vendored ``libexpat`` headers if :option:`--with-system-expat`
++is passed to :program:`!configure`.
+diff --git a/configure b/configure
+index 15d9796374..940db49efe 100755
+--- a/configure
++++ b/configure
+@@ -12619,7 +12619,7 @@ else
+
+ LIBEXPAT_CFLAGS="-I\$(srcdir)/Modules/expat"
+ LIBEXPAT_LDFLAGS="-lm \$(LIBEXPAT_A)"
+- LIBEXPAT_INTERNAL="\$(LIBEXPAT_A)"
++ LIBEXPAT_INTERNAL="\$(LIBEXPAT_HEADERS) \$(LIBEXPAT_A)"
+
+ fi
+
+@@ -13128,7 +13128,7 @@ else
+
+ LIBMPDEC_CFLAGS="-I\$(srcdir)/Modules/_decimal/libmpdec"
+ LIBMPDEC_LDFLAGS="-lm \$(LIBMPDEC_A)"
+- LIBMPDEC_INTERNAL="\$(LIBMPDEC_A)"
++ LIBMPDEC_INTERNAL="\$(LIBMPDEC_HEADERS) \$(LIBMPDEC_A)"
+
+ if test "x$with_pydebug" = xyes; then :
+
+diff --git a/configure.ac b/configure.ac
+index c7945aaf85..b4d188399d 100644
+--- a/configure.ac
++++ b/configure.ac
+@@ -3710,7 +3710,7 @@ AS_VAR_IF([with_system_expat], [yes], [
+ ], [
+ LIBEXPAT_CFLAGS="-I\$(srcdir)/Modules/expat"
+ LIBEXPAT_LDFLAGS="-lm \$(LIBEXPAT_A)"
+- LIBEXPAT_INTERNAL="\$(LIBEXPAT_A)"
++ LIBEXPAT_INTERNAL="\$(LIBEXPAT_HEADERS) \$(LIBEXPAT_A)"
+ ])
+
+ AC_SUBST([LIBEXPAT_CFLAGS])
+@@ -3819,7 +3819,7 @@ AS_VAR_IF([with_system_libmpdec], [yes], [
+ ], [
+ LIBMPDEC_CFLAGS="-I\$(srcdir)/Modules/_decimal/libmpdec"
+ LIBMPDEC_LDFLAGS="-lm \$(LIBMPDEC_A)"
+- LIBMPDEC_INTERNAL="\$(LIBMPDEC_A)"
++ LIBMPDEC_INTERNAL="\$(LIBMPDEC_HEADERS) \$(LIBMPDEC_A)"
+
+ dnl Disable forced inlining in debug builds, see GH-94847
+ AS_VAR_IF([with_pydebug], [yes], [
diff --git a/Yhg1s.gpg b/Yhg1s.gpg
new file mode 100644
index 0000000..e0000e5
--- /dev/null
+++ b/Yhg1s.gpg
@@ -0,0 +1,136 @@
+-----BEGIN PGP PUBLIC KEY BLOCK-----
+
+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
+kwSREBGcgZ8Ac7kqPbOojtmBkHFWFUg5Rx+fVsulcQkERs1j22tzTvPzsljGmrrY
+7o6P0K4fzVfeQx43sKKltQrNNZwBtleHD+jQPLThVf09Rhjtq/+cb2wwiAqpHskf
+dY1njeCh21Yl58IOMHQ6x0Mc6rF3A5wqrLVJ5GYVHl33unZLKcAWDmtV3MPvnvdF
+WvLDPqkykozU08d1ieyZXFWlwViYaVzh7cjgIM8keCbPk0zFtGZkVUS2um332Xiv
+pX02J8KqWhNsiioO/SAFOhS6+zR+mZghnr5eqD9SHmCKTJ1JWjG2wx2hibaaszQb
+qypBW1mwoGMDj4MG91iKSnwMgjp3P8xQIyHy/XTAJ1DD9F//2MtQ2ZK5MqiWTYLn
+iUzirq8M1E8rLHh8Met5xIOq5iIDcMn0HTBCwrWWPOyqTF2lWK3G6LOjTltQ01fJ
+JaICpTe1Eirt9v+kr1iPLH1+zIeWZ1O469I/nxRp/WW6Oavzb9WRg5gDBKZ2v+rJ
+jZLcaEBFtCRUaG9tYXMgV291dGVycyA8dHdvdXRlcnNAZ29vZ2xlLmNvbT6JAlQE
+EwEKAD4CGwMFCwkIBwMFFQoJCAsFFgIDAQACHgECF4AWIQRxaWBfYsdRNW0FSiao
+IeaA5fpjBQUCYOBlAQUJFUZECwAKCRCoIeaA5fpjBTvxEACfyEt5rN5QGmVgahD/
+83l7lQpZUzLSq5MnIfRjCz50seh+oWsOuecayHZ79IDVSkF2L2kE1rumcB7UKPez
+0kHVrTdh3mQIsfCzQZEMsWTDYotlZbrPPvT3lKGL+O7fU321q9GVotJAssYcQFIK
+9F2p3jhN2coOzguikVlSc4nswnq2KRIJ4BpSJ3fk1rWLr8oJxN2pSpskYtHdUyUx
+fZ+fOrMHLbW94JWsLYDad4wpr8etBneVAaUPfphhbIwfhRXlHuTreDtwr3LJYKp1
+VjUjzGVVT2CXkS9LbJ7aM2BYa/1MJyHxkglu8O9LIDGH2arlbtmBKMbCXPSX/42H
+sGpUgQYRwG4f+2CfPj4fNx5GK8LO/EJjaw2Qh542U0356RRVZquN6E6SS6Sndlf9
+sO4cKU/ptT8IsfWKKaLwvr0l71hgLRqqe3rSpTV54cKpJfYIG+Qf4Do69etJLxjY
+UsyCqzuFocxZa0DGkqDQ+f1cD1bdg7Twso041NZG6y9+E7kCf3jtKkiYAHBY902q
+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
+=t995
+-----END PGP PUBLIC KEY BLOCK-----
\ No newline at end of file
diff --git a/check-pyc-timestamps.py b/check-pyc-timestamps.py
index 91af4fd..f91984e 100644
--- a/check-pyc-timestamps.py
+++ b/check-pyc-timestamps.py
@@ -19,11 +19,11 @@ not_compiled = [
'*/test/bad_coding.py',
'*/test/bad_coding2.py',
'*/test/badsyntax_*.py',
- '*/lib2to3/tests/data/bom.py',
- '*/lib2to3/tests/data/crlf.py',
- '*/lib2to3/tests/data/different_encoding.py',
- '*/lib2to3/tests/data/false_encoding.py',
- '*/lib2to3/tests/data/py2_test_grammar.py',
+ '*/test_lib2to3/data/bom.py',
+ '*/test_lib2to3/data/crlf.py',
+ '*/test_lib2to3/data/different_encoding.py',
+ '*/test_lib2to3/data/false_encoding.py',
+ '*/test_lib2to3/data/py2_test_grammar.py',
'*.debug-gdb.py',
]
diff --git a/pgp_keys.asc b/pgp_keys.asc
deleted file mode 100644
index 11dccb8..0000000
--- a/pgp_keys.asc
+++ /dev/null
@@ -1,109 +0,0 @@
------BEGIN PGP PUBLIC KEY BLOCK-----
-
-mQINBFq+ToQBEADRYvIVtbK6owynD3j3nxwpW2KEk/p+aDvtXmc2SR2dBcZ8sFW2
-R5vEsG8d3/D3wgv5pcL3KfNNXQYUnXVbobrFUUWQYc79qIsE3MgiPf5NVOtwKPUR
-i5g9YJgKvpBxkQfqp3LYGm9ZBtwo3DVLA3yn7KsazCmAgTNFJYw7ku1XxgmIzY6K
-5J30DfbJiqDqj4f9GslCCCCH3qiPnuLG/HUyVLHMpbWlaiy9NI0GcaLxjJewHj9w
-W2D2lydkxe5JGo7egUkV3ILcuLVSVKA35SKY27dYqfuyqp9tAzaRbjDYjsYdHA6G
-BqrNrKBn/GwlFDPrVdcvN3ZSY2wMLTxWE3Axc/FweuHxFnou/80FwX7F3JD+oEQ6
-rofmcxOBCC7J98I7HZAhP9jBn88XIS2hztbLq8d6rZJZRtcz0k61VR0ddO+TrFmf
-9rMYCPgCckRtVxeFIVIabrN1IzKynLFeo040h8hSGswd6YKDOVwjJY6Oa6EmVefZ
-a8QSt4+M65RSzH6SEPY008F3nJUAK6MEkzTak+tFltZNrVWu8p2xd1j9nmxAwEhZ
-/lgbxLqzYgaUWmfyHeZ8yVA0MhHzdiAL8nVUEdG3KecIq0RWCJLGLWWIjd6KAJl1
-yAmhRYKK/sjPDsL3elHsFACfZbyx3o5GGQNlas1FYoPLWbaNGaJtgFTF2QARAQAB
-tCtQYWJsbyBHYWxpbmRvIFNhbGdhZG8gPHBhYmxvZ3NhbEBnbWFpbC5jb20+iQJO
-BBMBCgA4FiEEoDXIwZIZuoIezqhrZOYo+NaEaW0FAlq+ToQCGwMFCwkIBwMFFQoJ
-CAsFFgIDAQACHgECF4AACgkQZOYo+NaEaW2bmA/+PXIap2udLoUVOHxnsIBdqYwp
-sv1Aj5lfIJmNhmxPbHShwp1Jg+w4urxe+2Dj5ofKVlIo1i83bQkvnKJMDXDVuc/K
-P6zqhBJ3rT4Q3qx2mzX8bIfQoJ2JHuH4lkP+I7doDcHHRyeNASyk72VdQmU4twNw
-Ibn8nSNV6ThKHdoPYzVnO2rZUFcGIqH5HNsvR+B7cc1MBCHsgURYwSVhSePIFGlZ
-iasdBD6QQkDSe4QWi7AcJFWFElw4kbOKJWxAWsrEk+tMXJVGRjnmL289EmPCx/vx
-BqKy7Mse0yWCSRR3vB+O6TB1S5SgEyEgqlYsfGNv1qf/rfRD4KkyCbNU3LhY1Aim
-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
-=6Zb4
------END PGP PUBLIC KEY BLOCK-----
diff --git a/python3.11.spec b/python3.12.spec
similarity index 92%
rename from python3.11.spec
rename to python3.12.spec
index 1d5c46c..ce51bbf 100644
--- a/python3.11.spec
+++ b/python3.12.spec
@@ -2,10 +2,10 @@
# Top-level metadata
# ==================
-%global pybasever 3.11
+%global pybasever 3.12
# pybasever without the dot:
-%global pyshortver 311
+%global pyshortver 312
Name: python%{pybasever}
Summary: Version %{pybasever} of the Python interpreter
@@ -14,7 +14,7 @@ URL: https://www.python.org/
# WARNING When rebasing to a new Python version,
# remember to update the python3-docs package as well
%global general_version %{pybasever}.0
-#global prerel ...
+%global prerel a1
%global upstream_version %{general_version}%{?prerel}
Version: %{general_version}%{?prerel:~%{prerel}}
Release: 1%{?dist}
@@ -59,7 +59,7 @@ License: Python-2.0.1
# IMPORTANT: When bootstrapping, it's very likely the wheels for pip and
# setuptools are not available. Turn off the rpmwheels bcond until
# the two packages are built with wheels to get around the issue.
-%bcond_with bootstrap
+%bcond_without bootstrap
# Whether to use RPM build wheels from the python-{pip,setuptools}-wheel package
# Uses upstream bundled prebuilt wheels otherwise
@@ -212,6 +212,7 @@ BuildRequires: ncurses-devel
BuildRequires: openssl-devel
BuildRequires: pkgconfig
+BuildRequires: python-rpm-macros
BuildRequires: readline-devel
BuildRequires: redhat-rpm-config >= 127
BuildRequires: sqlite-devel
@@ -256,8 +257,8 @@ BuildRequires: python3-rpm-generators
Source0: %{url}ftp/python/%{general_version}/Python-%{upstream_version}.tar.xz
Source1: %{url}ftp/python/%{general_version}/Python-%{upstream_version}.tar.xz.asc
-# The release manager for Python 3.11 is pablogsal
-Source2: https://keybase.io/pablogsal/pgp_keys.asc
+# The release manager for Python 3.12 is Thomas Wouters
+Source2: https://github.com/Yhg1s.gpg
# A simple script to check timestamps of bytecode files
# Run in check section with Python that is currently being built
@@ -312,7 +313,7 @@ Patch251: 00251-change-user-install-location.patch
# Ideally, we should talk to upstream and explain why we don't want this
Patch328: 00328-pyc-timestamp-invalidation-mode.patch
-# 00371 # c1754d9c2750f89cb702e1b63a99201f5f7cff00
+# 00371 # 1fc313929648e9b543542de09f59c55e175ac45a
# Revert "bpo-1596321: Fix threading._shutdown() for the main thread (GH-28549) (GH-28589)"
#
# This reverts commit 38c67738c64304928c68d5c2bd78bbb01d979b94. It
@@ -323,6 +324,31 @@ Patch328: 00328-pyc-timestamp-invalidation-mode.patch
# https://github.com/GrahamDumpleton/mod_wsgi/issues/730
Patch371: 00371-revert-bpo-1596321-fix-threading-_shutdown-for-the-main-thread-gh-28549-gh-28589.patch
+# 00389 # eec8cefdbbc164dc19d7112d1c65dbf6406ecca3
+# Don't let --with-system-libmpdec / --with-system-expat use the vendored headers
+#
+# This was a regression in Python 3.12.0a2 that prevented Fedora doing
+# this:
+#
+# $ rm -r Modules/_decimal/libmpdec
+# $ rm -r Modules/expat
+#
+# Before building Python with --with-system-libmpdec --with-system-expat.
+#
+# The errors were:
+#
+# make: *** No rule to make target
+# 'Modules/_decimal/libmpdec/basearith.h', needed by
+# 'Modules/_decimal/_decimal.o'. Stop.
+# make: *** No rule to make target 'Modules/expat/ascii.h', needed by
+# 'Modules/pyexpat.o'. Stop.
+#
+# Now the make-dependency on the headers only exists
+# when --with-system-libmpdec / --with-system-expat is **not** used.
+#
+# Fixes https://github.com/python/cpython/issues/98707
+Patch389: 00389-don-t-let---with-system-libmpdec---with-system-expat-use-the-vendored-headers.patch
+
# (New patches go here ^^^)
#
# When adding new patches to "python" and "python3" in Fedora, EL, etc.,
@@ -902,10 +928,6 @@ sed -i -e "s/'pyconfig.h'/'%{_pyconfig_h}'/" \
%{buildroot}%{pylibdir}/distutils/sysconfig.py \
%{buildroot}%{pylibdir}/sysconfig.py
-# Install pathfix.py to bindir
-# See https://github.com/fedora-python/python-rpm-porting/issues/24
-cp -p Tools/scripts/pathfix.py %{buildroot}%{_bindir}/pathfix%{pybasever}.py
-
# Install i18n tools to bindir
# They are also in python2, so we version them
# https://bugzilla.redhat.com/show_bug.cgi?id=1571474
@@ -918,7 +940,7 @@ done
# This currently only covers files matching ^[a-zA-Z0-9_]+\.py$,
# so handle files named using other naming scheme separately.
LD_LIBRARY_PATH=./build/optimized ./build/optimized/python \
- Tools/scripts/pathfix.py \
+ %{_rpmconfigdir}/redhat/pathfix.py \
-i "%{_bindir}/python%{pybasever}" -pn \
%{buildroot} \
%{buildroot}%{_bindir}/*%{pybasever}.py \
@@ -958,7 +980,7 @@ LD_LIBRARY_PATH="%{buildroot}%{dynload_dir}/:%{buildroot}%{_libdir}" \
# Turn this BRP off, it is done by compileall2 --hardlink-dupes above
%global __brp_python_hardlink %{nil}
-# Since we have pathfix.py in bindir, this is created, but we don't want it
+# Since we have *.py files in bindir, this is created, but we don't want it
rm -rf %{buildroot}%{_bindir}/__pycache__
# Fixup permissions for shared libraries from non-standard 555 to standard 755:
@@ -997,7 +1019,6 @@ ln -s ./idle3 %{buildroot}%{_bindir}/idle
ln -s ./python3-config %{buildroot}%{_bindir}/python-config
ln -s ./python3.1 %{buildroot}%{_mandir}/man1/python.1
ln -s ./python3.pc %{buildroot}%{_libdir}/pkgconfig/python.pc
-ln -s ./pathfix%{pybasever}.py %{buildroot}%{_bindir}/pathfix.py
%if %{with debug_build}
ln -s ./python3-debug %{buildroot}%{_bindir}/python-debug
%endif
@@ -1128,7 +1149,6 @@ CheckPython optimized
%license %{pylibdir}/LICENSE.txt
%{pylibdir}/lib2to3
-%exclude %{pylibdir}/lib2to3/tests
%dir %{pylibdir}/unittest/
%dir %{pylibdir}/unittest/__pycache__/
@@ -1244,6 +1264,7 @@ CheckPython optimized
%{dynload_dir}/xxlimited.%{SOABI_optimized}.so
%{dynload_dir}/xxlimited_35.%{SOABI_optimized}.so
%{dynload_dir}/_xxsubinterpreters.%{SOABI_optimized}.so
+%{dynload_dir}/xxsubtype.%{SOABI_optimized}.so
%{dynload_dir}/zlib.%{SOABI_optimized}.so
%{dynload_dir}/_zoneinfo.%{SOABI_optimized}.so
@@ -1380,7 +1401,6 @@ CheckPython optimized
%{_libdir}/pkgconfig/python3.pc
%{_libdir}/pkgconfig/python.pc
%{_libdir}/pkgconfig/python3-embed.pc
-%{_bindir}/pathfix.py
%{_bindir}/pygettext3.py
%{_bindir}/pygettext.py
%{_bindir}/msgfmt3.py
@@ -1388,7 +1408,6 @@ CheckPython optimized
%endif
%{_bindir}/2to3-%{pybasever}
-%{_bindir}/pathfix%{pybasever}.py
%{_bindir}/pygettext%{pybasever}.py
%{_bindir}/msgfmt%{pybasever}.py
@@ -1419,7 +1438,6 @@ CheckPython optimized
%files -n %{pkgname}-tkinter
%{pylibdir}/tkinter
-%exclude %{pylibdir}/tkinter/test
%{dynload_dir}/_tkinter.%{SOABI_optimized}.so
%{pylibdir}/turtle.py
%{pylibdir}/__pycache__/turtle*%{bytecode_suffixes}
@@ -1431,7 +1449,6 @@ CheckPython optimized
%files -n %{pkgname}-test
-%{pylibdir}/ctypes/test
%{pylibdir}/distutils/tests
%{pylibdir}/test
%{dynload_dir}/_ctypes_test.%{SOABI_optimized}.so
@@ -1441,9 +1458,6 @@ CheckPython optimized
%{dynload_dir}/_testinternalcapi.%{SOABI_optimized}.so
%{dynload_dir}/_testmultiphase.%{SOABI_optimized}.so
%{dynload_dir}/_xxtestfuzz.%{SOABI_optimized}.so
-%{pylibdir}/lib2to3/tests
-%{pylibdir}/tkinter/test
-%{pylibdir}/unittest/test
# We don't bother splitting the debug build out into further subpackages:
# if you need it, you're probably a developer.
@@ -1534,6 +1548,7 @@ CheckPython optimized
%{dynload_dir}/xxlimited.%{SOABI_debug}.so
%{dynload_dir}/xxlimited_35.%{SOABI_debug}.so
%{dynload_dir}/_xxsubinterpreters.%{SOABI_debug}.so
+%{dynload_dir}/xxsubtype.%{SOABI_debug}.so
%{dynload_dir}/_xxtestfuzz.%{SOABI_debug}.so
%{dynload_dir}/zlib.%{SOABI_debug}.so
%{dynload_dir}/_zoneinfo.%{SOABI_debug}.so
@@ -1595,106 +1610,5 @@ CheckPython optimized
# ======================================================
%changelog
-* Mon Oct 24 2022 Miro Hrončok <mhroncok(a)redhat.com> - 3.11.0-1
-- Update to 3.11.0
-
-* Tue Sep 13 2022 Miro Hrončok <mhroncok(a)redhat.com> - 3.11.0~rc2-1
-- Update to 3.11.0rc2
-
-* Tue Aug 09 2022 Miro Hrončok <mhroncok(a)redhat.com> - 3.11.0~rc1-2
-- Don't use custom installation schemes
-- Fixes rhbz#2026979
-- Fixes rhbz#2097183
-
-* Mon Aug 08 2022 Tomáš Hrnčiar <thrnciar(a)redhat.com> - 3.11.0~rc1-1
-- Update to 3.11.0rc1
-
-* Tue Jul 26 2022 Tomáš Hrnčiar <thrnciar(a)redhat.com> - 3.11.0~b5-1
-- Update to 3.11.0b5
-
-* Fri Jul 22 2022 Fedora Release Engineering <releng(a)fedoraproject.org> - 3.11.0~b4-2
-- Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild
-
-* Mon Jul 11 2022 Miro Hrončok <mhroncok(a)redhat.com> - 3.11.0~b4-1
-- Update to 3.11.0b4
-
-* Fri Jul 08 2022 Miro Hrončok <mhroncok(a)redhat.com> - 3.11.0~b3-8
-- Finish bootstrap of the re module speed regression fix
-
-* Fri Jul 08 2022 Miro Hrončok <mhroncok(a)redhat.com> - 3.11.0~b3-7
-- Fix speed regression in the re module which prevented chromium from building
-
-* Fri Jun 24 2022 Tomáš Hrnčiar <thrnciar(a)redhat.com> - 3.11.0~b3-6
-- Clear and reset sqlite3 statements properly in cursor iternext (fixes rhbz#2099049)
-- Revert a problematic fix of threading._shutdown() again (fixes rhbz#2100282)
-
-* Tue Jun 21 2022 Miro Hrončok <mhroncok(a)redhat.com> - 3.11.0~b3-5
-- Build Python with the optimized Blake2 library libb2
-
-* Tue Jun 21 2022 Miro Hrončok <mhroncok(a)redhat.com> - 3.11.0~b3-4
-- Make C++ version of _Py_CAST work with 0/NULL
-
-* Mon Jun 13 2022 Tomáš Hrnčiar <thrnciar(a)redhat.com> - 3.11.0~b3-3
-- Finish bootstrapping for Python 3.11 mass rebuild
-
-* Mon Jun 13 2022 Tomáš Hrnčiar <thrnciar(a)redhat.com> - 3.11.0~b3-2
-- Initial bootstrap for Python 3.11 mass rebuild
-
-* Wed Jun 01 2022 Miro Hrončok <mhroncok(a)redhat.com> - 3.11.0~b3-1
-- Update to 3.11.0b3
-
-* Tue May 31 2022 Miro Hrončok <mhroncok(a)redhat.com> - 3.11.0~b2-1
-- Update to 3.11.0b2
-
-* Tue May 10 2022 Tomáš Hrnčiar <thrnciar(a)redhat.com> - 3.11.0~b1-2
-- Finish bootstrapping 3.11.0b1
-
-* Sun May 08 2022 Tomáš Hrnčiar <thrnciar(a)redhat.com> - 3.11.0~b1-1
-- Update to 3.11.0b1
-
-* Wed Apr 20 2022 Tomas Orsava <torsava(a)redhat.com> - 3.11.0~a7-3
-- Build Python 3.11 with subpackages
-- `python(abi)` is still not Provided for alternative Python versions
-- Drop old no-longer-needed Obsoletes of python311 and python3-tools
-- Move _sysconfigdata_d_linux*.py to the debug subpackage
-- Resolves: rhbz#2063227
-
-* Thu Apr 07 2022 Tomáš Hrnčiar <thrnciar(a)redhat.com> - 3.11.0~a7-2
-- Finish bootstrapping 3.11.0a7
-
-* Wed Apr 06 2022 Tomáš Hrnčiar <thrnciar(a)redhat.com> - 3.11.0~a7-1
-- Update to 3.11.0a7
-
-* Tue Mar 08 2022 Miro Hrončok <mhroncok(a)redhat.com> - 3.11.0~a6-2
-- Finish bootstrapping 3.11.0a6
-
-* Mon Mar 07 2022 Miro Hrončok <mhroncok(a)redhat.com> - 3.11.0~a6-1
-- Update to 3.11.0a6
-
-* Fri Feb 04 2022 Tomáš Hrnčiar <thrnciar(a)redhat.com> - 3.11.0~a5-1
-- Update to 3.11.0a5
-
-* Fri Jan 21 2022 Fedora Release Engineering <releng(a)fedoraproject.org> - 3.11.0~a4-2
-- Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild
-
-* Mon Jan 17 2022 Tomáš Hrnčiar <thrnciar(a)redhat.com> - 3.11.0~a4-1
-- Update to 3.11.0a4
-
-* Sat Jan 08 2022 Miro Hrončok <mhroncok(a)redhat.com> - 3.11.0~a3-3
-- Rebuilt for https://fedoraproject.org/wiki/Changes/LIBFFI34
-
-* Mon Dec 13 2021 Miro Hrončok <mhroncok(a)redhat.com> - 3.11.0~a3-2
-- Supplement tox
-
-* Fri Dec 10 2021 Tomáš Hrnčiar <thrnciar(a)redhat.com> - 3.11.0~a3-1
-- Update to 3.11.0a3
-
-* Mon Nov 15 2021 Tomáš Hrnčiar <thrnciar(a)redhat.com> - 3.11.0~a2-1
-- Update to 3.11.0a2
-- Patch 251 was updated to include specific install scheme for virtualenv
-
-* Fri Nov 12 2021 Björn Esser <besser82(a)fedoraproject.org> - 3.11.0~a1-2
-- Rebuild(libnsl2)
-
-* Wed Oct 06 2021 Tomáš Hrnčiar <thrnciar(a)redhat.com> - 3.11.0~a1-1
-- Initial Python 3.11 package forked from Python 3.10
+* Wed Oct 26 2022 Tomáš Hrnčiar <thrnciar(a)redhat.com> - 3.12.0~a1-1
+- Initial Python 3.12 package forked from Python 3.11
diff --git a/sources b/sources
index 5763e8f..350e85d 100644
--- a/sources
+++ b/sources
@@ -1,2 +1,2 @@
-SHA512 (Python-3.11.0.tar.xz) = 314eef88ae0d68760f34d7a32f238fd2ecb27c50963baa7357c42ad8159026ec50229a0b31d83c39710a472904a06422afc082f9658a90a1dc83ccb74c08039d
-SHA512 (Python-3.11.0.tar.xz.asc) = d20fb152c5b16cfef1f59af588f7576eb45c903d9e15fd4ad0e15fd32bef7ffd951b99a062d2944234ecffcf29eb9266544e92d2f6584710cbb20ba38f8ac224
+SHA512 (Python-3.12.0a1.tar.xz) = fa69dddf36dfe89b869d4de71cb8e878ef1e8be2b96ddfe2d58286710dd09b64db67c130d0438e3cea6679f6e9cd6bb83633691c8b7d6f346b730668866a28f7
+SHA512 (Python-3.12.0a1.tar.xz.asc) = 4db7946d27505da9c9b358a3b0fc2f47bb79b10bbcdb8f3ce2f918d1b74665e41a51600de3b94d50b126b66c72f191f8532f4030af184698c32430c35ef8d821
diff --git a/tests/tests.yml b/tests/tests.yml
index 3f9165b..08bde3b 100644
--- a/tests/tests.yml
+++ b/tests/tests.yml
@@ -15,7 +15,7 @@
repositories:
- repo: "https://src.fedoraproject.org/tests/python.git"
dest: "python"
- pybasever: "3.11"
+ pybasever: "3.12"
tests:
- rpm_qa:
run: rpm -qa
1 year, 1 month
Architecture specific change in rpms/python3.12.git
by githook-noreply@fedoraproject.org
The package rpms/python3.12.git has added or updated architecture specific content in its
spec file (ExclusiveArch/ExcludeArch or %ifarch/%ifnarch) in commit(s):
https://src.fedoraproject.org/cgit/rpms/python3.12.git/commit/?id=6e2dac6....
Change:
+ExcludeArch: %{arm}
Thanks.
Full change:
============
commit fe95b37f25338c94bcfa2fb653e53b5262ec2812
Author: Miro Hrončok <miro(a)hroncok.cz>
Date: Fri Oct 28 00:12:41 2022 +0200
Make the package buildable without bootstrap
diff --git a/00390-gh-98776-fix-make-regen-test-levenshtein-for-out-of-tree-builds.patch b/00390-gh-98776-fix-make-regen-test-levenshtein-for-out-of-tree-builds.patch
new file mode 100644
index 0000000..e87b16d
--- /dev/null
+++ b/00390-gh-98776-fix-make-regen-test-levenshtein-for-out-of-tree-builds.patch
@@ -0,0 +1,34 @@
+From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Miro=20Hron=C4=8Dok?= <miro(a)hroncok.cz>
+Date: Thu, 27 Oct 2022 19:46:06 +0200
+Subject: [PATCH] 00390: gh-98776: Fix make regen-test-levenshtein for
+ out-of-tree builds
+
+Fixes https://github.com/python/cpython/issues/98776
+---
+ Makefile.pre.in | 2 +-
+ .../next/Build/2022-10-27-19-47-31.gh-issue-98776.lt_UOG.rst | 2 ++
+ 2 files changed, 3 insertions(+), 1 deletion(-)
+ create mode 100644 Misc/NEWS.d/next/Build/2022-10-27-19-47-31.gh-issue-98776.lt_UOG.rst
+
+diff --git a/Makefile.pre.in b/Makefile.pre.in
+index 7550414aae..691fc1c5f1 100644
+--- a/Makefile.pre.in
++++ b/Makefile.pre.in
+@@ -961,7 +961,7 @@ regen-test-frozenmain: $(BUILDPYTHON)
+ .PHONY: regen-test-levenshtein
+ regen-test-levenshtein:
+ # Regenerate Lib/test/levenshtein_examples.json
+- $(PYTHON_FOR_REGEN) $(srcdir)/Tools/build/generate_levenshtein_examples.py Lib/test/levenshtein_examples.json
++ $(PYTHON_FOR_REGEN) $(srcdir)/Tools/build/generate_levenshtein_examples.py $(srcdir)/Lib/test/levenshtein_examples.json
+
+ .PHONY: regen-re
+ regen-re: $(BUILDPYTHON)
+diff --git a/Misc/NEWS.d/next/Build/2022-10-27-19-47-31.gh-issue-98776.lt_UOG.rst b/Misc/NEWS.d/next/Build/2022-10-27-19-47-31.gh-issue-98776.lt_UOG.rst
+new file mode 100644
+index 0000000000..f8c0bb21b7
+--- /dev/null
++++ b/Misc/NEWS.d/next/Build/2022-10-27-19-47-31.gh-issue-98776.lt_UOG.rst
+@@ -0,0 +1,2 @@
++When building Python out-of-tree, don't crash during ``make
++regen-test-levenshtein``.
diff --git a/python3.12.spec b/python3.12.spec
index fe812a7..abb36aa 100644
--- a/python3.12.spec
+++ b/python3.12.spec
@@ -360,6 +360,12 @@ Patch371: 00371-revert-bpo-1596321-fix-threading-_shutdown-for-the-main-thread-g
# Fixes https://github.com/python/cpython/issues/98707
Patch389: 00389-don-t-let---with-system-libmpdec---with-system-expat-use-the-vendored-headers.patch
+# 00390 # 1b549f4b0f00f9b782f254eca0d4dee9cd764085
+# gh-98776: Fix make regen-test-levenshtein for out-of-tree builds
+#
+# Fixes https://github.com/python/cpython/issues/98776
+Patch390: 00390-gh-98776-fix-make-regen-test-levenshtein-for-out-of-tree-builds.patch
+
# (New patches go here ^^^)
#
# When adding new patches to "python" and "python3" in Fedora, EL, etc.,
@@ -828,6 +834,12 @@ DirHoldingGdbPy=%{_usr}/lib/debug/%{_libdir}
mkdir -p %{buildroot}$DirHoldingGdbPy
%endif # with gdb_hooks
+# When the actual %%{dynload_dir} exists (it does when python3.X is installed for regen-all)
+# %%{buildroot}%%{dynload_dir} is not created by make install and the extension modules are missing
+# Reported upstream as https://github.com/python/cpython/issues/98782
+# A workaround is to create the directory before running make install
+mkdir -p %{buildroot}%{dynload_dir}
+
# Multilib support for pyconfig.h
# 32- and 64-bit versions of pyconfig.h are different. For multilib support
# (making it possible to install 32- and 64-bit versions simultaneously),
commit 6e2dac669d0fe4486b91a9ae1b25ee6bef234f61
Author: Tomáš Hrnčiar <thrnciar(a)redhat.com>
Date: Thu Oct 27 17:03:45 2022 +0200
Exclude 32bit ARM from Python 3.12
diff --git a/python3.12.spec b/python3.12.spec
index ce51bbf..fe812a7 100644
--- a/python3.12.spec
+++ b/python3.12.spec
@@ -20,6 +20,17 @@ Version: %{general_version}%{?prerel:~%{prerel}}
Release: 1%{?dist}
License: Python-2.0.1
+# Getting this build in Koji on 32bit ARM is frustrating due to technical problems
+# https://pagure.io/releng/issue/11095
+# Fedora 37+ dropped that architecture
+# https://fedoraproject.org/wiki/Changes/RetireARMv7
+# Upstream does not support it anyway
+# https://peps.python.org/pep-0011/
+# Hence, we exclude it starting with Python 3.12
+# https://lists.fedoraproject.org/archives/list/python-devel@lists.fedorapr...
+# Once Fedora 36 goes EOL, this line can be dropped.
+ExcludeArch: %{arm}
+
# ==================================
# Conditionals controlling the build
commit 8003a0743841d0fa13246365e4a22172fb4cebcc
Author: Tomáš Hrnčiar <thrnciar(a)redhat.com>
Date: Thu Oct 27 16:50:15 2022 +0200
Initial Python 3.12 package forked from Python 3.11
diff --git a/00251-change-user-install-location.patch b/00251-change-user-install-location.patch
index 6c3caac..d4538dd 100644
--- a/00251-change-user-install-location.patch
+++ b/00251-change-user-install-location.patch
@@ -35,7 +35,7 @@ Co-authored-by: Lumír Balhar <frenzy.madness(a)gmail.com>
4 files changed, 77 insertions(+), 6 deletions(-)
diff --git a/Lib/distutils/command/install.py b/Lib/distutils/command/install.py
-index 01d5331a63..79f70f0de4 100644
+index a22a5d094d..804505d861 100644
--- a/Lib/distutils/command/install.py
+++ b/Lib/distutils/command/install.py
@@ -159,6 +159,8 @@ class install(Command):
@@ -160,10 +160,10 @@ index ebe3711827..55af57b335 100644
# On Windows we want to substitute 'lib' for schemes rather
# than the native value (without modifying vars, in case it
diff --git a/Lib/test/test_sysconfig.py b/Lib/test/test_sysconfig.py
-index 578ac1db50..dc58e7db18 100644
+index b6dbf3d52c..4f06a7673c 100644
--- a/Lib/test/test_sysconfig.py
+++ b/Lib/test/test_sysconfig.py
-@@ -111,8 +111,19 @@ def test_get_path(self):
+@@ -110,8 +110,19 @@ def test_get_path(self):
for scheme in _INSTALL_SCHEMES:
for name in _INSTALL_SCHEMES[scheme]:
expected = _INSTALL_SCHEMES[scheme][name].format(**config_vars)
@@ -184,7 +184,7 @@ index 578ac1db50..dc58e7db18 100644
os.path.normpath(expected),
)
-@@ -336,7 +347,7 @@ def test_get_config_h_filename(self):
+@@ -335,7 +346,7 @@ def test_get_config_h_filename(self):
self.assertTrue(os.path.isfile(config_h), config_h)
def test_get_scheme_names(self):
@@ -193,7 +193,7 @@ index 578ac1db50..dc58e7db18 100644
if HAS_USER_BASE:
wanted.extend(['nt_user', 'osx_framework_user', 'posix_user'])
self.assertEqual(get_scheme_names(), tuple(sorted(wanted)))
-@@ -348,6 +359,8 @@ def test_symlink(self): # Issue 7880
+@@ -347,6 +358,8 @@ def test_symlink(self): # Issue 7880
cmd = "-c", "import sysconfig; print(sysconfig.get_platform())"
self.assertEqual(py.call_real(*cmd), py.call_link(*cmd))
diff --git a/00328-pyc-timestamp-invalidation-mode.patch b/00328-pyc-timestamp-invalidation-mode.patch
index d04a267..e8f3ad6 100644
--- a/00328-pyc-timestamp-invalidation-mode.patch
+++ b/00328-pyc-timestamp-invalidation-mode.patch
@@ -33,7 +33,7 @@ index 388614e51b..db52725016 100644
else:
return PycInvalidationMode.TIMESTAMP
diff --git a/Lib/test/test_py_compile.py b/Lib/test/test_py_compile.py
-index a4a52b180d..e53f5d92aa 100644
+index 5e0a44ad96..ac14a6a54c 100644
--- a/Lib/test/test_py_compile.py
+++ b/Lib/test/test_py_compile.py
@@ -19,6 +19,7 @@ def without_source_date_epoch(fxn):
diff --git a/00371-revert-bpo-1596321-fix-threading-_shutdown-for-the-main-thread-gh-28549-gh-28589.patch b/00371-revert-bpo-1596321-fix-threading-_shutdown-for-the-main-thread-gh-28549-gh-28589.patch
index 1d39233..20a6a13 100644
--- a/00371-revert-bpo-1596321-fix-threading-_shutdown-for-the-main-thread-gh-28549-gh-28589.patch
+++ b/00371-revert-bpo-1596321-fix-threading-_shutdown-for-the-main-thread-gh-28549-gh-28589.patch
@@ -1,6 +1,6 @@
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Tom=C3=A1=C5=A1=20Hrn=C4=8Diar?= <thrnciar(a)redhat.com>
-Date: Tue, 7 Dec 2021 14:41:59 +0100
+Date: Tue, 25 Oct 2022 12:02:33 +0200
Subject: [PATCH] 00371: Revert "bpo-1596321: Fix threading._shutdown() for the
main thread (GH-28549) (GH-28589)"
@@ -16,12 +16,12 @@ https://github.com/GrahamDumpleton/mod_wsgi/issues/730
2 files changed, 8 insertions(+), 50 deletions(-)
diff --git a/Lib/test/test_threading.py b/Lib/test/test_threading.py
-index 9c6561c099..84714c03fe 100644
+index c664996233..0877b4f227 100644
--- a/Lib/test/test_threading.py
+++ b/Lib/test/test_threading.py
-@@ -956,39 +956,6 @@ def test_debug_deprecation(self):
- b'is deprecated and will be removed in Python 3.12')
- self.assertIn(msg, err)
+@@ -1002,39 +1002,6 @@ def noop(): pass
+ threading.Thread(target=noop).start()
+ # Thread.join() is not called
- def test_import_from_another_thread(self):
- # bpo-1596321: If the threading module is first import from a thread
@@ -60,10 +60,10 @@ index 9c6561c099..84714c03fe 100644
class ThreadJoinOnShutdown(BaseTestCase):
diff --git a/Lib/threading.py b/Lib/threading.py
-index 4f72938551..18c10e6489 100644
+index d030e12436..16ab0aceba 100644
--- a/Lib/threading.py
+++ b/Lib/threading.py
-@@ -1546,29 +1546,20 @@ def _shutdown():
+@@ -1557,29 +1557,20 @@ def _shutdown():
global _SHUTTING_DOWN
_SHUTTING_DOWN = True
diff --git a/00389-don-t-let---with-system-libmpdec---with-system-expat-use-the-vendored-headers.patch b/00389-don-t-let---with-system-libmpdec---with-system-expat-use-the-vendored-headers.patch
new file mode 100644
index 0000000..5f226f7
--- /dev/null
+++ b/00389-don-t-let---with-system-libmpdec---with-system-expat-use-the-vendored-headers.patch
@@ -0,0 +1,111 @@
+From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Miro=20Hron=C4=8Dok?= <miro(a)hroncok.cz>
+Date: Thu, 27 Oct 2022 15:24:03 +0200
+Subject: [PATCH] 00389: Don't let --with-system-libmpdec / --with-system-expat
+ use the vendored headers
+
+This was a regression in Python 3.12.0a2 that prevented Fedora doing
+this:
+
+ $ rm -r Modules/_decimal/libmpdec
+ $ rm -r Modules/expat
+
+Before building Python with --with-system-libmpdec --with-system-expat.
+
+The errors were:
+
+ make: *** No rule to make target
+'Modules/_decimal/libmpdec/basearith.h', needed by
+'Modules/_decimal/_decimal.o'. Stop.
+ make: *** No rule to make target 'Modules/expat/ascii.h', needed by
+'Modules/pyexpat.o'. Stop.
+
+Now the make-dependency on the headers only exists
+when --with-system-libmpdec / --with-system-expat is **not** used.
+
+Fixes https://github.com/python/cpython/issues/98707
+
+Co-authored-by: Erlend E. Aasland <erlend.aasland(a)protonmail.com>
+---
+ Makefile.pre.in | 6 +++---
+ .../Build/2022-10-26-12-37-52.gh-issue-98707.eVXGEx.rst | 4 ++++
+ configure | 4 ++--
+ configure.ac | 4 ++--
+ 4 files changed, 11 insertions(+), 7 deletions(-)
+ create mode 100644 Misc/NEWS.d/next/Build/2022-10-26-12-37-52.gh-issue-98707.eVXGEx.rst
+
+diff --git a/Makefile.pre.in b/Makefile.pre.in
+index 5b4bf15eb8..7550414aae 100644
+--- a/Makefile.pre.in
++++ b/Makefile.pre.in
+@@ -2581,13 +2581,13 @@ MODULE_DEPS=$(PYTHON_HEADERS) Modules/config.c $(EXPORTSYMS)
+
+ MODULE_CMATH_DEPS=$(srcdir)/Modules/_math.h
+ MODULE_MATH_DEPS=$(srcdir)/Modules/_math.h
+-MODULE_PYEXPAT_DEPS=$(LIBEXPAT_HEADERS) @LIBEXPAT_INTERNAL@
++MODULE_PYEXPAT_DEPS=@LIBEXPAT_INTERNAL@
+ MODULE_UNICODEDATA_DEPS=$(srcdir)/Modules/unicodedata_db.h $(srcdir)/Modules/unicodename_db.h
+ MODULE__BLAKE2_DEPS=$(srcdir)/Modules/_blake2/impl/blake2-config.h $(srcdir)/Modules/_blake2/impl/blake2-impl.h $(srcdir)/Modules/_blake2/impl/blake2.h $(srcdir)/Modules/_blake2/impl/blake2b-load-sse2.h $(srcdir)/Modules/_blake2/impl/blake2b-load-sse41.h $(srcdir)/Modules/_blake2/impl/blake2b-ref.c $(srcdir)/Modules/_blake2/impl/blake2b-round.h $(srcdir)/Modules/_blake2/impl/blake2b.c $(srcdir)/Modules/_blake2/impl/blake2s-load-sse2.h $(srcdir)/Modules/_blake2/impl/blake2s-load-sse41.h $(srcdir)/Modules/_blake2/impl/blake2s-load-xop.h $(srcdir)/Modules/_blake2/impl/blake2s-ref.c $(srcdir)/Modules/_blake2/impl/blake2s-round.h $(srcdir)/Modules/_blake2/impl/blake2s.c $(srcdir)/Modules/_blake2/blake2module.h $(srcdir)/Modules/hashlib.h
+ MODULE__CTYPES_DEPS=$(srcdir)/Modules/_ctypes/ctypes.h $(srcdir)/Modules/_ctypes/darwin/dlfcn.h
+ MODULE__CTYPES_MALLOC_CLOSURE=@MODULE__CTYPES_MALLOC_CLOSURE@
+-MODULE__DECIMAL_DEPS=$(srcdir)/Modules/_decimal/docstrings.h $(LIBMPDEC_HEADERS) @LIBMPDEC_INTERNAL@
+-MODULE__ELEMENTTREE_DEPS=$(srcdir)/Modules/pyexpat.c $(LIBEXPAT_HEADERS) @LIBEXPAT_INTERNAL@
++MODULE__DECIMAL_DEPS=$(srcdir)/Modules/_decimal/docstrings.h @LIBMPDEC_INTERNAL@
++MODULE__ELEMENTTREE_DEPS=$(srcdir)/Modules/pyexpat.c @LIBEXPAT_INTERNAL@
+ MODULE__HASHLIB_DEPS=$(srcdir)/Modules/hashlib.h
+ MODULE__IO_DEPS=$(srcdir)/Modules/_io/_iomodule.h
+ MODULE__MD5_DEPS=$(srcdir)/Modules/hashlib.h
+diff --git a/Misc/NEWS.d/next/Build/2022-10-26-12-37-52.gh-issue-98707.eVXGEx.rst b/Misc/NEWS.d/next/Build/2022-10-26-12-37-52.gh-issue-98707.eVXGEx.rst
+new file mode 100644
+index 0000000000..69afa9dea3
+--- /dev/null
++++ b/Misc/NEWS.d/next/Build/2022-10-26-12-37-52.gh-issue-98707.eVXGEx.rst
+@@ -0,0 +1,4 @@
++Don't use vendored ``libmpdec`` headers if :option:`--with-system-libmpdec`
++is passed to :program:`configure`.
++Don't use vendored ``libexpat`` headers if :option:`--with-system-expat`
++is passed to :program:`!configure`.
+diff --git a/configure b/configure
+index 15d9796374..940db49efe 100755
+--- a/configure
++++ b/configure
+@@ -12619,7 +12619,7 @@ else
+
+ LIBEXPAT_CFLAGS="-I\$(srcdir)/Modules/expat"
+ LIBEXPAT_LDFLAGS="-lm \$(LIBEXPAT_A)"
+- LIBEXPAT_INTERNAL="\$(LIBEXPAT_A)"
++ LIBEXPAT_INTERNAL="\$(LIBEXPAT_HEADERS) \$(LIBEXPAT_A)"
+
+ fi
+
+@@ -13128,7 +13128,7 @@ else
+
+ LIBMPDEC_CFLAGS="-I\$(srcdir)/Modules/_decimal/libmpdec"
+ LIBMPDEC_LDFLAGS="-lm \$(LIBMPDEC_A)"
+- LIBMPDEC_INTERNAL="\$(LIBMPDEC_A)"
++ LIBMPDEC_INTERNAL="\$(LIBMPDEC_HEADERS) \$(LIBMPDEC_A)"
+
+ if test "x$with_pydebug" = xyes; then :
+
+diff --git a/configure.ac b/configure.ac
+index c7945aaf85..b4d188399d 100644
+--- a/configure.ac
++++ b/configure.ac
+@@ -3710,7 +3710,7 @@ AS_VAR_IF([with_system_expat], [yes], [
+ ], [
+ LIBEXPAT_CFLAGS="-I\$(srcdir)/Modules/expat"
+ LIBEXPAT_LDFLAGS="-lm \$(LIBEXPAT_A)"
+- LIBEXPAT_INTERNAL="\$(LIBEXPAT_A)"
++ LIBEXPAT_INTERNAL="\$(LIBEXPAT_HEADERS) \$(LIBEXPAT_A)"
+ ])
+
+ AC_SUBST([LIBEXPAT_CFLAGS])
+@@ -3819,7 +3819,7 @@ AS_VAR_IF([with_system_libmpdec], [yes], [
+ ], [
+ LIBMPDEC_CFLAGS="-I\$(srcdir)/Modules/_decimal/libmpdec"
+ LIBMPDEC_LDFLAGS="-lm \$(LIBMPDEC_A)"
+- LIBMPDEC_INTERNAL="\$(LIBMPDEC_A)"
++ LIBMPDEC_INTERNAL="\$(LIBMPDEC_HEADERS) \$(LIBMPDEC_A)"
+
+ dnl Disable forced inlining in debug builds, see GH-94847
+ AS_VAR_IF([with_pydebug], [yes], [
diff --git a/Yhg1s.gpg b/Yhg1s.gpg
new file mode 100644
index 0000000..e0000e5
--- /dev/null
+++ b/Yhg1s.gpg
@@ -0,0 +1,136 @@
+-----BEGIN PGP PUBLIC KEY BLOCK-----
+
+mQINBFUAInYBEACrmKcXagNRlo1VjznrJZMMUh0rxUn2iK2wy9H5qrCo4EgMYahZ
+ibBunSWB4RNeVQevzUm3eSyOixnt+BmGZbSYqKp8tJIXRRcnKhEtC62X+7NVMc7B
+9uPu/aJ3HNqXrsQwBJUzZxzLMLg6obCyarhhHAYbWmfaafU4yNk3J4dGNKoZtHvz
+bjnUtlsUAkCmuyt3MsUuSYz34BviRLSEZEKW6xNoyQmD9dUhQ5exBuTPjtmdTf+x
+gOKpBluRkJ4TADGlWf42lIkaI+8DYRj1R8eQdLFwS7sDTu/MMPceKU7nTWOoj8HF
+3xXRJ+bJbpOJXZFEzVKjXHKuMFkhKr562i0LD8pdl1+s+9LRovmAvGwggt04Drzb
+AK437QoyjPKiTnFlg4tOeIuN0Y+GGk2hXOdH7fNw79B9Tq5ENxth8NsnKVlz1zpF
+X+aV0zCvAjNWutAUpikqZT/ibpwmM+NJcz3pgzQOq+LfPFskyrv7zkVODEjH3SG3
+s4ROvyoWfLPWmX92kJMOkvzyQObZmU2zWJgJbjYRApZiTfbfnH1tE+wxH4ZR5dji
+FpEdUJn1yjpYp21Q10khIdsj6q9IvS3RDq0ygc5wfl5111byEsdP12y36lvPTclT
+33VHBR1vxr+js9d8FI4wwt/o+7TmAO39DYhLrtn+ZgyRgIBYY65lhEaUtwARAQAB
+tCJUaG9tYXMgV291dGVycyA8dGhvbWFzQHB5dGhvbi5vcmc+iQJXBBMBCgBBAhsD
+BQsJCAcDBRUKCQgLBRYCAwEAAh4BAheABQkVRkQLFiEEcWlgX2LHUTVtBUomqCHm
+gOX6YwUFAmM7V3UCGQEACgkQqCHmgOX6YwVFeRAAkXE+BC/8O7VVtNe3iCdcQtW3
+PiCINEJgOQbXSwjkIGjD/Noheu+2cdwznjUmAX3qgnOyxIvo1AzYXagRazKVl1A+
+AiMctMNUCuVAkPeTL3nUERzOzZP6fE9OB/XNyiFeNPGg3qGz/HEJH8OMzahfOpzM
+VC3bCcZrn3JmMp6X8gLgArcK20L7qu/USO/Ico9vT8n+IkZIyxv9GNzfr4QZtGQN
+DkcHXHbX7p6juffdF9PpQgeAHfP4F9ZuDC+Mc5AGQaxY0z+gNLQGbTEjBBxkrGqd
+3iOHWb+RLLRJkHkF95KegatrgRkK3d+WLsHwCWzySDAKsjcvM33+N5YB9vWiL/K+
+kRbgEiecQHwsV1WT+DLY4yoLEBDVbThSw90R2b4bDzCOWShYMX8hDu5HaP3vT1Ye
+lLSYT/1TxX1yvGeCuA8D+V9OZbSi7eKVT7W4pxqiCcDTpvMvx3o9NfiHEFGQfjlZ
+nQsIBt9YeBG2c/GL0h1v4X9kBHjxv58576L9olEuWViuCam3OmW31Ik8OjYUwHs0
+tVqc/ciKsot/3ci96wxnG0RajkXL4ybQI7QzJ3OJJyLMZUPx7UTkdYlD7ZKJyU/N
+kdcmEjtvBtWeCROZOdivvZeJnSe/vANbH9Oibongl9Zwlq0w/Sd8fHKJQZC7c4dA
+bTVfbTLXuaLUE86ZCdSJAhwEEAEKAAYFAlUAQF8ACgkQq90IJmKQVoiM5w/+OT6z
+14MgLePITzg+SCRH7H6QgMjLQXrIwEFzwJC8sG2OxIG/nr+M9R0VgsUqEdP2vwur
+XDiadjvh4yfXkQst96EUk4l4HCSPo9YtXmPoM88n+rhHSI3UrQx/mqMdf6V4Z8AM
+KZ6LEe9sctrVjyJdEixZVVh0F4BOluKVwOLFmZkQLzblj8nul5b/X2+r+B2Z3b9H
+beI4EN/vBno/riv6L/ZHq3g7xztm1ZQE55PLtTkVD6PhEBXnLxuAHu9psWmFLAn3
+piz7GQg683y5ncrzHGJs11CXtE7BJ8iHet7whQneF2DY2LcVWVNjQtWslhlhp2+o
+YE+aVSB5cJ6pjHnz7d0m9QyS1dzDkGfDbPxMES6qDymQpsrpDP3Kro+O7V6JB6To
+8Qj9gEumjaze7mkQdC4A3NOiOgB6+c3P/ng3HYAA9T7KkiePj+2B4F7YrMdWQqhR
+IB0uHLUblmw9BVbd0p5EVM7dxEziqHE6kvlka0M9kC8naF6XvHhZQlZhbNXgo4zH
+JLFVNqQw/c2E983iiBEkBu18t5kz/lOnO0Oh5ARVGiw9cxwx9pzuw1s/VT50698r
+l0g4IeWbrVbYKKXhFMgX6BRQZiOzbE9QTpWX2PFwd69FHs/mgqlFf9IF5lkBkXP4
+3qAShAqz6+rlQFesaliN3uF29AHZwB5NOY6lNh6JAj0EEwEKACcFAlUAP5cCGwMF
+CQlmAYAFCwkIBwMFFQoJCAsFFgIDAQACHgECF4AACgkQqCHmgOX6YwUS/hAAqg57
+TwZlu8qof1e/2BTCqUiKPQ7XuokYORTKpNrXCMpl/ygZMW8jc6Q+iVKaDDhJN9pz
+zh6ZBZQSNMwr4v8ndc858dId/WtAbMZ9eG96tIoFT4M+mSSW/YobRuvInuFyVvor
+Z4pT19/UDG7hRZRKofT6X22Nzumoy97veT3Weuu0jny+H4AiiTobSnRSsZpjCMUs
+0TzMk+v1+JdMmETGbJZrM4BYZFUmoOOOU1WOPoph4owmz8h2a+VxdnGB95sW9/04
+gKHld863oauFv01P33okRojin+Q2G97o14Lh+IxFjghiphz9MOzwytwTUNwwrSmf
+Hjv2VHEtWc5P+GC0Gys7+l2jqUZm/j3H2Vu40R47sLudtty5iMV/sVmBBDRdyuVh
+C7yJC0dWveFsuEuI/onjf1iKgICkM2fNSj8gCBLtnbK6m3ZURoAwdKfWZR+9vyrq
+waazxmC+76IOoSBnRFqvdB2z+8CbVHWQ4bOcAUyMDTkwtM1qAiNnRln3aFIdzDdQ
+GQh1j3p4kuda8XE+IMdcOY3Q9HSSQ76aVrh+zbyXIX2a8H5qN7Tn0a7G2PoThBMe
+5CNl7aXdFF+v7yoRY4vyt+8p3wxlOli/1iMn2X879BlA3TJzbpSSBTd9aR75fshp
+9cXSqsUb2ja93Ca6mWkJfDYQUIltTGgg4njduFq0IVRob21hcyBXb3V0ZXJzIDx0
+aG9tYXNAeHM0YWxsLm5sPokCVAQTAQoAPgIbAwULCQgHAwUVCgkICwUWAgMBAAIe
+AQIXgAUJFUZECxYhBHFpYF9ix1E1bQVKJqgh5oDl+mMFBQJjO1dvAAoJEKgh5oDl
++mMFIlIQAKmkHcJbQ1ltBexoJSsoCi7+9IOCSJpD0fsP6210/hkcSdcbz4EuN9om
+f7BdCW9SOicBB8bxVid3uF0NnLjqyRusNbRVIXiKWzxb2+36cA9D6ugv1u8oV7Fq
+sD+zAEWJTNDjd4/rJjEMTMhUxN0EFNrQLDngDnx7AeJyGD2n4eFB6RCJ7qtJtCPq
+xqiW9jH6vH+YlAz8zbWKF7Z52CPVxAt/yoo6dwLFV6615Mo5n4VN6NiXQeKw5XmZ
+prXvxDQFkodpjBpoN3fcAX6UTX4yJOR9DhALorr2H1ldI9xdQ0pawlPTDT/gRMsY
+uHh3NVflUzoLny7TWqd7xLyocH2TqC3OAsF78oR+4W2P0QxuEq/W1WAf+LIpRjeI
+Q4Xt6TGDku694VHE0pfK5BjpHApyWlGRPVq89x6Z78pCrKiMMtoW30mCPWkSd63h
+3cPgQNAzo+BBoNYUdvQCAAMEFdBpUjVCQaInAqFuKw1N8IpahsKKSg4jMheLmocG
+KYbO5IIinjXxIz87skKD6xkukIwfcnhvRM/IkHuxuG+ltO17nbWQNvmvZtEZ47xN
+9hAVZkaK/5eBDmICH1N8o0gHGU61KfEaCRLuQkFRe72QnbxzUkIwYtC9TCAiYieA
+xsSRwY5boZsKEnzLmPfM1b96Rj7JKCiMDOBgNbUNcKXuAMqrOMZtiQIcBBABCgAG
+BQJVAEBfAAoJEKvdCCZikFaI8xEQAIl7VghcbWLaiIcS+SB4mlVuVpFyj6YmD7Y2
+GWAkiRMyxMdzETOA1dKzcdZG8+0ClATFgdCl7FxZ5M2qRhjOqxRpMK0KpSn7xuXB
+w+0LWo5gnEXk/+IrXOBNCCkaglyPGlW8GFE/hxGbBt4pDLyQ6nsYWSWLvPNOGdQg
+J2/P3pa8mCmiFeAt88rz7Xj9wg7OZ7O+3tV6AlYRklfQEBAB/NP1VHv3xc2GsCA1
+t83f8Echq+CjsYNmcVIOhEKSPvacbfF1dpBp4AQooy6KRA4G1ERi0cXcSOnAdKZW
+wG0fIl++ziz0iDIM9c7Lg7Jul1+ZpXM9nxCLu7KYGlXe05XK+xzQJdK02tJO96IX
+oNcZrtqnIV9D/BBX4HMVHlSjoRVCnpXsuCiobgOFahvp94s7I6D48ABc64HPMS/2
+Nkw0QKLsmpNQ++QfNbNNOhcjMJFmlAy8si0cpBSQjVoctvgoZMo63KjDjvUiEMni
+tvEq43xPLe4cAUgj3F6/Eq9NDXbS0Bvq2a2gPEfY+d0dSazUCpmPVe9eAGxCZ0QY
+sPctUvLRf4scwJdQ676DAj+VvUwRKjAlR2wlHFWS38PQ/irvKgu02yHW3K1j99QS
+2NBauBcKZlr/r3bIWbDxtgOBfvfKGFsEHesSAyNY06OgGONvqMncWiMT1dCKhbxQ
+GdoSEaNkiQI9BBMBCgAnBQJVACJ2AhsDBQkJZgGABQsJCAcDBRUKCQgLBRYCAwEA
+Ah4BAheAAAoJEKgh5oDl+mMFLxcP/17E5gEBa/ErPMnY+82r0jZ5rq0DGOotrjsY
+fSvIX0YvDc6BaqLLuSTr8Klo2MueVHZY78px6VC661KP5+aRBJZHTTUJ+9ZVrP+R
+pcNHQTKX70XrwYSnl2S7q0nc1K5CkCLYOuM05sAzvOBj/cAtpZuw9D009wxpQXd7
+kwSREBGcgZ8Ac7kqPbOojtmBkHFWFUg5Rx+fVsulcQkERs1j22tzTvPzsljGmrrY
+7o6P0K4fzVfeQx43sKKltQrNNZwBtleHD+jQPLThVf09Rhjtq/+cb2wwiAqpHskf
+dY1njeCh21Yl58IOMHQ6x0Mc6rF3A5wqrLVJ5GYVHl33unZLKcAWDmtV3MPvnvdF
+WvLDPqkykozU08d1ieyZXFWlwViYaVzh7cjgIM8keCbPk0zFtGZkVUS2um332Xiv
+pX02J8KqWhNsiioO/SAFOhS6+zR+mZghnr5eqD9SHmCKTJ1JWjG2wx2hibaaszQb
+qypBW1mwoGMDj4MG91iKSnwMgjp3P8xQIyHy/XTAJ1DD9F//2MtQ2ZK5MqiWTYLn
+iUzirq8M1E8rLHh8Met5xIOq5iIDcMn0HTBCwrWWPOyqTF2lWK3G6LOjTltQ01fJ
+JaICpTe1Eirt9v+kr1iPLH1+zIeWZ1O469I/nxRp/WW6Oavzb9WRg5gDBKZ2v+rJ
+jZLcaEBFtCRUaG9tYXMgV291dGVycyA8dHdvdXRlcnNAZ29vZ2xlLmNvbT6JAlQE
+EwEKAD4CGwMFCwkIBwMFFQoJCAsFFgIDAQACHgECF4AWIQRxaWBfYsdRNW0FSiao
+IeaA5fpjBQUCYOBlAQUJFUZECwAKCRCoIeaA5fpjBTvxEACfyEt5rN5QGmVgahD/
+83l7lQpZUzLSq5MnIfRjCz50seh+oWsOuecayHZ79IDVSkF2L2kE1rumcB7UKPez
+0kHVrTdh3mQIsfCzQZEMsWTDYotlZbrPPvT3lKGL+O7fU321q9GVotJAssYcQFIK
+9F2p3jhN2coOzguikVlSc4nswnq2KRIJ4BpSJ3fk1rWLr8oJxN2pSpskYtHdUyUx
+fZ+fOrMHLbW94JWsLYDad4wpr8etBneVAaUPfphhbIwfhRXlHuTreDtwr3LJYKp1
+VjUjzGVVT2CXkS9LbJ7aM2BYa/1MJyHxkglu8O9LIDGH2arlbtmBKMbCXPSX/42H
+sGpUgQYRwG4f+2CfPj4fNx5GK8LO/EJjaw2Qh542U0356RRVZquN6E6SS6Sndlf9
+sO4cKU/ptT8IsfWKKaLwvr0l71hgLRqqe3rSpTV54cKpJfYIG+Qf4Do69etJLxjY
+UsyCqzuFocxZa0DGkqDQ+f1cD1bdg7Twso041NZG6y9+E7kCf3jtKkiYAHBY902q
+Zi8FvtI2tDAqwlfJjdiH5rUtYZALO3KGT+l9p3FTYIdDD1iVC41CeF6loJk0gQZi
+NmJtyY1TTyNS5Chtr8fSV9yYuoB5XoYYpLu1NCks4Cwva1tE45VhFrl8lPaM3EAB
+OV+JeHYHX/DgooJRIwgpXCBmwYkCHAQQAQoABgUCVQBAXwAKCRCr3QgmYpBWiBLT
+D/92NtklPiu0xYCsqUYQzy2dS9y93UHCY0IY7ZPS8k0gmmrxUxwyCARVvLKVy8pC
+DTw1As8ziOPlwD4QrVxIGMVSKcjM6aEa1h87ezWcz9UCFFKG5NzP7ixBj0bfFlP3
+STisQXoa1jjT4x8gNw5QMnI4nnnqYRIUZYdsyOru9Kk4pJYMzXG7dHI2mPlGlZ67
+gsHVtN9w/cF2e+5MeejxJF5YkHwbXyWymFvEHB+yvtrqUKtnr+SKXpBiRaiA1UBS
+Atus1HE+iEaNpfXjyGPT1/kj2dLS+PyKS61I0B8HF7msoXmbWClwOLAg19C7Gla8
+CLF53LgIqVjVH5c1+0VjmSyVOJoH9mFMd2rf6iJct9XlLfbAb9+liM/5FSRHtZCO
+YR6tqfVy+9j5ZhCWfPOaEo4rGLwQ7vHP1qkwH3sZn/UTsQvT4gZX8eIZ3QjutzTD
+TWfIWvxM7aeYCmNjPZFOB8hmnf3CYL4j5tMwnP19w2HWrYQHOBiIoPwGQxFFZf78
+F3GlPNYGqDUMNOgF7QxN0+GEh97JjSJ0P4JUX+nMOcousmrvZsH4IM6KIqhk0I59
+IjUuPxk7qpXU4z4ofEJzxEC0qTtmrNz4+kdvDQuJZY09hAbukzQ8xjl7i519Er+s
+8iApBcxVZ1Kl4pl60OS6S5FkBS6JfyYDDA2a72R5EJbh/7kCDQRVACJ2ARAA4lpb
+W8WeDqyRFffqQzVUK6456CkM7Fd77n1FdY0KwNeAmULYeiQ1Kp2PDzxFOyoJNe8a
+QazB7jPqGth0+JgFCOxGlnAtBP7DQl2MrYAL+AcKJ0c5dXc96ObZ6xtd01n9gAoo
+uppJINaA2aEX8P6nhQGu9qNz8yMBC22w0MYJZ+38ZVeXGcBCS3AGggeROwNPyNSZ
+nW5TPVHi+Sea5bCE4eo5UYIAMqcToxieI3V4A2ciQV9nBERLF0bAadD1HEeCb6wM
+g6h8z6VIRPitk45Dw73dy1yC6OvhkyGQ1yGuOPxwVnG3w0CLSUmMQeqyNAufmtN2
+yeoSMV74K9kOpkxCzzSulXGhEgCXWE7EXKC2g8i6M4BwYm3AaBGqeo+z7DinffWs
+8W2UvQUN6JTAdGVgNUfacYbP8YR7fOO1EczJ/FYGxq+JnDUFRpKNsDouw6ZeRI1E
+iQT3FEKWI3meNmTPBmIcWLoYGNYdmaeb4pqHBb6SfV45H4QjTyIjNHiW/LkpuI7o
+No/vIlNF8OQwyUFtknXIx57A0VSdI+vfz1crneg/bg0qzBz5SoYZ0XZUfvmYLAoD
+Z0/KLaqZ1x1Z9wiLbe3iK6nE1mjmWf7rOfmWHuxH/gbChXMDDfOMwgOYFXNXImsN
+PWPX3XA2DrhFrlNWzA8kxi9hXJrgAfkRcx/84oUAEQEAAYkCPAQYAQoAJgIbDBYh
+BHFpYF9ix1E1bQVKJqgh5oDl+mMFBQJg4GUPBQkVRkQZAAoJEKgh5oDl+mMFhIcP
+/j3tJamzKpJGJAwcsoneFtYfmZnLA4UosffaPlsLGRVL1buyRuj2dFBr2WU4NAld
+YrQPK4T+ciSpfogJ9Dk8s1eUMhZi7gxKmeOHUDyefPXIp7v3PSG4xcnfXjyEK9zC
+714qFsI9ERjTg7uaw6qmFv8Xht8O8TLGMgqDijQIgrH2oGd6tEdYyOOCOPQ7d6PB
+Sm5Sw53LlCWlW5I9bc0NCjbnwWjh7Z9UXtLffzZyxgxggSw0vfg5PuhcprZ2Rd3M
+wzJmALI2BB7eWW1x+M0hXmtdqj7Opmajh+UMrFjLtAlEZfslJwzV9NkAFxDYzRi2
+jvsmJx78vOPB1XhXgTvlEOvA7qEYDXFaZJHlBDmFU9JqytGZ6PtiQENuLHIe4hO6
+aHbhJA4I9EqoG1U1COQAwrsHreV6+fpcFn4lXbu+gWPyUzKiQMQd9kI3EEiayObU
+ro21OFHS7z131kKbMec/oc2RfADCvEwY8oay7o0S9aTqvPSQODs8nYkbZchNFoC+
+oF9n8pBMNzhYBsTk1OXleD1yMucsuywr5i0meyvu6oQ4+pdPYD6wh7JatJh0hayK
+y33GGsXd278J1Ek1p6MEFnGLc/zH+NZZLIU7Qn1oFU+gK4cVeaLX2g0/BLKcQ/AE
+mYIwnecLr8A+Y4mZVwwsnSHtfELtoGSsawN26bzKbnRs
+=t995
+-----END PGP PUBLIC KEY BLOCK-----
\ No newline at end of file
diff --git a/check-pyc-timestamps.py b/check-pyc-timestamps.py
index 91af4fd..f91984e 100644
--- a/check-pyc-timestamps.py
+++ b/check-pyc-timestamps.py
@@ -19,11 +19,11 @@ not_compiled = [
'*/test/bad_coding.py',
'*/test/bad_coding2.py',
'*/test/badsyntax_*.py',
- '*/lib2to3/tests/data/bom.py',
- '*/lib2to3/tests/data/crlf.py',
- '*/lib2to3/tests/data/different_encoding.py',
- '*/lib2to3/tests/data/false_encoding.py',
- '*/lib2to3/tests/data/py2_test_grammar.py',
+ '*/test_lib2to3/data/bom.py',
+ '*/test_lib2to3/data/crlf.py',
+ '*/test_lib2to3/data/different_encoding.py',
+ '*/test_lib2to3/data/false_encoding.py',
+ '*/test_lib2to3/data/py2_test_grammar.py',
'*.debug-gdb.py',
]
diff --git a/pgp_keys.asc b/pgp_keys.asc
deleted file mode 100644
index 11dccb8..0000000
--- a/pgp_keys.asc
+++ /dev/null
@@ -1,109 +0,0 @@
------BEGIN PGP PUBLIC KEY BLOCK-----
-
-mQINBFq+ToQBEADRYvIVtbK6owynD3j3nxwpW2KEk/p+aDvtXmc2SR2dBcZ8sFW2
-R5vEsG8d3/D3wgv5pcL3KfNNXQYUnXVbobrFUUWQYc79qIsE3MgiPf5NVOtwKPUR
-i5g9YJgKvpBxkQfqp3LYGm9ZBtwo3DVLA3yn7KsazCmAgTNFJYw7ku1XxgmIzY6K
-5J30DfbJiqDqj4f9GslCCCCH3qiPnuLG/HUyVLHMpbWlaiy9NI0GcaLxjJewHj9w
-W2D2lydkxe5JGo7egUkV3ILcuLVSVKA35SKY27dYqfuyqp9tAzaRbjDYjsYdHA6G
-BqrNrKBn/GwlFDPrVdcvN3ZSY2wMLTxWE3Axc/FweuHxFnou/80FwX7F3JD+oEQ6
-rofmcxOBCC7J98I7HZAhP9jBn88XIS2hztbLq8d6rZJZRtcz0k61VR0ddO+TrFmf
-9rMYCPgCckRtVxeFIVIabrN1IzKynLFeo040h8hSGswd6YKDOVwjJY6Oa6EmVefZ
-a8QSt4+M65RSzH6SEPY008F3nJUAK6MEkzTak+tFltZNrVWu8p2xd1j9nmxAwEhZ
-/lgbxLqzYgaUWmfyHeZ8yVA0MhHzdiAL8nVUEdG3KecIq0RWCJLGLWWIjd6KAJl1
-yAmhRYKK/sjPDsL3elHsFACfZbyx3o5GGQNlas1FYoPLWbaNGaJtgFTF2QARAQAB
-tCtQYWJsbyBHYWxpbmRvIFNhbGdhZG8gPHBhYmxvZ3NhbEBnbWFpbC5jb20+iQJO
-BBMBCgA4FiEEoDXIwZIZuoIezqhrZOYo+NaEaW0FAlq+ToQCGwMFCwkIBwMFFQoJ
-CAsFFgIDAQACHgECF4AACgkQZOYo+NaEaW2bmA/+PXIap2udLoUVOHxnsIBdqYwp
-sv1Aj5lfIJmNhmxPbHShwp1Jg+w4urxe+2Dj5ofKVlIo1i83bQkvnKJMDXDVuc/K
-P6zqhBJ3rT4Q3qx2mzX8bIfQoJ2JHuH4lkP+I7doDcHHRyeNASyk72VdQmU4twNw
-Ibn8nSNV6ThKHdoPYzVnO2rZUFcGIqH5HNsvR+B7cc1MBCHsgURYwSVhSePIFGlZ
-iasdBD6QQkDSe4QWi7AcJFWFElw4kbOKJWxAWsrEk+tMXJVGRjnmL289EmPCx/vx
-BqKy7Mse0yWCSRR3vB+O6TB1S5SgEyEgqlYsfGNv1qf/rfRD4KkyCbNU3LhY1Aim
-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
-=6Zb4
------END PGP PUBLIC KEY BLOCK-----
diff --git a/python3.11.spec b/python3.12.spec
similarity index 92%
rename from python3.11.spec
rename to python3.12.spec
index 1d5c46c..ce51bbf 100644
--- a/python3.11.spec
+++ b/python3.12.spec
@@ -2,10 +2,10 @@
# Top-level metadata
# ==================
-%global pybasever 3.11
+%global pybasever 3.12
# pybasever without the dot:
-%global pyshortver 311
+%global pyshortver 312
Name: python%{pybasever}
Summary: Version %{pybasever} of the Python interpreter
@@ -14,7 +14,7 @@ URL: https://www.python.org/
# WARNING When rebasing to a new Python version,
# remember to update the python3-docs package as well
%global general_version %{pybasever}.0
-#global prerel ...
+%global prerel a1
%global upstream_version %{general_version}%{?prerel}
Version: %{general_version}%{?prerel:~%{prerel}}
Release: 1%{?dist}
@@ -59,7 +59,7 @@ License: Python-2.0.1
# IMPORTANT: When bootstrapping, it's very likely the wheels for pip and
# setuptools are not available. Turn off the rpmwheels bcond until
# the two packages are built with wheels to get around the issue.
-%bcond_with bootstrap
+%bcond_without bootstrap
# Whether to use RPM build wheels from the python-{pip,setuptools}-wheel package
# Uses upstream bundled prebuilt wheels otherwise
@@ -212,6 +212,7 @@ BuildRequires: ncurses-devel
BuildRequires: openssl-devel
BuildRequires: pkgconfig
+BuildRequires: python-rpm-macros
BuildRequires: readline-devel
BuildRequires: redhat-rpm-config >= 127
BuildRequires: sqlite-devel
@@ -256,8 +257,8 @@ BuildRequires: python3-rpm-generators
Source0: %{url}ftp/python/%{general_version}/Python-%{upstream_version}.tar.xz
Source1: %{url}ftp/python/%{general_version}/Python-%{upstream_version}.tar.xz.asc
-# The release manager for Python 3.11 is pablogsal
-Source2: https://keybase.io/pablogsal/pgp_keys.asc
+# The release manager for Python 3.12 is Thomas Wouters
+Source2: https://github.com/Yhg1s.gpg
# A simple script to check timestamps of bytecode files
# Run in check section with Python that is currently being built
@@ -312,7 +313,7 @@ Patch251: 00251-change-user-install-location.patch
# Ideally, we should talk to upstream and explain why we don't want this
Patch328: 00328-pyc-timestamp-invalidation-mode.patch
-# 00371 # c1754d9c2750f89cb702e1b63a99201f5f7cff00
+# 00371 # 1fc313929648e9b543542de09f59c55e175ac45a
# Revert "bpo-1596321: Fix threading._shutdown() for the main thread (GH-28549) (GH-28589)"
#
# This reverts commit 38c67738c64304928c68d5c2bd78bbb01d979b94. It
@@ -323,6 +324,31 @@ Patch328: 00328-pyc-timestamp-invalidation-mode.patch
# https://github.com/GrahamDumpleton/mod_wsgi/issues/730
Patch371: 00371-revert-bpo-1596321-fix-threading-_shutdown-for-the-main-thread-gh-28549-gh-28589.patch
+# 00389 # eec8cefdbbc164dc19d7112d1c65dbf6406ecca3
+# Don't let --with-system-libmpdec / --with-system-expat use the vendored headers
+#
+# This was a regression in Python 3.12.0a2 that prevented Fedora doing
+# this:
+#
+# $ rm -r Modules/_decimal/libmpdec
+# $ rm -r Modules/expat
+#
+# Before building Python with --with-system-libmpdec --with-system-expat.
+#
+# The errors were:
+#
+# make: *** No rule to make target
+# 'Modules/_decimal/libmpdec/basearith.h', needed by
+# 'Modules/_decimal/_decimal.o'. Stop.
+# make: *** No rule to make target 'Modules/expat/ascii.h', needed by
+# 'Modules/pyexpat.o'. Stop.
+#
+# Now the make-dependency on the headers only exists
+# when --with-system-libmpdec / --with-system-expat is **not** used.
+#
+# Fixes https://github.com/python/cpython/issues/98707
+Patch389: 00389-don-t-let---with-system-libmpdec---with-system-expat-use-the-vendored-headers.patch
+
# (New patches go here ^^^)
#
# When adding new patches to "python" and "python3" in Fedora, EL, etc.,
@@ -902,10 +928,6 @@ sed -i -e "s/'pyconfig.h'/'%{_pyconfig_h}'/" \
%{buildroot}%{pylibdir}/distutils/sysconfig.py \
%{buildroot}%{pylibdir}/sysconfig.py
-# Install pathfix.py to bindir
-# See https://github.com/fedora-python/python-rpm-porting/issues/24
-cp -p Tools/scripts/pathfix.py %{buildroot}%{_bindir}/pathfix%{pybasever}.py
-
# Install i18n tools to bindir
# They are also in python2, so we version them
# https://bugzilla.redhat.com/show_bug.cgi?id=1571474
@@ -918,7 +940,7 @@ done
# This currently only covers files matching ^[a-zA-Z0-9_]+\.py$,
# so handle files named using other naming scheme separately.
LD_LIBRARY_PATH=./build/optimized ./build/optimized/python \
- Tools/scripts/pathfix.py \
+ %{_rpmconfigdir}/redhat/pathfix.py \
-i "%{_bindir}/python%{pybasever}" -pn \
%{buildroot} \
%{buildroot}%{_bindir}/*%{pybasever}.py \
@@ -958,7 +980,7 @@ LD_LIBRARY_PATH="%{buildroot}%{dynload_dir}/:%{buildroot}%{_libdir}" \
# Turn this BRP off, it is done by compileall2 --hardlink-dupes above
%global __brp_python_hardlink %{nil}
-# Since we have pathfix.py in bindir, this is created, but we don't want it
+# Since we have *.py files in bindir, this is created, but we don't want it
rm -rf %{buildroot}%{_bindir}/__pycache__
# Fixup permissions for shared libraries from non-standard 555 to standard 755:
@@ -997,7 +1019,6 @@ ln -s ./idle3 %{buildroot}%{_bindir}/idle
ln -s ./python3-config %{buildroot}%{_bindir}/python-config
ln -s ./python3.1 %{buildroot}%{_mandir}/man1/python.1
ln -s ./python3.pc %{buildroot}%{_libdir}/pkgconfig/python.pc
-ln -s ./pathfix%{pybasever}.py %{buildroot}%{_bindir}/pathfix.py
%if %{with debug_build}
ln -s ./python3-debug %{buildroot}%{_bindir}/python-debug
%endif
@@ -1128,7 +1149,6 @@ CheckPython optimized
%license %{pylibdir}/LICENSE.txt
%{pylibdir}/lib2to3
-%exclude %{pylibdir}/lib2to3/tests
%dir %{pylibdir}/unittest/
%dir %{pylibdir}/unittest/__pycache__/
@@ -1244,6 +1264,7 @@ CheckPython optimized
%{dynload_dir}/xxlimited.%{SOABI_optimized}.so
%{dynload_dir}/xxlimited_35.%{SOABI_optimized}.so
%{dynload_dir}/_xxsubinterpreters.%{SOABI_optimized}.so
+%{dynload_dir}/xxsubtype.%{SOABI_optimized}.so
%{dynload_dir}/zlib.%{SOABI_optimized}.so
%{dynload_dir}/_zoneinfo.%{SOABI_optimized}.so
@@ -1380,7 +1401,6 @@ CheckPython optimized
%{_libdir}/pkgconfig/python3.pc
%{_libdir}/pkgconfig/python.pc
%{_libdir}/pkgconfig/python3-embed.pc
-%{_bindir}/pathfix.py
%{_bindir}/pygettext3.py
%{_bindir}/pygettext.py
%{_bindir}/msgfmt3.py
@@ -1388,7 +1408,6 @@ CheckPython optimized
%endif
%{_bindir}/2to3-%{pybasever}
-%{_bindir}/pathfix%{pybasever}.py
%{_bindir}/pygettext%{pybasever}.py
%{_bindir}/msgfmt%{pybasever}.py
@@ -1419,7 +1438,6 @@ CheckPython optimized
%files -n %{pkgname}-tkinter
%{pylibdir}/tkinter
-%exclude %{pylibdir}/tkinter/test
%{dynload_dir}/_tkinter.%{SOABI_optimized}.so
%{pylibdir}/turtle.py
%{pylibdir}/__pycache__/turtle*%{bytecode_suffixes}
@@ -1431,7 +1449,6 @@ CheckPython optimized
%files -n %{pkgname}-test
-%{pylibdir}/ctypes/test
%{pylibdir}/distutils/tests
%{pylibdir}/test
%{dynload_dir}/_ctypes_test.%{SOABI_optimized}.so
@@ -1441,9 +1458,6 @@ CheckPython optimized
%{dynload_dir}/_testinternalcapi.%{SOABI_optimized}.so
%{dynload_dir}/_testmultiphase.%{SOABI_optimized}.so
%{dynload_dir}/_xxtestfuzz.%{SOABI_optimized}.so
-%{pylibdir}/lib2to3/tests
-%{pylibdir}/tkinter/test
-%{pylibdir}/unittest/test
# We don't bother splitting the debug build out into further subpackages:
# if you need it, you're probably a developer.
@@ -1534,6 +1548,7 @@ CheckPython optimized
%{dynload_dir}/xxlimited.%{SOABI_debug}.so
%{dynload_dir}/xxlimited_35.%{SOABI_debug}.so
%{dynload_dir}/_xxsubinterpreters.%{SOABI_debug}.so
+%{dynload_dir}/xxsubtype.%{SOABI_debug}.so
%{dynload_dir}/_xxtestfuzz.%{SOABI_debug}.so
%{dynload_dir}/zlib.%{SOABI_debug}.so
%{dynload_dir}/_zoneinfo.%{SOABI_debug}.so
@@ -1595,106 +1610,5 @@ CheckPython optimized
# ======================================================
%changelog
-* Mon Oct 24 2022 Miro Hrončok <mhroncok(a)redhat.com> - 3.11.0-1
-- Update to 3.11.0
-
-* Tue Sep 13 2022 Miro Hrončok <mhroncok(a)redhat.com> - 3.11.0~rc2-1
-- Update to 3.11.0rc2
-
-* Tue Aug 09 2022 Miro Hrončok <mhroncok(a)redhat.com> - 3.11.0~rc1-2
-- Don't use custom installation schemes
-- Fixes rhbz#2026979
-- Fixes rhbz#2097183
-
-* Mon Aug 08 2022 Tomáš Hrnčiar <thrnciar(a)redhat.com> - 3.11.0~rc1-1
-- Update to 3.11.0rc1
-
-* Tue Jul 26 2022 Tomáš Hrnčiar <thrnciar(a)redhat.com> - 3.11.0~b5-1
-- Update to 3.11.0b5
-
-* Fri Jul 22 2022 Fedora Release Engineering <releng(a)fedoraproject.org> - 3.11.0~b4-2
-- Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild
-
-* Mon Jul 11 2022 Miro Hrončok <mhroncok(a)redhat.com> - 3.11.0~b4-1
-- Update to 3.11.0b4
-
-* Fri Jul 08 2022 Miro Hrončok <mhroncok(a)redhat.com> - 3.11.0~b3-8
-- Finish bootstrap of the re module speed regression fix
-
-* Fri Jul 08 2022 Miro Hrončok <mhroncok(a)redhat.com> - 3.11.0~b3-7
-- Fix speed regression in the re module which prevented chromium from building
-
-* Fri Jun 24 2022 Tomáš Hrnčiar <thrnciar(a)redhat.com> - 3.11.0~b3-6
-- Clear and reset sqlite3 statements properly in cursor iternext (fixes rhbz#2099049)
-- Revert a problematic fix of threading._shutdown() again (fixes rhbz#2100282)
-
-* Tue Jun 21 2022 Miro Hrončok <mhroncok(a)redhat.com> - 3.11.0~b3-5
-- Build Python with the optimized Blake2 library libb2
-
-* Tue Jun 21 2022 Miro Hrončok <mhroncok(a)redhat.com> - 3.11.0~b3-4
-- Make C++ version of _Py_CAST work with 0/NULL
-
-* Mon Jun 13 2022 Tomáš Hrnčiar <thrnciar(a)redhat.com> - 3.11.0~b3-3
-- Finish bootstrapping for Python 3.11 mass rebuild
-
-* Mon Jun 13 2022 Tomáš Hrnčiar <thrnciar(a)redhat.com> - 3.11.0~b3-2
-- Initial bootstrap for Python 3.11 mass rebuild
-
-* Wed Jun 01 2022 Miro Hrončok <mhroncok(a)redhat.com> - 3.11.0~b3-1
-- Update to 3.11.0b3
-
-* Tue May 31 2022 Miro Hrončok <mhroncok(a)redhat.com> - 3.11.0~b2-1
-- Update to 3.11.0b2
-
-* Tue May 10 2022 Tomáš Hrnčiar <thrnciar(a)redhat.com> - 3.11.0~b1-2
-- Finish bootstrapping 3.11.0b1
-
-* Sun May 08 2022 Tomáš Hrnčiar <thrnciar(a)redhat.com> - 3.11.0~b1-1
-- Update to 3.11.0b1
-
-* Wed Apr 20 2022 Tomas Orsava <torsava(a)redhat.com> - 3.11.0~a7-3
-- Build Python 3.11 with subpackages
-- `python(abi)` is still not Provided for alternative Python versions
-- Drop old no-longer-needed Obsoletes of python311 and python3-tools
-- Move _sysconfigdata_d_linux*.py to the debug subpackage
-- Resolves: rhbz#2063227
-
-* Thu Apr 07 2022 Tomáš Hrnčiar <thrnciar(a)redhat.com> - 3.11.0~a7-2
-- Finish bootstrapping 3.11.0a7
-
-* Wed Apr 06 2022 Tomáš Hrnčiar <thrnciar(a)redhat.com> - 3.11.0~a7-1
-- Update to 3.11.0a7
-
-* Tue Mar 08 2022 Miro Hrončok <mhroncok(a)redhat.com> - 3.11.0~a6-2
-- Finish bootstrapping 3.11.0a6
-
-* Mon Mar 07 2022 Miro Hrončok <mhroncok(a)redhat.com> - 3.11.0~a6-1
-- Update to 3.11.0a6
-
-* Fri Feb 04 2022 Tomáš Hrnčiar <thrnciar(a)redhat.com> - 3.11.0~a5-1
-- Update to 3.11.0a5
-
-* Fri Jan 21 2022 Fedora Release Engineering <releng(a)fedoraproject.org> - 3.11.0~a4-2
-- Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild
-
-* Mon Jan 17 2022 Tomáš Hrnčiar <thrnciar(a)redhat.com> - 3.11.0~a4-1
-- Update to 3.11.0a4
-
-* Sat Jan 08 2022 Miro Hrončok <mhroncok(a)redhat.com> - 3.11.0~a3-3
-- Rebuilt for https://fedoraproject.org/wiki/Changes/LIBFFI34
-
-* Mon Dec 13 2021 Miro Hrončok <mhroncok(a)redhat.com> - 3.11.0~a3-2
-- Supplement tox
-
-* Fri Dec 10 2021 Tomáš Hrnčiar <thrnciar(a)redhat.com> - 3.11.0~a3-1
-- Update to 3.11.0a3
-
-* Mon Nov 15 2021 Tomáš Hrnčiar <thrnciar(a)redhat.com> - 3.11.0~a2-1
-- Update to 3.11.0a2
-- Patch 251 was updated to include specific install scheme for virtualenv
-
-* Fri Nov 12 2021 Björn Esser <besser82(a)fedoraproject.org> - 3.11.0~a1-2
-- Rebuild(libnsl2)
-
-* Wed Oct 06 2021 Tomáš Hrnčiar <thrnciar(a)redhat.com> - 3.11.0~a1-1
-- Initial Python 3.11 package forked from Python 3.10
+* Wed Oct 26 2022 Tomáš Hrnčiar <thrnciar(a)redhat.com> - 3.12.0~a1-1
+- Initial Python 3.12 package forked from Python 3.11
diff --git a/sources b/sources
index 5763e8f..350e85d 100644
--- a/sources
+++ b/sources
@@ -1,2 +1,2 @@
-SHA512 (Python-3.11.0.tar.xz) = 314eef88ae0d68760f34d7a32f238fd2ecb27c50963baa7357c42ad8159026ec50229a0b31d83c39710a472904a06422afc082f9658a90a1dc83ccb74c08039d
-SHA512 (Python-3.11.0.tar.xz.asc) = d20fb152c5b16cfef1f59af588f7576eb45c903d9e15fd4ad0e15fd32bef7ffd951b99a062d2944234ecffcf29eb9266544e92d2f6584710cbb20ba38f8ac224
+SHA512 (Python-3.12.0a1.tar.xz) = fa69dddf36dfe89b869d4de71cb8e878ef1e8be2b96ddfe2d58286710dd09b64db67c130d0438e3cea6679f6e9cd6bb83633691c8b7d6f346b730668866a28f7
+SHA512 (Python-3.12.0a1.tar.xz.asc) = 4db7946d27505da9c9b358a3b0fc2f47bb79b10bbcdb8f3ce2f918d1b74665e41a51600de3b94d50b126b66c72f191f8532f4030af184698c32430c35ef8d821
diff --git a/tests/tests.yml b/tests/tests.yml
index 3f9165b..08bde3b 100644
--- a/tests/tests.yml
+++ b/tests/tests.yml
@@ -15,7 +15,7 @@
repositories:
- repo: "https://src.fedoraproject.org/tests/python.git"
dest: "python"
- pybasever: "3.11"
+ pybasever: "3.12"
tests:
- rpm_qa:
run: rpm -qa
1 year, 1 month
Architecture specific change in rpms/python3.12.git
by githook-noreply@fedoraproject.org
The package rpms/python3.12.git has added or updated architecture specific content in its
spec file (ExclusiveArch/ExcludeArch or %ifarch/%ifnarch) in commit(s):
https://src.fedoraproject.org/cgit/rpms/python3.12.git/commit/?id=6e2dac6....
Change:
+ExcludeArch: %{arm}
Thanks.
Full change:
============
commit fe95b37f25338c94bcfa2fb653e53b5262ec2812
Author: Miro Hrončok <miro(a)hroncok.cz>
Date: Fri Oct 28 00:12:41 2022 +0200
Make the package buildable without bootstrap
diff --git a/00390-gh-98776-fix-make-regen-test-levenshtein-for-out-of-tree-builds.patch b/00390-gh-98776-fix-make-regen-test-levenshtein-for-out-of-tree-builds.patch
new file mode 100644
index 0000000..e87b16d
--- /dev/null
+++ b/00390-gh-98776-fix-make-regen-test-levenshtein-for-out-of-tree-builds.patch
@@ -0,0 +1,34 @@
+From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Miro=20Hron=C4=8Dok?= <miro(a)hroncok.cz>
+Date: Thu, 27 Oct 2022 19:46:06 +0200
+Subject: [PATCH] 00390: gh-98776: Fix make regen-test-levenshtein for
+ out-of-tree builds
+
+Fixes https://github.com/python/cpython/issues/98776
+---
+ Makefile.pre.in | 2 +-
+ .../next/Build/2022-10-27-19-47-31.gh-issue-98776.lt_UOG.rst | 2 ++
+ 2 files changed, 3 insertions(+), 1 deletion(-)
+ create mode 100644 Misc/NEWS.d/next/Build/2022-10-27-19-47-31.gh-issue-98776.lt_UOG.rst
+
+diff --git a/Makefile.pre.in b/Makefile.pre.in
+index 7550414aae..691fc1c5f1 100644
+--- a/Makefile.pre.in
++++ b/Makefile.pre.in
+@@ -961,7 +961,7 @@ regen-test-frozenmain: $(BUILDPYTHON)
+ .PHONY: regen-test-levenshtein
+ regen-test-levenshtein:
+ # Regenerate Lib/test/levenshtein_examples.json
+- $(PYTHON_FOR_REGEN) $(srcdir)/Tools/build/generate_levenshtein_examples.py Lib/test/levenshtein_examples.json
++ $(PYTHON_FOR_REGEN) $(srcdir)/Tools/build/generate_levenshtein_examples.py $(srcdir)/Lib/test/levenshtein_examples.json
+
+ .PHONY: regen-re
+ regen-re: $(BUILDPYTHON)
+diff --git a/Misc/NEWS.d/next/Build/2022-10-27-19-47-31.gh-issue-98776.lt_UOG.rst b/Misc/NEWS.d/next/Build/2022-10-27-19-47-31.gh-issue-98776.lt_UOG.rst
+new file mode 100644
+index 0000000000..f8c0bb21b7
+--- /dev/null
++++ b/Misc/NEWS.d/next/Build/2022-10-27-19-47-31.gh-issue-98776.lt_UOG.rst
+@@ -0,0 +1,2 @@
++When building Python out-of-tree, don't crash during ``make
++regen-test-levenshtein``.
diff --git a/python3.12.spec b/python3.12.spec
index fe812a7..abb36aa 100644
--- a/python3.12.spec
+++ b/python3.12.spec
@@ -360,6 +360,12 @@ Patch371: 00371-revert-bpo-1596321-fix-threading-_shutdown-for-the-main-thread-g
# Fixes https://github.com/python/cpython/issues/98707
Patch389: 00389-don-t-let---with-system-libmpdec---with-system-expat-use-the-vendored-headers.patch
+# 00390 # 1b549f4b0f00f9b782f254eca0d4dee9cd764085
+# gh-98776: Fix make regen-test-levenshtein for out-of-tree builds
+#
+# Fixes https://github.com/python/cpython/issues/98776
+Patch390: 00390-gh-98776-fix-make-regen-test-levenshtein-for-out-of-tree-builds.patch
+
# (New patches go here ^^^)
#
# When adding new patches to "python" and "python3" in Fedora, EL, etc.,
@@ -828,6 +834,12 @@ DirHoldingGdbPy=%{_usr}/lib/debug/%{_libdir}
mkdir -p %{buildroot}$DirHoldingGdbPy
%endif # with gdb_hooks
+# When the actual %%{dynload_dir} exists (it does when python3.X is installed for regen-all)
+# %%{buildroot}%%{dynload_dir} is not created by make install and the extension modules are missing
+# Reported upstream as https://github.com/python/cpython/issues/98782
+# A workaround is to create the directory before running make install
+mkdir -p %{buildroot}%{dynload_dir}
+
# Multilib support for pyconfig.h
# 32- and 64-bit versions of pyconfig.h are different. For multilib support
# (making it possible to install 32- and 64-bit versions simultaneously),
commit 6e2dac669d0fe4486b91a9ae1b25ee6bef234f61
Author: Tomáš Hrnčiar <thrnciar(a)redhat.com>
Date: Thu Oct 27 17:03:45 2022 +0200
Exclude 32bit ARM from Python 3.12
diff --git a/python3.12.spec b/python3.12.spec
index ce51bbf..fe812a7 100644
--- a/python3.12.spec
+++ b/python3.12.spec
@@ -20,6 +20,17 @@ Version: %{general_version}%{?prerel:~%{prerel}}
Release: 1%{?dist}
License: Python-2.0.1
+# Getting this build in Koji on 32bit ARM is frustrating due to technical problems
+# https://pagure.io/releng/issue/11095
+# Fedora 37+ dropped that architecture
+# https://fedoraproject.org/wiki/Changes/RetireARMv7
+# Upstream does not support it anyway
+# https://peps.python.org/pep-0011/
+# Hence, we exclude it starting with Python 3.12
+# https://lists.fedoraproject.org/archives/list/python-devel@lists.fedorapr...
+# Once Fedora 36 goes EOL, this line can be dropped.
+ExcludeArch: %{arm}
+
# ==================================
# Conditionals controlling the build
commit 8003a0743841d0fa13246365e4a22172fb4cebcc
Author: Tomáš Hrnčiar <thrnciar(a)redhat.com>
Date: Thu Oct 27 16:50:15 2022 +0200
Initial Python 3.12 package forked from Python 3.11
diff --git a/00251-change-user-install-location.patch b/00251-change-user-install-location.patch
index 6c3caac..d4538dd 100644
--- a/00251-change-user-install-location.patch
+++ b/00251-change-user-install-location.patch
@@ -35,7 +35,7 @@ Co-authored-by: Lumír Balhar <frenzy.madness(a)gmail.com>
4 files changed, 77 insertions(+), 6 deletions(-)
diff --git a/Lib/distutils/command/install.py b/Lib/distutils/command/install.py
-index 01d5331a63..79f70f0de4 100644
+index a22a5d094d..804505d861 100644
--- a/Lib/distutils/command/install.py
+++ b/Lib/distutils/command/install.py
@@ -159,6 +159,8 @@ class install(Command):
@@ -160,10 +160,10 @@ index ebe3711827..55af57b335 100644
# On Windows we want to substitute 'lib' for schemes rather
# than the native value (without modifying vars, in case it
diff --git a/Lib/test/test_sysconfig.py b/Lib/test/test_sysconfig.py
-index 578ac1db50..dc58e7db18 100644
+index b6dbf3d52c..4f06a7673c 100644
--- a/Lib/test/test_sysconfig.py
+++ b/Lib/test/test_sysconfig.py
-@@ -111,8 +111,19 @@ def test_get_path(self):
+@@ -110,8 +110,19 @@ def test_get_path(self):
for scheme in _INSTALL_SCHEMES:
for name in _INSTALL_SCHEMES[scheme]:
expected = _INSTALL_SCHEMES[scheme][name].format(**config_vars)
@@ -184,7 +184,7 @@ index 578ac1db50..dc58e7db18 100644
os.path.normpath(expected),
)
-@@ -336,7 +347,7 @@ def test_get_config_h_filename(self):
+@@ -335,7 +346,7 @@ def test_get_config_h_filename(self):
self.assertTrue(os.path.isfile(config_h), config_h)
def test_get_scheme_names(self):
@@ -193,7 +193,7 @@ index 578ac1db50..dc58e7db18 100644
if HAS_USER_BASE:
wanted.extend(['nt_user', 'osx_framework_user', 'posix_user'])
self.assertEqual(get_scheme_names(), tuple(sorted(wanted)))
-@@ -348,6 +359,8 @@ def test_symlink(self): # Issue 7880
+@@ -347,6 +358,8 @@ def test_symlink(self): # Issue 7880
cmd = "-c", "import sysconfig; print(sysconfig.get_platform())"
self.assertEqual(py.call_real(*cmd), py.call_link(*cmd))
diff --git a/00328-pyc-timestamp-invalidation-mode.patch b/00328-pyc-timestamp-invalidation-mode.patch
index d04a267..e8f3ad6 100644
--- a/00328-pyc-timestamp-invalidation-mode.patch
+++ b/00328-pyc-timestamp-invalidation-mode.patch
@@ -33,7 +33,7 @@ index 388614e51b..db52725016 100644
else:
return PycInvalidationMode.TIMESTAMP
diff --git a/Lib/test/test_py_compile.py b/Lib/test/test_py_compile.py
-index a4a52b180d..e53f5d92aa 100644
+index 5e0a44ad96..ac14a6a54c 100644
--- a/Lib/test/test_py_compile.py
+++ b/Lib/test/test_py_compile.py
@@ -19,6 +19,7 @@ def without_source_date_epoch(fxn):
diff --git a/00371-revert-bpo-1596321-fix-threading-_shutdown-for-the-main-thread-gh-28549-gh-28589.patch b/00371-revert-bpo-1596321-fix-threading-_shutdown-for-the-main-thread-gh-28549-gh-28589.patch
index 1d39233..20a6a13 100644
--- a/00371-revert-bpo-1596321-fix-threading-_shutdown-for-the-main-thread-gh-28549-gh-28589.patch
+++ b/00371-revert-bpo-1596321-fix-threading-_shutdown-for-the-main-thread-gh-28549-gh-28589.patch
@@ -1,6 +1,6 @@
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Tom=C3=A1=C5=A1=20Hrn=C4=8Diar?= <thrnciar(a)redhat.com>
-Date: Tue, 7 Dec 2021 14:41:59 +0100
+Date: Tue, 25 Oct 2022 12:02:33 +0200
Subject: [PATCH] 00371: Revert "bpo-1596321: Fix threading._shutdown() for the
main thread (GH-28549) (GH-28589)"
@@ -16,12 +16,12 @@ https://github.com/GrahamDumpleton/mod_wsgi/issues/730
2 files changed, 8 insertions(+), 50 deletions(-)
diff --git a/Lib/test/test_threading.py b/Lib/test/test_threading.py
-index 9c6561c099..84714c03fe 100644
+index c664996233..0877b4f227 100644
--- a/Lib/test/test_threading.py
+++ b/Lib/test/test_threading.py
-@@ -956,39 +956,6 @@ def test_debug_deprecation(self):
- b'is deprecated and will be removed in Python 3.12')
- self.assertIn(msg, err)
+@@ -1002,39 +1002,6 @@ def noop(): pass
+ threading.Thread(target=noop).start()
+ # Thread.join() is not called
- def test_import_from_another_thread(self):
- # bpo-1596321: If the threading module is first import from a thread
@@ -60,10 +60,10 @@ index 9c6561c099..84714c03fe 100644
class ThreadJoinOnShutdown(BaseTestCase):
diff --git a/Lib/threading.py b/Lib/threading.py
-index 4f72938551..18c10e6489 100644
+index d030e12436..16ab0aceba 100644
--- a/Lib/threading.py
+++ b/Lib/threading.py
-@@ -1546,29 +1546,20 @@ def _shutdown():
+@@ -1557,29 +1557,20 @@ def _shutdown():
global _SHUTTING_DOWN
_SHUTTING_DOWN = True
diff --git a/00389-don-t-let---with-system-libmpdec---with-system-expat-use-the-vendored-headers.patch b/00389-don-t-let---with-system-libmpdec---with-system-expat-use-the-vendored-headers.patch
new file mode 100644
index 0000000..5f226f7
--- /dev/null
+++ b/00389-don-t-let---with-system-libmpdec---with-system-expat-use-the-vendored-headers.patch
@@ -0,0 +1,111 @@
+From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Miro=20Hron=C4=8Dok?= <miro(a)hroncok.cz>
+Date: Thu, 27 Oct 2022 15:24:03 +0200
+Subject: [PATCH] 00389: Don't let --with-system-libmpdec / --with-system-expat
+ use the vendored headers
+
+This was a regression in Python 3.12.0a2 that prevented Fedora doing
+this:
+
+ $ rm -r Modules/_decimal/libmpdec
+ $ rm -r Modules/expat
+
+Before building Python with --with-system-libmpdec --with-system-expat.
+
+The errors were:
+
+ make: *** No rule to make target
+'Modules/_decimal/libmpdec/basearith.h', needed by
+'Modules/_decimal/_decimal.o'. Stop.
+ make: *** No rule to make target 'Modules/expat/ascii.h', needed by
+'Modules/pyexpat.o'. Stop.
+
+Now the make-dependency on the headers only exists
+when --with-system-libmpdec / --with-system-expat is **not** used.
+
+Fixes https://github.com/python/cpython/issues/98707
+
+Co-authored-by: Erlend E. Aasland <erlend.aasland(a)protonmail.com>
+---
+ Makefile.pre.in | 6 +++---
+ .../Build/2022-10-26-12-37-52.gh-issue-98707.eVXGEx.rst | 4 ++++
+ configure | 4 ++--
+ configure.ac | 4 ++--
+ 4 files changed, 11 insertions(+), 7 deletions(-)
+ create mode 100644 Misc/NEWS.d/next/Build/2022-10-26-12-37-52.gh-issue-98707.eVXGEx.rst
+
+diff --git a/Makefile.pre.in b/Makefile.pre.in
+index 5b4bf15eb8..7550414aae 100644
+--- a/Makefile.pre.in
++++ b/Makefile.pre.in
+@@ -2581,13 +2581,13 @@ MODULE_DEPS=$(PYTHON_HEADERS) Modules/config.c $(EXPORTSYMS)
+
+ MODULE_CMATH_DEPS=$(srcdir)/Modules/_math.h
+ MODULE_MATH_DEPS=$(srcdir)/Modules/_math.h
+-MODULE_PYEXPAT_DEPS=$(LIBEXPAT_HEADERS) @LIBEXPAT_INTERNAL@
++MODULE_PYEXPAT_DEPS=@LIBEXPAT_INTERNAL@
+ MODULE_UNICODEDATA_DEPS=$(srcdir)/Modules/unicodedata_db.h $(srcdir)/Modules/unicodename_db.h
+ MODULE__BLAKE2_DEPS=$(srcdir)/Modules/_blake2/impl/blake2-config.h $(srcdir)/Modules/_blake2/impl/blake2-impl.h $(srcdir)/Modules/_blake2/impl/blake2.h $(srcdir)/Modules/_blake2/impl/blake2b-load-sse2.h $(srcdir)/Modules/_blake2/impl/blake2b-load-sse41.h $(srcdir)/Modules/_blake2/impl/blake2b-ref.c $(srcdir)/Modules/_blake2/impl/blake2b-round.h $(srcdir)/Modules/_blake2/impl/blake2b.c $(srcdir)/Modules/_blake2/impl/blake2s-load-sse2.h $(srcdir)/Modules/_blake2/impl/blake2s-load-sse41.h $(srcdir)/Modules/_blake2/impl/blake2s-load-xop.h $(srcdir)/Modules/_blake2/impl/blake2s-ref.c $(srcdir)/Modules/_blake2/impl/blake2s-round.h $(srcdir)/Modules/_blake2/impl/blake2s.c $(srcdir)/Modules/_blake2/blake2module.h $(srcdir)/Modules/hashlib.h
+ MODULE__CTYPES_DEPS=$(srcdir)/Modules/_ctypes/ctypes.h $(srcdir)/Modules/_ctypes/darwin/dlfcn.h
+ MODULE__CTYPES_MALLOC_CLOSURE=@MODULE__CTYPES_MALLOC_CLOSURE@
+-MODULE__DECIMAL_DEPS=$(srcdir)/Modules/_decimal/docstrings.h $(LIBMPDEC_HEADERS) @LIBMPDEC_INTERNAL@
+-MODULE__ELEMENTTREE_DEPS=$(srcdir)/Modules/pyexpat.c $(LIBEXPAT_HEADERS) @LIBEXPAT_INTERNAL@
++MODULE__DECIMAL_DEPS=$(srcdir)/Modules/_decimal/docstrings.h @LIBMPDEC_INTERNAL@
++MODULE__ELEMENTTREE_DEPS=$(srcdir)/Modules/pyexpat.c @LIBEXPAT_INTERNAL@
+ MODULE__HASHLIB_DEPS=$(srcdir)/Modules/hashlib.h
+ MODULE__IO_DEPS=$(srcdir)/Modules/_io/_iomodule.h
+ MODULE__MD5_DEPS=$(srcdir)/Modules/hashlib.h
+diff --git a/Misc/NEWS.d/next/Build/2022-10-26-12-37-52.gh-issue-98707.eVXGEx.rst b/Misc/NEWS.d/next/Build/2022-10-26-12-37-52.gh-issue-98707.eVXGEx.rst
+new file mode 100644
+index 0000000000..69afa9dea3
+--- /dev/null
++++ b/Misc/NEWS.d/next/Build/2022-10-26-12-37-52.gh-issue-98707.eVXGEx.rst
+@@ -0,0 +1,4 @@
++Don't use vendored ``libmpdec`` headers if :option:`--with-system-libmpdec`
++is passed to :program:`configure`.
++Don't use vendored ``libexpat`` headers if :option:`--with-system-expat`
++is passed to :program:`!configure`.
+diff --git a/configure b/configure
+index 15d9796374..940db49efe 100755
+--- a/configure
++++ b/configure
+@@ -12619,7 +12619,7 @@ else
+
+ LIBEXPAT_CFLAGS="-I\$(srcdir)/Modules/expat"
+ LIBEXPAT_LDFLAGS="-lm \$(LIBEXPAT_A)"
+- LIBEXPAT_INTERNAL="\$(LIBEXPAT_A)"
++ LIBEXPAT_INTERNAL="\$(LIBEXPAT_HEADERS) \$(LIBEXPAT_A)"
+
+ fi
+
+@@ -13128,7 +13128,7 @@ else
+
+ LIBMPDEC_CFLAGS="-I\$(srcdir)/Modules/_decimal/libmpdec"
+ LIBMPDEC_LDFLAGS="-lm \$(LIBMPDEC_A)"
+- LIBMPDEC_INTERNAL="\$(LIBMPDEC_A)"
++ LIBMPDEC_INTERNAL="\$(LIBMPDEC_HEADERS) \$(LIBMPDEC_A)"
+
+ if test "x$with_pydebug" = xyes; then :
+
+diff --git a/configure.ac b/configure.ac
+index c7945aaf85..b4d188399d 100644
+--- a/configure.ac
++++ b/configure.ac
+@@ -3710,7 +3710,7 @@ AS_VAR_IF([with_system_expat], [yes], [
+ ], [
+ LIBEXPAT_CFLAGS="-I\$(srcdir)/Modules/expat"
+ LIBEXPAT_LDFLAGS="-lm \$(LIBEXPAT_A)"
+- LIBEXPAT_INTERNAL="\$(LIBEXPAT_A)"
++ LIBEXPAT_INTERNAL="\$(LIBEXPAT_HEADERS) \$(LIBEXPAT_A)"
+ ])
+
+ AC_SUBST([LIBEXPAT_CFLAGS])
+@@ -3819,7 +3819,7 @@ AS_VAR_IF([with_system_libmpdec], [yes], [
+ ], [
+ LIBMPDEC_CFLAGS="-I\$(srcdir)/Modules/_decimal/libmpdec"
+ LIBMPDEC_LDFLAGS="-lm \$(LIBMPDEC_A)"
+- LIBMPDEC_INTERNAL="\$(LIBMPDEC_A)"
++ LIBMPDEC_INTERNAL="\$(LIBMPDEC_HEADERS) \$(LIBMPDEC_A)"
+
+ dnl Disable forced inlining in debug builds, see GH-94847
+ AS_VAR_IF([with_pydebug], [yes], [
diff --git a/Yhg1s.gpg b/Yhg1s.gpg
new file mode 100644
index 0000000..e0000e5
--- /dev/null
+++ b/Yhg1s.gpg
@@ -0,0 +1,136 @@
+-----BEGIN PGP PUBLIC KEY BLOCK-----
+
+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
+kwSREBGcgZ8Ac7kqPbOojtmBkHFWFUg5Rx+fVsulcQkERs1j22tzTvPzsljGmrrY
+7o6P0K4fzVfeQx43sKKltQrNNZwBtleHD+jQPLThVf09Rhjtq/+cb2wwiAqpHskf
+dY1njeCh21Yl58IOMHQ6x0Mc6rF3A5wqrLVJ5GYVHl33unZLKcAWDmtV3MPvnvdF
+WvLDPqkykozU08d1ieyZXFWlwViYaVzh7cjgIM8keCbPk0zFtGZkVUS2um332Xiv
+pX02J8KqWhNsiioO/SAFOhS6+zR+mZghnr5eqD9SHmCKTJ1JWjG2wx2hibaaszQb
+qypBW1mwoGMDj4MG91iKSnwMgjp3P8xQIyHy/XTAJ1DD9F//2MtQ2ZK5MqiWTYLn
+iUzirq8M1E8rLHh8Met5xIOq5iIDcMn0HTBCwrWWPOyqTF2lWK3G6LOjTltQ01fJ
+JaICpTe1Eirt9v+kr1iPLH1+zIeWZ1O469I/nxRp/WW6Oavzb9WRg5gDBKZ2v+rJ
+jZLcaEBFtCRUaG9tYXMgV291dGVycyA8dHdvdXRlcnNAZ29vZ2xlLmNvbT6JAlQE
+EwEKAD4CGwMFCwkIBwMFFQoJCAsFFgIDAQACHgECF4AWIQRxaWBfYsdRNW0FSiao
+IeaA5fpjBQUCYOBlAQUJFUZECwAKCRCoIeaA5fpjBTvxEACfyEt5rN5QGmVgahD/
+83l7lQpZUzLSq5MnIfRjCz50seh+oWsOuecayHZ79IDVSkF2L2kE1rumcB7UKPez
+0kHVrTdh3mQIsfCzQZEMsWTDYotlZbrPPvT3lKGL+O7fU321q9GVotJAssYcQFIK
+9F2p3jhN2coOzguikVlSc4nswnq2KRIJ4BpSJ3fk1rWLr8oJxN2pSpskYtHdUyUx
+fZ+fOrMHLbW94JWsLYDad4wpr8etBneVAaUPfphhbIwfhRXlHuTreDtwr3LJYKp1
+VjUjzGVVT2CXkS9LbJ7aM2BYa/1MJyHxkglu8O9LIDGH2arlbtmBKMbCXPSX/42H
+sGpUgQYRwG4f+2CfPj4fNx5GK8LO/EJjaw2Qh542U0356RRVZquN6E6SS6Sndlf9
+sO4cKU/ptT8IsfWKKaLwvr0l71hgLRqqe3rSpTV54cKpJfYIG+Qf4Do69etJLxjY
+UsyCqzuFocxZa0DGkqDQ+f1cD1bdg7Twso041NZG6y9+E7kCf3jtKkiYAHBY902q
+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
+=t995
+-----END PGP PUBLIC KEY BLOCK-----
\ No newline at end of file
diff --git a/check-pyc-timestamps.py b/check-pyc-timestamps.py
index 91af4fd..f91984e 100644
--- a/check-pyc-timestamps.py
+++ b/check-pyc-timestamps.py
@@ -19,11 +19,11 @@ not_compiled = [
'*/test/bad_coding.py',
'*/test/bad_coding2.py',
'*/test/badsyntax_*.py',
- '*/lib2to3/tests/data/bom.py',
- '*/lib2to3/tests/data/crlf.py',
- '*/lib2to3/tests/data/different_encoding.py',
- '*/lib2to3/tests/data/false_encoding.py',
- '*/lib2to3/tests/data/py2_test_grammar.py',
+ '*/test_lib2to3/data/bom.py',
+ '*/test_lib2to3/data/crlf.py',
+ '*/test_lib2to3/data/different_encoding.py',
+ '*/test_lib2to3/data/false_encoding.py',
+ '*/test_lib2to3/data/py2_test_grammar.py',
'*.debug-gdb.py',
]
diff --git a/pgp_keys.asc b/pgp_keys.asc
deleted file mode 100644
index 11dccb8..0000000
--- a/pgp_keys.asc
+++ /dev/null
@@ -1,109 +0,0 @@
------BEGIN PGP PUBLIC KEY BLOCK-----
-
-mQINBFq+ToQBEADRYvIVtbK6owynD3j3nxwpW2KEk/p+aDvtXmc2SR2dBcZ8sFW2
-R5vEsG8d3/D3wgv5pcL3KfNNXQYUnXVbobrFUUWQYc79qIsE3MgiPf5NVOtwKPUR
-i5g9YJgKvpBxkQfqp3LYGm9ZBtwo3DVLA3yn7KsazCmAgTNFJYw7ku1XxgmIzY6K
-5J30DfbJiqDqj4f9GslCCCCH3qiPnuLG/HUyVLHMpbWlaiy9NI0GcaLxjJewHj9w
-W2D2lydkxe5JGo7egUkV3ILcuLVSVKA35SKY27dYqfuyqp9tAzaRbjDYjsYdHA6G
-BqrNrKBn/GwlFDPrVdcvN3ZSY2wMLTxWE3Axc/FweuHxFnou/80FwX7F3JD+oEQ6
-rofmcxOBCC7J98I7HZAhP9jBn88XIS2hztbLq8d6rZJZRtcz0k61VR0ddO+TrFmf
-9rMYCPgCckRtVxeFIVIabrN1IzKynLFeo040h8hSGswd6YKDOVwjJY6Oa6EmVefZ
-a8QSt4+M65RSzH6SEPY008F3nJUAK6MEkzTak+tFltZNrVWu8p2xd1j9nmxAwEhZ
-/lgbxLqzYgaUWmfyHeZ8yVA0MhHzdiAL8nVUEdG3KecIq0RWCJLGLWWIjd6KAJl1
-yAmhRYKK/sjPDsL3elHsFACfZbyx3o5GGQNlas1FYoPLWbaNGaJtgFTF2QARAQAB
-tCtQYWJsbyBHYWxpbmRvIFNhbGdhZG8gPHBhYmxvZ3NhbEBnbWFpbC5jb20+iQJO
-BBMBCgA4FiEEoDXIwZIZuoIezqhrZOYo+NaEaW0FAlq+ToQCGwMFCwkIBwMFFQoJ
-CAsFFgIDAQACHgECF4AACgkQZOYo+NaEaW2bmA/+PXIap2udLoUVOHxnsIBdqYwp
-sv1Aj5lfIJmNhmxPbHShwp1Jg+w4urxe+2Dj5ofKVlIo1i83bQkvnKJMDXDVuc/K
-P6zqhBJ3rT4Q3qx2mzX8bIfQoJ2JHuH4lkP+I7doDcHHRyeNASyk72VdQmU4twNw
-Ibn8nSNV6ThKHdoPYzVnO2rZUFcGIqH5HNsvR+B7cc1MBCHsgURYwSVhSePIFGlZ
-iasdBD6QQkDSe4QWi7AcJFWFElw4kbOKJWxAWsrEk+tMXJVGRjnmL289EmPCx/vx
-BqKy7Mse0yWCSRR3vB+O6TB1S5SgEyEgqlYsfGNv1qf/rfRD4KkyCbNU3LhY1Aim
-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
-=6Zb4
------END PGP PUBLIC KEY BLOCK-----
diff --git a/python3.11.spec b/python3.12.spec
similarity index 92%
rename from python3.11.spec
rename to python3.12.spec
index 1d5c46c..ce51bbf 100644
--- a/python3.11.spec
+++ b/python3.12.spec
@@ -2,10 +2,10 @@
# Top-level metadata
# ==================
-%global pybasever 3.11
+%global pybasever 3.12
# pybasever without the dot:
-%global pyshortver 311
+%global pyshortver 312
Name: python%{pybasever}
Summary: Version %{pybasever} of the Python interpreter
@@ -14,7 +14,7 @@ URL: https://www.python.org/
# WARNING When rebasing to a new Python version,
# remember to update the python3-docs package as well
%global general_version %{pybasever}.0
-#global prerel ...
+%global prerel a1
%global upstream_version %{general_version}%{?prerel}
Version: %{general_version}%{?prerel:~%{prerel}}
Release: 1%{?dist}
@@ -59,7 +59,7 @@ License: Python-2.0.1
# IMPORTANT: When bootstrapping, it's very likely the wheels for pip and
# setuptools are not available. Turn off the rpmwheels bcond until
# the two packages are built with wheels to get around the issue.
-%bcond_with bootstrap
+%bcond_without bootstrap
# Whether to use RPM build wheels from the python-{pip,setuptools}-wheel package
# Uses upstream bundled prebuilt wheels otherwise
@@ -212,6 +212,7 @@ BuildRequires: ncurses-devel
BuildRequires: openssl-devel
BuildRequires: pkgconfig
+BuildRequires: python-rpm-macros
BuildRequires: readline-devel
BuildRequires: redhat-rpm-config >= 127
BuildRequires: sqlite-devel
@@ -256,8 +257,8 @@ BuildRequires: python3-rpm-generators
Source0: %{url}ftp/python/%{general_version}/Python-%{upstream_version}.tar.xz
Source1: %{url}ftp/python/%{general_version}/Python-%{upstream_version}.tar.xz.asc
-# The release manager for Python 3.11 is pablogsal
-Source2: https://keybase.io/pablogsal/pgp_keys.asc
+# The release manager for Python 3.12 is Thomas Wouters
+Source2: https://github.com/Yhg1s.gpg
# A simple script to check timestamps of bytecode files
# Run in check section with Python that is currently being built
@@ -312,7 +313,7 @@ Patch251: 00251-change-user-install-location.patch
# Ideally, we should talk to upstream and explain why we don't want this
Patch328: 00328-pyc-timestamp-invalidation-mode.patch
-# 00371 # c1754d9c2750f89cb702e1b63a99201f5f7cff00
+# 00371 # 1fc313929648e9b543542de09f59c55e175ac45a
# Revert "bpo-1596321: Fix threading._shutdown() for the main thread (GH-28549) (GH-28589)"
#
# This reverts commit 38c67738c64304928c68d5c2bd78bbb01d979b94. It
@@ -323,6 +324,31 @@ Patch328: 00328-pyc-timestamp-invalidation-mode.patch
# https://github.com/GrahamDumpleton/mod_wsgi/issues/730
Patch371: 00371-revert-bpo-1596321-fix-threading-_shutdown-for-the-main-thread-gh-28549-gh-28589.patch
+# 00389 # eec8cefdbbc164dc19d7112d1c65dbf6406ecca3
+# Don't let --with-system-libmpdec / --with-system-expat use the vendored headers
+#
+# This was a regression in Python 3.12.0a2 that prevented Fedora doing
+# this:
+#
+# $ rm -r Modules/_decimal/libmpdec
+# $ rm -r Modules/expat
+#
+# Before building Python with --with-system-libmpdec --with-system-expat.
+#
+# The errors were:
+#
+# make: *** No rule to make target
+# 'Modules/_decimal/libmpdec/basearith.h', needed by
+# 'Modules/_decimal/_decimal.o'. Stop.
+# make: *** No rule to make target 'Modules/expat/ascii.h', needed by
+# 'Modules/pyexpat.o'. Stop.
+#
+# Now the make-dependency on the headers only exists
+# when --with-system-libmpdec / --with-system-expat is **not** used.
+#
+# Fixes https://github.com/python/cpython/issues/98707
+Patch389: 00389-don-t-let---with-system-libmpdec---with-system-expat-use-the-vendored-headers.patch
+
# (New patches go here ^^^)
#
# When adding new patches to "python" and "python3" in Fedora, EL, etc.,
@@ -902,10 +928,6 @@ sed -i -e "s/'pyconfig.h'/'%{_pyconfig_h}'/" \
%{buildroot}%{pylibdir}/distutils/sysconfig.py \
%{buildroot}%{pylibdir}/sysconfig.py
-# Install pathfix.py to bindir
-# See https://github.com/fedora-python/python-rpm-porting/issues/24
-cp -p Tools/scripts/pathfix.py %{buildroot}%{_bindir}/pathfix%{pybasever}.py
-
# Install i18n tools to bindir
# They are also in python2, so we version them
# https://bugzilla.redhat.com/show_bug.cgi?id=1571474
@@ -918,7 +940,7 @@ done
# This currently only covers files matching ^[a-zA-Z0-9_]+\.py$,
# so handle files named using other naming scheme separately.
LD_LIBRARY_PATH=./build/optimized ./build/optimized/python \
- Tools/scripts/pathfix.py \
+ %{_rpmconfigdir}/redhat/pathfix.py \
-i "%{_bindir}/python%{pybasever}" -pn \
%{buildroot} \
%{buildroot}%{_bindir}/*%{pybasever}.py \
@@ -958,7 +980,7 @@ LD_LIBRARY_PATH="%{buildroot}%{dynload_dir}/:%{buildroot}%{_libdir}" \
# Turn this BRP off, it is done by compileall2 --hardlink-dupes above
%global __brp_python_hardlink %{nil}
-# Since we have pathfix.py in bindir, this is created, but we don't want it
+# Since we have *.py files in bindir, this is created, but we don't want it
rm -rf %{buildroot}%{_bindir}/__pycache__
# Fixup permissions for shared libraries from non-standard 555 to standard 755:
@@ -997,7 +1019,6 @@ ln -s ./idle3 %{buildroot}%{_bindir}/idle
ln -s ./python3-config %{buildroot}%{_bindir}/python-config
ln -s ./python3.1 %{buildroot}%{_mandir}/man1/python.1
ln -s ./python3.pc %{buildroot}%{_libdir}/pkgconfig/python.pc
-ln -s ./pathfix%{pybasever}.py %{buildroot}%{_bindir}/pathfix.py
%if %{with debug_build}
ln -s ./python3-debug %{buildroot}%{_bindir}/python-debug
%endif
@@ -1128,7 +1149,6 @@ CheckPython optimized
%license %{pylibdir}/LICENSE.txt
%{pylibdir}/lib2to3
-%exclude %{pylibdir}/lib2to3/tests
%dir %{pylibdir}/unittest/
%dir %{pylibdir}/unittest/__pycache__/
@@ -1244,6 +1264,7 @@ CheckPython optimized
%{dynload_dir}/xxlimited.%{SOABI_optimized}.so
%{dynload_dir}/xxlimited_35.%{SOABI_optimized}.so
%{dynload_dir}/_xxsubinterpreters.%{SOABI_optimized}.so
+%{dynload_dir}/xxsubtype.%{SOABI_optimized}.so
%{dynload_dir}/zlib.%{SOABI_optimized}.so
%{dynload_dir}/_zoneinfo.%{SOABI_optimized}.so
@@ -1380,7 +1401,6 @@ CheckPython optimized
%{_libdir}/pkgconfig/python3.pc
%{_libdir}/pkgconfig/python.pc
%{_libdir}/pkgconfig/python3-embed.pc
-%{_bindir}/pathfix.py
%{_bindir}/pygettext3.py
%{_bindir}/pygettext.py
%{_bindir}/msgfmt3.py
@@ -1388,7 +1408,6 @@ CheckPython optimized
%endif
%{_bindir}/2to3-%{pybasever}
-%{_bindir}/pathfix%{pybasever}.py
%{_bindir}/pygettext%{pybasever}.py
%{_bindir}/msgfmt%{pybasever}.py
@@ -1419,7 +1438,6 @@ CheckPython optimized
%files -n %{pkgname}-tkinter
%{pylibdir}/tkinter
-%exclude %{pylibdir}/tkinter/test
%{dynload_dir}/_tkinter.%{SOABI_optimized}.so
%{pylibdir}/turtle.py
%{pylibdir}/__pycache__/turtle*%{bytecode_suffixes}
@@ -1431,7 +1449,6 @@ CheckPython optimized
%files -n %{pkgname}-test
-%{pylibdir}/ctypes/test
%{pylibdir}/distutils/tests
%{pylibdir}/test
%{dynload_dir}/_ctypes_test.%{SOABI_optimized}.so
@@ -1441,9 +1458,6 @@ CheckPython optimized
%{dynload_dir}/_testinternalcapi.%{SOABI_optimized}.so
%{dynload_dir}/_testmultiphase.%{SOABI_optimized}.so
%{dynload_dir}/_xxtestfuzz.%{SOABI_optimized}.so
-%{pylibdir}/lib2to3/tests
-%{pylibdir}/tkinter/test
-%{pylibdir}/unittest/test
# We don't bother splitting the debug build out into further subpackages:
# if you need it, you're probably a developer.
@@ -1534,6 +1548,7 @@ CheckPython optimized
%{dynload_dir}/xxlimited.%{SOABI_debug}.so
%{dynload_dir}/xxlimited_35.%{SOABI_debug}.so
%{dynload_dir}/_xxsubinterpreters.%{SOABI_debug}.so
+%{dynload_dir}/xxsubtype.%{SOABI_debug}.so
%{dynload_dir}/_xxtestfuzz.%{SOABI_debug}.so
%{dynload_dir}/zlib.%{SOABI_debug}.so
%{dynload_dir}/_zoneinfo.%{SOABI_debug}.so
@@ -1595,106 +1610,5 @@ CheckPython optimized
# ======================================================
%changelog
-* Mon Oct 24 2022 Miro Hrončok <mhroncok(a)redhat.com> - 3.11.0-1
-- Update to 3.11.0
-
-* Tue Sep 13 2022 Miro Hrončok <mhroncok(a)redhat.com> - 3.11.0~rc2-1
-- Update to 3.11.0rc2
-
-* Tue Aug 09 2022 Miro Hrončok <mhroncok(a)redhat.com> - 3.11.0~rc1-2
-- Don't use custom installation schemes
-- Fixes rhbz#2026979
-- Fixes rhbz#2097183
-
-* Mon Aug 08 2022 Tomáš Hrnčiar <thrnciar(a)redhat.com> - 3.11.0~rc1-1
-- Update to 3.11.0rc1
-
-* Tue Jul 26 2022 Tomáš Hrnčiar <thrnciar(a)redhat.com> - 3.11.0~b5-1
-- Update to 3.11.0b5
-
-* Fri Jul 22 2022 Fedora Release Engineering <releng(a)fedoraproject.org> - 3.11.0~b4-2
-- Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild
-
-* Mon Jul 11 2022 Miro Hrončok <mhroncok(a)redhat.com> - 3.11.0~b4-1
-- Update to 3.11.0b4
-
-* Fri Jul 08 2022 Miro Hrončok <mhroncok(a)redhat.com> - 3.11.0~b3-8
-- Finish bootstrap of the re module speed regression fix
-
-* Fri Jul 08 2022 Miro Hrončok <mhroncok(a)redhat.com> - 3.11.0~b3-7
-- Fix speed regression in the re module which prevented chromium from building
-
-* Fri Jun 24 2022 Tomáš Hrnčiar <thrnciar(a)redhat.com> - 3.11.0~b3-6
-- Clear and reset sqlite3 statements properly in cursor iternext (fixes rhbz#2099049)
-- Revert a problematic fix of threading._shutdown() again (fixes rhbz#2100282)
-
-* Tue Jun 21 2022 Miro Hrončok <mhroncok(a)redhat.com> - 3.11.0~b3-5
-- Build Python with the optimized Blake2 library libb2
-
-* Tue Jun 21 2022 Miro Hrončok <mhroncok(a)redhat.com> - 3.11.0~b3-4
-- Make C++ version of _Py_CAST work with 0/NULL
-
-* Mon Jun 13 2022 Tomáš Hrnčiar <thrnciar(a)redhat.com> - 3.11.0~b3-3
-- Finish bootstrapping for Python 3.11 mass rebuild
-
-* Mon Jun 13 2022 Tomáš Hrnčiar <thrnciar(a)redhat.com> - 3.11.0~b3-2
-- Initial bootstrap for Python 3.11 mass rebuild
-
-* Wed Jun 01 2022 Miro Hrončok <mhroncok(a)redhat.com> - 3.11.0~b3-1
-- Update to 3.11.0b3
-
-* Tue May 31 2022 Miro Hrončok <mhroncok(a)redhat.com> - 3.11.0~b2-1
-- Update to 3.11.0b2
-
-* Tue May 10 2022 Tomáš Hrnčiar <thrnciar(a)redhat.com> - 3.11.0~b1-2
-- Finish bootstrapping 3.11.0b1
-
-* Sun May 08 2022 Tomáš Hrnčiar <thrnciar(a)redhat.com> - 3.11.0~b1-1
-- Update to 3.11.0b1
-
-* Wed Apr 20 2022 Tomas Orsava <torsava(a)redhat.com> - 3.11.0~a7-3
-- Build Python 3.11 with subpackages
-- `python(abi)` is still not Provided for alternative Python versions
-- Drop old no-longer-needed Obsoletes of python311 and python3-tools
-- Move _sysconfigdata_d_linux*.py to the debug subpackage
-- Resolves: rhbz#2063227
-
-* Thu Apr 07 2022 Tomáš Hrnčiar <thrnciar(a)redhat.com> - 3.11.0~a7-2
-- Finish bootstrapping 3.11.0a7
-
-* Wed Apr 06 2022 Tomáš Hrnčiar <thrnciar(a)redhat.com> - 3.11.0~a7-1
-- Update to 3.11.0a7
-
-* Tue Mar 08 2022 Miro Hrončok <mhroncok(a)redhat.com> - 3.11.0~a6-2
-- Finish bootstrapping 3.11.0a6
-
-* Mon Mar 07 2022 Miro Hrončok <mhroncok(a)redhat.com> - 3.11.0~a6-1
-- Update to 3.11.0a6
-
-* Fri Feb 04 2022 Tomáš Hrnčiar <thrnciar(a)redhat.com> - 3.11.0~a5-1
-- Update to 3.11.0a5
-
-* Fri Jan 21 2022 Fedora Release Engineering <releng(a)fedoraproject.org> - 3.11.0~a4-2
-- Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild
-
-* Mon Jan 17 2022 Tomáš Hrnčiar <thrnciar(a)redhat.com> - 3.11.0~a4-1
-- Update to 3.11.0a4
-
-* Sat Jan 08 2022 Miro Hrončok <mhroncok(a)redhat.com> - 3.11.0~a3-3
-- Rebuilt for https://fedoraproject.org/wiki/Changes/LIBFFI34
-
-* Mon Dec 13 2021 Miro Hrončok <mhroncok(a)redhat.com> - 3.11.0~a3-2
-- Supplement tox
-
-* Fri Dec 10 2021 Tomáš Hrnčiar <thrnciar(a)redhat.com> - 3.11.0~a3-1
-- Update to 3.11.0a3
-
-* Mon Nov 15 2021 Tomáš Hrnčiar <thrnciar(a)redhat.com> - 3.11.0~a2-1
-- Update to 3.11.0a2
-- Patch 251 was updated to include specific install scheme for virtualenv
-
-* Fri Nov 12 2021 Björn Esser <besser82(a)fedoraproject.org> - 3.11.0~a1-2
-- Rebuild(libnsl2)
-
-* Wed Oct 06 2021 Tomáš Hrnčiar <thrnciar(a)redhat.com> - 3.11.0~a1-1
-- Initial Python 3.11 package forked from Python 3.10
+* Wed Oct 26 2022 Tomáš Hrnčiar <thrnciar(a)redhat.com> - 3.12.0~a1-1
+- Initial Python 3.12 package forked from Python 3.11
diff --git a/sources b/sources
index 5763e8f..350e85d 100644
--- a/sources
+++ b/sources
@@ -1,2 +1,2 @@
-SHA512 (Python-3.11.0.tar.xz) = 314eef88ae0d68760f34d7a32f238fd2ecb27c50963baa7357c42ad8159026ec50229a0b31d83c39710a472904a06422afc082f9658a90a1dc83ccb74c08039d
-SHA512 (Python-3.11.0.tar.xz.asc) = d20fb152c5b16cfef1f59af588f7576eb45c903d9e15fd4ad0e15fd32bef7ffd951b99a062d2944234ecffcf29eb9266544e92d2f6584710cbb20ba38f8ac224
+SHA512 (Python-3.12.0a1.tar.xz) = fa69dddf36dfe89b869d4de71cb8e878ef1e8be2b96ddfe2d58286710dd09b64db67c130d0438e3cea6679f6e9cd6bb83633691c8b7d6f346b730668866a28f7
+SHA512 (Python-3.12.0a1.tar.xz.asc) = 4db7946d27505da9c9b358a3b0fc2f47bb79b10bbcdb8f3ce2f918d1b74665e41a51600de3b94d50b126b66c72f191f8532f4030af184698c32430c35ef8d821
diff --git a/tests/tests.yml b/tests/tests.yml
index 3f9165b..08bde3b 100644
--- a/tests/tests.yml
+++ b/tests/tests.yml
@@ -15,7 +15,7 @@
repositories:
- repo: "https://src.fedoraproject.org/tests/python.git"
dest: "python"
- pybasever: "3.11"
+ pybasever: "3.12"
tests:
- rpm_qa:
run: rpm -qa
1 year, 1 month
Architecture specific change in rpms/rust-pretty-bytes.git
by githook-noreply@fedoraproject.org
The package rpms/rust-pretty-bytes.git has added or updated architecture specific content in its
spec file (ExclusiveArch/ExcludeArch or %ifarch/%ifnarch) in commit(s):
https://src.fedoraproject.org/cgit/rpms/rust-pretty-bytes.git/commit/?id=....
Change:
+ExclusiveArch: %{rust_arches}
Thanks.
Full change:
============
commit ed2aec5e1bd9bb6d6953343d15df2fe3626a185a
Author: Michel Alexandre Salim <salimma(a)fedoraproject.org>
Date: Thu Oct 27 16:03:50 2022 -0500
Initial Fedora package
Signed-off-by: Michel Alexandre Salim <salimma(a)fedoraproject.org>
diff --git a/.gitignore b/.gitignore
new file mode 100644
index 0000000..5b4d6be
--- /dev/null
+++ b/.gitignore
@@ -0,0 +1 @@
+/pretty-bytes-0.2.0.crate
diff --git a/pretty-bytes-add-license.diff b/pretty-bytes-add-license.diff
new file mode 100644
index 0000000..152d126
--- /dev/null
+++ b/pretty-bytes-add-license.diff
@@ -0,0 +1,36 @@
+From 8c0070d7f2e64d9710b1a83751c230d56ae37441 Mon Sep 17 00:00:00 2001
+From: Michel Alexandre Salim <michel(a)michel-slm.name>
+Date: Thu, 27 Oct 2022 14:30:51 -0500
+Subject: [PATCH] Add MIT license text
+
+This is required for packaging in distributions
+
+Signed-off-by: Michel Alexandre Salim <michel(a)michel-slm.name>
+---
+ LICENSE | 17 +++++++++++++++++
+ 1 file changed, 17 insertions(+)
+ create mode 100644 LICENSE
+
+diff --git a/LICENSE b/LICENSE
+new file mode 100644
+index 0000000..d5075a3
+--- /dev/null
++++ b/LICENSE
+@@ -0,0 +1,17 @@
++Permission is hereby granted, without written agreement and without
++license or royalty fees, to use, copy, modify, and distribute this
++software and its documentation for any purpose, provided that the
++above copyright notice and the following two paragraphs appear in
++all copies of this software.
++
++IN NO EVENT SHALL THE COPYRIGHT HOLDER BE LIABLE TO ANY PARTY FOR
++DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES
++ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, EVEN
++IF THE COPYRIGHT HOLDER HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH
++DAMAGE.
++
++THE COPYRIGHT HOLDER SPECIFICALLY DISCLAIMS ANY WARRANTIES, INCLUDING,
++BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND
++FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS
++ON AN "AS IS" BASIS, AND THE COPYRIGHT HOLDER HAS NO OBLIGATION TO
++PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS.
diff --git a/rust-pretty-bytes.spec b/rust-pretty-bytes.spec
new file mode 100644
index 0000000..5541428
--- /dev/null
+++ b/rust-pretty-bytes.spec
@@ -0,0 +1,85 @@
+# Generated by rust2rpm 22
+%bcond_without check
+
+%global crate pretty-bytes
+
+Name: rust-pretty-bytes
+Version: 0.2.0
+Release: %autorelease
+Summary: Convert bytes to a human readable string
+
+License: MIT
+URL: https://crates.io/crates/pretty-bytes
+Source: %{crates_source}
+Patch: https://github.com/banyan/rust-pretty-bytes/pull/9.patch#/%{crate}-add-li...
+
+ExclusiveArch: %{rust_arches}
+
+BuildRequires: rust-packaging >= 21
+
+%global _description %{expand:
+Convert bytes to a human readable string.}
+
+%description %{_description}
+
+%package -n %{crate}
+Summary: %{summary}
+
+%description -n %{crate} %{_description}
+
+%files -n %{crate}
+# MIT OR Apache-2.0: getopts v0.2.21
+# MIT OR Apache-2.0: libc v0.2.134
+# MIT OR Apache-2.0: unicode-width v0.1.10
+# MIT: pretty-bytes v0.2.0
+# effective license is unchanged
+%license LICENSE
+%doc README.md
+%{_bindir}/pretty-bytes
+
+%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 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
+
+%prep
+%autosetup -n %{crate}-%{version_no_tilde} -p1
+%cargo_prep
+
+%generate_buildrequires
+%cargo_generate_buildrequires
+
+%build
+%cargo_build
+
+%install
+%cargo_install
+
+%if %{with check}
+%check
+%cargo_test
+%endif
+
+%changelog
+%autochangelog
diff --git a/rust-pretty-bytes.unmodified.spec b/rust-pretty-bytes.unmodified.spec
new file mode 100644
index 0000000..0b397b9
--- /dev/null
+++ b/rust-pretty-bytes.unmodified.spec
@@ -0,0 +1,79 @@
+# Generated by rust2rpm 22
+%bcond_without check
+
+%global crate pretty-bytes
+
+Name: rust-pretty-bytes
+Version: 0.2.0
+Release: %autorelease
+Summary: Convert bytes to a human readable string
+
+License: MIT
+URL: https://crates.io/crates/pretty-bytes
+Source: %{crates_source}
+
+ExclusiveArch: %{rust_arches}
+
+BuildRequires: rust-packaging >= 21
+
+%global _description %{expand:
+Convert bytes to a human readable string.}
+
+%description %{_description}
+
+%package -n %{crate}
+Summary: %{summary}
+
+%description -n %{crate} %{_description}
+
+%files -n %{crate}
+# FIXME: no license files detected
+%doc README.md
+%{_bindir}/pretty-bytes
+
+%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
+# FIXME: no license files detected
+%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
+
+%prep
+%autosetup -n %{crate}-%{version_no_tilde} -p1
+%cargo_prep
+
+%generate_buildrequires
+%cargo_generate_buildrequires
+
+%build
+%cargo_build
+
+%install
+%cargo_install
+
+%if %{with check}
+%check
+%cargo_test
+%endif
+
+%changelog
+%autochangelog
diff --git a/sources b/sources
new file mode 100644
index 0000000..f3807c0
--- /dev/null
+++ b/sources
@@ -0,0 +1 @@
+SHA512 (pretty-bytes-0.2.0.crate) = 1ed41bab9cdaa94fc2397b91b6b3159fcec0b9429e623ce8f7c5b7e5658220cad0161fa85d85d583149c08857d06fbf5755a1697565bae6b0efd5ca426f62876
1 year, 1 month