linux-bk/arch/sh64/Makefile
<<
>>
Prefs
   1#
   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
   4# for more details.
   5#
   6# Copyright (C) 2000, 2001  Paolo Alberelli
   7# Copyright (C) 2003, 2004  Paul Mundt
   8#
   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
  12# this architecture
  13#
  14# Note that top level Makefile automagically builds dependencies for SUBDIRS
  15# but does not automagically clean SUBDIRS. Therefore "archclean" should clean
  16# up all, "archdep" does nothing on added SUBDIRS.
  17#
  18ifndef include_config
  19-include .config
  20endif
  21
  22cpu-y                           := -mb
  23cpu-$(CONFIG_LITTLE_ENDIAN)     := -ml
  24
  25cpu-$(CONFIG_CPU_SH5)           += -m5-32media-nofpu
  26
  27ifdef CONFIG_LITTLE_ENDIAN
  28LDFLAGS_vmlinux         += --defsym 'jiffies=jiffies_64'
  29LDFLAGS                 += -EL  -mshlelf32_linux
  30else
  31LDFLAGS_vmlinux         += --defsym 'jiffies=jiffies_64+4'
  32LDFLAGS                 += -EB  -mshelf32_linux
  33endif
  34
  35# No requirements for endianess support from AFLAGS, 'as' always run through gcc
  36AFLAGS          += -m5 -isa=sh64 -traditional
  37CFLAGS          += $(cpu-y)
  38
  39LDFLAGS_vmlinux += --defsym phys_stext=_stext-$(CONFIG_CACHED_MEMORY_OFFSET) \
  40                   -e phys_stext
  41
  42OBJCOPYFLAGS    := -O binary -R .note -R .comment -R .stab -R .stabstr -S
  43
  44ifdef LOADADDR
  45LINKFLAGS     += -Ttext $(word 1,$(LOADADDR))
  46endif
  47
  48machine-$(CONFIG_SH_CAYMAN)     := cayman
  49machine-$(CONFIG_SH_SIMULATOR)  := sim
  50machine-$(CONFIG_SH_HARP)       := harp
  51machine-$(CONFIG_SH_ROMRAM)     := romram
  52
  53head-y := arch/$(ARCH)/kernel/head.o arch/$(ARCH)/kernel/init_task.o
  54
  55core-y += $(addprefix arch/$(ARCH)/, kernel/ mm/ mach-$(machine-y)/)
  56
  57LIBGCC := $(shell $(CC) $(CFLAGS) -print-libgcc-file-name)
  58libs-y  += arch/$(ARCH)/lib/ $(LIBGCC)
  59
  60drivers-$(CONFIG_OPROFILE)      += arch/sh64/oprofile/
  61
  62boot := arch/$(ARCH)/boot
  63
  64zImage: vmlinux
  65        $(Q)$(MAKE) $(build)=$(boot) $(boot)/$@
  66
  67compressed: zImage
  68
  69archclean:
  70        $(Q)$(MAKE) $(clean)=$(boot)
  71
  72prepare: include/asm-$(ARCH)/asm-offsets.h arch/$(ARCH)/lib/syscalltab.h
  73
  74include/asm-$(ARCH)/asm-offsets.h: arch/$(ARCH)/kernel/asm-offsets.s \
  75                                   include/asm include/linux/version.h
  76        $(call filechk,gen-asm-offsets)
  77
  78define filechk_gen-syscalltab
  79       (set -e; \
  80        echo "/*"; \
  81        echo " * DO NOT MODIFY."; \
  82        echo " *"; \
  83        echo " * This file was generated by arch/$(ARCH)/Makefile"; \
  84        echo " * Any changes will be reverted at build time."; \
  85        echo " */"; \
  86        echo ""; \
  87        echo "#ifndef __SYSCALLTAB_H"; \
  88        echo "#define __SYSCALLTAB_H"; \
  89        echo ""; \
  90        echo "#include <linux/kernel.h>"; \
  91        echo ""; \
  92        echo "struct syscall_info {"; \
  93        echo "  const char *name;"; \
  94        echo "} syscall_info_table[] = {"; \
  95        sed -e '/^.*\.long /!d;s//\t{ "/;s/\(\([^/]*\)\/\)\{1\}.*/\2/; \
  96                s/[ \t]*$$//g;s/$$/" },/;s/\("\)sys_/\1/g'; \
  97        echo "};"; \
  98        echo ""; \
  99        echo "#define NUM_SYSCALL_INFO_ENTRIES  ARRAY_SIZE(syscall_info_table)"; \
 100        echo ""; \
 101        echo "#endif /* __SYSCALLTAB_H */" )
 102endef
 103
 104arch/$(ARCH)/lib/syscalltab.h: arch/sh64/kernel/syscalls.S
 105        $(call filechk,gen-syscalltab)
 106
 107CLEAN_FILES += include/asm-$(ARCH)/asm-offsets.h arch/$(ARCH)/lib/syscalltab.h
 108
 109define archhelp
 110        @echo '  zImage                    - Compressed kernel image (arch/sh64/boot/zImage)'
 111endef
 112
 113
lxr.linux.no kindly hosted by Redpill Linpro AS, provider of Linux consulting and operations services since 1995.