xref: /aosp_15_r20/system/chre/build/common.mk (revision 84e339476a462649f82315436d70fd732297a399)
1*84e33947SAndroid Build Coastguard Worker#
2*84e33947SAndroid Build Coastguard Worker# Common Makefile Rules
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 ($(OPT_LEVEL),)
8*84e33947SAndroid Build Coastguard Worker$(warning The OPT_LEVEL variable is unset. Defaulting to 0.)
9*84e33947SAndroid Build Coastguard WorkerOPT_LEVEL = 0
10*84e33947SAndroid Build Coastguard Workerendif
11*84e33947SAndroid Build Coastguard Worker
12*84e33947SAndroid Build Coastguard Workerifeq ($(OUTPUT_NAME),)
13*84e33947SAndroid Build Coastguard Worker$(error "The OUTPUT_NAME variable must be set to the name of the desired \
14*84e33947SAndroid Build Coastguard Worker         binary. Example: OUTPUT_NAME = my_nanoapp")
15*84e33947SAndroid Build Coastguard Workerendif
16*84e33947SAndroid Build Coastguard Worker
17*84e33947SAndroid Build Coastguard Worker# Define all ###################################################################
18*84e33947SAndroid Build Coastguard Worker
19*84e33947SAndroid Build Coastguard Worker# All is defined here as the first target which causes make to build all by
20*84e33947SAndroid Build Coastguard Worker# default when no targets are supplied.
21*84e33947SAndroid Build Coastguard Worker.PHONY: all
22*84e33947SAndroid Build Coastguard Workerall:
23*84e33947SAndroid Build Coastguard Worker
24*84e33947SAndroid Build Coastguard Worker# If no make command goals are specified, default to all. At least one target
25*84e33947SAndroid Build Coastguard Worker# is required for environment checks. Building all will require toolchains for
26*84e33947SAndroid Build Coastguard Worker# all supported architectures which may not be desirable.
27*84e33947SAndroid Build Coastguard Workerifeq ($(MAKECMDGOALS),)
28*84e33947SAndroid Build Coastguard WorkerMAKECMDGOALS = all
29*84e33947SAndroid Build Coastguard Workerendif
30*84e33947SAndroid Build Coastguard Worker
31*84e33947SAndroid Build Coastguard Worker# Variant-specific Support Source Files ########################################
32*84e33947SAndroid Build Coastguard Worker
33*84e33947SAndroid Build Coastguard WorkerSYS_SUPPORT_PATH = $(CHRE_PREFIX)/build/sys_support
34*84e33947SAndroid Build Coastguard Worker
35*84e33947SAndroid Build Coastguard Worker# Host Toolchain ###############################################################
36*84e33947SAndroid Build Coastguard Worker
37*84e33947SAndroid Build Coastguard Worker# The host toolchain is used to compile any programs for the compilation host
38*84e33947SAndroid Build Coastguard Worker# in order to complete the build.
39*84e33947SAndroid Build Coastguard Worker
40*84e33947SAndroid Build Coastguard Workerifeq ($(CHRE_HOST_CC),)
41*84e33947SAndroid Build Coastguard WorkerCHRE_HOST_CC = g++
42*84e33947SAndroid Build Coastguard Workerendif
43*84e33947SAndroid Build Coastguard Worker
44*84e33947SAndroid Build Coastguard Worker# Makefile Includes ############################################################
45*84e33947SAndroid Build Coastguard Worker
46*84e33947SAndroid Build Coastguard Worker# Common Includes
47*84e33947SAndroid Build Coastguard Workerinclude $(CHRE_PREFIX)/build/clean.mk
48*84e33947SAndroid Build Coastguard Workerinclude $(CHRE_PREFIX)/build/tools_config.mk
49*84e33947SAndroid Build Coastguard Worker
50*84e33947SAndroid Build Coastguard Worker# Flag config (currently disabled)
51*84e33947SAndroid Build Coastguard Worker# include $(CHRE_PREFIX)/build/embedded_flags.mk
52*84e33947SAndroid Build Coastguard Worker
53*84e33947SAndroid Build Coastguard Worker# NanoPB Source Generation
54*84e33947SAndroid Build Coastguard Workerinclude $(CHRE_PREFIX)/build/nanopb.mk
55*84e33947SAndroid Build Coastguard Worker
56*84e33947SAndroid Build Coastguard Worker# TFLM Sources
57*84e33947SAndroid Build Coastguard Workerinclude $(CHRE_PREFIX)/external/tflm/tflm.mk
58*84e33947SAndroid Build Coastguard Worker
59*84e33947SAndroid Build Coastguard Worker# Rust config
60*84e33947SAndroid Build Coastguard Workerinclude $(CHRE_PREFIX)/build/rust/common_rust_config.mk