git: ac549a1c65a3 - main - lang/go-devel: Update to go1.20, add riscv64 support

From: Dmitri Goutnik <dmgk_at_FreeBSD.org>
Date: Thu, 02 Feb 2023 13:47:40 UTC
The branch main has been updated by dmgk:

URL: https://cgit.FreeBSD.org/ports/commit/?id=ac549a1c65a3c73b022420a3e6843c3b326570d7

commit ac549a1c65a3c73b022420a3e6843c3b326570d7
Author:     Dmitri Goutnik <dmgk@FreeBSD.org>
AuthorDate: 2023-02-02 12:10:38 +0000
Commit:     Dmitri Goutnik <dmgk@FreeBSD.org>
CommitDate: 2023-02-02 13:47:29 +0000

    lang/go-devel: Update to go1.20, add riscv64 support
    
    Also update bootstrap to the latest go1.20 release, which adds support
    for freebsd/riscv64.
---
 lang/go-devel/Makefile | 21 +++++++++++++++------
 lang/go-devel/distinfo | 28 +++++++++++++++-------------
 2 files changed, 30 insertions(+), 19 deletions(-)

diff --git a/lang/go-devel/Makefile b/lang/go-devel/Makefile
index 18bed190c2cd..955752941efd 100644
--- a/lang/go-devel/Makefile
+++ b/lang/go-devel/Makefile
@@ -1,5 +1,5 @@
 PORTNAME=	go
-DISTVERSION?=	g20230112
+DISTVERSION?=	g20230201
 PORTREVISION?=	0
 CATEGORIES=	lang
 MASTER_SITES?=	https://github.com/dmgk/go-bootstrap/releases/download/${BOOTSTRAP_TAG}/:bootstrap \
@@ -18,7 +18,7 @@ LICENSE_FILE=	${WRKSRC}/LICENSE
 IGNORE=		fails to build with qemu-user-static
 .endif
 
-ONLY_FOR_ARCHS=	aarch64 amd64 armv6 armv7 i386
+ONLY_FOR_ARCHS=	aarch64 amd64 armv6 armv7 i386 riscv64
 
 RUN_DEPENDS=	${RUN_DEPENDS_${ARCH}}
 # ld.bfd from devel/binutils is needed for working cgo on aarch64
@@ -35,8 +35,8 @@ CPE_VENDOR=	golang
 .ifndef MASTERDIR
 USE_GITHUB=	yes
 GH_ACCOUNT=	golang
-# go1.20rc3
-GH_TAGNAME=	b3160e8bcedb25c5266e047ada01b6f462521401
+# go1.20
+GH_TAGNAME=	de4748c47c67392a57f250714509f590f68ad395
 .endif
 
 SHEBANG_FILES=	misc/wasm/go_js_wasm_exec \
@@ -63,7 +63,7 @@ V3_VARS=	GOAMD64=v3
 V4_DESC=	V3 instructions plus AVX512*
 V4_VARS=	GOAMD64=v4
 
-BOOTSTRAP_TAG=	go1.17.9
+BOOTSTRAP_TAG=	go1.20
 GO_SUFFIX=	${PKGNAMESUFFIX}
 
 GOARCH_aarch64=	arm64
@@ -71,9 +71,16 @@ GOARCH_amd64=	amd64
 GOARCH_armv6=	arm
 GOARCH_armv7=	arm
 GOARCH_i386=	386
+GOARCH_riscv64=	riscv64
 GOARM_armv6=	6
 GOARM_armv7=	7
 
+.include <bsd.port.pre.mk>
+
+.if ${ARCH} == riscv64 && ${OSREL:R} < 13
+IGNORE=		go/riscv64 requires FreeBSD 13 or later
+.endif
+
 post-extract:
 	@[ -z "${GH_TAGNAME}" ] || \
 		${ECHO_CMD} "devel ${DISTVERSION}-${GH_TAGNAME} ${OPSYS:tl}/${GOARCH_${ARCH}}" > ${WRKSRC}/VERSION
@@ -82,10 +89,12 @@ post-patch:
 	@${REINPLACE_CMD} -e 's|type -ap |type |' ${WRKSRC}/src/make.bash
 	@${REINPLACE_CMD} -e 's|^if ulimit -T|false \&\& &|' ${WRKSRC}/src/run.bash
 
+.if ${ARCH} != riscv64
 pre-build:
 	# Check that the running kernel has COMPAT_FREEBSD11 required by lang/go{,-devel} post-ino64
 	@${SETENV} CC="${CC}" OPSYS="${OPSYS}" OSVERSION="${OSVERSION}" WRKDIR="${WRKDIR}" \
 		${SH} ${SCRIPTSDIR}/rust-compat11-canary.sh
