author | Edouard Tisserant |
Sat, 26 Sep 2015 20:18:22 +0200 | |
changeset 353 | f1ca187ee8cb |
parent 337 | ea7d347eaf6c |
child 369 | 906f46ffd840 |
permissions | -rwxr-xr-x |
Edouard@333 | 1 |
#!/bin/sh |
Edouard@333 | 2 |
|
Edouard@353 | 3 |
set -e |
Edouard@353 | 4 |
|
Edouard@333 | 5 |
build_version=1 |
Edouard@333 | 6 |
ANDROID_PLATFORM=android-21 |
Edouard@333 | 7 |
openssl_build_version=1 |
Edouard@333 | 8 |
cyrus_sasl_build_version=1 |
Edouard@333 | 9 |
libetpan_build_version=1 |
Edouard@333 | 10 |
archs="armeabi armeabi-v7a x86 x86_64" |
Edouard@333 | 11 |
package_name=pEpEngine-android |
Edouard@333 | 12 |
|
Edouard@333 | 13 |
current_dir="`pwd`" |
Edouard@333 | 14 |
libetpan_dir="$current_dir/../../libetpan/build-android" |
Edouard@333 | 15 |
|
Edouard@333 | 16 |
if test "x$ANDROID_NDK" = x ; then |
Edouard@333 | 17 |
echo should set ANDROID_NDK before running this script. |
Edouard@333 | 18 |
exit 1 |
Edouard@333 | 19 |
fi |
Edouard@333 | 20 |
|
Edouard@353 | 21 |
if test "x$GPGME_INCLUDE_PATH" = x ; then |
Edouard@353 | 22 |
echo should set GPGME_INCLUDE_PATH before running this script. |
Edouard@353 | 23 |
exit 1 |
Edouard@353 | 24 |
fi |
Edouard@353 | 25 |
|
Edouard@333 | 26 |
function build { |
Edouard@333 | 27 |
rm -rf "$current_dir/obj" |
Edouard@333 | 28 |
|
Edouard@333 | 29 |
cd "$current_dir/jni" |
Edouard@333 | 30 |
$ANDROID_NDK/ndk-build V=1 TARGET_PLATFORM=$ANDROID_PLATFORM TARGET_ARCH_ABI=$TARGET_ARCH_ABI \ |
Edouard@333 | 31 |
OPENSSL_PATH="$current_dir/third-party/openssl-android-$openssl_build_version" \ |
Edouard@333 | 32 |
CYRUS_SASL_PATH="$current_dir/third-party/cyrus-sasl-android-$cyrus_sasl_build_version" \ |
Edouard@333 | 33 |
LIBETPAN_PATH="$current_dir/third-party/libetpan-android-$libetpan_build_version" |
Edouard@333 | 34 |
|
Edouard@333 | 35 |
mkdir -p "$current_dir/$package_name-$build_version/libs/$TARGET_ARCH_ABI" |
Edouard@333 | 36 |
cp "$current_dir/obj/local/$TARGET_ARCH_ABI/libpEpEngine.a" "$current_dir/$package_name-$build_version/libs/$TARGET_ARCH_ABI" |
Edouard@333 | 37 |
rm -rf "$current_dir/obj" |
Edouard@333 | 38 |
} |
Edouard@333 | 39 |
|
Edouard@333 | 40 |
mkdir -p "$current_dir/third-party" |
Edouard@333 | 41 |
cd "$current_dir/third-party" |
Edouard@333 | 42 |
unzip -qo "$libetpan_dir/dependencies/openssl/openssl-android-$openssl_build_version.zip" |
Edouard@333 | 43 |
unzip -qo "$libetpan_dir/dependencies/cyrus-sasl/cyrus-sasl-android-$cyrus_sasl_build_version.zip" |
Edouard@333 | 44 |
unzip -qo "$libetpan_dir/libetpan-android-$libetpan_build_version.zip" |
Edouard@333 | 45 |
|
Edouard@333 | 46 |
# Copy public headers to include |
Edouard@333 | 47 |
mkdir -p "$current_dir/$package_name-$build_version/include/pEp" |
Edouard@333 | 48 |
cd "$current_dir/../src" |
Edouard@333 | 49 |
cp *.h "$current_dir/$package_name-$build_version/include/pEp" |
Edouard@333 | 50 |
|
Edouard@333 | 51 |
# Start building. |
Edouard@333 | 52 |
for arch in $archs ; do |
Edouard@333 | 53 |
TARGET_ARCH_ABI=$arch |
Edouard@333 | 54 |
build |
Edouard@333 | 55 |
done |
Edouard@333 | 56 |
|
Edouard@333 | 57 |
rm -rf "$current_dir/third-party" |
Edouard@333 | 58 |
cd "$current_dir" |
Edouard@333 | 59 |
zip -qry "$package_name-$build_version.zip" "$package_name-$build_version" |
Edouard@333 | 60 |
rm -rf "$package_name-$build_version" |