#! /bin/sh # Copyright 2018 Google Inc. # Use of this source code is governed by a BSD-style license that can be # found in the LICENSE file. make_gn() { #TODO: make this more configurable cat << EOF target_cpu = "$ARCH" is_debug = false ndk = "$ANDROID_NDK" ndk_api = 26 EOF } main() { APP="$1" LIB="$2" ANDROID_NDK="$(cd "$ANDROID_NDK"; pwd)" ANDROID_HOME="$(cd "$ANDROID_HOME"; pwd)" cd "$(dirname "$0")/../../.." python tools/git-sync-deps git clean -fxd platform_tools/android/apps/$APP mkdir -p platform_tools/android/apps/${APP}/src/main/assets cp -a resources platform_tools/android/apps/${APP}/src/main/assets/ for ARCH in arm arm64 x86 x64; do BUILD=out/${APP}-$ARCH mkdir -p "$BUILD" make_gn > "${BUILD}/args.gn" bin/gn gen $BUILD ninja -C $BUILD $LIB case $ARCH in arm) NATIVE=armeabi-v7a ;; arm64) NATIVE=arm64-v8a ;; x86) NATIVE=x86 ;; x64) NATIVE=x86_64 ;; *) usage ;; esac DST=platform_tools/android/apps/$APP/src/main/libs/$NATIVE mkdir -p $DST cp -a $BUILD/$LIB $DST/$LIB done ( cd platform_tools/android apps/gradlew --daemon -p apps/$APP -P suppressNativeBuild :${APP}:assembleUniversalDebug ) mkdir -p out/${APP}-universal cp platform_tools/android/apps/$APP/build/outputs/apk/${APP}-universal-debug.apk \ out/${APP}-universal/$APP-universal-debug.apk ls -l out/${APP}-universal/$APP-universal-debug.apk } usage() { cat >&2 < /dev/null || usage command -v python > /dev/null || usage set -x # Verbose set -e # Exit immediately main viewer libviewer.so