sh: Consolidate sh/sh64 Makefiles.
Signed-off-by: Paul Mundt <lethal@linux-sh.org>
This commit is contained in:
parent
c2f1755bec
commit
d088f32357
@ -139,6 +139,12 @@ core-y += $(addprefix arch/sh/boards/, \
|
|||||||
$(filter-out ., $(patsubst %,%/,$(machdir-y))))
|
$(filter-out ., $(patsubst %,%/,$(machdir-y))))
|
||||||
endif
|
endif
|
||||||
|
|
||||||
|
# SH-5 mach types
|
||||||
|
# XXX.. to be reconciled with machdir-y later.
|
||||||
|
core-$(CONFIG_SH_SIMULATOR) += arch/sh/mach-sim/
|
||||||
|
core-$(CONFIG_SH_CAYMAN) += arch/sh/mach-cayman/
|
||||||
|
core-$(CONFIG_SH_HARP) += arch/sh/mach-harp/
|
||||||
|
|
||||||
# Companion chips
|
# Companion chips
|
||||||
core-$(CONFIG_HD6446X_SERIES) += arch/sh/cchips/hd6446x/
|
core-$(CONFIG_HD6446X_SERIES) += arch/sh/cchips/hd6446x/
|
||||||
core-$(CONFIG_MFD_SM501) += arch/sh/cchips/voyagergx/
|
core-$(CONFIG_MFD_SM501) += arch/sh/cchips/voyagergx/
|
||||||
@ -203,9 +209,8 @@ include/asm-sh/.mach: $(wildcard include/config/sh/*.h) \
|
|||||||
done
|
done
|
||||||
@touch $@
|
@touch $@
|
||||||
|
|
||||||
archprepare: include/asm-sh/.cpu include/asm-sh/.mach maketools
|
|
||||||
|
|
||||||
PHONY += maketools FORCE
|
PHONY += maketools FORCE
|
||||||
|
|
||||||
maketools: include/linux/version.h FORCE
|
maketools: include/linux/version.h FORCE
|
||||||
$(Q)$(MAKE) $(build)=arch/sh/tools include/asm-sh/machtypes.h
|
$(Q)$(MAKE) $(build)=arch/sh/tools include/asm-sh/machtypes.h
|
||||||
|
|
||||||
@ -216,16 +221,49 @@ zImage uImage uImage.srec vmlinux.srec: vmlinux
|
|||||||
|
|
||||||
compressed: zImage
|
compressed: zImage
|
||||||
|
|
||||||
|
archprepare: include/asm-sh/.cpu include/asm-sh/.mach maketools \
|
||||||
|
arch/sh/lib64/syscalltab.h
|
||||||
|
|
||||||
archclean:
|
archclean:
|
||||||
$(Q)$(MAKE) $(clean)=$(boot)
|
$(Q)$(MAKE) $(clean)=$(boot)
|
||||||
|
|
||||||
CLEAN_FILES += include/asm-sh/machtypes.h \
|
|
||||||
include/asm-sh/cpu include/asm-sh/.cpu \
|
|
||||||
include/asm-sh/mach include/asm-sh/.mach
|
|
||||||
|
|
||||||
define archhelp
|
define archhelp
|
||||||
@echo '* zImage - Compressed kernel image'
|
@echo '* zImage - Compressed kernel image'
|
||||||
@echo ' vmlinux.srec - Create an ELF S-record'
|
@echo ' vmlinux.srec - Create an ELF S-record'
|
||||||
@echo ' uImage - Create a bootable image for U-Boot'
|
@echo ' uImage - Create a bootable image for U-Boot'
|
||||||
@echo ' uImage.srec - Create an S-record for U-Boot'
|
@echo ' uImage.srec - Create an S-record for U-Boot'
|
||||||
endef
|
endef
|
||||||
|
|
||||||
|
define filechk_gen-syscalltab
|
||||||
|
(set -e; \
|
||||||
|
echo "/*"; \
|
||||||
|
echo " * DO NOT MODIFY."; \
|
||||||
|
echo " *"; \
|
||||||
|
echo " * This file was generated by arch/sh/Makefile"; \
|
||||||
|
echo " * Any changes will be reverted at build time."; \
|
||||||
|
echo " */"; \
|
||||||
|
echo ""; \
|
||||||
|
echo "#ifndef __SYSCALLTAB_H"; \
|
||||||
|
echo "#define __SYSCALLTAB_H"; \
|
||||||
|
echo ""; \
|
||||||
|
echo "#include <linux/kernel.h>"; \
|
||||||
|
echo ""; \
|
||||||
|
echo "struct syscall_info {"; \
|
||||||
|
echo " const char *name;"; \
|
||||||
|
echo "} syscall_info_table[] = {"; \
|
||||||
|
sed -e '/^.*\.long /!d;s// { "/;s/\(\([^/]*\)\/\)\{1\}.*/\2/; \
|
||||||
|
s/[ \t]*$$//g;s/$$/" },/;s/\("\)sys_/\1/g'; \
|
||||||
|
echo "};"; \
|
||||||
|
echo ""; \
|
||||||
|
echo "#define NUM_SYSCALL_INFO_ENTRIES ARRAY_SIZE(syscall_info_table)";\
|
||||||
|
echo ""; \
|
||||||
|
echo "#endif /* __SYSCALLTAB_H */" )
|
||||||
|
endef
|
||||||
|
|
||||||
|
arch/sh/lib64/syscalltab.h: arch/sh/kernel/syscalls_64.S
|
||||||
|
$(call filechk,gen-syscalltab)
|
||||||
|
|
||||||
|
CLEAN_FILES += arch/sh/lib64/syscalltab.h \
|
||||||
|
include/asm-sh/machtypes.h \
|
||||||
|
include/asm-sh/cpu include/asm-sh/.cpu \
|
||||||
|
include/asm-sh/mach include/asm-sh/.mach
|
||||||
|
@ -1,111 +0,0 @@
|
|||||||
#
|
|
||||||
# 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.
|
|
||||||
#
|
|
||||||
# Copyright (C) 2000, 2001 Paolo Alberelli
|
|
||||||
# Copyright (C) 2003, 2004 Paul Mundt
|
|
||||||
#
|
|
||||||
# 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
|
|
||||||
#
|
|
||||||
|
|
||||||
cpu-y := -mb
|
|
||||||
cpu-$(CONFIG_LITTLE_ENDIAN) := -ml
|
|
||||||
|
|
||||||
cpu-$(CONFIG_CPU_SH5) += -m5-32media-nofpu
|
|
||||||
|
|
||||||
ifdef CONFIG_LITTLE_ENDIAN
|
|
||||||
LDFLAGS_vmlinux += --defsym 'jiffies=jiffies_64'
|
|
||||||
LDFLAGS += -EL -mshlelf32_linux
|
|
||||||
else
|
|
||||||
LDFLAGS_vmlinux += --defsym 'jiffies=jiffies_64+4'
|
|
||||||
LDFLAGS += -EB -mshelf32_linux
|
|
||||||
endif
|
|
||||||
|
|
||||||
# No requirements for endianess support from AFLAGS, 'as' always run through gcc
|
|
||||||
KBUILD_CFLAGS += $(cpu-y)
|
|
||||||
|
|
||||||
LDFLAGS_vmlinux += --defsym phys_stext=_stext-$(CONFIG_CACHED_MEMORY_OFFSET) \
|
|
||||||
--defsym phys_stext_shmedia=phys_stext+1 \
|
|
||||||
-e phys_stext_shmedia
|
|
||||||
|
|
||||||
OBJCOPYFLAGS := -O binary -R .note -R .comment -R .stab -R .stabstr -S
|
|
||||||
|
|
||||||
#
|
|
||||||
# arch/sh64/defconfig never had any hope of being
|
|
||||||
# frequently updated, so use one that does
|
|
||||||
#
|
|
||||||
KBUILD_DEFCONFIG := cayman_defconfig
|
|
||||||
|
|
||||||
KBUILD_IMAGE := arch/$(ARCH)/boot/zImage
|
|
||||||
|
|
||||||
ifdef LOADADDR
|
|
||||||
LINKFLAGS += -Ttext $(word 1,$(LOADADDR))
|
|
||||||
endif
|
|
||||||
|
|
||||||
machine-$(CONFIG_SH_CAYMAN) := cayman
|
|
||||||
machine-$(CONFIG_SH_SIMULATOR) := sim
|
|
||||||
machine-$(CONFIG_SH_HARP) := harp
|
|
||||||
|
|
||||||
head-y := arch/$(ARCH)/kernel/head.o arch/$(ARCH)/kernel/init_task.o
|
|
||||||
|
|
||||||
core-y += arch/sh64/kernel/ arch/sh64/mm/
|
|
||||||
|
|
||||||
ifneq ($(machine-y),)
|
|
||||||
core-y += arch/sh64/mach-$(machine-y)/
|
|
||||||
endif
|
|
||||||
|
|
||||||
LIBGCC := $(shell $(CC) $(KBUILD_CFLAGS) -print-libgcc-file-name)
|
|
||||||
libs-y += arch/$(ARCH)/lib/ $(LIBGCC)
|
|
||||||
|
|
||||||
drivers-$(CONFIG_OPROFILE) += arch/sh64/oprofile/
|
|
||||||
|
|
||||||
boot := arch/$(ARCH)/boot
|
|
||||||
|
|
||||||
zImage: vmlinux
|
|
||||||
$(Q)$(MAKE) $(build)=$(boot) $(boot)/$@
|
|
||||||
|
|
||||||
compressed: zImage
|
|
||||||
|
|
||||||
archclean:
|
|
||||||
$(Q)$(MAKE) $(clean)=$(boot)
|
|
||||||
|
|
||||||
archprepare: arch/$(ARCH)/lib/syscalltab.h
|
|
||||||
|
|
||||||
define filechk_gen-syscalltab
|
|
||||||
(set -e; \
|
|
||||||
echo "/*"; \
|
|
||||||
echo " * DO NOT MODIFY."; \
|
|
||||||
echo " *"; \
|
|
||||||
echo " * This file was generated by arch/$(ARCH)/Makefile"; \
|
|
||||||
echo " * Any changes will be reverted at build time."; \
|
|
||||||
echo " */"; \
|
|
||||||
echo ""; \
|
|
||||||
echo "#ifndef __SYSCALLTAB_H"; \
|
|
||||||
echo "#define __SYSCALLTAB_H"; \
|
|
||||||
echo ""; \
|
|
||||||
echo "#include <linux/kernel.h>"; \
|
|
||||||
echo ""; \
|
|
||||||
echo "struct syscall_info {"; \
|
|
||||||
echo " const char *name;"; \
|
|
||||||
echo "} syscall_info_table[] = {"; \
|
|
||||||
sed -e '/^.*\.long /!d;s// { "/;s/\(\([^/]*\)\/\)\{1\}.*/\2/; \
|
|
||||||
s/[ \t]*$$//g;s/$$/" },/;s/\("\)sys_/\1/g'; \
|
|
||||||
echo "};"; \
|
|
||||||
echo ""; \
|
|
||||||
echo "#define NUM_SYSCALL_INFO_ENTRIES ARRAY_SIZE(syscall_info_table)"; \
|
|
||||||
echo ""; \
|
|
||||||
echo "#endif /* __SYSCALLTAB_H */" )
|
|
||||||
endef
|
|
||||||
|
|
||||||
arch/$(ARCH)/lib/syscalltab.h: arch/sh64/kernel/syscalls.S
|
|
||||||
$(call filechk,gen-syscalltab)
|
|
||||||
|
|
||||||
CLEAN_FILES += arch/$(ARCH)/lib/syscalltab.h
|
|
||||||
|
|
||||||
define archhelp
|
|
||||||
@echo '* zImage - Compressed kernel image'
|
|
||||||
endef
|
|
Loading…
Reference in New Issue
Block a user