Files
kunlun/sp/boot/Makefile
2024-09-28 14:24:04 +08:00

132 lines
4.5 KiB
Makefile

# OUTPUT type
# 1 - .out
# 2 - .a
# 3 - .so
OUTPUT_TYPE = 1
OUTPUT_NAME = sp_fw
ifeq ($(target), kunlun2)
hw_dep = hw2
else
ifeq ($(target), kunlun3)
hw_dep = hw3
else
hw_dep = hw
endif
endif
SUB_DIRS = startup/$(hw_dep) misc $(hw_dep)
EXT_SRC = $(TOPDIR)/driver/src/hal/irq.c \
$(TOPDIR)/driver/src/hal/iot_efuse.c \
$(TOPDIR)/driver/src/hal/flash.c \
$(TOPDIR)/driver/src/hal/sram.c \
$(TOPDIR)/common/os_shim/freertos/src/os_mem.c \
$(TOPDIR)/driver/src/hal/clock.c \
$(TOPDIR)/driver/src/hal/system.c \
$(TOPDIR)/common/os_shim/dtestos/os_lock.c
ifeq ($(target), kunlun2)
EXT_SRC += $(TOPDIR)/driver/src/hw2/ana.c
EXT_SRC += $(TOPDIR)/driver/src/hw2/wdg.c
EXT_SRC += $(TOPDIR)/driver/src/hw2/intc.c
EXT_SRC += $(TOPDIR)/driver/src/hw2/apb.c
EXT_SRC += $(TOPDIR)/driver/src/hw2/clk.c
EXT_SRC += $(TOPDIR)/driver/src/hw2/efuse.c
EXT_SRC += $(TOPDIR)/driver/src/hw2/sfc.c
EXT_SRC += $(TOPDIR)/driver/src/hw2/ahb.c
EXT_SRC += $(TOPDIR)/driver/src/hw2/sec_glb.c
EXT_SRC += $(TOPDIR)/driver/src/hw2/smc.c
EXT_SRC += $(TOPDIR)/driver/src/hw2/gpio_mtx.c
EXT_SRC += $(TOPDIR)/driver/src/hw2/ddrc.c
EXT_SRC += $(TOPDIR)/driver/src/hw2/uart_e.c
EXT_SRC += $(TOPDIR)/driver/src/hw2/pmu.c
EXT_SRC += $(TOPDIR)/driver/src/hal/debug_uart.c
EXT_SRC += $(TOPDIR)/driver/src/hal/vfs_uart.c
EXT_SRC += $(TOPDIR)/driver/src/hw2/gp_timer.c
EXT_SRC += $(TOPDIR)/driver/src/hw2/cpu.c
EXT_SRC += $(TOPDIR)/driver/src/hw2/system_hw.c
else
ifeq ($(target), kunlun3)
EXT_SRC += $(TOPDIR)/driver/src/hw3/ana.c
EXT_SRC += $(TOPDIR)/driver/src/hw3/wdg.c
EXT_SRC += $(TOPDIR)/driver/src/hw3/intc.c
EXT_SRC += $(TOPDIR)/driver/src/hw3/apb.c
EXT_SRC += $(TOPDIR)/driver/src/hw3/clk.c
EXT_SRC += $(TOPDIR)/driver/src/hw3/efuse.c
EXT_SRC += $(TOPDIR)/driver/src/hw3/sfc.c
EXT_SRC += $(TOPDIR)/driver/src/hw3/ahb.c
EXT_SRC += $(TOPDIR)/driver/src/hw3/sec_glb.c
EXT_SRC += $(TOPDIR)/driver/src/hw3/smc.c
EXT_SRC += $(TOPDIR)/driver/src/hw3/gpio_mtx.c
EXT_SRC += $(TOPDIR)/driver/src/hw3/ddrc.c
EXT_SRC += $(TOPDIR)/driver/src/hw3/uart_e.c
EXT_SRC += $(TOPDIR)/driver/src/hw3/pmu.c
EXT_SRC += $(TOPDIR)/driver/src/hal/debug_uart.c
EXT_SRC += $(TOPDIR)/driver/src/hal/vfs_uart.c
EXT_SRC += $(TOPDIR)/driver/src/hw3/gp_timer.c
EXT_SRC += $(TOPDIR)/driver/src/hw3/cpu.c
EXT_SRC += $(TOPDIR)/driver/src/hw3/system_hw.c
else
EXT_SRC += $(TOPDIR)/driver/src/hw/ana.c
EXT_SRC += $(TOPDIR)/driver/src/hw/wdg.c
EXT_SRC += $(TOPDIR)/driver/src/hw/intc.c
EXT_SRC += $(TOPDIR)/driver/src/hw/apb.c
EXT_SRC += $(TOPDIR)/driver/src/hw/clk.c
EXT_SRC += $(TOPDIR)/driver/src/hw/efuse.c
EXT_SRC += $(TOPDIR)/driver/src/hw/sfc.c
EXT_SRC += $(TOPDIR)/driver/src/hw/ahb.c
EXT_SRC += $(TOPDIR)/driver/src/hw/sec_glb.c
EXT_SRC += $(TOPDIR)/driver/src/hw/smc.c
EXT_SRC += $(TOPDIR)/driver/src/hw/gp_timer.c
EXT_SRC += $(TOPDIR)/driver/src/hw/cpu.c
EXT_SRC += $(TOPDIR)/driver/src/hw/system_hw.c
endif
endif
# .h files dir
ADD_INCLUDE += inc
ADD_INCLUDE += $(TOPDIR)/rom/inc
ADD_INCLUDE += $(TOPDIR)/inc $(TOPDIR)/inc/driver $(TOPDIR)/inc/driver/flash
ADD_INCLUDE += $(TOPDIR)/startup/riscv/inc
ADD_INCLUDE += $(TOPDIR)/driver/inc
ADD_INCLUDE += $(TOPDIR)/common/io_lib/inc
ADD_INCLUDE += $(TOPDIR)/export/inc/io_lib
ADD_INCLUDE += $(TOPDIR)/inc/compiler/gcc $(TOPDIR)/inc/utils
ADD_INCLUDE += $(TOPDIR)/inc/os_shim
ADD_INCLUDE += $(TOPDIR)/driver/src/${hw_dep}/inc
ADD_INCLUDE += $(TOPDIR)/inc/uart
# predefined macro
PRE_MARCO += IRAM_SECTION_DISABLE
LD_SCRIPT = link_sp.lds
#LD_SCRIPT = link_sec.lds
# lib dir
#ADD_LIBDIR += crypto
# lib need to ld together
#ADD_LIB += iot_crypto
#####################################################
ifdef TOPDIR
include $(TOPDIR)/build/makefile.cfg
else
include $(CURDIR)/build/makefile.cfg
TOPDIR = $(CURDIR)
export TOPDIR
endif
dump:
$(OBJDUMP) -D -S -l $(OUTPUT_FULL_NAME) > $(OUTPUT_FULL_NAME).dump
# display the obj files and output name
debug:
@echo TOPDIR=$(TOPDIR)
@echo OUTPUT_LIB=$(OUTPUT_FULL_NAME)
@echo DEPS=$(DEPS)
@echo OBJECTS=$(OBJECTS)
@echo SRCS=$(SRCS)
@echo OBJECTS folder=$(foreach dirname, $(SUB_DIRS), $(addprefix $(BIN_DIR)/, $(dirname)))
@echo output_name=$(OUTPUT_FULL_NAME)