# # 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)