From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from lists.gentoo.org (pigeon.gentoo.org [208.92.234.80]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits) server-digest SHA256) (No client certificate requested) by finch.gentoo.org (Postfix) with ESMTPS id 434D01580D3 for ; Fri, 24 Nov 2023 18:35:27 +0000 (UTC) Received: from pigeon.gentoo.org (localhost [127.0.0.1]) by pigeon.gentoo.org (Postfix) with SMTP id 4EC1B2BC058; Fri, 24 Nov 2023 18:35:26 +0000 (UTC) Received: from smtp.gentoo.org (woodpecker.gentoo.org [140.211.166.183]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (No client certificate requested) by pigeon.gentoo.org (Postfix) with ESMTPS id 237F32BC02C for ; Fri, 24 Nov 2023 18:35:26 +0000 (UTC) Received: from oystercatcher.gentoo.org (oystercatcher.gentoo.org [148.251.78.52]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (No client certificate requested) by smtp.gentoo.org (Postfix) with ESMTPS id 0BF24335DC3 for ; Fri, 24 Nov 2023 18:35:25 +0000 (UTC) Received: from localhost.localdomain (localhost [IPv6:::1]) by oystercatcher.gentoo.org (Postfix) with ESMTP id 4901613B3 for ; Fri, 24 Nov 2023 18:35:23 +0000 (UTC) From: "Sam James" To: gentoo-commits@lists.gentoo.org Content-Transfer-Encoding: 8bit Content-type: text/plain; charset=UTF-8 Reply-To: gentoo-dev@lists.gentoo.org, "Sam James" Message-ID: <1700847876.6a3a1e6a613329f2a4ea88a2fffee0134da780e9.sam@gentoo> Subject: [gentoo-commits] repo/gentoo:master commit in: eclass/ X-VCS-Repository: repo/gentoo X-VCS-Files: eclass/go-env.eclass X-VCS-Directories: eclass/ X-VCS-Committer: sam X-VCS-Committer-Name: Sam James X-VCS-Revision: 6a3a1e6a613329f2a4ea88a2fffee0134da780e9 X-VCS-Branch: master Date: Fri, 24 Nov 2023 18:35:23 +0000 (UTC) Precedence: bulk List-Post: List-Help: List-Unsubscribe: List-Subscribe: List-Id: Gentoo Linux mail X-BeenThere: gentoo-commits@lists.gentoo.org X-Auto-Response-Suppress: DR, RN, NRN, OOF, AutoReply X-Archives-Salt: a9b194bb-d171-4cfb-bfe2-355dad089218 X-Archives-Hash: 3ba0782b540368c0c284dbd70078fab8 commit: 6a3a1e6a613329f2a4ea88a2fffee0134da780e9 Author: Sam James gentoo org> AuthorDate: Fri Nov 24 17:22:58 2023 +0000 Commit: Sam James gentoo org> CommitDate: Fri Nov 24 17:44:36 2023 +0000 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=6a3a1e6a go-env.eclass: Reapply "also set GOARM & GO386 when applicable" This reverts commit 5718f8440197298e0aa1df2a88a66057d2cdaf83. Reverted because of the issue mentioned in 5718f8440197298e0aa1df2a88a66057d2cdaf83 to not leave things broken while investigating a fix. Reapplying and fixing it up in a followup. Signed-off-by: Sam James gentoo.org> eclass/go-env.eclass | 21 +++++++++++++++++++++ 1 file changed, 21 insertions(+) diff --git a/eclass/go-env.eclass b/eclass/go-env.eclass index 08e3cf498a70..4bc8c4b15c65 100644 --- a/eclass/go-env.eclass +++ b/eclass/go-env.eclass @@ -19,6 +19,8 @@ inherit toolchain-funcs # @FUNCTION: go-env_set_compile_environment # @DESCRIPTION: # Set up basic compile environment: CC, CXX, and GOARCH. +# Necessary platform-specific settings such as GOARM or GO386 are also set +# according to the Portage configuration when building for those architectures. # Also carry over CFLAGS, LDFLAGS and friends. # Required for cross-compiling with crossdev. # If not set, host defaults will be used and the resulting binaries are host arch. @@ -28,6 +30,9 @@ go-env_set_compile_environment() { tc-export CC CXX export GOARCH="$(go-env_goarch)" + use arm && export GOARM=$(go-env_goarm) + use x86 && export GO386=$(usex cpu_flags_x86_sse2 '' 'softfloat') + export CGO_CFLAGS="${CGO_CFLAGS:-$CFLAGS}" export CGO_CPPFLAGS="${CGO_CPPFLAGS:-$CPPFLAGS}" export CGO_CXXFLAGS="${CGO_CXXFLAGS:-$CXXFLAGS}" @@ -57,4 +62,20 @@ go-env_goarch() { esac } +# @FUNCTION: go-env_goarm +# @USAGE: [CHOST-value] +# @DESCRIPTION: +# Returns the appropriate GOARM setting for the CHOST given, or the default +# CHOST. +go-env_goarm() { + case "${1:-${CHOST}}" in + armv5*) echo 5;; + armv6*) echo 6;; + armv7*) echo 7;; + *) + die "unknown GOARM for ${1:-${CHOST}}" + ;; + esac +} + fi