From 06360f1c64d575bc1f5fedb744416874ead8487c Mon Sep 17 00:00:00 2001 From: Ionen Wolkens Date: Mon, 5 Dec 2022 20:04:43 -0500 Subject: [PATCH] app-emulation/wine-staging: filter lto and no-plt directly These are semi-popular and no reason to allow something that fails to build even with USE=custom-cflags (that's more aimed at runtime fragility than build failures here). Could imagine -flto or maybe even -fno-plt being "potentially" whitelisted by strip-flags as it gain more support too. Note -fno-plt is only an issue with USE=-mingw. Signed-off-by: Ionen Wolkens --- app-emulation/wine-staging/wine-staging-7.19.ebuild | 6 ++++-- app-emulation/wine-staging/wine-staging-7.20.ebuild | 6 ++++-- app-emulation/wine-staging/wine-staging-7.21-r1.ebuild | 6 ++++-- app-emulation/wine-staging/wine-staging-7.22.ebuild | 6 ++++-- app-emulation/wine-staging/wine-staging-9999.ebuild | 6 ++++-- 5 files changed, 20 insertions(+), 10 deletions(-) diff --git a/app-emulation/wine-staging/wine-staging-7.19.ebuild b/app-emulation/wine-staging/wine-staging-7.19.ebuild index f4d6cc01a97f6..649285646ebcf 100644 --- a/app-emulation/wine-staging/wine-staging-7.19.ebuild +++ b/app-emulation/wine-staging/wine-staging-7.19.ebuild @@ -246,8 +246,10 @@ src_configure() { $(usev !odbc ac_cv_lib_soname_odbc=) ) - tc-ld-force-bfd #867097 - use custom-cflags || strip-flags # can break in obscure ways, also no lto + tc-ld-force-bfd # builds with non-bfd but broken at runtime (bug #867097) + filter-lto # build failure + use mingw || filter-flags -fno-plt # build failure + use custom-cflags || strip-flags # can break in obscure ways at runtime use crossdev-mingw || PATH=${BROOT}/usr/lib/mingw64-toolchain/bin:${PATH} # temporary workaround for tc-ld-force-bfd not yet enforcing with mold diff --git a/app-emulation/wine-staging/wine-staging-7.20.ebuild b/app-emulation/wine-staging/wine-staging-7.20.ebuild index 1a7b1f25c6f94..4d5a4afb6acc8 100644 --- a/app-emulation/wine-staging/wine-staging-7.20.ebuild +++ b/app-emulation/wine-staging/wine-staging-7.20.ebuild @@ -246,8 +246,10 @@ src_configure() { $(usev !odbc ac_cv_lib_soname_odbc=) ) - tc-ld-force-bfd #867097 - use custom-cflags || strip-flags # can break in obscure ways, also no lto + tc-ld-force-bfd # builds with non-bfd but broken at runtime (bug #867097) + filter-lto # build failure + use mingw || filter-flags -fno-plt # build failure + use custom-cflags || strip-flags # can break in obscure ways at runtime use crossdev-mingw || PATH=${BROOT}/usr/lib/mingw64-toolchain/bin:${PATH} # temporary workaround for tc-ld-force-bfd not yet enforcing with mold diff --git a/app-emulation/wine-staging/wine-staging-7.21-r1.ebuild b/app-emulation/wine-staging/wine-staging-7.21-r1.ebuild index 606f5b2e93314..e8506e11fcbaa 100644 --- a/app-emulation/wine-staging/wine-staging-7.21-r1.ebuild +++ b/app-emulation/wine-staging/wine-staging-7.21-r1.ebuild @@ -248,8 +248,10 @@ src_configure() { $(usev !odbc ac_cv_lib_soname_odbc=) ) - tc-ld-force-bfd #867097 - use custom-cflags || strip-flags # can break in obscure ways, also no lto + tc-ld-force-bfd # builds with non-bfd but broken at runtime (bug #867097) + filter-lto # build failure + use mingw || filter-flags -fno-plt # build failure + use custom-cflags || strip-flags # can break in obscure ways at runtime use crossdev-mingw || PATH=${BROOT}/usr/lib/mingw64-toolchain/bin:${PATH} # temporary workaround for tc-ld-force-bfd not yet enforcing with mold diff --git a/app-emulation/wine-staging/wine-staging-7.22.ebuild b/app-emulation/wine-staging/wine-staging-7.22.ebuild index 1f7740c6c6b6d..6e64e8c69828a 100644 --- a/app-emulation/wine-staging/wine-staging-7.22.ebuild +++ b/app-emulation/wine-staging/wine-staging-7.22.ebuild @@ -243,8 +243,10 @@ src_configure() { $(usev !odbc ac_cv_lib_soname_odbc=) ) - tc-ld-force-bfd #867097 - use custom-cflags || strip-flags # can break in obscure ways, also no lto + tc-ld-force-bfd # builds with non-bfd but broken at runtime (bug #867097) + filter-lto # build failure + use mingw || filter-flags -fno-plt # build failure + use custom-cflags || strip-flags # can break in obscure ways at runtime use crossdev-mingw || PATH=${BROOT}/usr/lib/mingw64-toolchain/bin:${PATH} # temporary workaround for tc-ld-force-bfd not yet enforcing with mold diff --git a/app-emulation/wine-staging/wine-staging-9999.ebuild b/app-emulation/wine-staging/wine-staging-9999.ebuild index 1f7740c6c6b6d..6e64e8c69828a 100644 --- a/app-emulation/wine-staging/wine-staging-9999.ebuild +++ b/app-emulation/wine-staging/wine-staging-9999.ebuild @@ -243,8 +243,10 @@ src_configure() { $(usev !odbc ac_cv_lib_soname_odbc=) ) - tc-ld-force-bfd #867097 - use custom-cflags || strip-flags # can break in obscure ways, also no lto + tc-ld-force-bfd # builds with non-bfd but broken at runtime (bug #867097) + filter-lto # build failure + use mingw || filter-flags -fno-plt # build failure + use custom-cflags || strip-flags # can break in obscure ways at runtime use crossdev-mingw || PATH=${BROOT}/usr/lib/mingw64-toolchain/bin:${PATH} # temporary workaround for tc-ld-force-bfd not yet enforcing with mold