Linux Audio

Check our new training course

Linux debugging, profiling, tracing and performance analysis training

Apr 14-17, 2025
Register
Loading...
v3.1
 
  1# Makefile for the Sparc boot stuff.
  2#
  3# Copyright (C) 1995 David S. Miller (davem@caip.rutgers.edu)
  4# Copyright (C) 1997,1998 Jakub Jelinek (jj@ultra.linux.cz)
  5
  6ROOT_IMG	:= /usr/src/root.img
  7ELFTOAOUT	:= elftoaout
  8MKIMAGE 	:= $(srctree)/scripts/mkuboot.sh
  9
 10hostprogs-y	:= piggyback btfixupprep
 11targets		:= tftpboot.img btfix.o btfix.S 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_SPARC32),y)
 22quiet_cmd_btfix		= BTFIX   $@
 23      cmd_btfix		= $(OBJDUMP) -x vmlinux | $(obj)/btfixupprep > $@
 24quiet_cmd_sysmap        = SYSMAP  $(obj)/System.map
 25      cmd_sysmap        = $(CONFIG_SHELL) $(srctree)/scripts/mksysmap
 26quiet_cmd_image = LD      $@
 27      cmd_image = $(LD) $(LDFLAGS) $(EXTRA_LDFLAGS) $(LDFLAGS_$(@F)) -o $@
 28
 29define rule_image
 30	$(if $($(quiet)cmd_image),               \
 31	  echo '  $($(quiet)cmd_image)' &&)      \
 32	  $(cmd_image);                          \
 33	$(if $($(quiet)cmd_sysmap),              \
 34	  echo '  $($(quiet)cmd_sysmap)' &&)  \
 35	$(cmd_sysmap) $@ $(obj)/System.map;      \
 36	if [ $$? -ne 0 ]; then                   \
 37		rm -f $@;                        \
 38		/bin/false;                      \
 39	fi;                                      \
 40	echo 'cmd_$@ := $(cmd_image)' > $(@D)/.$(@F).cmd
 41endef
 42
 43BTOBJS := $(patsubst %/, %/built-in.o, $(VMLINUX_INIT))
 44BTLIBS := $(patsubst %/, %/built-in.o, $(VMLINUX_MAIN))
 45LDFLAGS_image := -T arch/sparc/kernel/vmlinux.lds $(BTOBJS) \
 46                  --start-group $(BTLIBS) --end-group \
 47                  $(kallsyms.o) $(obj)/btfix.o
 48
 49# Link the final image including btfixup'ed symbols.
 50# This is a replacement for the link done in the top-level Makefile.
 51# Note: No dependency on the prerequisite files since that would require
 52# make to try check if they are updated - and due to changes
 53# in gcc options (path for example) this would result in
 54# these files being recompiled for each build.
 55$(obj)/image: $(obj)/btfix.o FORCE
 56	$(call if_changed_rule,image)
 57
 58$(obj)/zImage: $(obj)/image
 59	$(call if_changed,strip)
 60	@echo '  kernel: $@ is ready'
 61
 62$(obj)/btfix.S: $(obj)/btfixupprep vmlinux FORCE
 63	$(call if_changed,btfix)
 64
 65endif
 66
 67ifeq ($(CONFIG_SPARC64),y)
 68
 69# Actual linking
 70$(obj)/image: vmlinux FORCE
 71	$(call if_changed,strip)
 72	@echo '  kernel: $@ is ready'
 73
 74$(obj)/zImage: $(obj)/image
 75	$(call if_changed,gzip)
 76	@echo '  kernel: $@ is ready'
 77
 78$(obj)/vmlinux.aout: vmlinux FORCE
 79	$(call if_changed,elftoaout)
 80	@echo '  kernel: $@ is ready'
 81else
 82
 
 
 
 
 83# The following lines make a readable image for U-Boot.
 84#  uImage   - Binary file read by U-boot
 85#  uImage.o - object file of uImage for loading with a
 86#             flash programmer understanding ELF.
 87
 88OBJCOPYFLAGS_image.bin := -S -O binary -R .note -R .comment
 89$(obj)/image.bin: $(obj)/image FORCE
 90	$(call if_changed,objcopy)
 91
 92$(obj)/image.gz: $(obj)/image.bin
 93	$(call if_changed,gzip)
 94
 95quiet_cmd_uimage = UIMAGE  $@
 96      cmd_uimage = $(CONFIG_SHELL) $(MKIMAGE) -A sparc -O linux -T kernel \
 97               -C gzip -a $(CONFIG_UBOOT_LOAD_ADDR) \
 98	       -e $(CONFIG_UBOOT_ENTRY_ADDR) -n 'Linux-$(KERNELRELEASE)' \
 99               -d $< $@
100
101quiet_cmd_uimage.o = UIMAGE.O $@
102      cmd_uimage.o = $(LD) -Tdata $(CONFIG_UBOOT_FLASH_ADDR) \
103                     -r -b binary $@ -o $@.o
104
105targets += uImage
106$(obj)/uImage: $(obj)/image.gz
107	$(call if_changed,uimage)
108	$(call if_changed,uimage.o)
109	@echo '  Image $@ is ready'
110
111endif
 
 
 
 
112
113$(obj)/tftpboot.img: $(obj)/image $(obj)/piggyback System.map $(ROOT_IMG) FORCE
114	$(call if_changed,elftoaout)
115	$(call if_changed,piggy)
v6.8
 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)