1*4882a593Smuzhiyun# SPDX-License-Identifier: GPL-2.0 2*4882a593Smuzhiyuntargets := vmlinux.bin vmlinux.bin.gz 3*4882a593Smuzhiyun 4*4882a593Smuzhiyun# uImage build relies on mkimage being availble on your host for ARC target 5*4882a593Smuzhiyun# You will need to build u-boot for ARC, rename mkimage to arc-elf32-mkimage 6*4882a593Smuzhiyun# and make sure it's reacable from your PATH 7*4882a593Smuzhiyun 8*4882a593SmuzhiyunOBJCOPYFLAGS= -O binary -R .note -R .note.gnu.build-id -R .comment -S 9*4882a593Smuzhiyun 10*4882a593SmuzhiyunLINUX_START_TEXT = $$(readelf -h vmlinux | \ 11*4882a593Smuzhiyun grep "Entry point address" | grep -o 0x.*) 12*4882a593Smuzhiyun 13*4882a593SmuzhiyunUIMAGE_LOADADDR = $(CONFIG_LINUX_LINK_BASE) 14*4882a593SmuzhiyunUIMAGE_ENTRYADDR = $(LINUX_START_TEXT) 15*4882a593Smuzhiyun 16*4882a593Smuzhiyuntargets += uImage.bin 17*4882a593Smuzhiyuntargets += uImage.gz 18*4882a593Smuzhiyuntargets += uImage.lzma 19*4882a593Smuzhiyunextra-y += vmlinux.bin 20*4882a593Smuzhiyunextra-y += vmlinux.bin.gz 21*4882a593Smuzhiyunextra-y += vmlinux.bin.lzma 22*4882a593Smuzhiyun 23*4882a593Smuzhiyun$(obj)/vmlinux.bin: vmlinux FORCE 24*4882a593Smuzhiyun $(call if_changed,objcopy) 25*4882a593Smuzhiyun 26*4882a593Smuzhiyun$(obj)/vmlinux.bin.gz: $(obj)/vmlinux.bin FORCE 27*4882a593Smuzhiyun $(call if_changed,gzip) 28*4882a593Smuzhiyun 29*4882a593Smuzhiyun$(obj)/vmlinux.bin.lzma: $(obj)/vmlinux.bin FORCE 30*4882a593Smuzhiyun $(call if_changed,lzma) 31*4882a593Smuzhiyun 32*4882a593Smuzhiyun$(obj)/uImage.bin: $(obj)/vmlinux.bin FORCE 33*4882a593Smuzhiyun $(call if_changed,uimage,none) 34*4882a593Smuzhiyun 35*4882a593Smuzhiyun$(obj)/uImage.gz: $(obj)/vmlinux.bin.gz FORCE 36*4882a593Smuzhiyun $(call if_changed,uimage,gzip) 37*4882a593Smuzhiyun 38*4882a593Smuzhiyun$(obj)/uImage.lzma: $(obj)/vmlinux.bin.lzma FORCE 39*4882a593Smuzhiyun $(call if_changed,uimage,lzma) 40