aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rwxr-xr-xextra/go/build67
-rw-r--r--extra/go/checksums2
-rw-r--r--extra/go/depends1
-rw-r--r--extra/go/sources2
-rw-r--r--extra/go/version1
5 files changed, 73 insertions, 0 deletions
diff --git a/extra/go/build b/extra/go/build
new file mode 100755
index 00000000..e5cf6f17
--- /dev/null
+++ b/extra/go/build
@@ -0,0 +1,67 @@
+#!/bin/sh -e
+
+# Disable stripping of binaries.
+# This breaks Go.
+:> nostrip
+
+export GOARCH=amd64
+export GO_LDFLAGS="-w -s"
+
+[ -f "$KISS_ROOT/var/db/kiss/installed/go/manifest" ] || {
+ export GOROOT=$PWD/go1.4-bootstrap
+ export GOROOT_FINAL=$PWD/lib/go-bootstrap
+
+ mkdir -p lib/go-bootstrap
+
+ cd "$GOROOT/src"
+ bash ./make.bash
+ cd ..
+ cp -a bin pkg src ../lib/go-bootstrap
+ cd ..
+}
+
+export GOROOT_FINAL=/usr/lib/go
+
+if [ -f "$KISS_ROOT/var/db/kiss/go/manifest" ]; then
+ export GOROOT_BOOTSTRAP=/usr/lib/go
+else
+ export GOROOT_BOOTSTRAP=$PWD/lib/go-bootstrap
+fi
+
+export GOROOT=$PWD/go-current
+
+(
+ cd "$GOROOT/src"
+ bash make.bash --no-clean -v
+)
+
+cd "$GOROOT"
+
+mkdir -p "$1/usr/bin" "$1/usr/lib/go/bin"
+
+install -m755 "bin/go" "$1/usr/lib/go/bin/go"
+install -m755 "bin/gofmt" "$1/usr/lib/go/bin/gofmt"
+
+ln -s "/usr/lib/go/bin/go" "$1/usr/bin"
+ln -s "/usr/lib/go/bin/gofmt" "$1/usr/bin"
+
+cp -a misc pkg src lib "$1/usr/lib/go"
+
+# Remove unneeded files.
+rm -f "$1/usr/share/go/doc/articles/wiki/get.bin"
+rm -f "$1/usr/lib/go/pkg/tool/"*/api
+rm -rf "$1/usr/lib/go/pkg/bootstrap"
+rm -rf "$1/usr/lib/go/pkg/obj"
+
+cd "$1/usr/lib/go/src"
+
+# Remove tests.
+find . -type f -a -name \*_test.go -delete
+find . -type f -a -name \*.bash -delete
+find . -type f -a -name \*.bat -delete
+find . -type f -a -name \*.rc -delete
+
+find . -type d -a -name testdata |
+ while read -r dir; do
+ rm -rf "$dir"
+ done
diff --git a/extra/go/checksums b/extra/go/checksums
new file mode 100644
index 00000000..29fc4cb9
--- /dev/null
+++ b/extra/go/checksums
@@ -0,0 +1,2 @@
+e4ad42cc5f5c19521fbbbde3680995f2546110b5c6aa2b48c3754ff7af9b41f4 go1.13.7.src.tar.gz
+f4ff5b5eb3a3cae1c993723f3eab519c5bae18866b5e5f96fe1102f0cb5c3e52 go1.4-bootstrap-20171003.tar.gz
diff --git a/extra/go/depends b/extra/go/depends
new file mode 100644
index 00000000..82a3ccad
--- /dev/null
+++ b/extra/go/depends
@@ -0,0 +1 @@
+bash make
diff --git a/extra/go/sources b/extra/go/sources
new file mode 100644
index 00000000..0348db2a
--- /dev/null
+++ b/extra/go/sources
@@ -0,0 +1,2 @@
+https://golang.org/dl/go1.13.7.src.tar.gz go-current
+https://dl.google.com/go/go1.4-bootstrap-20171003.tar.gz go1.4-bootstrap
diff --git a/extra/go/version b/extra/go/version
new file mode 100644
index 00000000..5b584842
--- /dev/null
+++ b/extra/go/version
@@ -0,0 +1 @@
+1.13.7 1