golang: use upstream OS/arch format
authorGeorge Sapkin <redacted>
Fri, 30 Jan 2026 02:52:59 +0000 (04:52 +0200)
committerGeorge Sapkin <redacted>
Thu, 5 Feb 2026 20:04:26 +0000 (22:04 +0200)
Use OS/arch format used by Go and reported by go tool dist list.

Update OS/arch combinations.

Signed-off-by: George Sapkin <redacted>
lang/golang/golang-bootstrap/Makefile
lang/golang/golang-compiler.mk
lang/golang/golang-package.mk
lang/golang/golang-values.mk
lang/golang/golang1.25/Makefile

index c5dc7852a7341e02bb31579c7789d4abd606494f..80f74222fbf033d8d9ed9fa2cf836e0ddbb9920c 100644 (file)
@@ -37,35 +37,56 @@ HOST_GO_PREFIX:=$(STAGING_DIR_HOSTPKG)
 HOST_GO_VERSION_ID:=bootstrap
 HOST_GO_ROOT:=$(HOST_GO_PREFIX)/lib/go-$(HOST_GO_VERSION_ID)
 
+# From go tool dist list
 HOST_GO_VALID_OS_ARCH:= \
-  android_386  android_amd64  android_arm  android_arm64 \
-  freebsd_386  freebsd_amd64  freebsd_arm  freebsd_arm64 \
-  linux_386    linux_amd64    linux_arm    linux_arm64 \
-  openbsd_386  openbsd_amd64  openbsd_arm  openbsd_arm64 \
-  netbsd_386   netbsd_amd64   netbsd_arm   netbsd_arm64 \
-  windows_386  windows_amd64  windows_arm  windows_arm64 \
-  \
-  plan9_386    plan9_amd64    plan9_arm \
-  \
-  darwin_amd64 darwin_arm64 \
-  ios_amd64    ios_arm64 \
-  \
-  dragonfly_amd64 \
-  illumos_amd64 \
-  solaris_amd64 \
-  \
-  aix_ppc64 \
-  js_wasm \
-  wasip1_wasm \
-  \
-  freebsd_riscv64 \
-  openbsd_riscv64 \
-  \
-  linux_ppc64 linux_ppc64le \
-  linux_mips linux_mipsle linux_mips64 linux_mips64le \
-  linux_loong64 linux_riscv64 linux_s390x \
-  \
-  openbsd_mips64
+  aix/ppc64 \
+  android/386 \
+  android/amd64 \
+  android/arm \
+  android/arm64 \
+  darwin/amd64 \
+  darwin/arm64 \
+  dragonfly/amd64 \
+  freebsd/386 \
+  freebsd/amd64 \
+  freebsd/arm \
+  freebsd/arm64 \
+  freebsd/riscv64 \
+  illumos/amd64 \
+  ios/amd64 \
+  ios/arm64 \
+  js/wasm \
+  linux/386 \
+  linux/amd64 \
+  linux/arm \
+  linux/arm64 \
+  linux/loong64 \
+  linux/mips \
+  linux/mips64 \
+  linux/mips64le \
+  linux/mipsle \
+  linux/ppc64 \
+  linux/ppc64le \
+  linux/riscv64 \
+  linux/s390x \
+  netbsd/386 \
+  netbsd/amd64 \
+  netbsd/arm \
+  netbsd/arm64 \
+  openbsd/386 \
+  openbsd/amd64 \
+  openbsd/arm \
+  openbsd/arm64 \
+  openbsd/ppc64 \
+  plan9/386 \
+  plan9/amd64 \
+  plan9/arm \
+  solaris/amd64 \
+  wasip1/wasm \
+  windows/386 \
+  windows/amd64 \
+  windows/arm \
+  windows/arm64
 
 BOOTSTRAP_SOURCE:=go1.4-bootstrap-20171003.tar.gz
 BOOTSTRAP_SOURCE_URL:=$(GO_SOURCE_URLS)
