diff options
| author | kinichiro <kinichiro.inoguchi@gmail.com> | 2019-01-05 16:22:24 +0900 |
|---|---|---|
| committer | kinichiro <kinichiro.inoguchi@gmail.com> | 2019-01-05 18:10:59 +0900 |
| commit | 983c7fbd0da0599fae405e3f6bd5657f1bd961a3 (patch) | |
| tree | e302b35a6e91644ca66a92f47a431aa4d689e895 /scripts | |
| parent | 779ec4dedcc62204a4d2acecb528a24931313a3d (diff) | |
| download | portable-983c7fbd0da0599fae405e3f6bd5657f1bd961a3.tar.gz portable-983c7fbd0da0599fae405e3f6bd5657f1bd961a3.tar.bz2 portable-983c7fbd0da0599fae405e3f6bd5657f1bd961a3.zip | |
Add Android build for Travis-CI
Diffstat (limited to 'scripts')
| -rwxr-xr-x | scripts/travis | 61 |
1 files changed, 61 insertions, 0 deletions
diff --git a/scripts/travis b/scripts/travis index 3396479..5553276 100755 --- a/scripts/travis +++ b/scripts/travis | |||
| @@ -95,4 +95,65 @@ elif [ "x$ARCH" = "xarm32" -o "x$ARCH" = "xarm64" ]; then | |||
| 95 | 95 | ||
| 96 | make -j 4 check | 96 | make -j 4 check |
| 97 | file apps/openssl/.libs/openssl | 97 | file apps/openssl/.libs/openssl |
| 98 | |||
| 99 | elif [ "x$ARCH" = "xandroid" ]; then | ||
| 100 | echo y | sdkmanager 'ndk-bundle' | ||
| 101 | echo y | sdkmanager 'cmake;3.6.4111459' | ||
| 102 | echo y | sdkmanager 'lldb;3.0' | ||
| 103 | echo y | sdkmanager --update | ||
| 104 | echo y | sdkmanager --licenses | ||
| 105 | |||
| 106 | export CMAKE=$ANDROID_HOME/cmake/3.6.4111459/bin/cmake | ||
| 107 | export NINJA=$ANDROID_HOME/cmake/3.6.4111459/bin/ninja | ||
| 108 | export ANDROID_NDK_HOME=$ANDROID_HOME/ndk-bundle | ||
| 109 | export TC_FILE=$ANDROID_NDK_HOME/build/cmake/android.toolchain.cmake | ||
| 110 | |||
| 111 | # get available API level and architecture | ||
| 112 | pdir=$ANDROID_NDK_HOME/platforms | ||
| 113 | level_arch="" | ||
| 114 | level=$MIN_NAL | ||
| 115 | while [ $level -le $MAX_NAL ] | ||
| 116 | do | ||
| 117 | if [ -d $pdir/android-$level ] ; then | ||
| 118 | adir=$pdir/android-$level | ||
| 119 | if [ -d $adir/arch-arm ] ; then | ||
| 120 | level_arch="$level_arch $level;armeabi-v7a" | ||
| 121 | fi | ||
| 122 | if [ -d $adir/arch-arm64 ] ; then | ||
| 123 | level_arch="$level_arch $level;arm64-v8a" | ||
| 124 | fi | ||
| 125 | if [ -d $adir/arch-x86 ] ; then | ||
| 126 | level_arch="$level_arch $level;x86" | ||
| 127 | fi | ||
| 128 | if [ -d $adir/arch-x86_64 ] ; then | ||
| 129 | level_arch="$level_arch $level;x86_64" | ||
| 130 | fi | ||
| 131 | fi | ||
| 132 | level=`expr $level + 1` | ||
| 133 | done | ||
| 134 | |||
| 135 | # build each API level and architecture | ||
| 136 | for la in $level_arch | ||
| 137 | do | ||
| 138 | NAL=`echo $la | cut -d ';' -f 1` | ||
| 139 | ABI=`echo $la | cut -d ';' -f 2` | ||
| 140 | echo "" | ||
| 141 | echo "##### Date: `date`, Native API level: $NAL, ABI: $ABI" | ||
| 142 | |||
| 143 | ( | ||
| 144 | build_dir=build_$NAL_$ABI | ||
| 145 | rm -fr $build_dir | ||
| 146 | mkdir $build_dir | ||
| 147 | cd $build_dir | ||
| 148 | $CMAKE -GNinja -DCMAKE_MAKE_PROGRAM=$NINJA \ | ||
| 149 | -DANDROID_NDK=$ANDROID_NDK_HOME \ | ||
| 150 | -DCMAKE_TOOLCHAIN_FILE=$TC_FILE \ | ||
| 151 | -DANDROID_ABI=$ABI -DANDROID_NATIVE_API_LEVEL=$NAPI .. | ||
| 152 | |||
| 153 | $NINJA -j 4 | ||
| 154 | |||
| 155 | echo "" | ||
| 156 | file apps/openssl/openssl | ||
| 157 | ) | ||
| 158 | done | ||
| 98 | fi | 159 | fi |
