public inbox for gentoo-commits@lists.gentoo.org
 help / color / mirror / Atom feed
* [gentoo-commits] repo/gentoo:master commit in: dev-lang/go/files/
@ 2024-02-23 19:34 William Hubbs
  0 siblings, 0 replies; only message in thread
From: William Hubbs @ 2024-02-23 19:34 UTC (permalink / raw
  To: gentoo-commits

commit:     520ac892cb7370fc739cd631d87f51735344e3d5
Author:     William Hubbs <williamh <AT> gentoo <DOT> org>
AuthorDate: Fri Feb 23 19:33:28 2024 +0000
Commit:     William Hubbs <williamh <AT> gentoo <DOT> org>
CommitDate: Fri Feb 23 19:34:36 2024 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=520ac892

dev-lang/go: add script to create go bootstrap tarballs

Signed-off-by: William Hubbs <williamh <AT> gentoo.org>

 dev-lang/go/files/make-go-bootstraps | 55 ++++++++++++++++++++++++++++++++++++
 1 file changed, 55 insertions(+)

diff --git a/dev-lang/go/files/make-go-bootstraps b/dev-lang/go/files/make-go-bootstraps
new file mode 100755
index 000000000000..a929fd988377
--- /dev/null
+++ b/dev-lang/go/files/make-go-bootstraps
@@ -0,0 +1,55 @@
+#!/bin/bash
+set -e
+
+# This creates go bootstrap tarballs for the version of go currently
+# installed on your system.
+# It should be run as part of bumping dev-lang/go when a newer version
+# of go is required for bootstrapping.
+# Make sure the version of go required for bootstrapping is installed
+# then run this script.
+# The script will output the location where the bootstrap tarballs are
+# stored.
+# Next, update the GO_BV variable in the new version of the dev-lang/go
+# ebuild to the version in the bootstrap tarballs file name.
+
+go_tuples=(
+	darwin-amd64
+	darwin-arm64
+	linux-386
+	linux-amd64
+	linux-arm
+	linux-arm64
+	linux-loong64
+	linux-mips
+	linux-mipsle
+	linux-mips64
+	linux-mips64le
+	linux-ppc64
+	linux-ppc64le
+	linux-riscv64
+	linux-s390x
+	solaris-amd64
+)
+
+go_version=$(go version)
+go_version=${go_version##*go}
+go_version=${go_version%% *}
+build_path=$(mktemp -d /tmp/go-bootstraps-XXXXXX)
+pushd "${build_path}"
+git clone https://github.com/golang/go.git
+cd go
+git checkout go"${go_version}"
+cd src
+for tuple in ${go_tuples[@]}; do
+	printf "Building go version %s bootstrap tarball for %s\n" "${go_version}" "${tuple}"
+	GOOS=${tuple%%-*} GOARCH=${tuple##*-} ./bootstrap.bash
+	rm -fr ../../go-${tuple}-bootstrap
+done
+cd ../..
+rm -fr go
+for f in *tbz; do
+		mv "${f}" "${f/go/go-${go_version}}"
+	done
+popd
+mv "${build_path}" "${build_path%-*}"
+printf "The bootstrap tarballs are stored in %s\n" "${build_path%-*}"


^ permalink raw reply related	[flat|nested] only message in thread

only message in thread, other threads:[~2024-02-23 19:34 UTC | newest]

Thread overview: (only message) (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2024-02-23 19:34 [gentoo-commits] repo/gentoo:master commit in: dev-lang/go/files/ William Hubbs

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox