1*4882a593Smuzhiyun# 2*4882a593Smuzhiyun# linux/arch/c6x/Makefile 3*4882a593Smuzhiyun# 4*4882a593Smuzhiyun# This file is subject to the terms and conditions of the GNU General Public 5*4882a593Smuzhiyun# License. See the file "COPYING" in the main directory of this archive 6*4882a593Smuzhiyun# for more details. 7*4882a593Smuzhiyun# 8*4882a593Smuzhiyun 9*4882a593SmuzhiyunKBUILD_DEFCONFIG := dsk6455_defconfig 10*4882a593Smuzhiyun 11*4882a593Smuzhiyuncflags-y += -mno-dsbt -msdata=none -D__linux__ 12*4882a593Smuzhiyun 13*4882a593Smuzhiyuncflags-$(CONFIG_C6X_BIG_KERNEL) += -mlong-calls 14*4882a593Smuzhiyun 15*4882a593SmuzhiyunKBUILD_CFLAGS_MODULE += -mlong-calls -mno-dsbt -msdata=none 16*4882a593Smuzhiyun 17*4882a593SmuzhiyunCHECKFLAGS += 18*4882a593Smuzhiyun 19*4882a593SmuzhiyunKBUILD_CFLAGS += $(cflags-y) 20*4882a593SmuzhiyunKBUILD_AFLAGS += $(cflags-y) 21*4882a593Smuzhiyun 22*4882a593Smuzhiyunifdef CONFIG_CPU_BIG_ENDIAN 23*4882a593SmuzhiyunKBUILD_CFLAGS += -mbig-endian 24*4882a593SmuzhiyunKBUILD_AFLAGS += -mbig-endian 25*4882a593SmuzhiyunLINKFLAGS += -mbig-endian 26*4882a593SmuzhiyunKBUILD_LDFLAGS += -mbig-endian -EB 27*4882a593SmuzhiyunCHECKFLAGS += -D_BIG_ENDIAN 28*4882a593Smuzhiyunendif 29*4882a593Smuzhiyun 30*4882a593Smuzhiyunhead-y := arch/c6x/kernel/head.o 31*4882a593Smuzhiyuncore-y += arch/c6x/kernel/ arch/c6x/mm/ arch/c6x/platforms/ 32*4882a593Smuzhiyunlibs-y += arch/c6x/lib/ 33*4882a593Smuzhiyun 34*4882a593Smuzhiyun# Default to vmlinux.bin, override when needed 35*4882a593Smuzhiyunall: vmlinux.bin 36*4882a593Smuzhiyun 37*4882a593Smuzhiyunboot := arch/$(ARCH)/boot 38*4882a593Smuzhiyun 39*4882a593Smuzhiyun# Are we making a dtbImage.<boardname> target? If so, crack out the boardname 40*4882a593SmuzhiyunDTB:=$(subst dtbImage.,,$(filter dtbImage.%, $(MAKECMDGOALS))) 41*4882a593Smuzhiyunexport DTB 42*4882a593Smuzhiyun 43*4882a593Smuzhiyuncore-y += $(boot)/dts/ 44*4882a593Smuzhiyun 45*4882a593Smuzhiyun# With make 3.82 we cannot mix normal and wildcard targets 46*4882a593Smuzhiyun 47*4882a593Smuzhiyunvmlinux.bin: vmlinux 48*4882a593Smuzhiyun $(Q)$(MAKE) $(build)=$(boot) $(patsubst %,$(boot)/%,$@) 49*4882a593Smuzhiyun 50*4882a593SmuzhiyundtbImage.%: vmlinux 51*4882a593Smuzhiyun $(Q)$(MAKE) $(build)=$(boot) $(patsubst %,$(boot)/%,$@) 52*4882a593Smuzhiyun 53*4882a593Smuzhiyunarchclean: 54*4882a593Smuzhiyun $(Q)$(MAKE) $(clean)=$(boot) 55*4882a593Smuzhiyun 56*4882a593Smuzhiyundefine archhelp 57*4882a593Smuzhiyun @echo ' vmlinux.bin - Binary kernel image (arch/$(ARCH)/boot/vmlinux.bin)' 58*4882a593Smuzhiyun @echo ' dtbImage.<dt> - ELF image with $(arch)/boot/dts/<dt>.dts linked in' 59*4882a593Smuzhiyun @echo ' - stripped elf with fdt blob' 60*4882a593Smuzhiyunendef 61