X-Git-Url: https://git.distorted.org.uk/~mdw/termux-packages/blobdiff_plain/00bbfab69fbd011113221a99328583d82c03f7e1..9158a301e0439d8aca5d085553c47c9ee44fd941:/packages/golang/build.sh diff --git a/packages/golang/build.sh b/packages/golang/build.sh index b27b53c1..34cfd98e 100644 --- a/packages/golang/build.sh +++ b/packages/golang/build.sh @@ -1,28 +1,35 @@ TERMUX_PKG_HOMEPAGE=https://golang.org/ TERMUX_PKG_DESCRIPTION="Go programming language compiler" -TERMUX_PKG_VERSION=1.5rc1 -TERMUX_PKG_SRCURL=https://storage.googleapis.com/golang/go1.5rc1.src.tar.gz +_MAJOR_VERSION=1.5.2 +# Need to be considered a higher version than "1.5rc1": +TERMUX_PKG_VERSION=1:$_MAJOR_VERSION +TERMUX_PKG_SRCURL=https://storage.googleapis.com/golang/go${_MAJOR_VERSION}.src.tar.gz TERMUX_PKG_FOLDERNAME=go TERMUX_PKG_KEEP_STATIC_LIBRARIES=true -TERMUX_HOST_GOLANG_DIR=$TERMUX_PKG_CACHEDIR/go-host-$TERMUX_PKG_VERSION +TERMUX_HOST_GOLANG_DIR=$TERMUX_PKG_CACHEDIR/go-host-$_MAJOR_VERSION termux_step_post_extract_package () { if [ ! -d $TERMUX_HOST_GOLANG_DIR ]; then cd $TERMUX_PKG_CACHEDIR - curl -o go-host.tar.gz https://storage.googleapis.com/golang/go${TERMUX_PKG_VERSION}.linux-amd64.tar.gz - tar xf go-host.tar.gz + GOHOST_TARFILE=go-host-${_MAJOR_VERSION}.tar.gz + if [ ! -f $GOHOST_TARFILE ]; then + curl -o $GOHOST_TARFILE https://storage.googleapis.com/golang/go${_MAJOR_VERSION}.linux-amd64.tar.gz + fi + tar xf $GOHOST_TARFILE mv go $TERMUX_HOST_GOLANG_DIR fi } termux_step_make_install () { if [ "$TERMUX_ARCH" = "arm" ]; then - TERMUX_GOLANG_DIRNAME=linux_arm + export GOOS=android + export CGO_ENABLED=1 export GOARCH=arm export GOARM=7 elif [ "$TERMUX_ARCH" = "i686" ]; then - TERMUX_GOLANG_DIRNAME=linux_386 + export GOOS=linux + export CGO_ENABLED=0 export GOARCH=386 export GO386=sse2 else @@ -30,12 +37,20 @@ termux_step_make_install () { exit 1 fi + TERMUX_GOLANG_DIRNAME=${GOOS}_$GOARCH + TERMUX_GODIR=$TERMUX_PREFIX/lib/go rm -Rf $TERMUX_GODIR mkdir -p $TERMUX_GODIR/{src,pkg/tool/$TERMUX_GOLANG_DIRNAME,pkg/include,pkg/$TERMUX_GOLANG_DIRNAME} cd $TERMUX_PKG_SRCDIR/src - env CC_FOR_TARGET=$CC CC=gcc GOROOT_BOOTSTRAP=$TERMUX_HOST_GOLANG_DIR GOROOT_FINAL=$TERMUX_GODIR GOOS=linux ./make.bash + env CC_FOR_TARGET=$CC \ + CXX_FOR_TARGET=$CXX \ + CC=gcc \ + GO_LDFLAGS="-extldflags=-pie" \ + GOROOT_BOOTSTRAP=$TERMUX_HOST_GOLANG_DIR \ + GOROOT_FINAL=$TERMUX_GODIR \ + ./make.bash cd .. cp bin/$TERMUX_GOLANG_DIRNAME/{go,gofmt} $TERMUX_PREFIX/bin @@ -45,3 +60,7 @@ termux_step_make_install () { cp pkg/include/* $TERMUX_GODIR/pkg/include/ cp -Rf pkg/$TERMUX_GOLANG_DIRNAME/* $TERMUX_GODIR/pkg/$TERMUX_GOLANG_DIRNAME/ } + +termux_step_post_massage () { + find . -path '*/testdata*' -delete +}