@@ -74,15 +95,26 @@ BOOTSTRAP_HASH:=f4ff5b5eb3a3cae1c993723f3eab519c5bae18866b5e5f96fe1102f0cb5c3e52
 BOOTSTRAP_BUILD_DIR:=$(HOST_BUILD_DIR)/.go_bootstrap
 
 BOOTSTRAP_GO_VALID_OS_ARCH:= \
-  darwin_386     darwin_amd64 \
-  dragonfly_386  dragonfly_amd64 \
-  freebsd_386    freebsd_amd64    freebsd_arm \
-  linux_386      linux_amd64      linux_arm \
-  netbsd_386     netbsd_amd64     netbsd_arm \
-  openbsd_386    openbsd_amd64 \
-  plan9_386      plan9_amd64 \
-                 solaris_amd64 \
-  windows_386    windows_amd64
+  darwin/386 \
+  darwin/amd64 \
+  dragonfly/386 \
+  dragonfly/amd64 \
+  freebsd/386 \
+  freebsd/amd64 \
+  freebsd/arm \
+  linux/386 \
+  linux/amd64 \
+  linux/arm \
+  netbsd/386 \
+  netbsd/amd64 \
+  netbsd/arm \
+  openbsd/386 \
+  openbsd/amd64 \
+  plan9/386 \
+  plan9/amd64 \
+  solaris/amd64 \
+  windows/386 \
+  windows/amd64
 
 BOOTSTRAP_1_17_SOURCE:=go1.17.13.src.tar.gz
 BOOTSTRAP_1_17_SOURCE_URL:=$(GO_SOURCE_URLS)
index c304a8d41d7cfb9cf7d015508695338be93a2490..5032836d87d801638f6f9ad469cf5e6a932ef8f5 100644 (file)
@@ -57,7 +57,7 @@ endef
 # 1: source go root
 # 2: destination prefix
 # 3: go version id
-# 4: GOOS_GOARCH
+# 4: GOOS_GOARCH with / as a separator
 # 5: install suffix (optional)
 # 6: if target, package architecture-specific sources
 define GoCompiler/Default/Install/Bin
@@ -76,19 +76,21 @@ define GoCompiler/Default/Install/Bin
 
        $(INSTALL_DIR) "$(2)/lib/go-$(3)/bin"
 
