termux-packages/scripts/build/setup/termux_setup_golang.sh

37 lines
1.2 KiB
Bash
Raw Normal View History

# Utility function for golang-using packages to setup a go toolchain.
termux_setup_golang() {
if [ "$TERMUX_ON_DEVICE_BUILD" = "false" ]; then
2020-09-11 02:50:33 +02:00
local TERMUX_GO_VERSION=go1.15.2
local TERMUX_GO_PLATFORM=linux-amd64
local TERMUX_BUILDGO_FOLDER=$TERMUX_COMMON_CACHEDIR/${TERMUX_GO_VERSION}
export GOROOT=$TERMUX_BUILDGO_FOLDER
export PATH=$GOROOT/bin:$PATH
if [ -d "$TERMUX_BUILDGO_FOLDER" ]; then return; fi
local TERMUX_BUILDGO_TAR=$TERMUX_COMMON_CACHEDIR/${TERMUX_GO_VERSION}.${TERMUX_GO_PLATFORM}.tar.gz
rm -Rf "$TERMUX_COMMON_CACHEDIR/go" "$TERMUX_BUILDGO_FOLDER"
termux_download https://golang.org/dl/${TERMUX_GO_VERSION}.${TERMUX_GO_PLATFORM}.tar.gz \
"$TERMUX_BUILDGO_TAR" \
2020-09-11 02:50:33 +02:00
b49fda1ca29a1946d6bb2a5a6982cf07ccd2aba849289508ee0f9918f6bb4552
( cd "$TERMUX_COMMON_CACHEDIR"; tar xf "$TERMUX_BUILDGO_TAR"; mv go "$TERMUX_BUILDGO_FOLDER"; rm "$TERMUX_BUILDGO_TAR" )
else
if [ "$(dpkg-query -W -f '${db:Status-Status}\n' golang 2>/dev/null)" != "installed" ]; then
echo "Package 'golang' is not installed."
echo "You can install it with"
echo
echo " pkg install golang"
echo
echo "or build it from source with"
echo
echo " ./build-package.sh golang"
echo
exit 1
fi
export GOROOT="$TERMUX_PREFIX/lib/go"
fi
}