2
0
mirror of https://codeberg.org/kiss-community/repo synced 2024-11-16 03:30:23 -07:00
repo/extra/go/build
2019-10-04 13:15:47 +03:00

64 lines
1.4 KiB
Bash
Executable File

#!/bin/sh -e
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