64 lines
1.7 KiB
Bash
64 lines
1.7 KiB
Bash
|
|
# Author: Declan Moran
|
|
# www.silverglint.com
|
|
# Thanks to damaex (https://github.com/damaex), for significant contributions
|
|
|
|
ANDROID_NDK_ROOT=/home/android/android-ndk-r19c
|
|
|
|
INSTALL_DIR=install
|
|
BUILD_DIR=build
|
|
START_DIR=$(pwd)
|
|
|
|
rm -rf $INSTALL_DIR
|
|
rm -rf $BUILD_DIR
|
|
mkdir -p $BUILD_DIR #"${ANDROID_TARGET_PLATFORM}"
|
|
|
|
#--------------------------------------------------------------------
|
|
build_it()
|
|
{
|
|
# builds either a static or shared lib depending on parm passed (ON or OFF)
|
|
want_shared=$1
|
|
|
|
cmake -DCMAKE_TOOLCHAIN_FILE=${ANDROID_NDK_ROOT}/build/cmake/android.toolchain.cmake \
|
|
-DCMAKE_INSTALL_PREFIX:PATH=../../${INSTALL_DIR}/${ANDROID_TARGET_PLATFORM} \
|
|
-DANDROID_ABI=${ANDROID_TARGET_PLATFORM} \
|
|
-DENABLE_OPENSSL:BOOL=OFF \
|
|
-DENABLE_COMMONCRYPTO:BOOL=OFF \
|
|
-DENABLE_GNUTLS:BOOL=OFF \
|
|
-DENABLE_MBEDTLS:BOOL=OFF \
|
|
-DENABLE_OPENSSL:BOOL=OFF \
|
|
-DENABLE_WINDOWS_CRYPTO:BOOL=OFF \
|
|
-DBUILD_TOOLS:BOOL=OFF \
|
|
-DBUILD_REGRESS:BOOL=OFF \
|
|
-DBUILD_EXAMPLES:BOOL=OFF \
|
|
-DBUILD_SHARED_LIBS:BOOL=$want_shared \
|
|
-DBUILD_DOC:BOOL=OFF \
|
|
-DANDROID_TOOLCHAIN=clang cmake -H.. -B$BUILD_DIR/${ANDROID_TARGET_PLATFORM}
|
|
|
|
#run make with all system threads and install
|
|
cd $BUILD_DIR/${ANDROID_TARGET_PLATFORM}
|
|
make install -j$(nproc --all)
|
|
cd $START_DIR
|
|
}
|
|
|
|
#--------------------------------------------------------------------
|
|
for ANDROID_TARGET_PLATFORM in armeabi-v7a arm64-v8a x86 x86_64
|
|
do
|
|
echo "Building libzip for ${ANDROID_TARGET_PLATFORM}"
|
|
|
|
build_it ON
|
|
build_it OFF
|
|
|
|
if [ $? -ne 0 ]; then
|
|
echo "Error executing: cmake"
|
|
exit 1
|
|
fi
|
|
|
|
|
|
if [ $? -ne 0 ]; then
|
|
echo "Error executing make install for platform: ${ANDROID_TARGET_PLATFORM}"
|
|
exit 1
|
|
fi
|
|
|
|
done
|