1# 2# linux/arch/c6x/Makefile 3# 4# This file is subject to the terms and conditions of the GNU General Public 5# License. See the file "COPYING" in the main directory of this archive 6# for more details. 7# 8 9cflags-y += -mno-dsbt -msdata=none 10 11cflags-$(CONFIG_C6X_BIG_KERNEL) += -mlong-calls 12 13CFLAGS_MODULE += -mlong-calls -mno-dsbt -msdata=none 14 15CHECKFLAGS += 16 17KBUILD_CFLAGS += $(cflags-y) 18KBUILD_AFLAGS += $(cflags-y) 19 20ifdef CONFIG_CPU_BIG_ENDIAN 21KBUILD_CFLAGS += -mbig-endian 22KBUILD_AFLAGS += -mbig-endian 23LINKFLAGS += -mbig-endian 24KBUILD_LDFLAGS += -mbig-endian 25LDFLAGS += -EB 26endif 27 28head-y := arch/c6x/kernel/head.o 29core-y += arch/c6x/kernel/ arch/c6x/mm/ arch/c6x/platforms/ 30libs-y += arch/c6x/lib/ 31 32# Default to vmlinux.bin, override when needed 33all: vmlinux.bin 34 35boot := arch/$(ARCH)/boot 36 37# Are we making a dtbImage.<boardname> target? If so, crack out the boardname 38DTB:=$(subst dtbImage.,,$(filter dtbImage.%, $(MAKECMDGOALS))) 39export DTB 40 41ifneq ($(DTB),) 42core-y += $(boot)/ 43endif 44 45# With make 3.82 we cannot mix normal and wildcard targets 46 47vmlinux.bin: vmlinux 48 $(Q)$(MAKE) $(build)=$(boot) $(patsubst %,$(boot)/%,$@) 49 50dtbImage.%: vmlinux 51 $(Q)$(MAKE) $(build)=$(boot) $(patsubst %,$(boot)/%,$@) 52 53archclean: 54 $(Q)$(MAKE) $(clean)=$(boot) 55 56define archhelp 57 @echo ' vmlinux.bin - Binary kernel image (arch/$(ARCH)/boot/vmlinux.bin)' 58 @echo ' dtbImage.<dt> - ELF image with $(arch)/boot/dts/<dt>.dts linked in' 59 @echo ' - stripped elf with fdt blob' 60endef 61