blob: 5aa8bf705b17213ee833b18cfef81579616dfc4e [file] [log] [blame]
shijie.xiongdc3773a2022-06-28 13:55:19 +08001#Object files and dependency definitions
2B_PRJDIR := $(SDK_BASE)
3kernel_B_BUILD_DIR := $(kernel_BUILD_DIR)
4RTOS_ELF = $(kernel_BUILD_DIR)/${KERNEL}.elf
5RTOSDemo_a = $(kernel_BUILD_DIR)/${KERNEL}_a.bin
6RTOSDemo_b = $(kernel_BUILD_DIR)/${KERNEL}_b.bin
7RTOSDemo = $(kernel_BUILD_DIR)/${KERNEL}.bin
8
9#toolchain
10NM:=$(TOOLCHAIN_KEYWORD)-nm
11OBJCOPY:=$(TOOLCHAIN_KEYWORD)-objcopy
12CC:=$(TOOLCHAIN_KEYWORD)-$(COMPILER)
13
14#Specify link segment
15_membdatalist+=.mem_text .data .bss .stack .heap
16
17#Generate the specified bin file
18RTOSDemo_bin=${OBJCOPY} -O binary $(addprefix -R ,$(_membdatalist)) ${RTOS_ELF} ${RTOSDemo_b};
19RTOSDemo_bin+=${OBJCOPY} -O binary $(addprefix -j ,$(_membdatalist)) ${RTOS_ELF} ${RTOSDemo_a};
20RTOSDemo_bin+=cat ${RTOSDemo_a} > ${RTOSDemo};
21RTOSDemo_bin+=printf '%08X' $$(stat -c "%s" ${RTOSDemo})|tac -brs ..|cut -b-8|xxd -r -p|dd of=${RTOSDemo} bs=1 seek=4 count=4 conv=notrunc;
22
23
24.PHONY: xip
25xip:
26 @$(RTOSDemo_bin)