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 48534158012 for ; Tue, 13 Sep 2022 04:19:17 +0000 (UTC) Received: from pigeon.gentoo.org (localhost [127.0.0.1]) by pigeon.gentoo.org (Postfix) with SMTP id D43A7E08A8; Tue, 13 Sep 2022 04:19:15 +0000 (UTC) Received: from smtp.gentoo.org (smtp.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 64384E08A8 for ; Tue, 13 Sep 2022 04:19:15 +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) server-digest SHA256) (No client certificate requested) by smtp.gentoo.org (Postfix) with ESMTPS id 2F807340DAB for ; Tue, 13 Sep 2022 04:19:14 +0000 (UTC) Received: from localhost.localdomain (localhost [IPv6:::1]) by oystercatcher.gentoo.org (Postfix) with ESMTP id 7EC095D3 for ; Tue, 13 Sep 2022 04:19:12 +0000 (UTC) From: "Ionen Wolkens" To: gentoo-commits@lists.gentoo.org Content-Transfer-Encoding: 8bit Content-type: text/plain; charset=UTF-8 Reply-To: gentoo-dev@lists.gentoo.org, "Ionen Wolkens" Message-ID: <1663042674.40d66f4bcbe00db8b13ef9548f298e82ec111928.ionen@gentoo> Subject: [gentoo-commits] repo/gentoo:master commit in: app-emulation/wine-proton/files/, app-emulation/wine-proton/ X-VCS-Repository: repo/gentoo X-VCS-Files: app-emulation/wine-proton/files/wine-proton-7.0.4-llvm-libunwind.patch app-emulation/wine-proton/files/wine-proton-7.0.4-unwind.patch app-emulation/wine-proton/wine-proton-7.0.4.ebuild app-emulation/wine-proton/wine-proton-7.0.9999.ebuild X-VCS-Directories: app-emulation/wine-proton/ app-emulation/wine-proton/files/ X-VCS-Committer: ionen X-VCS-Committer-Name: Ionen Wolkens X-VCS-Revision: 40d66f4bcbe00db8b13ef9548f298e82ec111928 X-VCS-Branch: master Date: Tue, 13 Sep 2022 04:19:12 +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: 7ea73cb9-0ab8-42bc-976a-80ef58fc8917 X-Archives-Hash: 1f8714851098eb72a362429216f0c864 commit: 40d66f4bcbe00db8b13ef9548f298e82ec111928 Author: Ionen Wolkens gentoo org> AuthorDate: Tue Sep 13 01:50:10 2022 +0000 Commit: Ionen Wolkens gentoo org> CommitDate: Tue Sep 13 04:17:54 2022 +0000 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=40d66f4b app-emulation/wine-proton: fix clang + USE=-llvm-libunwind build _Unwind_Find_FDE doesn't exist in libunwind but does in gcc's rtlib, clang instead expects it from llvm-libunwind which leads to undefined references even with USE=-unwind. Messy but add extra guards around it. Signed-off-by: Ionen Wolkens gentoo.org> .../files/wine-proton-7.0.4-llvm-libunwind.patch | 9 ----- .../files/wine-proton-7.0.4-unwind.patch | 40 ++++++++++++++++++++++ app-emulation/wine-proton/wine-proton-7.0.4.ebuild | 2 +- .../wine-proton/wine-proton-7.0.9999.ebuild | 2 +- 4 files changed, 42 insertions(+), 11 deletions(-) diff --git a/app-emulation/wine-proton/files/wine-proton-7.0.4-llvm-libunwind.patch b/app-emulation/wine-proton/files/wine-proton-7.0.4-llvm-libunwind.patch deleted file mode 100644 index 0086fa5e0353..000000000000 --- a/app-emulation/wine-proton/files/wine-proton-7.0.4-llvm-libunwind.patch +++ /dev/null @@ -1,9 +0,0 @@ -Note the dodgy _CONFIG_H_ check can be removed when >=llvm-libunwind-15 -(which adds _VERSION) is well established: https://reviews.llvm.org/D121015 ---- a/dlls/ntdll/unix/signal_x86_64.c -+++ b/dlls/ntdll/unix/signal_x86_64.c -@@ -1370,3 +1370,3 @@ - --#ifdef __APPLE__ -+#if defined(__APPLE__) || defined(_LIBUNWIND_VERSION) || defined(____LIBUNWIND_CONFIG_H__) - rc = unw_getcontext( &unw_context ); diff --git a/app-emulation/wine-proton/files/wine-proton-7.0.4-unwind.patch b/app-emulation/wine-proton/files/wine-proton-7.0.4-unwind.patch new file mode 100644 index 000000000000..372def52ba0c --- /dev/null +++ b/app-emulation/wine-proton/files/wine-proton-7.0.4-unwind.patch @@ -0,0 +1,40 @@ +Fix build with llvm-libunwind, and also fix for non-llvm libunwind +when using clang+bfd given clang doesn't have _Unwind_Find_FDE in +its rtlib and expects it from llvm-libunwind. + +The _CONFIG_H_ check is for Rip - 1), &bases ); + + if (fde) + return dwarf_virtual_unwind( context->Rip, &dispatch->EstablisherFrame, context, fde, + &bases, &dispatch->LanguageHandler, &dispatch->HandlerData ); ++#endif + #ifdef HAVE_LIBUNWIND + return libunwind_virtual_unwind( context->Rip, &dispatch->EstablisherFrame, context, + &dispatch->LanguageHandler, &dispatch->HandlerData ); diff --git a/app-emulation/wine-proton/wine-proton-7.0.4.ebuild b/app-emulation/wine-proton/wine-proton-7.0.4.ebuild index 9101a5f62172..4d1b0a1aa939 100644 --- a/app-emulation/wine-proton/wine-proton-7.0.4.ebuild +++ b/app-emulation/wine-proton/wine-proton-7.0.4.ebuild @@ -106,10 +106,10 @@ IDEPEND=">=app-eselect/eselect-wine-1.2.2-r1" QA_TEXTRELS="usr/lib/*/wine/i386-unix/*.so" # uses -fno-PIC -Wl,-z,notext PATCHES=( - "${FILESDIR}"/${PN}-7.0.4-llvm-libunwind.patch "${FILESDIR}"/${PN}-7.0.4-musl.patch "${FILESDIR}"/${PN}-7.0.4-noexecstack.patch "${FILESDIR}"/${PN}-7.0.4-restore-menubuilder.patch + "${FILESDIR}"/${PN}-7.0.4-unwind.patch ) pkg_pretend() { diff --git a/app-emulation/wine-proton/wine-proton-7.0.9999.ebuild b/app-emulation/wine-proton/wine-proton-7.0.9999.ebuild index ea37d6fbf06a..0df6fada339d 100644 --- a/app-emulation/wine-proton/wine-proton-7.0.9999.ebuild +++ b/app-emulation/wine-proton/wine-proton-7.0.9999.ebuild @@ -106,10 +106,10 @@ IDEPEND=">=app-eselect/eselect-wine-1.2.2-r1" QA_TEXTRELS="usr/lib/*/wine/i386-unix/*.so" # uses -fno-PIC -Wl,-z,notext PATCHES=( - "${FILESDIR}"/${PN}-7.0.4-llvm-libunwind.patch "${FILESDIR}"/${PN}-7.0.4-musl.patch "${FILESDIR}"/${PN}-7.0.4-noexecstack.patch "${FILESDIR}"/${PN}-7.0.4-restore-menubuilder.patch + "${FILESDIR}"/${PN}-7.0.4-unwind.patch ) pkg_pretend() {