summaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
authorJanito Vaqueiro Ferreira Filho <janito@mullvad.net>2021-03-13 15:59:13 +0000
committerJanito Vaqueiro Ferreira Filho <janito@mullvad.net>2021-03-22 14:09:29 +0000
commitcf65c3271ea5f247ca82f70404461d31756c7801 (patch)
tree417b9e0295ddb4e9b7fe3cca2d7398fa14e4b1e9
parent6bde501c1c0484f40d093ad2e73b5ffb046513ea (diff)
downloadmullvadvpn-cf65c3271ea5f247ca82f70404461d31756c7801.tar.xz
mullvadvpn-cf65c3271ea5f247ca82f70404461d31756c7801.zip
Manually strip `libwg.so`
-rwxr-xr-xwireguard/libwg/build-android.sh25
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