| # SPDX-License-Identifier: GPL-2.0 | 
| # Makefile for the Sparc boot stuff. | 
| # | 
| # Copyright (C) 1995 David S. Miller (davem@caip.rutgers.edu) | 
| # Copyright (C) 1997,1998 Jakub Jelinek (jj@ultra.linux.cz) | 
|   | 
| ROOT_IMG    := /usr/src/root.img | 
| ELFTOAOUT    := elftoaout | 
|   | 
| hostprogs    := piggyback | 
| targets        := tftpboot.img image zImage vmlinux.aout | 
| clean-files    := System.map | 
|   | 
| quiet_cmd_elftoaout    = ELFTOAOUT $@ | 
|       cmd_elftoaout    = $(ELFTOAOUT) $(obj)/image -o $@ | 
| quiet_cmd_piggy        = PIGGY   $@ | 
|       cmd_piggy        = $(obj)/piggyback $(BITS) $@ System.map $(ROOT_IMG) | 
| quiet_cmd_strip        = STRIP   $@ | 
|       cmd_strip        = $(STRIP) -R .comment -R .note -K sun4u_init -K _end -K _start $< -o $@ | 
|   | 
| ifeq ($(CONFIG_SPARC64),y) | 
|   | 
| # Actual linking | 
|   | 
| $(obj)/zImage: $(obj)/image | 
|     $(call if_changed,gzip) | 
|     @echo '  kernel: $@ is ready' | 
|   | 
| $(obj)/vmlinux.aout: vmlinux FORCE | 
|     $(call if_changed,elftoaout) | 
|     @echo '  kernel: $@ is ready' | 
| else | 
|   | 
| $(obj)/zImage: $(obj)/image | 
|     $(call if_changed,strip) | 
|     @echo '  kernel: $@ is ready' | 
|   | 
| # The following lines make a readable image for U-Boot. | 
| #  uImage   - Binary file read by U-boot | 
| #  uImage.o - object file of uImage for loading with a | 
| #             flash programmer understanding ELF. | 
|   | 
| OBJCOPYFLAGS_image.bin := -S -O binary -R .note -R .comment | 
| $(obj)/image.bin: $(obj)/image FORCE | 
|     $(call if_changed,objcopy) | 
|   | 
| $(obj)/image.gz: $(obj)/image.bin | 
|     $(call if_changed,gzip) | 
|   | 
| UIMAGE_LOADADDR = $(CONFIG_UBOOT_LOAD_ADDR) | 
| UIMAGE_ENTRYADDR = $(CONFIG_UBOOT_ENTRY_ADDR) | 
| UIMAGE_COMPRESSION = gzip | 
|   | 
| quiet_cmd_uimage.o = UIMAGE.O $@ | 
|       cmd_uimage.o = $(LD) -Tdata $(CONFIG_UBOOT_FLASH_ADDR) \ | 
|                      -r -b binary $@ -o $@.o | 
|   | 
| targets += uImage | 
| $(obj)/uImage: $(obj)/image.gz | 
|     $(call if_changed,uimage) | 
|     $(call if_changed,uimage.o) | 
|     @echo '  Image $@ is ready' | 
|   | 
| endif | 
|   | 
| $(obj)/image: vmlinux FORCE | 
|     $(call if_changed,strip) | 
|     @echo '  kernel: $@ is ready' | 
|   | 
| $(obj)/tftpboot.img: $(obj)/image $(obj)/piggyback System.map $(ROOT_IMG) FORCE | 
|     $(call if_changed,elftoaout) | 
|     $(call if_changed,piggy) | 
|   | 
| install: | 
|     sh $(srctree)/$(src)/install.sh $(KERNELRELEASE) $(obj)/zImage \ | 
|         System.map "$(INSTALL_PATH)" |