commit:     488929abc86392bed40e0f5b2a8f88ee1b398cec
Author:     Sergei Trofimovich <slyfox <AT> gentoo <DOT> org>
AuthorDate: Tue Oct 23 22:40:29 2018 +0000
Commit:     Sergei Trofimovich <slyfox <AT> gentoo <DOT> org>
CommitDate: Tue Oct 23 22:43:21 2018 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=488929ab

toolchain.eclass: don't delete 'go' and 'gofmt' for cross-compilers

gcc does not build final 'go' and 'gofmt' tools when cross-compiler
is built (CHOST != CTARGET).

This change fixes gcc-stage2 building for USE=go case.

Signed-off-by: Sergei Trofimovich <slyfox <AT> gentoo.org>

 eclass/toolchain.eclass | 17 +++++++++++------
 1 file changed, 11 insertions(+), 6 deletions(-)

diff --git a/eclass/toolchain.eclass b/eclass/toolchain.eclass
index 0e44d922ebe..47620e5ae5d 100644
--- a/eclass/toolchain.eclass
+++ b/eclass/toolchain.eclass
@@ -1815,12 +1815,17 @@ toolchain_src_install() {
                        ln -sf ${CTARGET}-${x} ${CTARGET}-${x}-${GCC_CONFIG_VER}
                fi
        done
-       # Rename the main go binaries as we don't want to clobber dev-lang/go
-       # when gcc-config runs. #567806
-       if tc_version_is_at_least 5 && is_go ; then
-               for x in go gofmt; do
-                       mv ${x} ${x}-${GCCMAJOR} || die
-               done
+
+       # When gcc builds a crosscompiler it does not install unprefixed tools.
+       # When cross-building gcc does install native tools.
+       if ! is_crosscompile; then
+               # Rename the main go binaries as we don't want to clobber 
dev-lang/go
+               # when gcc-config runs. #567806
+               if tc_version_is_at_least 5 && is_go ; then
+                       for x in go gofmt; do
+                               mv ${x} ${x}-${GCCMAJOR} || die
+                       done
+               fi
        fi
 
        # Now do the fun stripping stuff

Reply via email to