Merge tag 'for_linus' of git://git.kernel.org/pub/scm/linux/kernel/git/mst/vhost
[cris-mirror.git] / arch / cris / Makefile
blob4a5404b3d0e45712c246b93c05ce21da5e732489
2 # cris/Makefile
4 # This file is included by the global makefile so that you can add your own
5 # architecture-specific flags and dependencies. Remember to do have actions
6 # for "archclean" and "archdep" for cleaning up and making dependencies for
7 # this architecture
9 # This file is subject to the terms and conditions of the GNU General Public
10 # License. See the file "COPYING" in the main directory of this archive
11 # for more details.
13 KBUILD_DEFCONFIG := etrax-100lx_v2_defconfig
15 arch-y := v10
16 arch-$(CONFIG_ETRAX_ARCH_V10) := v10
17 arch-$(CONFIG_ETRAX_ARCH_V32) := v32
19 # No config available for make clean etc
20 mach-y := fs
21 mach-$(CONFIG_CRIS_MACH_ARTPEC3) := a3
22 mach-$(CONFIG_ETRAXFS) := fs
24 ifneq ($(arch-y),)
25 SARCH := arch-$(arch-y)
26 inc := -Iarch/cris/include/uapi/$(SARCH)
27 inc += -Iarch/cris/include/$(SARCH)
28 inc += -Iarch/cris/include/uapi/$(SARCH)/arch
29 inc += -Iarch/cris/include/$(SARCH)/arch
30 else
31 SARCH :=
32 inc :=
33 endif
35 ifneq ($(mach-y),)
36 MACH := mach-$(mach-y)
37 inc += -Iarch/cris/include/$(SARCH)/$(MACH)/
38 inc += -Iarch/cris/include/$(SARCH)/$(MACH)/mach
39 else
40 MACH :=
41 endif
43 ifneq ($(CONFIG_BUILTIN_DTB),"")
44 core-$(CONFIG_OF) += arch/cris/boot/dts/
45 endif
47 LD = $(CROSS_COMPILE)ld -mcrislinux
49 OBJCOPYFLAGS := -O binary -R .note -R .comment -S
51 KBUILD_AFLAGS += -mlinux -march=$(arch-y) $(inc)
52 KBUILD_CFLAGS += -mlinux -march=$(arch-y) -pipe $(inc)
53 KBUILD_CPPFLAGS += $(inc)
55 ifdef CONFIG_FRAME_POINTER
56 KBUILD_CFLAGS := $(subst -fomit-frame-pointer,,$(KBUILD_CFLAGS)) -g
57 KBUILD_CFLAGS += -fno-omit-frame-pointer
58 endif
60 head-y := arch/cris/$(SARCH)/kernel/head.o
62 LIBGCC = $(shell $(CC) $(KBUILD_CFLAGS) -print-file-name=libgcc.a)
64 core-y += arch/cris/kernel/ arch/cris/mm/
65 core-y += arch/cris/$(SARCH)/kernel/ arch/cris/$(SARCH)/mm/
66 ifdef CONFIG_ETRAX_ARCH_V32
67 core-y += arch/cris/$(SARCH)/$(MACH)/
68 endif
69 drivers-y += arch/cris/$(SARCH)/drivers/
70 libs-y += arch/cris/$(SARCH)/lib/ $(LIBGCC)
72 # cris source path
73 SRC_ARCH = $(srctree)/arch/cris
74 # cris object files path
75 OBJ_ARCH = $(objtree)/arch/cris
77 boot := arch/cris/boot
78 MACHINE := arch/cris/$(SARCH)
80 all: zImage
82 zImage Image: vmlinux
83 $(Q)$(MAKE) $(build)=$(boot) MACHINE=$(MACHINE) $(boot)/$@
85 archprepare:
87 archclean:
88 $(Q)if [ -e arch/cris/boot ]; then \
89 $(MAKE) $(clean)=arch/cris/boot; \
92 CLEAN_FILES += \
93 $(boot)/zImage \
94 $(boot)/compressed/decompress.bin \
95 $(boot)/compressed/piggy.gz \
96 $(boot)/rescue/rescue.bin
99 # MRPROPER_FILES +=
101 define archhelp
102 echo '* zImage - Compressed kernel image (arch/cris/boot/zImage)'
103 echo '* Image - Uncompressed kernel image (arch/cris/boot/Image)'
104 endef