summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorGeorge Sapkin2026-01-30 02:52:59 +0000
committerGeorge Sapkin2026-02-05 20:04:26 +0000
commit1eaa1f848bd5e9a83b1726153037ca5f46fbc416 (patch)
tree7f36796700f3e919a1eb90a27d188e291482784f
parentc15e32426fbd8dbf65632d39f8c465a453e21ca5 (diff)
downloadpackages-1eaa1f848bd5e9a83b1726153037ca5f46fbc416.tar.gz
golang: use upstream OS/arch format
Use OS/arch format used by Go and reported by go tool dist list. Update OS/arch combinations. Signed-off-by: George Sapkin <george@sapk.in>
-rw-r--r--lang/golang/golang-bootstrap/Makefile106
-rw-r--r--lang/golang/golang-compiler.mk16
-rw-r--r--lang/golang/golang-package.mk2
-rw-r--r--lang/golang/golang-values.mk41
-rw-r--r--lang/golang/golang1.25/Makefile77
5 files changed, 154 insertions, 88 deletions
diff --git a/lang/golang/golang-bootstrap/Makefile b/lang/golang/golang-bootstrap/Makefile
index c5dc7852a7..80f74222fb 100644
--- a/lang/golang/golang-bootstrap/Makefile
+++ b/lang/golang/golang-bootstrap/Makefile
@@ -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)
diff --git a/lang/golang/golang-compiler.mk b/lang/golang/golang-compiler.mk
index c304a8d41d..5032836d87 100644
--- a/lang/golang/golang-compiler.mk
+++ b/lang/golang/golang-compiler.mk
@@ -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
diff --git a/lang/golang/golang-package.mk b/lang/golang/golang-package.mk
index b0cb5eb126..16dac03710 100644
--- a/lang/golang/golang-package.mk
+++ b/lang/golang/golang-package.mk
@@ -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
diff --git a/lang/golang/golang-values.mk b/lang/golang/golang-values.mk
index 64913f3534..f3d26e0956 100644
--- a/lang/golang/golang-values.mk
+++ b/lang/golang/golang-values.mk
@@ -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
diff --git a/lang/golang/golang1.25/Makefile b/lang/golang/golang1.25/Makefile
index 700bd92c3e..68b5dad7ea 100644
--- a/lang/golang/golang1.25/Makefile
+++ b/lang/golang/golang1.25/Makefile
@@ -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