Commit | Line | Data |
---|---|---|
00bbfab6 FF |
1 | TERMUX_PKG_HOMEPAGE=https://golang.org/ |
2 | TERMUX_PKG_DESCRIPTION="Go programming language compiler" | |
223504d5 | 3 | _MAJOR_VERSION=1.5.1 |
6f553afd FF |
4 | # Need to be considered a higher version than "1.5rc1": |
5 | TERMUX_PKG_VERSION=${_MAJOR_VERSION}.rel | |
6 | TERMUX_PKG_SRCURL=https://storage.googleapis.com/golang/go${_MAJOR_VERSION}.src.tar.gz | |
00bbfab6 FF |
7 | TERMUX_PKG_FOLDERNAME=go |
8 | TERMUX_PKG_KEEP_STATIC_LIBRARIES=true | |
9 | ||
10 | TERMUX_HOST_GOLANG_DIR=$TERMUX_PKG_CACHEDIR/go-host-$TERMUX_PKG_VERSION | |
11 | ||
12 | termux_step_post_extract_package () { | |
13 | if [ ! -d $TERMUX_HOST_GOLANG_DIR ]; then | |
14 | cd $TERMUX_PKG_CACHEDIR | |
6f553afd | 15 | curl -o go-host.tar.gz https://storage.googleapis.com/golang/go${_MAJOR_VERSION}.linux-amd64.tar.gz |
00bbfab6 FF |
16 | tar xf go-host.tar.gz |
17 | mv go $TERMUX_HOST_GOLANG_DIR | |
18 | fi | |
19 | } | |
20 | ||
21 | termux_step_make_install () { | |
22 | if [ "$TERMUX_ARCH" = "arm" ]; then | |
e155ef0f FF |
23 | export GOOS=android |
24 | export CGO_ENABLED=1 | |
00bbfab6 FF |
25 | export GOARCH=arm |
26 | export GOARM=7 | |
27 | elif [ "$TERMUX_ARCH" = "i686" ]; then | |
e155ef0f FF |
28 | export GOOS=linux |
29 | export CGO_ENABLED=0 | |
00bbfab6 FF |
30 | export GOARCH=386 |
31 | export GO386=sse2 | |
32 | else | |
33 | echo "ERROR: Unsupported arch: $TERMUX_ARCH" | |
34 | exit 1 | |
35 | fi | |
36 | ||
e155ef0f FF |
37 | TERMUX_GOLANG_DIRNAME=${GOOS}_$GOARCH |
38 | ||
00bbfab6 FF |
39 | TERMUX_GODIR=$TERMUX_PREFIX/lib/go |
40 | rm -Rf $TERMUX_GODIR | |
41 | mkdir -p $TERMUX_GODIR/{src,pkg/tool/$TERMUX_GOLANG_DIRNAME,pkg/include,pkg/$TERMUX_GOLANG_DIRNAME} | |
42 | ||
43 | cd $TERMUX_PKG_SRCDIR/src | |
e155ef0f FF |
44 | env CC_FOR_TARGET=$CC \ |
45 | CXX_FOR_TARGET=$CXX \ | |
46 | CC=gcc \ | |
47 | GO_LDFLAGS="-extldflags=-pie" \ | |
48 | GOROOT_BOOTSTRAP=$TERMUX_HOST_GOLANG_DIR \ | |
49 | GOROOT_FINAL=$TERMUX_GODIR \ | |
50 | ./make.bash | |
00bbfab6 FF |
51 | |
52 | cd .. | |
53 | cp bin/$TERMUX_GOLANG_DIRNAME/{go,gofmt} $TERMUX_PREFIX/bin | |
54 | cp VERSION $TERMUX_GODIR/ | |
55 | cp pkg/tool/$TERMUX_GOLANG_DIRNAME/* $TERMUX_GODIR/pkg/tool/$TERMUX_GOLANG_DIRNAME/ | |
56 | cp -Rf src/* $TERMUX_GODIR/src/ | |
57 | cp pkg/include/* $TERMUX_GODIR/pkg/include/ | |
58 | cp -Rf pkg/$TERMUX_GOLANG_DIRNAME/* $TERMUX_GODIR/pkg/$TERMUX_GOLANG_DIRNAME/ | |
59 | } | |
2558c84f FF |
60 | |
61 | termux_step_post_massage () { | |
62 | find . -path '*/testdata*' -delete | |
63 | } |