# OUTPUT type # 1 - .out # 2 - .a # 3 - .so OUTPUT_TYPE = 2 OUTPUT_NAME = import SUB_DIRS = sby ifeq ($(target), kunlun3) ifeq ($(build_amp_type), 1) OUTDIR = .output/cus else OUTDIR = .output/plc endif else OUTDIR = .output endif # obj output folder BIN_DIR = $(OUTDIR)/obj # image output folder OUTPUT_DIR = $(OUTDIR)/lib # lib LIB = $(CURDIR)/sby/lib/libsby.a #CC = riscv32-unknown-elf-gcc # if risc-v ifeq ($(CC), riscv32-unknown-elf-gcc) AR = riscv32-unknown-elf-ar endif ifeq ($(CC), riscv64-unknown-elf-gcc) AR = riscv64-unknown-elf-ar endif # create the output folder $(BIN_DIR)/.sub_dirs: $(BIN_DIR) $(OUTPUT_DIR) cp $(LIB) $(OUTPUT_DIR)/ $(OUTPUT_DIR): $(shell if [ -n "$(OUTPUT_DIR)" -a ! -e "$(OUTPUT_DIR)" ];then mkdir -p $(OUTPUT_DIR); fi ) $(BIN_DIR): $(shell if [ -n "$(BIN_DIR)" -a ! -e "$(BIN_DIR)" ];then mkdir -p $(BIN_DIR); fi) # create the output folder $(OUTPUT_FULL_NAME): $(BIN_DIR)/.sub_dirs # dummy object .PHONY: clean $(OUTPUT_FULL_NAME) # clean all clean: -$(RM) -r $(OUTDIR) # display the obj files and output name debug: @echo TOPDIR=$(TOPDIR) @echo OUTPUT_DIR=$(OUTPUT_DIR) @echo OUTPUT_MAP=$(OUTPUT_MAP) @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) @echo LINK_LIBS=$(LINK_LIBS) @echo MAKEDEP=$(MAKEDEP) @echo CC=$(CC) @echo AR=$(AR)