xref: /aosp_15_r20/system/chre/build/arch/riscv.mk (revision 84e339476a462649f82315436d70fd732297a399)
1*84e33947SAndroid Build Coastguard Worker#
2*84e33947SAndroid Build Coastguard Worker# Build targets for a risc-v based architecture
3*84e33947SAndroid Build Coastguard Worker#
4*84e33947SAndroid Build Coastguard Worker
5*84e33947SAndroid Build Coastguard Worker# Environment Checks ###########################################################
6*84e33947SAndroid Build Coastguard Worker
7*84e33947SAndroid Build Coastguard Workerifeq ($(ANDROID_BUILD_TOP),)
8*84e33947SAndroid Build Coastguard Worker$(error "You should supply an ANDROID_BUILD_TOP environment variable \
9*84e33947SAndroid Build Coastguard Worker         containing a path to the Android source tree. This is typically \
10*84e33947SAndroid Build Coastguard Worker         provided by initializing the Android build environment.")
11*84e33947SAndroid Build Coastguard Workerendif
12*84e33947SAndroid Build Coastguard Worker
13*84e33947SAndroid Build Coastguard Workerifeq ($(RISCV_TOOLCHAIN_PATH),)
14*84e33947SAndroid Build Coastguard Worker$(error "The risc-v toolchain directory needs to be exported as the \
15*84e33947SAndroid Build Coastguard Worker         RISCV_TOOLCHAIN_PATH environment variable")
16*84e33947SAndroid Build Coastguard Workerendif
17*84e33947SAndroid Build Coastguard Worker
18*84e33947SAndroid Build Coastguard Worker# Tools ########################################################################
19*84e33947SAndroid Build Coastguard Worker
20*84e33947SAndroid Build Coastguard WorkerTARGET_AR = $(RISCV_TOOLCHAIN_PATH)/bin/llvm-ar
21*84e33947SAndroid Build Coastguard WorkerTARGET_CC = $(RISCV_TOOLCHAIN_PATH)/bin/clang
22*84e33947SAndroid Build Coastguard WorkerTARGET_LD = $(RISCV_TOOLCHAIN_PATH)/bin/ld.lld
23*84e33947SAndroid Build Coastguard Worker
24*84e33947SAndroid Build Coastguard Worker# Shared Object Linker Flags ###################################################
25*84e33947SAndroid Build Coastguard Worker
26*84e33947SAndroid Build Coastguard WorkerTARGET_SO_LDFLAGS += --gc-sections
27*84e33947SAndroid Build Coastguard WorkerTARGET_SO_LDFLAGS += -shared
28*84e33947SAndroid Build Coastguard Worker
29*84e33947SAndroid Build Coastguard Worker# Optimization Level ###########################################################
30*84e33947SAndroid Build Coastguard Worker
31*84e33947SAndroid Build Coastguard WorkerTARGET_CFLAGS += -O$(OPT_LEVEL)
32