From 8fc49af4ab55f9cbd6de5754eb41ba76393e0a65 Mon Sep 17 00:00:00 2001 From: CrazyMax Date: Fri, 20 Jan 2023 15:13:11 +0100 Subject: [PATCH] hack: check if cross-compiling before setting ARM target name Signed-off-by: CrazyMax (cherry picked from commit 67aa86f1e01f2801a812fa46c95e7e93ea6c0ca1) Signed-off-by: Sebastiaan van Stijn --- hack/make/.binary | 35 +++++++++++++++++++---------------- 1 file changed, 19 insertions(+), 16 deletions(-) diff --git a/hack/make/.binary b/hack/make/.binary index 64fbadcd79..e592985929 100644 --- a/hack/make/.binary +++ b/hack/make/.binary @@ -16,22 +16,25 @@ source "${MAKEDIR}/.go-autogen" ( export GOGC=${DOCKER_BUILD_GOGC:-1000} - if [ "$(go env GOOS)/$(go env GOARCH)" = "linux/arm" ]; then - # specify name of the target ARM architecture - case "$(go env GOARM)" in - 5) - export CGO_CFLAGS="-march=armv5t" - export CGO_CXXFLAGS="-march=armv5t" - ;; - 6) - export CGO_CFLAGS="-march=armv6" - export CGO_CXXFLAGS="-march=armv6" - ;; - 7) - export CGO_CFLAGS="-march=armv7-a" - export CGO_CXXFLAGS="-march=armv7-a" - ;; - esac + if [ "$(go env GOOS)/$(go env GOARCH)" != "$(go env GOHOSTOS)/$(go env GOHOSTARCH)" ]; then + # must be cross-compiling! + if [ "$(go env GOOS)/$(go env GOARCH)" = "linux/arm" ]; then + # specify name of the target ARM architecture + case "$(go env GOARM)" in + 5) + export CGO_CFLAGS="-march=armv5t" + export CGO_CXXFLAGS="-march=armv5t" + ;; + 6) + export CGO_CFLAGS="-march=armv6" + export CGO_CXXFLAGS="-march=armv6" + ;; + 7) + export CGO_CFLAGS="-march=armv7-a" + export CGO_CXXFLAGS="-march=armv7-a" + ;; + esac + fi fi # -buildmode=pie is not supported on Windows arm64 and Linux mips*, ppc64be