commit:     7c3bda69041ac21d5e98589e975696db93de748a
Author:     Ionen Wolkens <ionen <AT> gentoo <DOT> org>
AuthorDate: Wed Nov 23 22:27:15 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=7c3bda69

app-emulation/wine-vanilla: 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-vanilla/wine-vanilla-7.0-r3.ebuild | 5 +++++
 app-emulation/wine-vanilla/wine-vanilla-7.0.1.ebuild  | 5 +++++
 app-emulation/wine-vanilla/wine-vanilla-7.19.ebuild   | 5 +++++
 app-emulation/wine-vanilla/wine-vanilla-7.20.ebuild   | 5 +++++
 app-emulation/wine-vanilla/wine-vanilla-7.21.ebuild   | 5 +++++
 app-emulation/wine-vanilla/wine-vanilla-9999.ebuild   | 5 +++++
 6 files changed, 30 insertions(+)

diff --git a/app-emulation/wine-vanilla/wine-vanilla-7.0-r3.ebuild 
b/app-emulation/wine-vanilla/wine-vanilla-7.0-r3.ebuild
index 67946b35d11a..0cce5c91fe27 100644
--- a/app-emulation/wine-vanilla/wine-vanilla-7.0-r3.ebuild
+++ b/app-emulation/wine-vanilla/wine-vanilla-7.0-r3.ebuild
@@ -221,6 +221,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-vanilla/wine-vanilla-7.0.1.ebuild 
b/app-emulation/wine-vanilla/wine-vanilla-7.0.1.ebuild
index 4bc0593c00be..58fcd717fa60 100644
--- a/app-emulation/wine-vanilla/wine-vanilla-7.0.1.ebuild
+++ b/app-emulation/wine-vanilla/wine-vanilla-7.0.1.ebuild
@@ -221,6 +221,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-vanilla/wine-vanilla-7.19.ebuild 
b/app-emulation/wine-vanilla/wine-vanilla-7.19.ebuild
index 178a34cd9455..a79c6fde233c 100644
--- a/app-emulation/wine-vanilla/wine-vanilla-7.19.ebuild
+++ b/app-emulation/wine-vanilla/wine-vanilla-7.19.ebuild
@@ -219,6 +219,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-vanilla/wine-vanilla-7.20.ebuild 
b/app-emulation/wine-vanilla/wine-vanilla-7.20.ebuild
index 56a23ede3a3c..3eb2befae321 100644
--- a/app-emulation/wine-vanilla/wine-vanilla-7.20.ebuild
+++ b/app-emulation/wine-vanilla/wine-vanilla-7.20.ebuild
@@ -219,6 +219,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-vanilla/wine-vanilla-7.21.ebuild 
b/app-emulation/wine-vanilla/wine-vanilla-7.21.ebuild
index 71f509821dfb..729f81277842 100644
--- a/app-emulation/wine-vanilla/wine-vanilla-7.21.ebuild
+++ b/app-emulation/wine-vanilla/wine-vanilla-7.21.ebuild
@@ -220,6 +220,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-vanilla/wine-vanilla-9999.ebuild 
b/app-emulation/wine-vanilla/wine-vanilla-9999.ebuild
index c6c60f4f7f08..ff41386413b9 100644
--- a/app-emulation/wine-vanilla/wine-vanilla-9999.ebuild
+++ b/app-emulation/wine-vanilla/wine-vanilla-9999.ebuild
@@ -216,6 +216,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