#!/bin/bash # This script builds Z3 for Android # run from z3 dir checked out from https://github.com/Z3Prover/z3.git # Before running set the following ENVs for your system to point to the Android Studio Java / NDK directories (examples): # export JAVA_HOME=/Applications/Android\ Studio\ Preview.app/Contents/jre/Contents/Home/ # export NDK=/Users/jamie/Library/Android/sdk/ndk/23.0.7599858 # N.B. need cmake 3.21 or above rm -rf build mkdir build cd build for androidABI in arm64-v8a armeabi-v7a x86 x86_64; do mkdir $androidABI cd $androidABI cmake -DCMAKE_BUILD_TYPE=Release -DCMAKE_SYSTEM_NAME=Android -DCMAKE_SYSTEM_VERSION=21 -DCMAKE_ANDROID_ARCH_ABI=$androidABI -DCMAKE_ANDROID_NDK=$NDK -DZ3_BUILD_JAVA_BINDINGS=TRUE -G "Unix Makefiles" -DJAVA_AWT_LIBRARY=NotNeeded -DJAVA_JVM_LIBRARY=NotNeeded -DJAVA_INCLUDE_PATH2=NotNeeded -DJAVA_AWT_INCLUDE_PATH=NotNeeded ../../ make -j4 # assumes 4 cores cd .. done