]> git.lizzy.rs Git - rust.git/blob - src/ci/docker/scripts/android-ndk.sh
7fc2ebafea8c2d92a9837eca456ca6bf370e6ad4
[rust.git] / src / ci / docker / scripts / android-ndk.sh
1 # Copyright 2017 The Rust Project Developers. See the COPYRIGHT
2 # file at the top-level directory of this distribution and at
3 # http://rust-lang.org/COPYRIGHT.
4 #
5 # Licensed under the Apache License, Version 2.0 <LICENSE-APACHE or
6 # http://www.apache.org/licenses/LICENSE-2.0> or the MIT license
7 # <LICENSE-MIT or http://opensource.org/licenses/MIT>, at your
8 # option. This file may not be copied, modified, or distributed
9 # except according to those terms.
10
11 set -ex
12
13 URL=https://dl.google.com/android/repository
14
15 download_ndk() {
16     mkdir -p /android/ndk
17     cd /android/ndk
18     curl -sO $URL/$1
19     unzip -q $1
20     rm $1
21     mv android-ndk-* ndk
22 }
23
24 make_standalone_toolchain() {
25     # See https://developer.android.com/ndk/guides/standalone_toolchain.htm
26     python2.7 /android/ndk/ndk/build/tools/make_standalone_toolchain.py \
27         --install-dir /android/ndk/$1-$2 \
28         --arch $1 \
29         --api $2
30 }
31
32 remove_ndk() {
33     rm -rf /android/ndk/ndk
34 }
35
36 download_and_make_toolchain() {
37     download_ndk $1 && \
38     make_standalone_toolchain $2 $3 && \
39     remove_ndk
40 }