| # | 
 | # Build targets for an ARM64 processor | 
 | # | 
 |  | 
 | # arm64 Environment Checks ##################################################### | 
 |  | 
 | ifeq ($(ANDROID_NDK_PREFIX),) | 
 | $(error "You should supply an ANDROID_NDK_PREFIX environment variable \ | 
 |          containing a path to a generated Android NDK toolchain. i.e. \ | 
 |          ./build/tools/make-standalone-toolchain.sh --arch=arm64 \ | 
 |          --platform=android-26 --install-dir=$$ANDROID_NDK_PREFIX") | 
 | endif | 
 |  | 
 | export ARM64_TOOLS_PREFIX=$(ANDROID_NDK_PREFIX)/bin | 
 |  | 
 | # arm64 Tools ################################################################## | 
 |  | 
 | TARGET_AR = $(ARM64_TOOLS_PREFIX)/llvm-ar | 
 | TARGET_CC = $(ARM64_TOOLS_PREFIX)/clang++ | 
 | TARGET_LD = $(ARM64_TOOLS_PREFIX)/clang++ | 
 |  | 
 | # arm64 Compiler Flags ######################################################### | 
 |  | 
 | # Add arm64 compiler flags. | 
 | TARGET_CFLAGS += $(ARM64_CFLAGS) | 
 |  | 
 | # Generate a position independent executable. | 
 | TARGET_CFLAGS += -fPIE | 
 |  | 
 | # arm64 Shared Object Linker Flags ############################################# | 
 |  | 
 | TARGET_SO_LDFLAGS += -shared | 
 | TARGET_SO_LDFLAGS += -Wl,-gc-sections | 
 |  | 
 | # Optimization Level ########################################################### | 
 |  | 
 | TARGET_CFLAGS += -O$(OPT_LEVEL) | 
 |  | 
 | # Variant Specific Sources ##################################################### | 
 |  | 
 | TARGET_VARIANT_SRCS += $(ARM64_SRCS) |