Was supposed to be a linux distribution, now just a collection of build scripts for packages on top of (ideally) any distribution.
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.

59 lines
1.5 KiB

name=go
6 years ago
majver=1.11.1
7 years ago
version=$majver
bootstrap_version=1.4.3
# Go doesn't like being stripped
options="!strip,$options"
define_option '!bootstrap: Bootstrap this program'
dlextract "https://storage.googleapis.com/golang/$name$version.src.tar.gz" \
6 years ago
'eb9e9792247143705a7aacea9398cde0'
if option bootstrap; then
download "https://storage.googleapis.com/golang/$name$bootstrap_version.src.tar.gz" \
'dfb604511115dd402a77a553a5923a04'
fi
_
if option bootstrap; then
mkdir bootstrap; cd bootstrap
extract "$name$bootstrap_version.src.tar.gz"
cd "$name/src"
CGO_ENABLED=0 ./make.bash
cd ..
export GOROOT_BOOTSTRAP="$PWD"
cd ../..
else
export GOROOT_BOOTSTRAP="$GOROOT"
fi
cd "$name"
export GOROOT="$PWD"
( cd src
GOROOT_FINAL="/$dir_prefix/$dir_lib/go/$name$majver" \
./make.bash
../bin/go install -buildmode=shared -linkshared std
)
# Clean up a bit
rm -rf pkg/bootstrap pkg/obj
find src -type f \( ! -name "*.go" -a ! -name "*.c" -a ! -name "*.s" -a ! -name "*.S" -a ! -name "*.h" \) -delete
find src -type d -empty -delete
mkdir -p "$dir_install/$dir_prefix/$dir_lib/go/$name$majver"
cp -at "$dir_install/$dir_prefix/$dir_lib/go/$name$majver" bin pkg src
# Set global GOPATH for external libraries
cat > go.sh << EOF
export GOROOT="/$dir_prefix/$dir_lib/go/$name$majver"
export PATH="\$PATH:\$GOROOT/bin"
EOF
install -Dm755 -t "$dir_install/$dir_prefix/$dir_sysconf/profile.d" go.sh
# vim:set tabstop=4 shiftwidth=4 syntax=sh expandtab: