>> 1 # SPDX-License-Identifier: GPL-2.0 >> 2 # Makefile for the Sparc boot stuff. 1 # 3 # 2 # arch/x86/boot/Makefile !! 4 # Copyright (C) 1995 David S. Miller (davem@caip.rutgers.edu) 3 # !! 5 # Copyright (C) 1997,1998 Jakub Jelinek (jj@ultra.linux.cz) 4 # This file is subject to the terms and condit << 5 # License. See the file "COPYING" in the main << 6 # for more details. << 7 # << 8 # Copyright (C) 1994 by Linus Torvalds << 9 # Changed by many, many contributors over the << 10 # << 11 << 12 # If you want to preset the SVGA mode, uncomme << 13 # set SVGA_MODE to whatever number you want. << 14 # Set it to -DSVGA_MODE=NORMAL_VGA if you just << 15 # The number is the same as you would ordinari << 16 << 17 SVGA_MODE := -DSVGA_MODE=NORMAL_VGA << 18 << 19 targets := vmlinux.bin setup.bin setup << 20 targets += fdimage fdimage144 fdimage2 << 21 subdir- := compressed << 22 << 23 setup-y += a20.o bioscall.o cmdline.o << 24 setup-y += early_serial_console.o edd. << 25 setup-y += pm.o pmjump.o printf.o regs << 26 setup-y += video-mode.o version.o << 27 setup-$(CONFIG_X86_APM_BOOT) += apm.o << 28 << 29 # The link order of the video-*.o modules can << 30 # video-vga.o *must* be listed first, followed << 31 # Hardware-specific drivers should follow in t << 32 # probed, and video-bios.o should typically be << 33 setup-y += video-vga.o << 34 setup-y += video-vesa.o << 35 setup-y += video-bios.o << 36 << 37 targets += $(setup-y) << 38 hostprogs := tools/build << 39 hostprogs += mkcpustr << 40 << 41 HOST_EXTRACFLAGS += -I$(srctree)/tools/include << 42 -include include/generated << 43 -D__EXPORTED_HEADERS__ << 44 << 45 $(obj)/cpu.o: $(obj)/cpustr.h << 46 << 47 quiet_cmd_cpustr = CPUSTR $@ << 48 cmd_cpustr = $(obj)/mkcpustr > $@ << 49 $(obj)/cpustr.h: $(obj)/mkcpustr FORCE << 50 $(call if_changed,cpustr) << 51 targets += cpustr.h << 52 << 53 # -------------------------------------------- << 54 << 55 KBUILD_CFLAGS := $(REALMODE_CFLAGS) -D_SETUP << 56 KBUILD_AFLAGS := $(KBUILD_CFLAGS) -D__ASSEMB << 57 KBUILD_CFLAGS += $(call cc-option,-fmacro-pr << 58 KBUILD_CFLAGS += -fno-asynchronous-unwind-ta << 59 KBUILD_CFLAGS += $(CONFIG_CC_IMPLICIT_FALLTH << 60 << 61 $(obj)/bzImage: asflags-y := $(SVGA_MODE) << 62 << 63 quiet_cmd_image = BUILD $@ << 64 silent_redirect_image = >/dev/null << 65 cmd_image = $(obj)/tools/build $(obj)/setup.bi << 66 $(obj)/zoffset. << 67 << 68 $(obj)/bzImage: $(obj)/setup.bin $(obj)/vmlinu << 69 $(call if_changed,image) << 70 @$(kecho) 'Kernel: $@ is ready' ' (#'$ << 71 << 72 OBJCOPYFLAGS_vmlinux.bin := -O binary -R .note << 73 $(obj)/vmlinux.bin: $(obj)/compressed/vmlinux << 74 $(call if_changed,objcopy) << 75 << 76 SETUP_OBJS = $(addprefix $(obj)/,$(setup-y)) << 77 << 78 sed-zoffset := -e 's/^\([0-9a-fA-F]*\) [a-zA-Z << 79 << 80 quiet_cmd_zoffset = ZOFFSET $@ << 81 cmd_zoffset = $(NM) $< | sed -n $(sed-zo << 82 << 83 targets += zoffset.h << 84 $(obj)/zoffset.h: $(obj)/compressed/vmlinux FO << 85 $(call if_changed,zoffset) << 86 << 87 6 88 AFLAGS_header.o += -I$(objtree)/$(obj) !! 7 ROOT_IMG := /usr/src/root.img 89 $(obj)/header.o: $(obj)/zoffset.h !! 8 ELFTOAOUT := elftoaout 90 9 91 LDFLAGS_setup.elf := -m elf_i386 -z noex !! 10 hostprogs := piggyback 92 $(obj)/setup.elf: $(src)/setup.ld $(SETUP_OBJS !! 11 targets := tftpboot.img image zImage vmlinux.aout 93 $(call if_changed,ld) !! 12 clean-files := System.map >> 13 >> 14 quiet_cmd_elftoaout = ELFTOAOUT $@ >> 15 cmd_elftoaout = $(ELFTOAOUT) $(obj)/image -o $@ >> 16 quiet_cmd_piggy = PIGGY $@ >> 17 cmd_piggy = $(obj)/piggyback $(BITS) $@ System.map $(ROOT_IMG) >> 18 quiet_cmd_strip = STRIP $@ >> 19 cmd_strip = $(STRIP) -R .comment -R .note -K sun4u_init -K _end -K _start $< -o $@ >> 20 >> 21 ifeq ($(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`)')' >> 32 else >> 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. 94 42 95 OBJCOPYFLAGS_setup.bin := -O binary !! 43 OBJCOPYFLAGS_image.bin := -S -O binary -R .note -R .comment 96 $(obj)/setup.bin: $(obj)/setup.elf FORCE !! 44 $(obj)/image.bin: $(obj)/image FORCE 97 $(call if_changed,objcopy) 45 $(call if_changed,objcopy) 98 46 99 $(obj)/compressed/vmlinux: FORCE !! 47 $(obj)/image.gz: $(obj)/image.bin FORCE 100 $(Q)$(MAKE) $(build)=$(obj)/compressed !! 48 $(call if_changed,gzip) 101 49 102 # Set this if you want to pass append argument !! 50 UIMAGE_LOADADDR = $(CONFIG_UBOOT_LOAD_ADDR) 103 # bzdisk/fdimage/hdimage/isoimage kernel !! 51 UIMAGE_ENTRYADDR = $(CONFIG_UBOOT_ENTRY_ADDR) 104 FDARGS = !! 52 UIMAGE_COMPRESSION = gzip 105 # Set this if you want one or more initrds inc !! 53 106 FDINITRD = !! 54 quiet_cmd_uimage.o = UIMAGE.O $@ 107 !! 55 cmd_uimage.o = $(LD) -Tdata $(CONFIG_UBOOT_FLASH_ADDR) \ 108 imgdeps = $(obj)/bzImage $(obj)/mtools.conf $( !! 56 -r -b binary $@ -o $@.o 109 !! 57 110 $(obj)/mtools.conf: $(src)/mtools.conf.in !! 58 targets += uImage 111 sed -e 's|@OBJ@|$(obj)|g' < $< > $@ !! 59 $(obj)/uImage: $(obj)/image.gz FORCE 112 !! 60 $(call if_changed,uimage) 113 targets += mtools.conf !! 61 $(call if_changed,uimage.o) 114 !! 62 @$(kecho) 'Kernel: $@ is ready' '(#'$(or $(KBUILD_BUILD_VERSION),`cat .version`)')' 115 # genimage.sh requires bash, but it also has a !! 63 116 # external dependencies. !! 64 endif 117 quiet_cmd_genimage = GENIMAGE $3 !! 65 118 cmd_genimage = $(BASH) $(src)/genimage.s !! 66 $(obj)/image: vmlinux FORCE 119 $(obj)/mtools.conf '$(FDARGS)' !! 67 $(call if_changed,strip) 120 !! 68 @$(kecho) 'Kernel: $@ is ready' '(#'$(or $(KBUILD_BUILD_VERSION),`cat .version`)')' 121 PHONY += bzdisk fdimage fdimage144 fdimage288 !! 69 122 !! 70 $(obj)/tftpboot.img: $(obj)/image $(obj)/piggyback System.map $(ROOT_IMG) FORCE 123 # This requires write access to /dev/fd0 !! 71 $(call if_changed,elftoaout) 124 # All images require syslinux to be installed; !! 72 $(call if_changed,piggy) 125 # EDK2/OVMF if the kernel is compiled with the << 126 bzdisk: $(imgdeps) << 127 $(call cmd,genimage,bzdisk,/dev/fd0) << 128 << 129 fdimage fdimage144: $(imgdeps) << 130 $(call cmd,genimage,fdimage144,$(obj)/ << 131 @$(kecho) 'Kernel: $(obj)/fdimage is r << 132 << 133 fdimage288: $(imgdeps) << 134 $(call cmd,genimage,fdimage288,$(obj)/ << 135 @$(kecho) 'Kernel: $(obj)/fdimage is r << 136 << 137 hdimage: $(imgdeps) << 138 $(call cmd,genimage,hdimage,$(obj)/hdi << 139 @$(kecho) 'Kernel: $(obj)/hdimage is r << 140 << 141 isoimage: $(imgdeps) << 142 $(call cmd,genimage,isoimage,$(obj)/im << 143 @$(kecho) 'Kernel: $(obj)/image.iso is <<
Linux® is a registered trademark of Linus Torvalds in the United States and other countries.
TOMOYO® is a registered trademark of NTT DATA CORPORATION.