]> git.99rst.org Git - openwrt-packages.git/commitdiff
golang: add 1.27.0
authorGeorge Sapkin <redacted>
Wed, 19 Aug 2026 18:54:44 +0000 (21:54 +0300)
committerGeorge Sapkin <redacted>
Sun, 23 Aug 2026 16:48:33 +0000 (19:48 +0300)
Add Go 1.27 and use the default bootstrap.

Changes: https://go.dev/doc/go1.27
Signed-off-by: George Sapkin <redacted>
lang/golang/golang1.27/Makefile [new file with mode: 0644]
lang/golang/golang1.27/test-version.sh [new file with mode: 0755]
lang/golang/golang1.27/test.sh [new file with mode: 0755]

diff --git a/lang/golang/golang1.27/Makefile b/lang/golang/golang1.27/Makefile
new file mode 100644 (file)
index 0000000..a182a27
--- /dev/null
@@ -0,0 +1,104 @@
+#
+# 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.27
+GO_VERSION_MAJOR_MINOR:=1.27
+GO_VERSION_PATCH:=0
+GO_VERSION_RC:=
+GO_BOOTSTRAP_VERSION:=bootstrap
+PKG_HASH:=7002403d7cc44529ef6d26f69a44818263395ead7c16c05a5808ae047ebeb0e5
+
+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://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))
diff --git a/lang/golang/golang1.27/test-version.sh b/lang/golang/golang1.27/test-version.sh
new file mode 100755 (executable)
index 0000000..2fac549
--- /dev/null
@@ -0,0 +1,23 @@
+#!/bin/sh
+#
+# SPDX-License-Identifier: GPL-2.0-only
+
+# shellcheck shell=busybox
+
+case "$PKG_NAME" in
+golang?.??-doc|\
+golang?.??-misc|\
+golang?.??-src|\
+golang?.??-tests)
+       exit 0
+       ;;
+
+golang?.??)
+       go version | grep -F " go$PKG_VERSION "
+       ;;
+
+*)
+       echo "Untested package: $PKG_NAME" >&2
+       exit 1
+       ;;
+esac
diff --git a/lang/golang/golang1.27/test.sh b/lang/golang/golang1.27/test.sh
new file mode 100755 (executable)
index 0000000..cb02a5d
--- /dev/null
@@ -0,0 +1,21 @@
+#!/bin/sh
+#
+# SPDX-License-Identifier: GPL-2.0-only
+
+case "$1" in
+       golang*doc|golang*misc|golang*src|golang*tests) exit ;;
+esac
+
+cat <<'EOF' > hello.go
+package main
+
+import "fmt"
+
+func main() {
+       fmt.Println("Hello, World!")
+}
+
+EOF
+
+go run hello.go
+rm hello.go
git clone https://git.99rst.org/PROJECT