From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from lists.gentoo.org (pigeon.gentoo.org [208.92.234.80]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits)) (No client certificate requested) by finch.gentoo.org (Postfix) with ESMTPS id 31C31158094 for ; Sun, 25 Sep 2022 06:37:51 +0000 (UTC) Received: from pigeon.gentoo.org (localhost [127.0.0.1]) by pigeon.gentoo.org (Postfix) with SMTP id 4E042E0CAD; Sun, 25 Sep 2022 06:37:50 +0000 (UTC) Received: from smtp.gentoo.org (woodpecker.gentoo.org [IPv6:2001:470:ea4a:1:5054:ff:fec7:86e4]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits)) (No client certificate requested) by pigeon.gentoo.org (Postfix) with ESMTPS id 349F7E0CAD for ; Sun, 25 Sep 2022 06:37:50 +0000 (UTC) Received: from oystercatcher.gentoo.org (oystercatcher.gentoo.org [148.251.78.52]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits)) (No client certificate requested) by smtp.gentoo.org (Postfix) with ESMTPS id 6D510340FA6 for ; Sun, 25 Sep 2022 06:37:49 +0000 (UTC) Received: from localhost.localdomain (localhost [IPv6:::1]) by oystercatcher.gentoo.org (Postfix) with ESMTP id E0CB65BF for ; Sun, 25 Sep 2022 06:37:47 +0000 (UTC) From: "Georgy Yakovlev" To: gentoo-commits@lists.gentoo.org Content-Transfer-Encoding: 8bit Content-type: text/plain; charset=UTF-8 Reply-To: gentoo-dev@lists.gentoo.org, "Georgy Yakovlev" Message-ID: <1664087824.46a3260c72f0a4d918daa3f313f8e586f12475f4.gyakovlev@gentoo> Subject: [gentoo-commits] repo/gentoo:master commit in: dev-lang/rust/, dev-lang/rust/files/ X-VCS-Repository: repo/gentoo X-VCS-Files: dev-lang/rust/files/1.64.0-vendor-rustix-sparc-has-no-SIGSTKFLT.patch dev-lang/rust/rust-1.64.0.ebuild X-VCS-Directories: dev-lang/rust/files/ dev-lang/rust/ X-VCS-Committer: gyakovlev X-VCS-Committer-Name: Georgy Yakovlev X-VCS-Revision: 46a3260c72f0a4d918daa3f313f8e586f12475f4 X-VCS-Branch: master Date: Sun, 25 Sep 2022 06:37:47 +0000 (UTC) Precedence: bulk List-Post: List-Help: List-Unsubscribe: List-Subscribe: List-Id: Gentoo Linux mail X-BeenThere: gentoo-commits@lists.gentoo.org X-Auto-Response-Suppress: DR, RN, NRN, OOF, AutoReply X-Archives-Salt: 53914cd5-90d6-4265-b5ca-0ceb11dcc9d4 X-Archives-Hash: fe644bb559e4ea568d84720e71a4d6e7 commit: 46a3260c72f0a4d918daa3f313f8e586f12475f4 Author: Georgy Yakovlev gentoo org> AuthorDate: Sun Sep 25 06:11:45 2022 +0000 Commit: Georgy Yakovlev gentoo org> CommitDate: Sun Sep 25 06:37:04 2022 +0000 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=46a3260c dev-lang/rust: fix 1.64.0 build on sparc Issue: https://github.com/bytecodealliance/rustix/issues/408 Bug: https://bugs.gentoo.org/872725 Signed-off-by: Georgy Yakovlev gentoo.org> ...64.0-vendor-rustix-sparc-has-no-SIGSTKFLT.patch | 60 ++++++++++++++++++++++ dev-lang/rust/rust-1.64.0.ebuild | 11 ++++ 2 files changed, 71 insertions(+) diff --git a/dev-lang/rust/files/1.64.0-vendor-rustix-sparc-has-no-SIGSTKFLT.patch b/dev-lang/rust/files/1.64.0-vendor-rustix-sparc-has-no-SIGSTKFLT.patch new file mode 100644 index 000000000000..5d685baac569 --- /dev/null +++ b/dev-lang/rust/files/1.64.0-vendor-rustix-sparc-has-no-SIGSTKFLT.patch @@ -0,0 +1,60 @@ +From 3fd653f3978e5ec2249c37eb08934bfe343e9198 Mon Sep 17 00:00:00 2001 +From: Georgy Yakovlev +Date: Sat, 24 Sep 2022 23:09:38 -0700 +Subject: [PATCH] vendor/rustix: sparc has no SIGSTKFLT + +gyakovlev: removed checkum HUNK + +--- + vendor/rustix/.cargo-checksum.json | 2 +- + vendor/rustix/src/imp/libc/process/types.rs | 4 ++++ + vendor/rustix/src/imp/linux_raw/process/types.rs | 4 ++-- + 3 files changed, 7 insertions(+), 3 deletions(-) + +diff --git a/vendor/rustix/src/imp/libc/process/types.rs b/vendor/rustix/src/imp/libc/process/types.rs +index 60d629d..1278cee 100644 +--- a/vendor/rustix/src/imp/libc/process/types.rs ++++ b/vendor/rustix/src/imp/libc/process/types.rs +@@ -197,6 +197,8 @@ pub enum Signal { + target_os = "macos", + target_os = "netbsd", + target_os = "openbsd", ++ target_arch = "sparc", ++ target_arch = "sparc64", + all( + any(target_os = "android", target_os = "linux"), + any(target_arch = "mips", target_arch = "mips64"), +@@ -274,6 +276,8 @@ impl Signal { + target_os = "macos", + target_os = "netbsd", + target_os = "openbsd", ++ target_arch = "sparc", ++ target_arch = "sparc64", + all( + any(target_os = "android", target_os = "linux"), + any(target_arch = "mips", target_arch = "mips64"), +diff --git a/vendor/rustix/src/imp/linux_raw/process/types.rs b/vendor/rustix/src/imp/linux_raw/process/types.rs +index 53e2c7d..859a108 100644 +--- a/vendor/rustix/src/imp/linux_raw/process/types.rs ++++ b/vendor/rustix/src/imp/linux_raw/process/types.rs +@@ -119,7 +119,7 @@ pub enum Signal { + /// `SIGTERM` + Term = linux_raw_sys::general::SIGTERM, + /// `SIGSTKFLT` +- #[cfg(not(any(target_arch = "mips", target_arch = "mips64")))] ++ #[cfg(not(any(target_arch = "mips", target_arch = "mips64", target_arch = "sparc", target_arch = "sparc64")))] + Stkflt = linux_raw_sys::general::SIGSTKFLT, + /// `SIGCHLD` + #[doc(alias = "Chld")] +@@ -179,7 +179,7 @@ impl Signal { + linux_raw_sys::general::SIGPIPE => Some(Self::Pipe), + linux_raw_sys::general::SIGALRM => Some(Self::Alarm), + linux_raw_sys::general::SIGTERM => Some(Self::Term), +- #[cfg(not(any(target_arch = "mips", target_arch = "mips64")))] ++ #[cfg(not(any(target_arch = "mips", target_arch = "mips64", target_arch = "sparc", target_arch = "sparc64")))] + linux_raw_sys::general::SIGSTKFLT => Some(Self::Stkflt), + linux_raw_sys::general::SIGCHLD => Some(Self::Child), + linux_raw_sys::general::SIGCONT => Some(Self::Cont), +-- +2.37.3 + diff --git a/dev-lang/rust/rust-1.64.0.ebuild b/dev-lang/rust/rust-1.64.0.ebuild index 0300d3cc4b10..9f7e86a87d56 100644 --- a/dev-lang/rust/rust-1.64.0.ebuild +++ b/dev-lang/rust/rust-1.64.0.ebuild @@ -163,6 +163,7 @@ VERIFY_SIG_OPENPGP_KEY_PATH=${BROOT}/usr/share/openpgp-keys/rust.asc PATCHES=( "${FILESDIR}"/1.55.0-ignore-broken-and-non-applicable-tests.patch "${FILESDIR}"/1.62.1-musl-dynamic-linking.patch + "${FILESDIR}"/${PV}-vendor-rustix-sparc-has-no-SIGSTKFLT.patch ) S="${WORKDIR}/${MY_P}-src" @@ -270,6 +271,16 @@ esetup_unwind_hack() { } src_prepare() { + # this supidity is needed because patch is too large to be in filesdir + # and if we move it to devspace - it lacks checksum for sig verification + if [[ "${PV}" == 1.64.0 ]]; then + sed -i \ + -e 's/516ba32a547b46a8e80ad20d4a17bf24a00bff0b69b74f56df119f770f3dfff6/fc7eb88c2f5104865379128b76767d36ce5b5fdb9f3483e683d150e514ebc3a3/' \ + -e 's/fba10dc8ca9eaf4d481cb82bd1540cf5c05620533c44f917c09a22ea55ef408c/9cc4d1b4511a1f0d91231eb0f11c67ae5e8e38e4becd0bf5eb9e26d043796056/' \ + vendor/rustix/.cargo-checksum.json || die + else + die "remove sed mr forgetful maintainer" + fi if ! use system-bootstrap; then has_version sys-devel/gcc || esetup_unwind_hack local rust_stage0_root="${WORKDIR}"/rust-stage0