commit:     95c70598a2988a82b4eb8f4d850973d44d111bba
Author:     Ionen Wolkens <ionen <AT> gentoo <DOT> org>
AuthorDate: Wed Nov 23 22:30:26 2022 +0000
Commit:     Ionen Wolkens <ionen <AT> gentoo <DOT> org>
CommitDate: Wed Nov 23 22:35:00 2022 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=95c70598

app-emulation/wine-proton: workaround for mold

Everything segfaults if built with either mold or lld, but
tc-ld-force-bfd (currently) ignores mold. Skipping revbump
given global mold usage is not widespread.

Signed-off-by: Ionen Wolkens <ionen <AT> gentoo.org>

 app-emulation/wine-proton/wine-proton-7.0.4.ebuild    | 5 +++++
 app-emulation/wine-proton/wine-proton-7.0.5.ebuild    | 5 +++++
 app-emulation/wine-proton/wine-proton-7.0.9999.ebuild | 5 +++++
 3 files changed, 15 insertions(+)

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 bf0f5280395f..37d03a663596 100644
--- a/app-emulation/wine-proton/wine-proton-7.0.4.ebuild
+++ b/app-emulation/wine-proton/wine-proton-7.0.4.ebuild
@@ -217,6 +217,11 @@ src_configure() {
        use custom-cflags || strip-flags # can break in obscure ways, also no 
lto
        use crossdev-mingw || 
PATH=${BROOT}/usr/lib/mingw64-toolchain/bin:${PATH}
 
+       # temporary workaround for tc-ld-force-bfd not yet enforcing with mold
+       # https://github.com/gentoo/gentoo/pull/28355
+       [[ $($(tc-getCC) ${LDFLAGS} -Wl,-version) == mold* ]] &&
+               append-ldflags -fuse-ld=bfd
+
        # build using upstream's way (--with-wine64)
        # order matters: configure+compile 64->32, install 32->64
        local -i bits

diff --git a/app-emulation/wine-proton/wine-proton-7.0.5.ebuild 
b/app-emulation/wine-proton/wine-proton-7.0.5.ebuild
index 18b14fa69ee3..d2c30cd89d6b 100644
--- a/app-emulation/wine-proton/wine-proton-7.0.5.ebuild
+++ b/app-emulation/wine-proton/wine-proton-7.0.5.ebuild
@@ -217,6 +217,11 @@ src_configure() {
        use custom-cflags || strip-flags # can break in obscure ways, also no 
lto
        use crossdev-mingw || 
PATH=${BROOT}/usr/lib/mingw64-toolchain/bin:${PATH}
 
+       # temporary workaround for tc-ld-force-bfd not yet enforcing with mold
+       # https://github.com/gentoo/gentoo/pull/28355
+       [[ $($(tc-getCC) ${LDFLAGS} -Wl,-version) == mold* ]] &&
+               append-ldflags -fuse-ld=bfd
+
        # build using upstream's way (--with-wine64)
        # order matters: configure+compile 64->32, install 32->64
        local -i bits

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 934259b7c815..b2e69e68887a 100644
--- a/app-emulation/wine-proton/wine-proton-7.0.9999.ebuild
+++ b/app-emulation/wine-proton/wine-proton-7.0.9999.ebuild
@@ -217,6 +217,11 @@ src_configure() {
        use custom-cflags || strip-flags # can break in obscure ways, also no 
lto
        use crossdev-mingw || 
PATH=${BROOT}/usr/lib/mingw64-toolchain/bin:${PATH}
 
+       # temporary workaround for tc-ld-force-bfd not yet enforcing with mold
+       # https://github.com/gentoo/gentoo/pull/28355
+       [[ $($(tc-getCC) ${LDFLAGS} -Wl,-version) == mold* ]] &&
+               append-ldflags -fuse-ld=bfd
+
        # build using upstream's way (--with-wine64)
        # order matters: configure+compile 64->32, install 32->64
        local -i bits

Reply via email to