diff options
Diffstat (limited to 'taler-android-build/x64')
-rwxr-xr-x | taler-android-build/x64 | 60 |
1 files changed, 60 insertions, 0 deletions
diff --git a/taler-android-build/x64 b/taler-android-build/x64 new file mode 100755 index 0000000000..22002bdd3e --- /dev/null +++ b/taler-android-build/x64 @@ -0,0 +1,60 @@ +#!/usr/bin/env bash + +set -eu -o pipefail + +scriptdir="$(cd "$(dirname "${BASH_SOURCE[0]}")" >/dev/null 2>&1 && pwd)" +cd $scriptdir + +NDK=$1 + +API_LEVEL=21 +BUILD_HOST_TAG='linux-x86_64' +TOOLCHAIN_DIR=$NDK/toolchains/llvm/prebuilt/$BUILD_HOST_TAG/ + +if [[ ! -d "$NDK" ]]; then + echo "Android NDK directory '$NDK' invalid" + exit 1 +fi + +if [[ ! -d "$TOOLCHAIN_DIR" ]]; then + echo "Toolchain directory '$TOOLCHAIN_DIR' invalid" + exit 1 +fi + +########## +# Build V8 +########## + +./build-android-v8 "$NDK" x64 + +cd $scriptdir/.. +x=$scriptdir/compiled/x86_64/ +mkdir -p $x +cp deps/v8/out.gn/android-x64/*.so $x/ + + +############ +# Build Node +############ + +cd $scriptdir + +export DEST_CPU_ARCH=x64 + +# The naming of these isn't very consistent, as some tools start with arm, +# others with arm7a. +export AR=$TOOLCHAIN_DIR/bin/x86_64-linux-android-ar +export LD=$TOOLCHAIN_DIR/bin/x86_64-linux-android-ld +export RANLIB=$TOOLCHAIN_DIR/bin/x86_64-linux-android-ranlib +export STRIP=$TOOLCHAIN_DIR/bin/x86_64-linux-android-strip + +export LINK=$TOOLCHAIN_DIR/bin/x86_64-linux-android$API_LEVEL-clang++ +export CC=$TOOLCHAIN_DIR/bin/x86_64-linux-android$API_LEVEL-clang +export CXX=$TOOLCHAIN_DIR/bin/x86_64-linux-android$API_LEVEL-clang++ + +./build-android-node "$1" x64 + +cd $scriptdir/.. +x=$scriptdir/compiled/x86_64/ +mkdir -p $x +cp out/Release/lib/libnode.so $x/ |