aboutsummaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
-rw-r--r--internal/rosa/go.go34
-rw-r--r--internal/rosa/package/go.az59
2 files changed, 67 insertions, 26 deletions
diff --git a/internal/rosa/go.go b/internal/rosa/go.go
index 52c5cc7a..ebdaa8e2 100644
--- a/internal/rosa/go.go
+++ b/internal/rosa/go.go
@@ -56,16 +56,15 @@ ln -s \
func init() {
const (
- version = "1.26.4"
- checksum = "fpqJlxa41wKRtbnviYNLk9VxgcL-5oIEDxsriF8svU6kNwQW70oRRA9gTz_ImVoB"
+ version = "1.25.12"
+ checksum = "XNrGD_boJl2-El_a_T3BuTcMin_WPoU-FGddcNG8dcXA8n2QuxZB7kaUaCWu60QX"
)
meta := Metadata{
- Name: "go",
- Description: "the Go programming language toolchain",
+ Name: "go-bootstrap",
+ Description: "the Go programming language toolchain (bootstrap)",
Website: "https://go.dev",
Version: version,
-
- ID: 1227,
+ Exclude: true,
}
native.MustRegister(meta.Name, func(t Toolchain) (*Metadata, pkg.Artifact) {
var (
@@ -152,8 +151,8 @@ sed -i \
)
go125 := t.newGo(
- "1.25.12",
- "XNrGD_boJl2-El_a_T3BuTcMin_WPoU-FGddcNG8dcXA8n2QuxZB7kaUaCWu60QX",
+ version,
+ checksum,
[]string{"CGO_ENABLED=0"}, `
sed -i \
's,/lib/ld-musl-`+t.linuxArch()+`.so.1,/system/bin/linker,' \
@@ -165,23 +164,6 @@ rm \
`, go123,
)
- return &meta, t.newGo(
- version,
- checksum,
- finalEnv, `
-sed -i \
- 's,/lib/ld-musl-`+t.linuxArch()+`.so.1,/system/bin/linker,' \
- cmd/link/internal/`+t.arch+`/obj.go
-sed -i \
- 's/cpu.X86.HasAVX512VBMI/& \&\& cpu.X86.HasPOPCNT/' \
- internal/runtime/gc/scan/scan_amd64.go
-
-rm \
- os/root_unix_test.go \
- cmd/cgo/internal/testsanitizers/tsan_test.go \
- cmd/cgo/internal/testsanitizers/cshared_test.go
-`, go125,
- )
-
+ return &meta, go125
})
}
diff --git a/internal/rosa/package/go.az b/internal/rosa/package/go.az
new file mode 100644
index 00000000..63ff6832
--- /dev/null
+++ b/internal/rosa/package/go.az
@@ -0,0 +1,59 @@
+package go {
+ description = "the Go programming language toolchain";
+ website = "https://go.dev";
+ anitya = 1227;
+
+ version# = "1.26.4";
+ source = remoteTar {
+ url = "https://go.dev/dl/go"+version+".src.tar.gz";
+ checksum = "fpqJlxa41wKRtbnviYNLk9VxgcL-5oIEDxsriF8svU6kNwQW70oRRA9gTz_ImVoB";
+ compress = gzip;
+ };
+
+ env = [
+ "CC=cc",
+ "GOCACHE=/tmp/gocache",
+ "GOROOT_BOOTSTRAP=/system/go",
+ "TMPDIR=/dev/shm/go",
+ ];
+
+ enterSource = true;
+
+ exec = generic {
+ inPlace = true;
+ build = `
+mkdir /work/system/ "${TMPDIR}"
+cp -r . /work/system/go
+cd /work/system/go/src/
+chmod -R +w ..
+
+sed -i \
+ 's,/lib/ld-musl-`+linuxArch+`.so.1,/system/bin/linker,' \
+ cmd/link/internal/`+arch+`/obj.go
+sed -i \
+ 's/cpu.X86.HasAVX512VBMI/& \&\& cpu.X86.HasPOPCNT/' \
+ internal/runtime/gc/scan/scan_amd64.go
+
+rm \
+ os/root_unix_test.go \
+ cmd/cgo/internal/testsanitizers/tsan_test.go \
+ cmd/cgo/internal/testsanitizers/cshared_test.go
+
+set +u
+. ./make.bash "$@" --no-banner
+set -u
+`;
+ check = "bash run.bash --no-rebuild\n";
+ install = `
+../bin/go tool dist banner # print build info
+
+mkdir /work/system/bin
+ln -s \
+ ../go/bin/go \
+ ../go/bin/gofmt \
+ /work/system/bin
+`;
+ };
+
+ inputs = [ bash, go-bootstrap ];
+}