Scripts for bootstrapping various programming languages
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 

34 lines
894 B

#!/bin/sh
set -eu
version_boot="$1"
version_dest="$2"
version_go="$3"
dir_download="$PWD/download"
mkdir -p build; cd build
dir_install="$PWD/install-go$version_dest"
# Prepare source
mkdir -p "go$version_go"
tar xf "$dir_download/go$version_go.src.tar.gz" -C "go$version_go" --strip-components 1
cd "go$version_go"
# Build and install
(cd src; GOROOT_BOOTSTRAP="$PWD/../../install-go$version_boot" ./make.bash)
find src -type f \( ! -name '*.go' \
-a ! -name '*.c' \
-a ! -name '*.h' \
-a ! -name '*.s' \
-a ! -name '*.S' \
-a ! -name 'p256_asm_table.bin' \
\) -print -delete
find src -type f -name '*_test.go' -print -delete
find src -type d -name 'testdata' -print0 | xargs -0 rm -vrf
find src -type d -empty -print -delete
find pkg -type f -name '*.a' -print -delete
find pkg -type d -empty -print -delete
mkdir -p "$dir_install"
cp -at "$dir_install" bin pkg src