summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorEli Schwartz <eschwartz93@gmail.com>2024-03-15 15:42:20 -0400
committerSam James <sam@gentoo.org>2024-03-15 20:21:37 +0000
commit4a0b19c40778736c971a3ef371413404b25ceac0 (patch)
tree345e0faf6bffbd290b9954ee33ede39fe431a04d /games-emulation
parentapp-emulation/vkd3d-proton: sync live (diff)
downloadgentoo-4a0b19c40778736c971a3ef371413404b25ceac0.tar.gz
gentoo-4a0b19c40778736c971a3ef371413404b25ceac0.tar.bz2
gentoo-4a0b19c40778736c971a3ef371413404b25ceac0.zip
games-emulation/advancemame: suppress compiler optimizations with fire
Upstream configure.ac sets some sanity flags, but only when CFLAGS aren't defined. They acknowledge the codebase was written "when compilers where not aggressively optimizing undefined behaviour". We should respect that even though we do set CFLAGS. Also suppress LTO because why on earth should we assume that will work if they have that much UB. Closes: https://bugs.gentoo.org/858626 Signed-off-by: Eli Schwartz <eschwartz93@gmail.com> Signed-off-by: Sam James <sam@gentoo.org>
Diffstat (limited to 'games-emulation')
-rw-r--r--games-emulation/advancemame/advancemame-3.9-r1.ebuild (renamed from games-emulation/advancemame/advancemame-3.9.ebuild)11
1 files changed, 11 insertions, 0 deletions
diff --git a/games-emulation/advancemame/advancemame-3.9.ebuild b/games-emulation/advancemame/advancemame-3.9-r1.ebuild
index 344e87abb787..ff19eda49ce8 100644
--- a/games-emulation/advancemame/advancemame-3.9.ebuild
+++ b/games-emulation/advancemame/advancemame-3.9-r1.ebuild
@@ -56,6 +56,17 @@ src_prepare() {
}
src_configure() {
+ # https://bugs.gentoo.org/858626
+ #
+ # From upstream configure.ac, only enabled if CFLAGS is not set:
+ # - Code was written when compilers where not aggressively optimizing undefined behaviour about aliasing
+ # - Code was written when compilers where not aggressively optimizing undefined behaviour about overflow in signed integers
+ # - Code was written on Intel where char is signed
+ #
+ # Do not trust with LTO either, BTW
+ append-flags -fno-strict-aliasing -fno-strict-overflow -fsigned-char
+ filter-lto
+
# Fix for bug #78030
use ppc && append-ldflags "-Wl,--relax"