commit:     1f754863ff91dc4dca11e6a5217ffd449f39c74c
Author:     Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Thu Aug 15 21:23:22 2024 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Thu Aug 15 21:24:05 2024 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=1f754863

go-env.eclass: improve debug workaround

Use what Ionen did in x11-terms/kitty to avoid touching flags for
non-Go parts of the build.

Bug: https://bugs.gentoo.org/847991
Bug: https://bugs.gentoo.org/924436
Bug: https://bugs.gentoo.org/924496
Bug: https://bugs.gentoo.org/929219
Signed-off-by: Sam James <sam <AT> gentoo.org>

 eclass/go-env.eclass | 16 ++++++++++------
 1 file changed, 10 insertions(+), 6 deletions(-)

diff --git a/eclass/go-env.eclass b/eclass/go-env.eclass
index a4394161cb0b..11fdf943e774 100644
--- a/eclass/go-env.eclass
+++ b/eclass/go-env.eclass
@@ -42,16 +42,20 @@ go-env_set_compile_environment() {
        # XXX: Hack for checking ICE (bug #912152, gcc PR113204)
        has_version -b "sys-devel/gcc[debug]" && filter-lto
 
-       # bug #929219
-       if tc-is-gcc ; then
-               replace-flags -g3 -g
-               replace-flags -ggdb3 -ggdb
-       fi
-
        export CGO_CFLAGS="${CGO_CFLAGS:-$CFLAGS}"
        export CGO_CPPFLAGS="${CGO_CPPFLAGS:-$CPPFLAGS}"
        export CGO_CXXFLAGS="${CGO_CXXFLAGS:-$CXXFLAGS}"
        export CGO_LDFLAGS="${CGO_LDFLAGS:-$LDFLAGS}"
+
+       # bug #929219
+       if tc-is-gcc ; then
+               CGO_CFLAGS=$(
+                       CFLAGS=${CGO_CFLAGS}
+                       replace-flags -g3 -g
+                       replace-flags -ggdb3 -ggdb
+                       printf %s "${CFLAGS}"
+               )
+       fi
 }
 
 # @FUNCTION: go-env_goos

Reply via email to