Linux-2.6.12-rc2
[linux-2.6.git] / arch / v850 / Makefile
1 #
2 # arch/v850/Makefile
3 #
4 #  Copyright (C) 2001,02,03  NEC Corporation
5 #  Copyright (C) 2001,02,03  Miles Bader <miles@gnu.org>
6 #
7 # This file is included by the global makefile so that you can add your own
8 # architecture-specific flags and dependencies. Remember to do have actions
9 # for "archclean" and "archdep" for cleaning up and making dependencies for
10 # this architecture
11 #
12 # This file is subject to the terms and conditions of the GNU General Public
13 # License.  See the file "COPYING" in the main directory of this archive
14 # for more details.
15 #
16
17 arch_dir = arch/v850
18
19 CFLAGS += -mv850e
20 # r16 is a fixed pointer to the current task
21 CFLAGS += -ffixed-r16 -mno-prolog-function
22 CFLAGS += -fno-builtin
23 CFLAGS += -D__linux__ -DUTS_SYSNAME=\"uClinux\"
24
25 # This prevents the linker from consolidating the .gnu.linkonce.this_module
26 # section into .text (which the v850 default linker script for -r does for
27 # some reason)
28 LDFLAGS_MODULE += --unique=.gnu.linkonce.this_module
29
30 OBJCOPY_FLAGS_BLOB := -I binary -O elf32-little -B v850e
31
32
33 head-y := $(arch_dir)/kernel/head.o $(arch_dir)/kernel/init_task.o
34 core-y += $(arch_dir)/kernel/
35 libs-y += $(arch_dir)/lib/
36
37
38 # Deal with the initial contents of the root device
39 ifdef ROOT_FS_IMAGE
40 core-y += root_fs_image.o
41
42 # Because the kernel build-system erases all explicit .o build rules, we
43 # have to use an intermediate target to fool it into building for us.
44 # This results in it being built anew each time, but that's alright.
45 root_fs_image.o: root_fs_image_force
46
47 root_fs_image_force: $(ROOT_FS_IMAGE)
48         $(OBJCOPY) $(OBJCOPY_FLAGS_BLOB) --rename-section .data=.root,alloc,load,readonly,data,contents $< root_fs_image.o
49 endif
50
51
52 prepare: include/asm-$(ARCH)/asm-consts.h
53
54 # Generate constants from C code for use by asm files
55 arch/$(ARCH)/kernel/asm-consts.s: include/asm include/linux/version.h \
56                                    include/config/MARKER
57
58 include/asm-$(ARCH)/asm-consts.h: arch/$(ARCH)/kernel/asm-consts.s
59         $(call filechk,gen-asm-offsets)
60
61 CLEAN_FILES += include/asm-$(ARCH)/asm-consts.h \
62                arch/$(ARCH)/kernel/asm-consts.s \
63                root_fs_image.o