commit: 18bba14d15e78f2572f74788d2557e095b91ddfb
Author: Ionen Wolkens <ionen <AT> gentoo <DOT> org>
AuthorDate: Thu Mar 28 10:05:56 2024 +0000
Commit: Ionen Wolkens <ionen <AT> gentoo <DOT> org>
CommitDate: Thu Mar 28 10:10:06 2024 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=18bba14d
app-emulation/dxvk: filter -Wl,-z,* ... for C(XX)FLAGS
strip-unsupported-flags handles this fine in LDFLAGS, but -Wl,*
are no-ops during compile-only tests (thus not stripped) and then
if a package compiles and links anything at same time it fails.
This used not to be a big problem but now that 23.0 profiles
do -Wl,-z,pack-relative-relocs (mingw ld has no -z) this is
hitting bashrc-mv users that tend to do CFLAGS="${LDFLAGS}"
by default. Tempting to ignore it because of how wrong it is,
but well.
An alternate route could be to eventually have strip-flags
and/or strip-unsupported-flags remove -Wl,* from non-LDFLAGS
given this could affect more than mingw (e.g. switching to
bfd when there is a lld-only option).
wrt bug #928038, this already been done a while ago for wine,
mingw64-runtime, and mingw64-toolchain itself and there *should*
have been only dxvk and vkd3d-proton left (now done).
Closes: https://bugs.gentoo.org/928038
Signed-off-by: Ionen Wolkens <ionen <AT> gentoo.org>
app-emulation/dxvk/dxvk-1.10.3-r1.ebuild | 5 +++++
app-emulation/dxvk/dxvk-2.2-r1.ebuild | 5 +++++
app-emulation/dxvk/dxvk-2.3.1-r1.ebuild | 5 +++++
app-emulation/dxvk/dxvk-2.3.ebuild | 5 +++++
app-emulation/dxvk/dxvk-9999.ebuild | 5 +++++
5 files changed, 25 insertions(+)
diff --git a/app-emulation/dxvk/dxvk-1.10.3-r1.ebuild
b/app-emulation/dxvk/dxvk-1.10.3-r1.ebuild
index dd2598cfe637..701ccb453a83 100644
--- a/app-emulation/dxvk/dxvk-1.10.3-r1.ebuild
+++ b/app-emulation/dxvk/dxvk-1.10.3-r1.ebuild
@@ -84,6 +84,11 @@ src_configure() {
unset AR CC CXX RC STRIP
filter-flags '-fuse-ld=*'
filter-flags '-mfunction-return=thunk*' #878849
+
+ # some bashrc-mv users tend to do CFLAGS="${LDFLAGS}"
and then
+ # strip-unsupported-flags miss these during
compile-only tests
+ # (primarily done for 23.0 profiles' -z, not full
coverage)
+ filter-flags '-Wl,-z,*' #928038
fi
CHOST_amd64=x86_64-w64-mingw32
diff --git a/app-emulation/dxvk/dxvk-2.2-r1.ebuild
b/app-emulation/dxvk/dxvk-2.2-r1.ebuild
index 3273526f0700..1d3d3ded718f 100644
--- a/app-emulation/dxvk/dxvk-2.2-r1.ebuild
+++ b/app-emulation/dxvk/dxvk-2.2-r1.ebuild
@@ -108,6 +108,11 @@ src_configure() {
unset AR CC CXX RC STRIP
filter-flags '-fuse-ld=*'
filter-flags '-mfunction-return=thunk*' #878849
+
+ # some bashrc-mv users tend to do CFLAGS="${LDFLAGS}"
and then
+ # strip-unsupported-flags miss these during
compile-only tests
+ # (primarily done for 23.0 profiles' -z, not full
coverage)
+ filter-flags '-Wl,-z,*' #928038
fi
CHOST_amd64=x86_64-w64-mingw32
diff --git a/app-emulation/dxvk/dxvk-2.3.1-r1.ebuild
b/app-emulation/dxvk/dxvk-2.3.1-r1.ebuild
index c3d261f000ce..d47a7f2b914a 100644
--- a/app-emulation/dxvk/dxvk-2.3.1-r1.ebuild
+++ b/app-emulation/dxvk/dxvk-2.3.1-r1.ebuild
@@ -111,6 +111,11 @@ src_configure() {
unset AR CC CXX RC STRIP
filter-flags '-fuse-ld=*'
filter-flags '-mfunction-return=thunk*' #878849
+
+ # some bashrc-mv users tend to do CFLAGS="${LDFLAGS}"
and then
+ # strip-unsupported-flags miss these during
compile-only tests
+ # (primarily done for 23.0 profiles' -z, not full
coverage)
+ filter-flags '-Wl,-z,*' #928038
fi
CHOST_amd64=x86_64-w64-mingw32
diff --git a/app-emulation/dxvk/dxvk-2.3.ebuild
b/app-emulation/dxvk/dxvk-2.3.ebuild
index 432cc57f5108..2a0cdc34b1a0 100644
--- a/app-emulation/dxvk/dxvk-2.3.ebuild
+++ b/app-emulation/dxvk/dxvk-2.3.ebuild
@@ -108,6 +108,11 @@ src_configure() {
unset AR CC CXX RC STRIP
filter-flags '-fuse-ld=*'
filter-flags '-mfunction-return=thunk*' #878849
+
+ # some bashrc-mv users tend to do CFLAGS="${LDFLAGS}"
and then
+ # strip-unsupported-flags miss these during
compile-only tests
+ # (primarily done for 23.0 profiles' -z, not full
coverage)
+ filter-flags '-Wl,-z,*' #928038
fi
CHOST_amd64=x86_64-w64-mingw32
diff --git a/app-emulation/dxvk/dxvk-9999.ebuild
b/app-emulation/dxvk/dxvk-9999.ebuild
index 46dba5771f65..210cfcc0e294 100644
--- a/app-emulation/dxvk/dxvk-9999.ebuild
+++ b/app-emulation/dxvk/dxvk-9999.ebuild
@@ -111,6 +111,11 @@ src_configure() {
unset AR CC CXX RC STRIP
filter-flags '-fuse-ld=*'
filter-flags '-mfunction-return=thunk*' #878849
+
+ # some bashrc-mv users tend to do CFLAGS="${LDFLAGS}"
and then
+ # strip-unsupported-flags miss these during
compile-only tests
+ # (primarily done for 23.0 profiles' -z, not full
coverage)
+ filter-flags '-Wl,-z,*' #928038
fi
CHOST_amd64=x86_64-w64-mingw32