1cur_dir := $(dir $(lastword $(MAKEFILE_LIST)))
2
3obj-y := $(patsubst $(cur_dir)%,%,$(wildcard $(cur_dir)*.c $(cur_dir)*.S $(cur_dir)*.cpp))
4obj-y := $(obj-y:.c=.o)
5obj-y := $(obj-y:.S=.o)
6obj-y := $(obj-y:.cpp=.o)
7
8ifeq ($(DSP_LIB),1)
9obj-y += DSP_Lib/
10endif
11
12ifeq ($(NN_LIB),1)
13obj-y += NN_Lib/
14endif
15
16ifneq ($(filter a%,$(CPU)),)
17obj-y += ca/
18endif
19
20ccflags-y := -I$(obj)/inc
21
22FAULT_FLAGS :=
23USAGE_FAULT ?= 1
24ifeq ($(USAGE_FAULT),1)
25FAULT_FLAGS += -DUSAGE_FAULT
26endif
27BUS_FAULT ?= 1
28ifeq ($(BUS_FAULT),1)
29FAULT_FLAGS += -DBUS_FAULT
30endif
31MEM_FAULT ?= 1
32ifeq ($(MEM_FAULT),1)
33FAULT_FLAGS += -DMEM_FAULT
34endif
35CFLAGS_system_ARMCM.o += $(FAULT_FLAGS)
36CFLAGS_system_cp.o += $(FAULT_FLAGS)
37
38ifeq ($(ACCURATE_DB_TO_FLOAT),1)
39CFLAGS_system_utils.o += -DACCURATE_DB_TO_FLOAT
40endif
41ifeq ($(BOOT_CODE_IN_RAM),1)
42CFLAGS_system_utils.o += -DBOOT_CODE_IN_RAM
43endif
44
45ifeq ($(CHIP_HAS_PSRAM),1)
46CFLAGS_system_utils.o += -DCHIP_HAS_PSRAM
47endif
48ifeq ($(PSRAM_ENABLE),1)
49CFLAGS_system_utils.o += -DPSRAM_ENABLE
50endif
51ifeq ($(CHIP_HAS_PSRAMUHS),1)
52CFLAGS_system_utils.o += -DCHIP_HAS_PSRAMUHS
53endif
54ifeq ($(PSRAMUHS_ENABLE),1)
55CFLAGS_system_utils.o += -DPSRAMUHS_ENABLE
56endif
57ifeq ($(A7_DSP_TEST),1)
58CFLAGS_system_utils.o += -DA7_DSP_TEST
59endif
60
61ifeq ($(PSRAM_INIT_CHECK),1)
62CFLAGS_system_utils.o += -DPSRAM_INIT_CHECK
63endif
64
65CFLAGS_system_utils.o += -Iplatform/drivers/ana -fno-tree-loop-distribute-patterns
66
67CFLAGS_retarget_armclang.o += \
68	-Iplatform/drivers/ana \
69	-Iplatform/drivers/codec \
70	-Iplatform/drivers/norflash
71
72ifeq ($(SPI_ROM_ONLY),1)
73CFLAGS_retarget_armclang.o += -DSPI_ROM_ONLY
74endif
75
76