diff options
| -rwxr-xr-x | wireguard/libwg/build-android.sh | 25 |
1 files changed, 17 insertions, 8 deletions
diff --git a/wireguard/libwg/build-android.sh b/wireguard/libwg/build-android.sh index 175ad49c5a..6ddb1befbe 100755 --- a/wireguard/libwg/build-android.sh +++ b/wireguard/libwg/build-android.sh @@ -14,28 +14,31 @@ ARCHITECTURES="${ARCHITECTURES:-"arm arm64 x86_64 x86"}" for arch in $ARCHITECTURES; do case "$arch" in "arm64") - export ANDROID_LLVM_TRIPLE="aarch64-linux-android" + export ANDROID_C_COMPILER="${NDK_TOOLCHAIN_DIR}/aarch64-linux-android21-clang" + export ANDROID_STRIP_TOOL="${NDK_TOOLCHAIN_DIR}/aarch64-linux-android-strip" export RUST_TARGET_TRIPLE="aarch64-linux-android" export ANDROID_ABI="arm64-v8a" ;; "x86_64") - export ANDROID_LLVM_TRIPLE="x86_64-linux-android" + export ANDROID_C_COMPILER="${NDK_TOOLCHAIN_DIR}/x86_64-linux-android21-clang" + export ANDROID_STRIP_TOOL="${NDK_TOOLCHAIN_DIR}/x86_64-linux-android-strip" export RUST_TARGET_TRIPLE="x86_64-linux-android" export ANDROID_ABI="x86_64" ;; "arm") - export ANDROID_LLVM_TRIPLE="armv7a-linux-androideabi" + export ANDROID_C_COMPILER="${NDK_TOOLCHAIN_DIR}/armv7a-linux-androideabi21-clang" + export ANDROID_STRIP_TOOL="${NDK_TOOLCHAIN_DIR}/arm-linux-androideabi-strip" export RUST_TARGET_TRIPLE="armv7-linux-androideabi" export ANDROID_ABI="armeabi-v7a" ;; "x86") - export ANDROID_LLVM_TRIPLE="i686-linux-android" + export ANDROID_C_COMPILER="${NDK_TOOLCHAIN_DIR}/i686-linux-android21-clang" + export ANDROID_STRIP_TOOL="${NDK_TOOLCHAIN_DIR}/i686-linux-android-strip" export RUST_TARGET_TRIPLE="i686-linux-android" export ANDROID_ABI="x86" ;; esac - export ANDROID_C_COMPILER="${ANDROID_NDK_HOME}/toolchains/llvm/prebuilt/linux-x86_64/bin/${ANDROID_LLVM_TRIPLE}21-clang" export ANDROID_ARCH_NAME=$arch # Build Wireguard-Go @@ -45,9 +48,15 @@ for arch in $ARCHITECTURES; do export CFLAGS="-D__ANDROID_API__=21" make -f Android.mk - # Copy build artifacts to `android/build/extraJni/$ANDROID_ABI` to be able to build the APK - mkdir -p ../../android/build/extraJni/$ANDROID_ABI - cp ../../build/lib/$RUST_TARGET_TRIPLE/libwg.so ../../android/build/extraJni/$ANDROID_ABI + + # Strip and copy the libray to `android/build/extraJni/$ANDROID_ABI` to be able to build the APK + UNSTRIPPED_LIB_PATH="../../build/lib/$RUST_TARGET_TRIPLE/libwg.so" + STRIPPED_LIB_PATH="../../android/build/extraJni/$ANDROID_ABI/libwg.so" + + mkdir -p "$(dirname "$STRIPPED_LIB_PATH")" + + $ANDROID_STRIP_TOOL --strip-unneeded --strip-debug -o "$STRIPPED_LIB_PATH" "$UNSTRIPPED_LIB_PATH" + rm -rf build done |
