1*4bedea94SChris Zankel# 2*4bedea94SChris Zankel# This file is subject to the terms and conditions of the GNU General Public 3*4bedea94SChris Zankel# License. See the file "COPYING" in the main directory of this archive 4*4bedea94SChris Zankel# for more details. 5*4bedea94SChris Zankel# 6*4bedea94SChris Zankel 7*4bedea94SChris ZankelGZIP = gzip 8*4bedea94SChris ZankelGZIP_FLAGS = -v9fc 9*4bedea94SChris Zankel 10*4bedea94SChris Zankelifeq ($(BIG_ENDIAN),1) 11*4bedea94SChris ZankelOBJCOPY_ARGS := -O elf32-xtensa-be 12*4bedea94SChris Zankelelse 13*4bedea94SChris ZankelOBJCOPY_ARGS := -O elf32-xtensa-le 14*4bedea94SChris Zankelendif 15*4bedea94SChris Zankel 16*4bedea94SChris Zankelexport OBJCOPY_ARGS 17*4bedea94SChris Zankel 18*4bedea94SChris Zankelboot-y := bootstrap.o 19*4bedea94SChris Zankel 20*4bedea94SChris ZankelOBJS := $(addprefix $(obj)/,$(boot-y)) 21*4bedea94SChris Zankel 22*4bedea94SChris ZankelImage: vmlinux $(OBJS) 23*4bedea94SChris Zankel $(OBJCOPY) --strip-all -R .comment -R .xt.insn -O binary \ 24*4bedea94SChris Zankel vmlinux vmlinux.tmp 25*4bedea94SChris Zankel $(OBJCOPY) $(OBJCOPY_ARGS) -R .comment \ 26*4bedea94SChris Zankel --add-section image=vmlinux.tmp \ 27*4bedea94SChris Zankel --set-section-flags image=contents,alloc,load,load,data \ 28*4bedea94SChris Zankel $(OBJS) $@.tmp 29*4bedea94SChris Zankel $(LD) $(LDFLAGS) $(LDFLAGS_vmlinux) \ 30*4bedea94SChris Zankel -T arch/$(ARCH)/boot/boot-elf/boot.ld \ 31*4bedea94SChris Zankel -o arch/$(ARCH)/boot/$@.elf $@.tmp 32*4bedea94SChris Zankel rm -f $@.tmp vmlinux.tmp 33*4bedea94SChris Zankel 34*4bedea94SChris ZankelImage.initrd: vmlinux $(OBJS) 35*4bedea94SChris Zankel $(OBJCOPY) --strip-all -R .comment -R .xt.insn -O binary \ 36*4bedea94SChris Zankel --add-section .initrd=arch/$(ARCH)/boot/ramdisk \ 37*4bedea94SChris Zankel --set-section-flags .initrd=contents,alloc,load,load,data \ 38*4bedea94SChris Zankel vmlinux vmlinux.tmp 39*4bedea94SChris Zankel $(OBJCOPY) $(OBJCOPY_ARGS) -R .comment \ 40*4bedea94SChris Zankel --add-section image=vmlinux.tmp \ 41*4bedea94SChris Zankel --set-section-flags image=contents,alloc,load,load,data \ 42*4bedea94SChris Zankel $(OBJS) $@.tmp 43*4bedea94SChris Zankel $(LD) $(LDFLAGS) $(LDFLAGS_vmlinux) \ 44*4bedea94SChris Zankel -T arch/$(ARCH)/boot/boot-elf/boot.ld \ 45*4bedea94SChris Zankel -o arch/$(ARCH)/boot/$@.elf $@.tmp 46*4bedea94SChris Zankel rm -f $@.tmp vmlinux.tmp 47*4bedea94SChris Zankel 48*4bedea94SChris Zankel 49*4bedea94SChris ZankelzImage: Image 50*4bedea94SChris Zankel 51*4bedea94SChris ZankelzImage.initrd: Image.initrd 52*4bedea94SChris Zankel 53