+.endif
 
 do-build:
 	cd ${WRKSRC}/src ; ${SETENV} \
@@ -140,4 +149,4 @@ makesum:
 	${RM} ${DISTINFO_FILE}.tmp
 .endif
 
-.include <bsd.port.mk>
+.include <bsd.port.post.mk>
diff --git a/lang/go-devel/distinfo b/lang/go-devel/distinfo
index 1b96bd20ce2e..1736d76e87e5 100644
--- a/lang/go-devel/distinfo
+++ b/lang/go-devel/distinfo
@@ -1,13 +1,15 @@
-TIMESTAMP = 1673795605
-SHA256 (go-freebsd-arm64-go1.17.9.tar.xz) = d9e9180bdc5ad0eec1654679a50084ebb31ecbe9bef24f0bd8ba917db8d1830c
-SIZE (go-freebsd-arm64-go1.17.9.tar.xz) = 38572776
-SHA256 (golang-go-g20230112-b3160e8bcedb25c5266e047ada01b6f462521401_GH0.tar.gz) = 36ec32080e0ca03f38d768b5e7580aff18cddc148de13a49155ea1f696a5d63f
-SIZE (golang-go-g20230112-b3160e8bcedb25c5266e047ada01b6f462521401_GH0.tar.gz) = 26086604
-SHA256 (go-freebsd-amd64-go1.17.9.tar.xz) = fd439ad091ed57d0ad728c05fc60465aad2e46e98da96e2d5b60b0c470f2efec
-SIZE (go-freebsd-amd64-go1.17.9.tar.xz) = 41951936
-SHA256 (go-freebsd-arm6-go1.17.9.tar.xz) = ba24590b8cec761207eafc5a39c71b5b5041320c6fb0c95d35c123f6054f8d1c
-SIZE (go-freebsd-arm6-go1.17.9.tar.xz) = 38938596
-SHA256 (go-freebsd-arm7-go1.17.9.tar.xz) = 9dc039278e174757962d100a227959037d4d7af18094af6433fa4d57cfa57e5f
-SIZE (go-freebsd-arm7-go1.17.9.tar.xz) = 38862156
-SHA256 (go-freebsd-386-go1.17.9.tar.xz) = 74854fd9e7d596c6abb1ecd55707c58a2f4d6ee875376e26bb5519889507291b
-SIZE (go-freebsd-386-go1.17.9.tar.xz) = 40566908
+TIMESTAMP = 1675339575
+SHA256 (go-freebsd-arm64-go1.20.tar.xz) = 674e0a9bce8b64dcc085b000eb83ae880e96be1ee47dad6ec86c82dbe5550623
+SIZE (go-freebsd-arm64-go1.20.tar.xz) = 32640640
+SHA256 (golang-go-g20230201-de4748c47c67392a57f250714509f590f68ad395_GH0.tar.gz) = 5fcebc8adbe308dda835dfcee83fff555000391b8c9a8594b86a7586789a7d6f
+SIZE (golang-go-g20230201-de4748c47c67392a57f250714509f590f68ad395_GH0.tar.gz) = 26098076
+SHA256 (go-freebsd-amd64-go1.20.tar.xz) = 170f612c4b8a59400f27d642aab37afa831fe2d6df3e7473dec2d4574a59a46c
+SIZE (go-freebsd-amd64-go1.20.tar.xz) = 34684360
+SHA256 (go-freebsd-arm6-go1.20.tar.xz) = acf99dbb285c6d2b80e0abfe4bffd0d230516ea84d17be0d5bc1045809e3d33a
+SIZE (go-freebsd-arm6-go1.20.tar.xz) = 33418476
+SHA256 (go-freebsd-arm7-go1.20.tar.xz) = 12dd61c802eada70380f0b4755656d82dbf228575c056775c682456380be5039
+SIZE (go-freebsd-arm7-go1.20.tar.xz) = 33346596
+SHA256 (go-freebsd-386-go1.20.tar.xz) = 34e888a37153270b33503a23885ea4c85ba4bd09849d2c937fc9d312c0f49983
+SIZE (go-freebsd-386-go1.20.tar.xz) = 35448892
+SHA256 (go-freebsd-riscv64-go1.20.tar.xz) = 010921013d24124ff31f4b1965456349547acf936572fc6e0bcf95a0542794bd
+SIZE (go-freebsd-riscv64-go1.20.tar.xz) = 33807544