include $(TOPDIR)/rules.mk
-GO_VERSION_MAJOR_MINOR:=1.22
-GO_VERSION_PATCH:=12
-PKG_HASH:=012a7e1f37f362c0918c1dfa3334458ac2da1628c4b9cf4d9ca02db986e17d71
+GO_VERSION_MAJOR_MINOR:=1.24
+GO_VERSION_PATCH:=13
+PKG_HASH:=639a6204c2486b137df1eb6e78ee3ed038f9877d0e4b5a465e796a2153f858d7
PKG_NAME:=golang-bootstrap
PKG_VERSION:=$(GO_VERSION_MAJOR_MINOR)$(if $(GO_VERSION_PATCH),.$(GO_VERSION_PATCH))
openbsd/arm \
openbsd/arm64 \
openbsd/ppc64 \
+ openbsd/riscv64 \
plan9/386 \
plan9/amd64 \
plan9/arm \
wasip1/wasm \
windows/386 \
windows/amd64 \
- windows/arm \
windows/arm64
BOOTSTRAP_SOURCE:=go1.4-bootstrap-20171003.tar.gz
BOOTSTRAP_1_20_BUILD_DIR:=$(HOST_BUILD_DIR)/.go_bootstrap_1.20
+BOOTSTRAP_1_22_SOURCE:=go1.22.12.src.tar.gz
+BOOTSTRAP_1_22_SOURCE_URL:=$(GO_SOURCE_URLS)
+BOOTSTRAP_1_22_HASH:=012a7e1f37f362c0918c1dfa3334458ac2da1628c4b9cf4d9ca02db986e17d71
+
+BOOTSTRAP_1_22_BUILD_DIR:=$(HOST_BUILD_DIR)/.go_bootstrap_1.22
+
include $(INCLUDE_DIR)/host-build.mk
include $(INCLUDE_DIR)/package.mk
include ../golang-compiler.mk
BOOTSTRAP_UNPACK:=$(HOST_TAR) -C "$(BOOTSTRAP_BUILD_DIR)" --strip-components=1 -xzf "$(DL_DIR)/$(BOOTSTRAP_SOURCE)"
BOOTSTRAP_1_17_UNPACK:=$(HOST_TAR) -C "$(BOOTSTRAP_1_17_BUILD_DIR)" --strip-components=1 -xzf "$(DL_DIR)/$(BOOTSTRAP_1_17_SOURCE)"
BOOTSTRAP_1_20_UNPACK:=$(HOST_TAR) -C "$(BOOTSTRAP_1_20_BUILD_DIR)" --strip-components=1 -xzf "$(DL_DIR)/$(BOOTSTRAP_1_20_SOURCE)"
+BOOTSTRAP_1_22_UNPACK:=$(HOST_TAR) -C "$(BOOTSTRAP_1_22_BUILD_DIR)" --strip-components=1 -xzf "$(DL_DIR)/$(BOOTSTRAP_1_22_SOURCE)"
# Don't strip ELF executables in test data
RSTRIP:=:
$(eval $(call GoCompiler/AddProfile,Bootstrap-1.20,$(BOOTSTRAP_1_20_BUILD_DIR),,bootstrap-1.20,$(GO_HOST_OS_ARCH)))
+# Bootstrap 1.22
+
+define Download/golang-bootstrap-1.22
+ FILE:=$(BOOTSTRAP_1_22_SOURCE)
+ URL:=$(BOOTSTRAP_1_22_SOURCE_URL)
+ HASH:=$(BOOTSTRAP_1_22_HASH)
+endef
+$(eval $(call Download,golang-bootstrap-1.22))
+
+define Bootstrap-1.22/Prepare
+ mkdir -p "$(BOOTSTRAP_1_22_BUILD_DIR)" && $(BOOTSTRAP_1_22_UNPACK) ;
+endef
+Hooks/HostPrepare/Post+=Bootstrap-1.22/Prepare
+
+$(eval $(call GoCompiler/AddProfile,Bootstrap-1.22,$(BOOTSTRAP_1_22_BUILD_DIR),,bootstrap-1.22,$(GO_HOST_OS_ARCH)))
+
endif
+
# Host
ifeq ($(GO_HOST_PIE_SUPPORTED),1)
$(HOST_GO_VARS) \
)
- $(call GoCompiler/Host/Make, \
+ $(call GoCompiler/Bootstrap-1.22/Make, \
GOROOT_BOOTSTRAP="$(BOOTSTRAP_1_20_BUILD_DIR)" \
+ $(HOST_GO_VARS) \
+ )
+
+ $(call GoCompiler/Host/Make, \
+ GOROOT_BOOTSTRAP="$(BOOTSTRAP_1_22_BUILD_DIR)" \
$(if $(HOST_GO_ENABLE_PIE),GO_LDFLAGS="-buildmode pie") \
$(HOST_GO_VARS) \
)
GOBOOTSTRAP_TOOLEXEC
-GO_DEFAULT_VERSION:=1.25
+GO_DEFAULT_VERSION:=1.26
GO_HOST_VERSION:=$(patsubst golang%/host,%,$(filter golang%/host,$(PKG_BUILD_DEPENDS)))
ifeq ($(GO_HOST_VERSION),)
GO_HOST_VERSION:=$(GO_DEFAULT_VERSION)
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/arm64),,shared)
ifneq ($(filter $(GO_HOST_OS_ARCH),$(GO_PIE_SUPPORTED_OS_ARCH)),)
GO_HOST_PIE_SUPPORTED:=1
+++ /dev/null
-#
-# Copyright (C) 2018-2023 Jeffery To
-# Copyright (C) 2025-2026 George Sapkin
-#
-# SPDX-License-Identifier: GPL-2.0-only
-
-include $(TOPDIR)/rules.mk
-
-PKG_NAME:=golang1.25
-GO_VERSION_MAJOR_MINOR:=1.25
-GO_VERSION_PATCH:=7
-GO_VERSION_RC:=
-GO_BOOTSTRAP_VERSION:=bootstrap
-PKG_HASH:=178f2832820274b43e177d32f06a3ebb0129e427dd20a5e4c88df2c1763cf10a
-
-PKG_VERSION:=$(GO_VERSION_MAJOR_MINOR)$(if $(GO_VERSION_RC),.0)$(if $(GO_VERSION_PATCH),.$(GO_VERSION_PATCH))
-PKG_FILE_VERSION:=$(GO_VERSION_MAJOR_MINOR)$(if $(GO_VERSION_RC),rc$(GO_VERSION_RC))$(if $(GO_VERSION_PATCH),.$(GO_VERSION_PATCH))
-PKG_RELEASE:=1
-
-GO_SOURCE_URLS:=https://go.dev/dl/ \
- https://dl.google.com/go/ \
- https://golang.google.cn/dl/ \
- https://mirrors.nju.edu.cn/golang/ \
- https://mirrors.ustc.edu.cn/golang/
-
-PKG_SOURCE:=go$(PKG_FILE_VERSION).src.tar.gz
-PKG_SOURCE_URL:=$(GO_SOURCE_URLS)
-
-PKG_MAINTAINER:=George Sapkin <george@sapk.in>
-PKG_LICENSE:=BSD-3-Clause
-PKG_LICENSE_FILES:=LICENSE
-PKG_CPE_ID:=cpe:/a:golang:go
-
-PKG_BUILD_DEPENDS:=$(PKG_NAME)/host
-PKG_BUILD_DIR:=$(BUILD_DIR)/go-$(PKG_VERSION)
-PKG_BUILD_PARALLEL:=1
-PKG_BUILD_FLAGS:=no-mips16
-
-PKG_GO_PREFIX:=/usr
-PKG_GO_VERSION_ID:=$(GO_VERSION_MAJOR_MINOR)
-
-HOST_BUILD_DEPENDS:=golang$(if $(filter bootstrap,$(GO_BOOTSTRAP_VERSION)),-)$(GO_BOOTSTRAP_VERSION)/host
-HOST_BUILD_DIR:=$(BUILD_DIR_HOST)/go-$(PKG_VERSION)
-HOST_BUILD_PARALLEL:=1
-
-# From go tool dist list
-HOST_GO_VALID_OS_ARCH:= \
- 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
-include ../golang-version.mk
-
-$(eval $(call HostBuild))
-$(eval $(call BuildPackage,$(PKG_NAME)))
-$(eval $(call BuildPackage,$(PKG_NAME)-doc))
-$(eval $(call BuildPackage,$(PKG_NAME)-misc))
-$(eval $(call BuildPackage,$(PKG_NAME)-src))
-$(eval $(call BuildPackage,$(PKG_NAME)-tests))
+++ /dev/null
-#!/bin/sh
-#
-# SPDX-License-Identifier: GPL-2.0-only
-
-case "$1" in
- golang*doc|golang*misc|golang*src|golang*tests) exit ;;
-esac
-
-go version | grep -F " go$PKG_VERSION "
--- /dev/null
+#
+# Copyright (C) 2018-2023 Jeffery To
+# Copyright (C) 2025-2026 George Sapkin
+#
+# SPDX-License-Identifier: GPL-2.0-only
+
+include $(TOPDIR)/rules.mk
+
+PKG_NAME:=golang1.26
+GO_VERSION_MAJOR_MINOR:=1.26
+GO_VERSION_PATCH:=0
+GO_VERSION_RC:=
+GO_BOOTSTRAP_VERSION:=bootstrap
+PKG_HASH:=c9132a8a1f6bd2aa4aad1d74b8231d95274950483a4950657ee6c56e6e817790
+
+PKG_VERSION:=$(GO_VERSION_MAJOR_MINOR)$(if $(GO_VERSION_RC),.0)$(if $(GO_VERSION_PATCH),.$(GO_VERSION_PATCH))
+PKG_FILE_VERSION:=$(GO_VERSION_MAJOR_MINOR)$(if $(GO_VERSION_RC),rc$(GO_VERSION_RC))$(if $(GO_VERSION_PATCH),.$(GO_VERSION_PATCH))
+PKG_RELEASE:=1
+
+GO_SOURCE_URLS:=https://go.dev/dl/ \
+ https://dl.google.com/go/ \
+ https://golang.google.cn/dl/ \
+ https://mirrors.nju.edu.cn/golang/ \
+ https://mirrors.ustc.edu.cn/golang/
+
+PKG_SOURCE:=go$(PKG_FILE_VERSION).src.tar.gz
+PKG_SOURCE_URL:=$(GO_SOURCE_URLS)
+
+PKG_MAINTAINER:=George Sapkin <george@sapk.in>
+PKG_LICENSE:=BSD-3-Clause
+PKG_LICENSE_FILES:=LICENSE
+PKG_CPE_ID:=cpe:/a:golang:go
+
+PKG_BUILD_DEPENDS:=$(PKG_NAME)/host
+PKG_BUILD_DIR:=$(BUILD_DIR)/go-$(PKG_VERSION)
+PKG_BUILD_PARALLEL:=1
+PKG_BUILD_FLAGS:=no-mips16
+
+PKG_GO_PREFIX:=/usr
+PKG_GO_VERSION_ID:=$(GO_VERSION_MAJOR_MINOR)
+
+HOST_BUILD_DEPENDS:=golang$(if $(filter bootstrap,$(GO_BOOTSTRAP_VERSION)),-)$(GO_BOOTSTRAP_VERSION)/host
+HOST_BUILD_DIR:=$(BUILD_DIR_HOST)/go-$(PKG_VERSION)
+HOST_BUILD_PARALLEL:=1
+
+# From go tool dist list
+HOST_GO_VALID_OS_ARCH:= \
+ aix/ppc64 \
+ android/386 \
+ android/amd64 \
+ android/arm \
+ android/arm64 \
+ darwin/amd64 \
+ darwin/arm64 \
+ dragonfly/amd64 \
+ freebsd/386 \
+ freebsd/amd64 \
+ freebsd/arm \
+ freebsd/arm64 \
+ 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 \
+ openbsd/riscv64 \
+ plan9/386 \
+ plan9/amd64 \
+ plan9/arm \
+ solaris/amd64 \
+ wasip1/wasm \
+ windows/386 \
+ windows/amd64 \
+ windows/arm64
+
+include $(INCLUDE_DIR)/host-build.mk
+include $(INCLUDE_DIR)/package.mk
+include ../golang-version.mk
+
+$(eval $(call HostBuild))
+$(eval $(call BuildPackage,$(PKG_NAME)))
+$(eval $(call BuildPackage,$(PKG_NAME)-doc))
+$(eval $(call BuildPackage,$(PKG_NAME)-misc))
+$(eval $(call BuildPackage,$(PKG_NAME)-src))
+$(eval $(call BuildPackage,$(PKG_NAME)-tests))
--- /dev/null
+#!/bin/sh
+#
+# SPDX-License-Identifier: GPL-2.0-only
+
+case "$1" in
+ golang*doc|golang*misc|golang*src|golang*tests) exit ;;
+esac
+
+go version | grep -F " go$PKG_VERSION "