2 # This file is subject to the terms and conditions of the GNU General Public
3 # License. See the file "COPYING" in the main directory of this archive
6 # Copyright (C) 2000, 2001 Paolo Alberelli
7 # Copyright (C) 2003, 2004 Paul Mundt
9 # This file is included by the global makefile so that you can add your own
10 # architecture-specific flags and dependencies. Remember to do have actions
11 # for "archclean" and "archdep" for cleaning up and making dependencies for
16 cpu-
$(CONFIG_LITTLE_ENDIAN
) := -ml
18 cpu-
$(CONFIG_CPU_SH5
) += -m5-32media-nofpu
20 ifdef CONFIG_LITTLE_ENDIAN
21 LDFLAGS_vmlinux
+= --defsym
'jiffies=jiffies_64'
22 LDFLAGS
+= -EL
-mshlelf32_linux
24 LDFLAGS_vmlinux
+= --defsym
'jiffies=jiffies_64+4'
25 LDFLAGS
+= -EB
-mshelf32_linux
28 # No requirements for endianess support from AFLAGS, 'as' always run through gcc
31 LDFLAGS_vmlinux
+= --defsym phys_stext
=_stext-
$(CONFIG_CACHED_MEMORY_OFFSET
) \
32 --defsym phys_stext_shmedia
=phys_stext
+1 \
35 OBJCOPYFLAGS
:= -O binary
-R .note
-R .comment
-R .stab
-R .stabstr
-S
38 # arch/sh64/defconfig never had any hope of being
39 # frequently updated, so use one that does
41 KBUILD_DEFCONFIG
:= cayman_defconfig
44 LINKFLAGS
+= -Ttext
$(word 1,$(LOADADDR
))
47 machine-
$(CONFIG_SH_CAYMAN
) := cayman
48 machine-
$(CONFIG_SH_SIMULATOR
) := sim
49 machine-
$(CONFIG_SH_HARP
) := harp
50 machine-
$(CONFIG_SH_ROMRAM
) := romram
52 head-y
:= arch
/$(ARCH
)/kernel
/head.o arch
/$(ARCH
)/kernel
/init_task.o
54 core-y
+= arch
/sh64
/kernel
/ arch
/sh64
/mm
/
57 core-y
+= arch
/sh64
/mach-
$(machine-y
)/
60 LIBGCC
:= $(shell $(CC
) $(CFLAGS
) -print-libgcc-file-name
)
61 libs-y
+= arch
/$(ARCH
)/lib
/ $(LIBGCC
)
63 drivers-
$(CONFIG_OPROFILE
) += arch
/sh64
/oprofile
/
65 boot
:= arch
/$(ARCH
)/boot
68 $(Q
)$(MAKE
) $(build
)=$(boot
) $(boot
)/$@
73 $(Q
)$(MAKE
) $(clean)=$(boot
)
75 archprepare
: arch
/$(ARCH
)/lib
/syscalltab.h
77 define filechk_gen-syscalltab
80 echo
" * DO NOT MODIFY."; \
82 echo
" * This file was generated by arch/$(ARCH)/Makefile"; \
83 echo
" * Any changes will be reverted at build time."; \
86 echo
"#ifndef __SYSCALLTAB_H"; \
87 echo
"#define __SYSCALLTAB_H"; \
89 echo
"#include <linux/kernel.h>"; \
91 echo
"struct syscall_info {"; \
92 echo
" const char *name;"; \
93 echo
"} syscall_info_table[] = {"; \
94 sed
-e
'/^.*\.long /!d;s// { "/;s/\(\([^/]*\)\/\)\{1\}.*/\2/; \
95 s/[ \t]*$$//g;s/$$/" },/;s/\("\)sys_/\1/g'; \
98 echo
"#define NUM_SYSCALL_INFO_ENTRIES ARRAY_SIZE(syscall_info_table)"; \
100 echo
"#endif /* __SYSCALLTAB_H */" )
103 arch
/$(ARCH
)/lib
/syscalltab.h
: arch
/sh64
/kernel
/syscalls.S
104 $(call filechk
,gen-syscalltab
)
106 CLEAN_FILES
+= arch
/$(ARCH
)/lib
/syscalltab.h
109 @echo
' zImage - Compressed kernel image (arch/sh64/boot/zImage)'