xref: /aosp_15_r20/external/toolchain-utils/go/android/build_go (revision 760c253c1ed00ce9abd48f8546f08516e57485fe)
1*760c253cSXin Li#!/bin/bash
2*760c253cSXin Liset -e -o pipefail
3*760c253cSXin Li
4*760c253cSXin Li# This script builds the go cross compilers for Android targets.
5*760c253cSXin Li#
6*760c253cSXin Li# Usage: build_go
7*760c253cSXin Li#
8*760c253cSXin Li# It assumes that the "arm-linux-androideabi" toolchain is already installed.
9*760c253cSXin Li# It assumes that the "aarch64-linux-android" toolchain is already installed.
10*760c253cSXin Li
11*760c253cSXin Liif [[ ! -e "make.bash" && -e "src/make.bash" ]]
12*760c253cSXin Lithen
13*760c253cSXin Li	cd src
14*760c253cSXin Lifi
15*760c253cSXin Li
16*760c253cSXin Li# Build the Go toolchain for arm devices.
17*760c253cSXin LiGOOS="android" GOARCH="arm" CGO_ENABLED="1" \
18*760c253cSXin Li	CC_FOR_TARGET="arm-linux-androideabi-clang" \
19*760c253cSXin Li	CXX_FOR_TARGET="arm-linux-androideabi-clang++" \
20*760c253cSXin Li	./make.bash --no-clean
21*760c253cSXin Li
22*760c253cSXin Li# Build the Go toolchain for arm64 devices.
23*760c253cSXin LiGOOS="android" GOARCH="arm64" CGO_ENABLED="1" \
24*760c253cSXin Li	CC_FOR_TARGET="aarch64-linux-android-clang" \
25*760c253cSXin Li	CXX_FOR_TARGET="aarch64-linux-android-clang++" \
26*760c253cSXin Li	./make.bash --no-clean
27