109 lines
3.1 KiB
Makefile
109 lines
3.1 KiB
Makefile
|
|
# OUTPUT type
|
|
# 1 - .out
|
|
# 2 - .a
|
|
# 3 - .so
|
|
OUTPUT_TYPE = 1
|
|
OUTPUT_NAME = sp_topo
|
|
|
|
SUB_DIRS = startup hw_topo
|
|
|
|
ifeq ($(target), kunlun2)
|
|
hw_dep = hw2
|
|
else
|
|
ifeq ($(target), kunlun3)
|
|
hw_dep = hw3
|
|
else
|
|
hw_dep = hw
|
|
endif
|
|
endif
|
|
|
|
|
|
EXT_SRC = $(TOPDIR)/driver/src/$(hw_dep)/wdg.c
|
|
EXT_SRC += $(TOPDIR)/driver/src/$(hw_dep)/apb.c
|
|
EXT_SRC += $(TOPDIR)/driver/src/$(hw_dep)/ahb.c
|
|
EXT_SRC += $(TOPDIR)/driver/src/$(hw_dep)/pmu.c
|
|
EXT_SRC += $(TOPDIR)/driver/src/$(hw_dep)/sec_glb.c
|
|
EXT_SRC += $(TOPDIR)/driver/src/$(hw_dep)/cpu.c
|
|
EXT_SRC += $(TOPDIR)/driver/src/$(hw_dep)/intc.c
|
|
|
|
EXT_SRC += $(TOPDIR)/driver/src/hal/irq.c
|
|
|
|
ifeq ($(target), kunlun2)
|
|
ADD_INCLUDE += $(TOPDIR)/inc/hw/reg/riscv2/$(HW_HEADER_VER)
|
|
ADD_INCLUDE += $(TOPDIR)/startup/riscv2/inc
|
|
ADD_INCLUDE += $(TOPDIR)/driver/src/hw2/inc
|
|
ADD_INCLUDE += $(TOPDIR)/import/wq_vtb/ext_inc
|
|
else
|
|
ifeq ($(target), kunlun3)
|
|
ADD_INCLUDE += $(TOPDIR)/inc/hw/reg/riscv3/$(HW_HEADER_VER)
|
|
ADD_INCLUDE += $(TOPDIR)/startup/riscv3/inc
|
|
ADD_INCLUDE += $(TOPDIR)/driver/src/hw3/inc
|
|
else
|
|
ADD_INCLUDE += $(TOPDIR)/inc/hw/reg/riscv/$(HW_HEADER_VER)
|
|
ADD_INCLUDE += $(TOPDIR)/startup/riscv/inc
|
|
ADD_INCLUDE += $(TOPDIR)/driver/src/hw/inc
|
|
endif
|
|
endif
|
|
ADD_INCLUDE += $(TOPDIR)/plc/halmac/$(hw_dep)/inc
|
|
ADD_INCLUDE += $(TOPDIR)/plc/halmac/$(hw_dep)/inc/desc
|
|
ADD_INCLUDE +=\
|
|
$(TOPDIR)/inc \
|
|
$(TOPDIR)/inc/driver \
|
|
$(TOPDIR)/driver/inc \
|
|
$(TOPDIR)/common/io_lib/inc \
|
|
$(TOPDIR)/inc/os_shim \
|
|
$(TOPDIR)/export/inc/utils \
|
|
$(TOPDIR)/inc/compiler/gcc \
|
|
$(TOPDIR)/sp/topo_cpu/hw_topo \
|
|
$(TOPDIR)/import/wq_vtb/inc
|
|
ADD_INCLUDE += $(TOPDIR)/plc/common/inc \
|
|
$(TOPDIR)/inc/io_lib \
|
|
$(TOPDIR)/plc/halphy/inc \
|
|
$(TOPDIR)/export/inc/pkt \
|
|
$(TOPDIR)/inc/plc_lib \
|
|
$(TOPDIR)/plc/inc \
|
|
./phy \
|
|
$(TOPDIR)/plc/halmac/inc \
|
|
|
|
# predefined macro
|
|
PRE_MARCO += IRAM_SECTION_DISABLE
|
|
PRE_MARCO += IOT_ASSERT_DEBUG=0
|
|
|
|
ifeq ($(cco), 1)
|
|
LD_SCRIPT = link_sp_app_cco.lds
|
|
else
|
|
LD_SCRIPT = link_sp_app.lds
|
|
endif
|
|
# lib dir
|
|
# lib need to ld together
|
|
ADD_LIB =
|
|
|
|
extra_work = echo handle sp_applet..;\
|
|
$(TOPDIR)/tools/rom_img/make_ld.sh --addrs $(OUTPUT_FULL_NAME)\
|
|
$(TOPDIR)/tools/rom_img/riscv2/sp_symbol > $(TOPDIR)/startup/ldscripts/riscv2/sp_$(MODE_TYPE).addrs.ld ;\
|
|
xxd -i < $(OUTPUT_DIR)/$(OUTPUT_NAME).bin > $(TOPDIR)/startup/riscv2/inc/sp_applet.txt
|
|
|
|
#####################################################
|
|
|
|
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)
|