commit:     73bde5cde38a0caf08b450bc04a5afabca8067fa
Author:     Ionen Wolkens <ionen <AT> gentoo <DOT> org>
AuthorDate: Wed Nov 23 22:30:09 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=73bde5cd

app-emulation/wine-staging: 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-staging/wine-staging-7.19.ebuild | 5 +++++
 app-emulation/wine-staging/wine-staging-7.20.ebuild | 5 +++++
 app-emulation/wine-staging/wine-staging-7.21.ebuild | 5 +++++
 app-emulation/wine-staging/wine-staging-9999.ebuild | 5 +++++
 4 files changed, 20 insertions(+)

diff --git a/app-emulation/wine-staging/wine-staging-7.19.ebuild 
b/app-emulation/wine-staging/wine-staging-7.19.ebuild
index 1222d038cbd9..15196d8d2042 100644
--- a/app-emulation/wine-staging/wine-staging-7.19.ebuild
+++ b/app-emulation/wine-staging/wine-staging-7.19.ebuild
@@ -249,6 +249,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-staging/wine-staging-7.20.ebuild 
b/app-emulation/wine-staging/wine-staging-7.20.ebuild
index 641d22eefd42..93b288516187 100644
--- a/app-emulation/wine-staging/wine-staging-7.20.ebuild
+++ b/app-emulation/wine-staging/wine-staging-7.20.ebuild
@@ -249,6 +249,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-staging/wine-staging-7.21.ebuild 
b/app-emulation/wine-staging/wine-staging-7.21.ebuild
index 2380da7317d4..8d55edadf533 100644
--- a/app-emulation/wine-staging/wine-staging-7.21.ebuild
+++ b/app-emulation/wine-staging/wine-staging-7.21.ebuild
@@ -250,6 +250,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-staging/wine-staging-9999.ebuild 
b/app-emulation/wine-staging/wine-staging-9999.ebuild
index 203711cfc786..a4a599ae48d1 100644
--- a/app-emulation/wine-staging/wine-staging-9999.ebuild
+++ b/app-emulation/wine-staging/wine-staging-9999.ebuild
@@ -246,6 +246,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