kbuild: consolidate Devicetree dtb build rules
[muen/linux.git] / arch / nds32 / Makefile
1 LDFLAGS_vmlinux := --no-undefined -X
2 OBJCOPYFLAGS    := -O binary -R .note -R .note.gnu.build-id -R .comment -S
3
4 KBUILD_DEFCONFIG := defconfig
5
6 comma = ,
7
8 KBUILD_CFLAGS   += $(call cc-option, -mno-sched-prolog-epilog)
9 KBUILD_CFLAGS   += -mcmodel=large
10
11 KBUILD_CFLAGS   +=$(arch-y) $(tune-y)
12 KBUILD_AFLAGS   +=$(arch-y) $(tune-y)
13
14 #Default value
15 head-y           := arch/nds32/kernel/head.o
16 textaddr-y       := $(CONFIG_PAGE_OFFSET)+0xc000
17
18 TEXTADDR := $(textaddr-y)
19
20 export  TEXTADDR
21
22
23 # If we have a machine-specific directory, then include it in the build.
24 core-y                          += arch/nds32/kernel/ arch/nds32/mm/
25 libs-y                          += arch/nds32/lib/
26
27 ifneq '$(CONFIG_NDS32_BUILTIN_DTB)' '""'
28 BUILTIN_DTB := y
29 else
30 BUILTIN_DTB := n
31 endif
32
33 ifdef CONFIG_CPU_LITTLE_ENDIAN
34 KBUILD_CFLAGS   += $(call cc-option, -EL)
35 KBUILD_AFLAGS   += $(call cc-option, -EL)
36 KBUILD_LDFLAGS  += $(call cc-option, -EL)
37 CHECKFLAGS      += -D__NDS32_EL__
38 else
39 KBUILD_CFLAGS   += $(call cc-option, -EB)
40 KBUILD_AFLAGS   += $(call cc-option, -EB)
41 KBUILD_LDFLAGS  += $(call cc-option, -EB)
42 CHECKFLAGS      += -D__NDS32_EB__
43 endif
44
45 boot := arch/nds32/boot
46 core-y += $(boot)/dts/
47
48 .PHONY: FORCE
49
50 Image: vmlinux
51         $(Q)$(MAKE) $(build)=$(boot) $(boot)/$@
52
53
54 PHONY += vdso_install
55 vdso_install:
56         $(Q)$(MAKE) $(build)=arch/nds32/kernel/vdso $@
57
58 prepare: vdso_prepare
59 vdso_prepare: prepare0
60         $(Q)$(MAKE) $(build)=arch/nds32/kernel/vdso include/generated/vdso-offsets.h
61
62 CLEAN_FILES += include/asm-nds32/constants.h*
63
64 # We use MRPROPER_FILES and CLEAN_FILES now
65 archclean:
66         $(Q)$(MAKE) $(clean)=$(boot)
67
68 define archhelp
69   echo  '  Image         - kernel image (arch/$(ARCH)/boot/Image)'
70 endef