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 C3C1315801B for ; Fri, 11 Aug 2023 10:52:38 +0000 (UTC) Received: from pigeon.gentoo.org (localhost [127.0.0.1]) by pigeon.gentoo.org (Postfix) with SMTP id F1F882BC03D; Fri, 11 Aug 2023 10:52:37 +0000 (UTC) Received: from smtp.gentoo.org (dev.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 DD0702BC03D for ; Fri, 11 Aug 2023 10:52:37 +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 3012533BED3 for ; Fri, 11 Aug 2023 10:52:37 +0000 (UTC) Received: from localhost.localdomain (localhost [IPv6:::1]) by oystercatcher.gentoo.org (Postfix) with ESMTP id 3AF3CF61 for ; Fri, 11 Aug 2023 10:52:34 +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: <1691750034.877936c3513d7ef069423a35a856a5ff7ba5c133.ionen@gentoo> Subject: [gentoo-commits] repo/gentoo:master commit in: app-emulation/wine-staging/ X-VCS-Repository: repo/gentoo X-VCS-Files: app-emulation/wine-staging/wine-staging-8.13.ebuild app-emulation/wine-staging/wine-staging-9999.ebuild X-VCS-Directories: app-emulation/wine-staging/ X-VCS-Committer: ionen X-VCS-Committer-Name: Ionen Wolkens X-VCS-Revision: 877936c3513d7ef069423a35a856a5ff7ba5c133 X-VCS-Branch: master Date: Fri, 11 Aug 2023 10:52:34 +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: 7dadac39-cf89-4efa-8ed5-6579b3d25abf X-Archives-Hash: 19873dcac26de274d9f5bef1cccd8beb commit: 877936c3513d7ef069423a35a856a5ff7ba5c133 Author: Ionen Wolkens gentoo org> AuthorDate: Fri Aug 11 09:48:23 2023 +0000 Commit: Ionen Wolkens gentoo org> CommitDate: Fri Aug 11 10:33:54 2023 +0000 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=877936c3 app-emulation/wine-staging: tentatively allow lld again in latest Seems fine, no large binaries nor (obvious) issues at runtime. Please report if there's major issues that would require forcing bfd again. Mold still seems broken, no large binaries but been simply getting a Segmentation Fault when run winecfg. So do nothing if recognize bfd or lld, but force whichever is available otherwise. Leaving alone for older versions as a precaution. On a side-note, I hope nobody is passing -fuse-ld=lld in CFLAGS rather than LDFLAGS where it belongs as this would break compile+link at once mingw64-toolchain PE tests. Bug: https://bugs.gentoo.org/867097 Signed-off-by: Ionen Wolkens gentoo.org> .../wine-staging/wine-staging-8.13.ebuild | 23 ++++++++++++---------- .../wine-staging/wine-staging-9999.ebuild | 23 ++++++++++++---------- 2 files changed, 26 insertions(+), 20 deletions(-) diff --git a/app-emulation/wine-staging/wine-staging-8.13.ebuild b/app-emulation/wine-staging/wine-staging-8.13.ebuild index da465be0fe33..7b7a4e1c36dc 100644 --- a/app-emulation/wine-staging/wine-staging-8.13.ebuild +++ b/app-emulation/wine-staging/wine-staging-8.13.ebuild @@ -137,8 +137,11 @@ BDEPEND=" sys-apps/util-linux ) ) + || ( + sys-devel/binutils + sys-devel/lld + ) dev-lang/perl - sys-devel/binutils sys-devel/bison sys-devel/flex virtual/pkgconfig @@ -296,18 +299,18 @@ src_configure() { $(use_with xinerama) ) - # builds with non-bfd but broken at runtime (bug #867097) - # TODO: retest mold and lld, and figure out what's wrong if - # still broken given (at least) lld is supposed to work - tc-ld-force-bfd - filter-lto # build failure use custom-cflags || strip-flags # can break in obscure ways at runtime - # temporary workaround for tc-ld-force-bfd not yet enforcing with mold - # https://github.com/gentoo/gentoo/pull/28355 - [[ $($(tc-getCC) ${LDFLAGS} -Wl,--version 2>/dev/null) == mold* ]] && - append-ldflags -fuse-ld=bfd + # wine uses linker tricks unlikely to work with non-bfd/lld (bug #867097) + # (do self test until https://github.com/gentoo/gentoo/pull/28355) + if [[ $(LC_ALL=C $(tc-getCC) ${LDFLAGS} -Wl,--version 2>/dev/null) != @(LLD|GNU\ ld)* ]] + then + has_version -b sys-devel/binutils && + append-ldflags -fuse-ld=bfd || + append-ldflags -fuse-ld=lld + strip-unsupported-flags + fi if use mingw; then use crossdev-mingw || PATH=${BROOT}/usr/lib/mingw64-toolchain/bin:${PATH} diff --git a/app-emulation/wine-staging/wine-staging-9999.ebuild b/app-emulation/wine-staging/wine-staging-9999.ebuild index da465be0fe33..7b7a4e1c36dc 100644 --- a/app-emulation/wine-staging/wine-staging-9999.ebuild +++ b/app-emulation/wine-staging/wine-staging-9999.ebuild @@ -137,8 +137,11 @@ BDEPEND=" sys-apps/util-linux ) ) + || ( + sys-devel/binutils + sys-devel/lld + ) dev-lang/perl - sys-devel/binutils sys-devel/bison sys-devel/flex virtual/pkgconfig @@ -296,18 +299,18 @@ src_configure() { $(use_with xinerama) ) - # builds with non-bfd but broken at runtime (bug #867097) - # TODO: retest mold and lld, and figure out what's wrong if - # still broken given (at least) lld is supposed to work - tc-ld-force-bfd - filter-lto # build failure use custom-cflags || strip-flags # can break in obscure ways at runtime - # temporary workaround for tc-ld-force-bfd not yet enforcing with mold - # https://github.com/gentoo/gentoo/pull/28355 - [[ $($(tc-getCC) ${LDFLAGS} -Wl,--version 2>/dev/null) == mold* ]] && - append-ldflags -fuse-ld=bfd + # wine uses linker tricks unlikely to work with non-bfd/lld (bug #867097) + # (do self test until https://github.com/gentoo/gentoo/pull/28355) + if [[ $(LC_ALL=C $(tc-getCC) ${LDFLAGS} -Wl,--version 2>/dev/null) != @(LLD|GNU\ ld)* ]] + then + has_version -b sys-devel/binutils && + append-ldflags -fuse-ld=bfd || + append-ldflags -fuse-ld=lld + strip-unsupported-flags + fi if use mingw; then use crossdev-mingw || PATH=${BROOT}/usr/lib/mingw64-toolchain/bin:${PATH}