• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1#
2# Build targets for an ARM64 processor
3#
4
5# arm64 Environment Checks #####################################################
6
7ifeq ($(ANDROID_BUILD_TOP),)
8$(error "You should supply an ANDROID_BUILD_TOP environment variable \
9         containing a path to the Android source tree. This is typically \
10         provided by initializing the Android build environment.")
11endif
12
13include $(CHRE_PREFIX)/build/clang.mk
14export ARM64_TOOLS_PREFIX=$(CLANG_TOOLCHAIN_PATH)/bin
15
16# arm64 Tools ##################################################################
17
18TARGET_AR = $(ARM64_TOOLS_PREFIX)/llvm-ar
19TARGET_CC = $(ARM64_TOOLS_PREFIX)/clang++
20TARGET_LD = $(ARM64_TOOLS_PREFIX)/clang++
21
22# arm64 Compiler Flags #########################################################
23
24# Add arm64 compiler flags.
25TARGET_CFLAGS += $(ARM64_CFLAGS)
26
27# Generate a position independent executable.
28TARGET_CFLAGS += -fPIE
29
30# arm64 Shared Object Linker Flags #############################################
31
32TARGET_SO_LDFLAGS += -shared
33TARGET_SO_LDFLAGS += -Wl,-gc-sections
34
35# Optimization Level ###########################################################
36
37TARGET_CFLAGS += -O$(OPT_LEVEL)
38
39# Variant Specific Sources #####################################################
40
41TARGET_VARIANT_SRCS += $(ARM64_SRCS)
42