summaryrefslogtreecommitdiffstats
path: root/scripts/build-zstd-android.sh
blob: 2c19f5270ec3354e15978956ed87068c3a18e711 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
#!/bin/bash

if [ $# -eq 0 ]; then
    echo "build-zstd-android.sh <abs-path-to-ndk-toplevel> <abs-path-to-build-top-dir>"
    exit;
fi

NDK_PATH=$1 # eg. /opt/libreoffice/android-ndk-r20b
BUILD_PATH=$2 # eg. /opt/libreoffice/

PLATFORMS="armeabi-v7a arm64-v8a x86 x86_64"

mkdir -p $BUILD_PATH
cd $BUILD_PATH
if ! test -f android-zstd/.git/config; then
    git clone https://android.googlesource.com/platform/external/zstd/ android-zstd
fi
cd android-zstd

TOP_PATH=$BUILD_PATH/android-zstd
mkdir -p $TOP_PATH/install
for p in $PLATFORMS; do
    echo "Building $p:"
    mkdir -p $TOP_PATH/install/$p
    cd $TOP_PATH/install/$p
    cmake \
        -DCMAKE_TOOLCHAIN_FILE=${NDK_PATH}/build/cmake/android.toolchain.cmake \
        -DANDROID_ABI=$p \
        -DCMAKE_ANDROID_ARCH_ABI=$p \
        -DANDROID_NDK=${NDK_PATH} \
        -DCMAKE_BUILD_TYPE=Release \
        -DCMAKE_SYSTEM_NAME=Android \
        -DCMAKE_SYSTEM_VERSION=21 \
        -DZSTD_BUILD_PROGRAMS:BOOL=OFF \
        -DZSTD_BUILD_SHARED:BOOL=OFF \
        $TOP_PATH/build/cmake || exit 1;
    make
done