path: root/arch/v850/Makefile
diff options
authorLinus Torvalds <torvalds@ppc970.osdl.org>2005-04-16 15:20:36 -0700
committerLinus Torvalds <torvalds@ppc970.osdl.org>2005-04-16 15:20:36 -0700
commit1da177e4c3f41524e886b7f1b8a0c1fc7321cac2 (patch)
tree0bba044c4ce775e45a88a51686b5d9f90697ea9d /arch/v850/Makefile
Initial git repository build. I'm not bothering with the full history, even though we have it. We can create a separate "historical" git archive of that later if we want to, and in the meantime it's about 3.2GB when imported into git - space that would just make the early git days unnecessarily complicated, when we don't have a lot of good infrastructure for it. Let it rip!
Diffstat (limited to 'arch/v850/Makefile')
1 files changed, 63 insertions, 0 deletions
diff --git a/arch/v850/Makefile b/arch/v850/Makefile
new file mode 100644
index 00000000000..6edaed4a310
--- /dev/null
+++ b/arch/v850/Makefile
@@ -0,0 +1,63 @@
+# arch/v850/Makefile
+# Copyright (C) 2001,02,03 NEC Corporation
+# Copyright (C) 2001,02,03 Miles Bader <miles@gnu.org>
+# This file is included by the global makefile so that you can add your own
+# architecture-specific flags and dependencies. Remember to do have actions
+# for "archclean" and "archdep" for cleaning up and making dependencies for
+# this architecture
+# This file is subject to the terms and conditions of the GNU General Public
+# License. See the file "COPYING" in the main directory of this archive
+# for more details.
+arch_dir = arch/v850
+CFLAGS += -mv850e
+# r16 is a fixed pointer to the current task
+CFLAGS += -ffixed-r16 -mno-prolog-function
+CFLAGS += -fno-builtin
+CFLAGS += -D__linux__ -DUTS_SYSNAME=\"uClinux\"
+# This prevents the linker from consolidating the .gnu.linkonce.this_module
+# section into .text (which the v850 default linker script for -r does for
+# some reason)
+LDFLAGS_MODULE += --unique=.gnu.linkonce.this_module
+OBJCOPY_FLAGS_BLOB := -I binary -O elf32-little -B v850e
+head-y := $(arch_dir)/kernel/head.o $(arch_dir)/kernel/init_task.o
+core-y += $(arch_dir)/kernel/
+libs-y += $(arch_dir)/lib/
+# Deal with the initial contents of the root device
+core-y += root_fs_image.o
+# Because the kernel build-system erases all explicit .o build rules, we
+# have to use an intermediate target to fool it into building for us.
+# This results in it being built anew each time, but that's alright.
+root_fs_image.o: root_fs_image_force
+root_fs_image_force: $(ROOT_FS_IMAGE)
+ $(OBJCOPY) $(OBJCOPY_FLAGS_BLOB) --rename-section .data=.root,alloc,load,readonly,data,contents $< root_fs_image.o
+prepare: include/asm-$(ARCH)/asm-consts.h
+# Generate constants from C code for use by asm files
+arch/$(ARCH)/kernel/asm-consts.s: include/asm include/linux/version.h \
+ include/config/MARKER
+include/asm-$(ARCH)/asm-consts.h: arch/$(ARCH)/kernel/asm-consts.s
+ $(call filechk,gen-asm-offsets)
+CLEAN_FILES += include/asm-$(ARCH)/asm-consts.h \
+ arch/$(ARCH)/kernel/asm-consts.s \
+ root_fs_image.o