Loading...
1# SPDX-License-Identifier: GPL-2.0
2# Makefile for the Sparc boot stuff.
3#
4# Copyright (C) 1995 David S. Miller (davem@caip.rutgers.edu)
5# Copyright (C) 1997,1998 Jakub Jelinek (jj@ultra.linux.cz)
6
7ROOT_IMG := /usr/src/root.img
8ELFTOAOUT := elftoaout
9
10hostprogs := piggyback
11targets := tftpboot.img image zImage vmlinux.aout
12clean-files := System.map
13
14quiet_cmd_elftoaout = ELFTOAOUT $@
15 cmd_elftoaout = $(ELFTOAOUT) $(obj)/image -o $@
16quiet_cmd_piggy = PIGGY $@
17 cmd_piggy = $(obj)/piggyback $(BITS) $@ System.map $(ROOT_IMG)
18quiet_cmd_strip = STRIP $@
19 cmd_strip = $(STRIP) -R .comment -R .note -K sun4u_init -K _end -K _start $< -o $@
20
21ifeq ($(CONFIG_SPARC64),y)
22
23# Actual linking
24
25$(obj)/zImage: $(obj)/image FORCE
26 $(call if_changed,gzip)
27 @$(kecho) 'Kernel: $@ is ready' '(#'$(or $(KBUILD_BUILD_VERSION),`cat .version`)')'
28
29$(obj)/vmlinux.aout: vmlinux FORCE
30 $(call if_changed,elftoaout)
31 @$(kecho) 'Kernel: $@ is ready' '(#'$(or $(KBUILD_BUILD_VERSION),`cat .version`)')'
32else
33
34$(obj)/zImage: $(obj)/image FORCE
35 $(call if_changed,strip)
36 @$(kecho) 'Kernel: $@ is ready' '(#'$(or $(KBUILD_BUILD_VERSION),`cat .version`)')'
37
38# The following lines make a readable image for U-Boot.
39# uImage - Binary file read by U-boot
40# uImage.o - object file of uImage for loading with a
41# flash programmer understanding ELF.
42
43OBJCOPYFLAGS_image.bin := -S -O binary -R .note -R .comment
44$(obj)/image.bin: $(obj)/image FORCE
45 $(call if_changed,objcopy)
46
47$(obj)/image.gz: $(obj)/image.bin FORCE
48 $(call if_changed,gzip)
49
50UIMAGE_LOADADDR = $(CONFIG_UBOOT_LOAD_ADDR)
51UIMAGE_ENTRYADDR = $(CONFIG_UBOOT_ENTRY_ADDR)
52UIMAGE_COMPRESSION = gzip
53
54quiet_cmd_uimage.o = UIMAGE.O $@
55 cmd_uimage.o = $(LD) -Tdata $(CONFIG_UBOOT_FLASH_ADDR) \
56 -r -b binary $@ -o $@.o
57
58targets += uImage
59$(obj)/uImage: $(obj)/image.gz FORCE
60 $(call if_changed,uimage)
61 $(call if_changed,uimage.o)
62 @$(kecho) 'Kernel: $@ is ready' '(#'$(or $(KBUILD_BUILD_VERSION),`cat .version`)')'
63
64endif
65
66$(obj)/image: vmlinux FORCE
67 $(call if_changed,strip)
68 @$(kecho) 'Kernel: $@ is ready' '(#'$(or $(KBUILD_BUILD_VERSION),`cat .version`)')'
69
70$(obj)/tftpboot.img: $(obj)/image $(obj)/piggyback System.map $(ROOT_IMG) FORCE
71 $(call if_changed,elftoaout)
72 $(call if_changed,piggy)