Merge branch 'linus' of git://git.kernel.org/pub/scm/linux/kernel/git/herbert/crypto-2.6
[linux-2.6-block.git] / arch / alpha / boot / Makefile
CommitLineData
1da177e4
LT
1#
2# arch/alpha/boot/Makefile
3#
4# This file is subject to the terms and conditions of the GNU General Public
5# License. See the file "COPYING" in the main directory of this archive
6# for more details.
7#
8# Copyright (C) 1994 by Linus Torvalds
9#
10
11hostprogs-y := tools/mkbb tools/objstrip
12targets := vmlinux.gz vmlinux \
13 vmlinux.nh tools/lxboot tools/bootlx tools/bootph \
14 tools/bootpzh bootloader bootpheader bootpzheader
15OBJSTRIP := $(obj)/tools/objstrip
16
96f14fe7 17KBUILD_HOSTCFLAGS := -Wall -I$(objtree)/usr/include
58ab5e0c 18BOOTCFLAGS += -I$(objtree)/$(obj) -I$(srctree)/$(obj)
23430603 19
1da177e4
LT
20# SRM bootable image. Copy to offset 512 of a partition.
21$(obj)/bootimage: $(addprefix $(obj)/tools/,mkbb lxboot bootlx) $(obj)/vmlinux.nh
22 ( cat $(obj)/tools/lxboot $(obj)/tools/bootlx $(obj)/vmlinux.nh ) > $@
23 $(obj)/tools/mkbb $@ $(obj)/tools/lxboot
24 @echo ' Bootimage $@ is ready'
25
26# BOOTP bootable image. Define INITRD during make to append initrd image.
27$(obj)/bootpfile: $(obj)/tools/bootph $(obj)/vmlinux.nh
28 cat $(obj)/tools/bootph $(obj)/vmlinux.nh > $@
29ifdef INITRD
30 cat $(INITRD) >> $@
31endif
32
33# Compressed kernel BOOTP bootable image.
34# Define INITRD during make to append initrd image.
35$(obj)/bootpzfile: $(obj)/tools/bootpzh $(obj)/vmlinux.nh.gz
36 cat $(obj)/tools/bootpzh $(obj)/vmlinux.nh.gz > $@
37ifdef INITRD
38 cat $(INITRD) >> $@
39endif
40
41# Compressed kernel image
42$(obj)/vmlinux.gz: $(obj)/vmlinux FORCE
43 $(call if_changed,gzip)
44 @echo ' Kernel $@ is ready'
45
46$(obj)/main.o: $(obj)/ksize.h
47$(obj)/bootp.o: $(obj)/ksize.h
48$(obj)/bootpz.o: $(obj)/kzsize.h
49
50$(obj)/ksize.h: $(obj)/vmlinux.nh FORCE
51 echo "#define KERNEL_SIZE `ls -l $(obj)/vmlinux.nh | awk '{print $$5}'`" > $@T
52ifdef INITRD
53 [ -f $(INITRD) ] || exit 1
54 echo "#define INITRD_IMAGE_SIZE `ls -l $(INITRD) | awk '{print $$5}'`" >> $@T
55endif
56 cmp -s $@T $@ || mv -f $@T $@
57 rm -f $@T
58
59$(obj)/kzsize.h: $(obj)/vmlinux.nh.gz FORCE
60 echo "#define KERNEL_SIZE `ls -l $(obj)/vmlinux.nh | awk '{print $$5}'`" > $@T
61 echo "#define KERNEL_Z_SIZE `ls -l $(obj)/vmlinux.nh.gz | awk '{print $$5}'`" >> $@T
62ifdef INITRD
63 [ -f $(INITRD) ] || exit 1
64 echo "#define INITRD_IMAGE_SIZE `ls -l $(INITRD) | awk '{print $$5}'`" >> $@T
65endif
66 cmp -s $@T $@ || mv -f $@T $@
67 rm -f $@T
68
69quiet_cmd_strip = STRIP $@
70 cmd_strip = $(STRIP) -o $@ $<
71
72$(obj)/vmlinux: vmlinux FORCE
73 $(call if_changed,strip)
74
75quiet_cmd_objstrip = OBJSTRIP $@
76 cmd_objstrip = $(OBJSTRIP) $(OSFLAGS_$(@F)) $< $@
77
78OSFLAGS_vmlinux.nh := -v
79OSFLAGS_lxboot := -p
80OSFLAGS_bootlx := -vb
81OSFLAGS_bootph := -vb
82OSFLAGS_bootpzh := -vb
83
84$(obj)/vmlinux.nh: vmlinux $(OBJSTRIP) FORCE
85 $(call if_changed,objstrip)
86
87$(obj)/vmlinux.nh.gz: $(obj)/vmlinux.nh FORCE
88 $(call if_changed,gzip)
89
90$(obj)/tools/lxboot: $(obj)/bootloader $(OBJSTRIP) FORCE
91 $(call if_changed,objstrip)
92
93$(obj)/tools/bootlx: $(obj)/bootloader $(OBJSTRIP) FORCE
94 $(call if_changed,objstrip)
95
96$(obj)/tools/bootph: $(obj)/bootpheader $(OBJSTRIP) FORCE
97 $(call if_changed,objstrip)
98
99$(obj)/tools/bootpzh: $(obj)/bootpzheader $(OBJSTRIP) FORCE
100 $(call if_changed,objstrip)
101
23430603
HD
102LDFLAGS_bootloader := -static -T # -N -relax
103LDFLAGS_bootloader := -static -T # -N -relax
104LDFLAGS_bootpheader := -static -T # -N -relax
105LDFLAGS_bootpzheader := -static -T # -N -relax
1da177e4 106
23430603
HD
107OBJ_bootlx := $(obj)/head.o $(obj)/stdio.o $(obj)/main.o
108OBJ_bootph := $(obj)/head.o $(obj)/stdio.o $(obj)/bootp.o
109OBJ_bootpzh := $(obj)/head.o $(obj)/stdio.o $(obj)/bootpz.o $(obj)/misc.o
1da177e4 110
135db3eb 111$(obj)/bootloader: $(obj)/bootloader.lds $(OBJ_bootlx) $(LIBS_Y) FORCE
1da177e4
LT
112 $(call if_changed,ld)
113
114$(obj)/bootpheader: $(obj)/bootloader.lds $(OBJ_bootph) $(LIBS_Y) FORCE
115 $(call if_changed,ld)
116
117$(obj)/bootpzheader: $(obj)/bootloader.lds $(OBJ_bootpzh) $(LIBS_Y) FORCE
118 $(call if_changed,ld)
119
120$(obj)/misc.o: lib/inflate.c