aboutsummaryrefslogtreecommitdiff
path: root/scripts
diff options
context:
space:
mode:
authorkinichiro <kinichiro.inoguchi@gmail.com>2019-01-05 16:22:24 +0900
committerkinichiro <kinichiro.inoguchi@gmail.com>2019-01-05 18:10:59 +0900
commit983c7fbd0da0599fae405e3f6bd5657f1bd961a3 (patch)
treee302b35a6e91644ca66a92f47a431aa4d689e895 /scripts
parent779ec4dedcc62204a4d2acecb528a24931313a3d (diff)
downloadportable-983c7fbd0da0599fae405e3f6bd5657f1bd961a3.tar.gz
portable-983c7fbd0da0599fae405e3f6bd5657f1bd961a3.tar.bz2
portable-983c7fbd0da0599fae405e3f6bd5657f1bd961a3.zip
Add Android build for Travis-CI
Diffstat (limited to 'scripts')
-rwxr-xr-xscripts/travis61
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
99elif [ "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
98fi 159fi