+       $(eval GO_HOST_OS_ARCH_PATH:=$(subst /,_,$(4)))
+
   ifeq ($(4),$(GO_HOST_OS_ARCH))
        $(INSTALL_BIN) -p "$(1)/bin"/* "$(2)/lib/go-$(3)/bin/"
   else
-       $(INSTALL_BIN) -p "$(1)/bin/$(4)"/* "$(2)/lib/go-$(3)/bin/"
+       $(INSTALL_BIN) -p "$(1)/bin/$(GO_HOST_OS_ARCH_PATH)"/* "$(2)/lib/go-$(3)/bin/"
   endif
 
-       if [ -d "$(1)/pkg/$(4)$(if $(5),_$(5))" ]; then \
+       if [ -d "$(1)/pkg/$(GO_HOST_OS_ARCH_PATH)$(if $(5),_$(5))" ]; then \
                $(INSTALL_DIR) "$(2)/lib/go-$(3)/pkg" ; \
-               $(CP) "$(1)/pkg/$(4)$(if $(5),_$(5))" "$(2)/lib/go-$(3)/pkg/" ; \
+               $(CP) "$(1)/pkg/$(GO_HOST_OS_ARCH_PATH)$(if $(5),_$(5))" "$(2)/lib/go-$(3)/pkg/" ; \
        fi
 
-       $(INSTALL_DIR) "$(2)/lib/go-$(3)/pkg/tool/$(4)"
-       $(INSTALL_BIN) -p "$(1)/pkg/tool/$(4)"/* "$(2)/lib/go-$(3)/pkg/tool/$(4)/"
+       $(INSTALL_DIR) "$(2)/lib/go-$(3)/pkg/tool/$(GO_HOST_OS_ARCH_PATH)"
+       $(INSTALL_BIN) -p "$(1)/pkg/tool/$(GO_HOST_OS_ARCH_PATH)"/* "$(2)/lib/go-$(3)/pkg/tool/$(GO_HOST_OS_ARCH_PATH)/"
 endef
 
 # 1: destination prefix
@@ -163,7 +165,7 @@ endef
 # 2: source go root
 # 3: destination prefix
 # 4: go version id
-# 5: GOOS_GOARCH
+# 5: GOOS_GOARCH with / as a separator
 # 6: install suffix (optional)
 define GoCompiler/AddProfile
 
index b0cb5eb126ef28174fd4eb9297d1bc76663a713d..16dac037106f67d2e138c93f82183286133efa19 100644 (file)
@@ -128,7 +128,7 @@ GO_PKG_INSTALL_BIN_PATH?=/usr/bin
 
 GO_PKG_WORK_DIR_NAME:=.go_work
 GO_PKG_BUILD_DIR=$(PKG_BUILD_DIR)/$(GO_PKG_WORK_DIR_NAME)/build
-GO_PKG_BUILD_BIN_DIR=$(GO_PKG_BUILD_DIR)/bin$(if $(GO_HOST_TARGET_DIFFERENT),/$(GO_OS_ARCH))
+GO_PKG_BUILD_BIN_DIR=$(GO_PKG_BUILD_DIR)/bin$(if $(GO_HOST_TARGET_DIFFERENT),/$(subst /,_,$(GO_OS_ARCH)))
 
 GO_PKG_BUILD_DEPENDS_PATH:=/usr/share/gocode
 GO_PKG_BUILD_DEPENDS_SRC=$(STAGING_DIR)$(GO_PKG_BUILD_DEPENDS_PATH)/src
index 64913f353481b0fb79bb567926f7fc1e69b4b20d..f3d26e09565aa42cbd5841c018f8823c42821562 100644 (file)
@@ -143,14 +143,14 @@ go_arch=$(subst \
 
 GO_OS:=linux
 GO_ARCH:=$(call go_arch,$(ARCH))
-GO_OS_ARCH:=$(GO_OS)_$(GO_ARCH)
+GO_OS_ARCH:=$(GO_OS)/$(GO_ARCH)
 
 GO_HOST_OS:=$(call tolower,$(HOST_OS))
 GO_HOST_ARCH:=$(call go_arch,$(subst \
   armv6l,arm,$(subst \
   armv7l,arm,$(subst \
   i686,i386,$(HOST_ARCH)))))
-GO_HOST_OS_ARCH:=$(GO_HOST_OS)_$(GO_HOST_ARCH)
+GO_HOST_OS_ARCH:=$(GO_HOST_OS)/$(GO_HOST_ARCH)
 
 # Filter lists for ARM64 cores
 # See https://en.wikipedia.org/wiki/ARM_architecture_family#Cores
@@ -285,21 +285,32 @@ GO_ARCH_DEPENDS:=@(aarch64||arm||i386||i686||loongarch64||mips||mips64||mips64el
 
 # From https://go.dev/src/internal/platform/supported.go
 GO_PIE_SUPPORTED_OS_ARCH:= \
-  android_386  android_amd64  android_arm  android_arm64 \
-  linux_386    linux_amd64    linux_arm    linux_arm64 \
-  windows_386  windows_amd64  windows_arm  windows_arm64 \
-  \
-  darwin_amd64 darwin_arm64 \
-  ios_amd64    ios_arm64 \
-  \
-  freebsd_amd64 \
-  \
-  aix_ppc64 \
-  \
-  linux_loong64 linux_ppc64le linux_riscv64 linux_s390x
+  aix/ppc64 \
+  android/386 \
+  android/amd64 \
+  android/arm \
+  android/arm64 \
+  darwin/amd64 \
+  darwin/arm64 \
+  freebsd/amd64 \
+  ios/amd64 \
+  ios/arm64 \
+  linux/386 \
+  linux/amd64 \
+  linux/arm \
+  linux/arm64 \
+  linux/loong64 \
+  linux/ppc64le \
+  linux/riscv64 \
+  linux/s390x \
+  openbsd/arm64 \
+  windows/386 \
+  windows/amd64 \
+  windows/arm \
+  windows/arm64
 
 # From https://go.dev/src/cmd/go/internal/work/init.go
-go_pie_install_suffix=$(if $(filter $(1),aix_ppc64 windows_386 windows_amd64 windows_arm windows_arm64),,shared)
+go_pie_install_suffix=$(if $(filter $(1),aix/ppc64 windows/386 windows/amd64 windows/arm windows/arm64),,shared)
 
 ifneq ($(filter $(GO_HOST_OS_ARCH),$(GO_PIE_SUPPORTED_OS_ARCH)),)
   GO_HOST_PIE_SUPPORTED:=1
index 700bd92c3e7f1cff6778c67b80e5c68df210d08c..68b5dad7eadd83feecd15c9a95e0d85cfc5909aa 100644 (file)
@@ -41,35 +41,56 @@ HOST_BUILD_DEPENDS:=golang$(if $(filter bootstrap,$(GO_BOOTSTRAP_VERSION)),-)$(G
 HOST_BUILD_DIR:=$(BUILD_DIR_HOST)/go-$(PKG_VERSION)
 HOST_BUILD_PARALLEL:=1
 
+# From go tool dist list
 HOST_GO_VALID_OS_ARCH:= \
-  android_386  android_amd64  android_arm  android_arm64 \
-  freebsd_386  freebsd_amd64  freebsd_arm  freebsd_arm64 \
-  linux_386    linux_amd64    linux_arm    linux_arm64 \
-  openbsd_386  openbsd_amd64  openbsd_arm  openbsd_arm64 \
-  netbsd_386   netbsd_amd64   netbsd_arm   netbsd_arm64 \
-  windows_386  windows_amd64  windows_arm  windows_arm64 \
-  \
-  plan9_386    plan9_amd64    plan9_arm \
-  \
-  darwin_amd64 darwin_arm64 \
-  ios_amd64    ios_arm64 \
-  \
-  dragonfly_amd64 \
-  illumos_amd64 \
-  solaris_amd64 \
-  \
-  aix_ppc64 \
-  js_wasm \
-  wasip1_wasm \
-  \
-  freebsd_riscv64 \
-  openbsd_riscv64 \
-  \
-  linux_ppc64 linux_ppc64le \
-  linux_mips linux_mipsle linux_mips64 linux_mips64le \
-  linux_loong64 linux_riscv64 linux_s390x \
-  \
-  openbsd_mips64
+  aix/ppc64 \
+  android/386 \
+  android/amd64 \
+  android/arm \
+  android/arm64 \
+  darwin/amd64 \
+  darwin/arm64 \
+  dragonfly/amd64 \
+  freebsd/386 \
+  freebsd/amd64 \
+  freebsd/arm \
+  freebsd/arm64 \
+  freebsd/riscv64 \
+  illumos/amd64 \
+  ios/amd64 \
+  ios/arm64 \
+  js/wasm \
+  linux/386 \
+  linux/amd64 \
+  linux/arm \
+  linux/arm64 \
+  linux/loong64 \
+  linux/mips \
+  linux/mips64 \
+  linux/mips64le \
+  linux/mipsle \
+  linux/ppc64 \
+  linux/ppc64le \
+  linux/riscv64 \
+  linux/s390x \
+  netbsd/386 \
+  netbsd/amd64 \
+  netbsd/arm \
+  netbsd/arm64 \
+  openbsd/386 \
+  openbsd/amd64 \
+  openbsd/arm \
+  openbsd/arm64 \
+  openbsd/ppc64 \
+  plan9/386 \
+  plan9/amd64 \
+  plan9/arm \
+  solaris/amd64 \
+  wasip1/wasm \
+  windows/386 \
+  windows/amd64 \
+  windows/arm \
+  windows/arm64
 
 include $(INCLUDE_DIR)/host-build.mk
 include $(INCLUDE_DIR)/package.mk
git clone https://git.99rst.org/PROJECT