>> 1 # $Id: Makefile,v 1.10 2000/02/23 08:17:46 jj Exp $ >> 2 # Makefile for the Sparc boot stuff. 1 # 3 # 2 # arch/arm/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 included by the global makefile !! 6 5 # architecture-specific flags and dependencies !! 7 ROOT_IMG =/usr/src/root.img 6 # !! 8 ELFTOAOUT =elftoaout 7 # This file is subject to the terms and condit !! 9 8 # License. See the file "COPYING" in the main !! 10 all: btfix.o 9 # for more details. !! 11 10 # !! 12 tftpboot.img: piggyback 11 # Copyright (C) 1995-2002 Russell King !! 13 $(ELFTOAOUT) $(TOPDIR)/vmlinux -o tftpboot.img 12 # !! 14 ./piggyback tftpboot.img $(TOPDIR)/System.map $(ROOT_IMG) 13 OBJCOPYFLAGS :=-O binary -R .comment -S !! 15 >> 16 piggyback: piggyback.c >> 17 $(HOSTCC) $(HOSTCFLAGS) -o piggyback piggyback.c >> 18 >> 19 btfixupprep: btfixupprep.c >> 20 $(HOSTCC) $(HOSTCFLAGS) -o btfixupprep btfixupprep.c >> 21 >> 22 clean: >> 23 rm -f btfixupprep piggyback tftpboot.img btfix.o btfix.s >> 24 >> 25 BTOBJS := $(HEAD) init/main.o init/version.o init/do_mounts.o >> 26 BTLIBS := $(CORE_FILES_NO_BTFIX) $(FILESYSTEMS) \ >> 27 $(DRIVERS) $(NETWORKS) >> 28 >> 29 GENFILES := include/linux/version.h include/linux/compile.h $(foreach dirname, $(CORE_FILES_NO_BTFIX), _dir_$(dir $(dirname))) >> 30 .PHONY : $(GENFILES) >> 31 GENFILES += $(BTOBJS) >> 32 >> 33 $(GENFILES): >> 34 $(MAKE) -C $(TOPDIR) $@ 14 35 15 # ZRELADDR == virt_to_phys(PAGE_OFFSET + TEX !! 36 vmlinux.o: $(GENFILES) 16 ifdef CONFIG_PHYS_OFFSET !! 37 $(LD) -r $(patsubst %,$(TOPDIR)/%,$(BTOBJS)) \ 17 add_hex = $(shell printf 0x%x $$(( $(1) + $(2) !! 38 --start-group \ 18 ZRELADDR := $(call add_hex, $(CONFIG_PHYS_O !! 39 $(patsubst %,$(TOPDIR)/%,$(BTLIBS)) \ 19 endif !! 40 $(LIBS) \ 20 !! 41 --end-group -o vmlinux.o 21 PHYS_OFFSET := $(CONFIG_PHYS_OFFSET) << 22 export ZRELADDR PARAMS_PHYS PHYS_OFFSET << 23 << 24 targets := Image zImage xipImage bootpImage uI << 25 << 26 ifeq ($(CONFIG_XIP_KERNEL),y) << 27 << 28 cmd_deflate_xip_data = $(CONFIG_SHELL) -c '$(s << 29 << 30 ifeq ($(CONFIG_XIP_DEFLATED_DATA),y) << 31 quiet_cmd_mkxip = XIPZ $@ << 32 cmd_mkxip = $(cmd_objcopy) && $(cmd_deflate_xi << 33 else << 34 quiet_cmd_mkxip = $(quiet_cmd_objcopy) << 35 cmd_mkxip = $(cmd_objcopy) << 36 endif << 37 << 38 $(obj)/xipImage: vmlinux FORCE << 39 $(call if_changed,mkxip) << 40 @$(kecho) ' Physical Address of xipIm << 41 << 42 $(obj)/Image $(obj)/zImage: FORCE << 43 @echo 'Kernel configured for XIP (CONF << 44 @echo 'Only the xipImage target is ava << 45 @false << 46 << 47 else << 48 << 49 $(obj)/xipImage: FORCE << 50 @echo 'Kernel not configured for XIP ( << 51 @false << 52 << 53 $(obj)/Image: vmlinux FORCE << 54 $(call if_changed,objcopy) << 55 << 56 $(obj)/compressed/vmlinux: $(obj)/Image FORCE << 57 $(Q)$(MAKE) $(build)=$(obj)/compressed << 58 << 59 $(obj)/zImage: $(obj)/compressed/vmlinux FORC << 60 $(call if_changed,objcopy) << 61 << 62 endif << 63 << 64 ifneq ($(LOADADDR),) << 65 UIMAGE_LOADADDR=$(LOADADDR) << 66 else << 67 ifeq ($(CONFIG_ZBOOT_ROM),y) << 68 UIMAGE_LOADADDR=$(CONFIG_ZBOOT_ROM_TEXT) << 69 else << 70 UIMAGE_LOADADDR=$(ZRELADDR) << 71 endif << 72 endif << 73 << 74 check_for_multiple_loadaddr = \ << 75 if [ $(words $(UIMAGE_LOADADDR)) -ne 1 ]; then << 76 echo 'multiple (or no) load addresses: << 77 echo 'This is incompatible with uImage << 78 echo 'Specify LOADADDR on the commandl << 79 false; \ << 80 fi << 81 << 82 $(obj)/uImage: $(obj)/zImage FORCE << 83 @$(check_for_multiple_loadaddr) << 84 $(call if_changed,uimage) << 85 42 86 $(obj)/bootp/bootp: $(obj)/zImage FORCE !! 43 btfix.s: btfixupprep vmlinux.o 87 $(Q)$(MAKE) $(build)=$(obj)/bootp $@ !! 44 $(OBJDUMP) -x vmlinux.o | ./btfixupprep > btfix.s 88 45 89 $(obj)/bootpImage: $(obj)/bootp/bootp FORCE !! 46 btfix.o: btfix.s 90 $(call if_changed,objcopy) !! 47 $(CC) -c -o btfix.o btfix.s 91 48 92 subdir- := bootp compressed dts !! 49 include $(TOPDIR)/Rules.make
Linux® is a registered trademark of Linus Torvalds in the United States and other countries.
TOMOYO® is a registered trademark of NTT DATA CORPORATION.