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