Merge /spare/repo/linux-2.6/
[linux-2.6] / arch / arm26 / Makefile
1 #
2 # arch/arm26/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) 1995-2001 by Russell King
9 # Copyright (c) 2004 Ian Molton
10
11 LDFLAGS_vmlinux :=-p -X
12 CPPFLAGS_vmlinux.lds = -DTEXTADDR=$(TEXTADDR) -DDATAADDR=$(DATAADDR)
13 OBJCOPYFLAGS    :=-O binary -R .note -R .comment -S
14 GZFLAGS         :=-9
15
16 ifeq ($(CONFIG_FRAME_POINTER),y)
17 CFLAGS          +=-fno-omit-frame-pointer -mno-sched-prolog
18 endif
19
20 CFLAGS_BOOT     :=-mapcs-26 -mcpu=arm3 -msoft-float -Uarm
21 CFLAGS          +=-mapcs-26 -mcpu=arm3 -msoft-float -Uarm
22 AFLAGS          +=-mapcs-26 -mcpu=arm3 -msoft-float
23
24 ifeq ($(CONFIG_XIP_KERNEL),y)
25   TEXTADDR       := 0x03880000
26   DATAADDR       := 0x02080000
27 else
28   TEXTADDR       := 0x02080000
29   DATAADDR       := .
30 endif
31
32 head-y          := arch/arm26/kernel/head.o arch/arm26/kernel/init_task.o
33
34 ifeq ($(incdir-y),)
35 incdir-y :=
36 endif
37 INCDIR   :=
38   
39 export  MACHINE TEXTADDR GZFLAGS CFLAGS_BOOT
40
41 # If we have a machine-specific directory, then include it in the build.
42 core-y                          += arch/arm26/kernel/ arch/arm26/mm/ arch/arm26/machine/
43 core-$(CONFIG_FPE_NWFPE)        += arch/arm26/nwfpe/
44
45 libs-y                          += arch/arm26/lib/
46
47 # Default target when executing plain make
48 all: zImage
49
50 boot := arch/arm26/boot
51
52 .PHONY: maketools FORCE
53 maketools: FORCE
54         
55
56 # Convert bzImage to zImage
57 bzImage: vmlinux
58         $(Q)$(MAKE) $(build)=$(boot) $(boot)/zImage
59
60 zImage Image bootpImage xipImage: vmlinux
61         $(Q)$(MAKE) $(build)=$(boot) $(boot)/$@
62
63 zinstall install: vmlinux
64         $(Q)$(MAKE) $(build)=$(boot) $@
65
66 # We use MRPROPER_FILES and CLEAN_FILES now
67 archclean:
68         $(Q)$(MAKE) $(clean)=$(boot)
69
70 # My testing targets (that short circuit a few dependencies)
71 zImg:;  $(Q)$(MAKE) $(build)=$(boot) $(boot)/zImage
72 Img:;   $(Q)$(MAKE) $(build)=$(boot) $(boot)/Image
73 bp:;    $(Q)$(MAKE) $(build)=$(boot) $(boot)/bootpImage
74 i:;     $(Q)$(MAKE) $(build)=$(boot) install
75 zi:;    $(Q)$(MAKE) $(build)=$(boot) zinstall
76
77 #
78 # Configuration targets.  Use these to select a
79 # configuration for your architecture
80 %_config:
81         @( \
82         CFG=$(@:_config=); \
83         if [ -f arch/arm26/def-configs/$$CFG ]; then \
84           [ -f .config ] && mv -f .config .config.old; \
85           cp arch/arm26/def-configs/$$CFG .config; \
86           echo "*** Default configuration for $$CFG installed"; \
87           echo "*** Next, you may run 'make oldconfig'"; \
88         else \
89           echo "$$CFG does not exist"; \
90         fi; \
91         )
92
93 define archhelp
94   echo  '* zImage        - Compressed kernel image (arch/$(ARCH)/boot/zImage)'
95   echo  '  Image         - Uncompressed kernel image (arch/$(ARCH)/boot/Image)'
96   echo  '  bootpImage    - Combined zImage and initial RAM disk' 
97   echo  '  xipImage      - eXecute In Place capable image for ROM use (arch/$(ARCH)/boot/xipImage)'
98   echo  '  initrd        - Create an initial image'
99   echo  '  install       - Install uncompressed kernel'
100   echo  '  zinstall      - Install compressed kernel'
101   echo  '                  Install using (your) ~/bin/installkernel or'
102   echo  '                  (distribution) /sbin/installkernel or'
103   echo  '                  install to $$(INSTALL_PATH) and run lilo'
104 endef