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
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
13 KBUILD_DEFCONFIG
:= etrax-100lx_v2_defconfig
16 arch-
$(CONFIG_ETRAX_ARCH_V10
) := v10
17 arch-
$(CONFIG_ETRAX_ARCH_V32
) := v32
19 # No config available for make clean etc
21 mach-
$(CONFIG_CRIS_MACH_ARTPEC3
) := a3
22 mach-
$(CONFIG_ETRAXFS
) := fs
25 SARCH
:= arch-
$(arch-y
)
26 inc
:= -Iarch
/cris
/include/arch-
$(arch-y
) -Iarch
/cris
/include/arch-
$(arch-y
)/arch
33 MACH
:= mach-
$(mach-y
)
34 inc
+= -Iarch
/cris
/include/$(SARCH
)/$(MACH
)/
35 inc
+= -Iarch
/cris
/include/$(SARCH
)/$(MACH
)/mach
40 LD
= $(CROSS_COMPILE
)ld -mcrislinux
42 OBJCOPYFLAGS
:= -O binary
-R .note
-R .comment
-S
44 CPPFLAGS_vmlinux.lds
= -DDRAM_VIRTUAL_BASE
=0x
$(CONFIG_ETRAX_DRAM_VIRTUAL_BASE
)
46 KBUILD_AFLAGS
+= -mlinux
-march
=$(arch-y
) $(inc
)
47 KBUILD_CFLAGS
+= -mlinux
-march
=$(arch-y
) -pipe
$(inc
)
48 KBUILD_CPPFLAGS
+= $(inc
)
50 ifdef CONFIG_FRAME_POINTER
51 KBUILD_CFLAGS
:= $(subst -fomit-frame-pointer
,,$(KBUILD_CFLAGS
)) -g
52 KBUILD_CFLAGS
+= -fno-omit-frame-pointer
55 head-y
:= arch
/$(ARCH
)/$(SARCH
)/kernel
/head.o
57 LIBGCC
= $(shell $(CC
) $(KBUILD_CFLAGS
) -print-file-name
=libgcc.a
)
59 core-y
+= arch
/$(ARCH
)/kernel
/ arch
/$(ARCH
)/mm
/
60 core-y
+= arch
/$(ARCH
)/$(SARCH
)/kernel
/ arch
/$(ARCH
)/$(SARCH
)/mm
/
61 ifdef CONFIG_ETRAX_ARCH_V32
62 core-y
+= arch
/$(ARCH
)/$(SARCH
)/$(MACH
)/
64 drivers-y
+= arch
/$(ARCH
)/$(SARCH
)/drivers
/
65 libs-y
+= arch
/$(ARCH
)/$(SARCH
)/lib
/ $(LIBGCC
)
68 SRC_ARCH
= $(srctree
)/arch
/$(ARCH
)
69 # cris object files path
70 OBJ_ARCH
= $(objtree
)/arch
/$(ARCH
)
72 boot
:= arch
/$(ARCH
)/boot
73 MACHINE
:= arch
/$(ARCH
)/$(SARCH
)
78 $(Q
)$(MAKE
) $(build
)=$(boot
) MACHINE
=$(MACHINE
) $(boot
)/$@
80 archprepare
: $(SRC_ARCH
)/.links FORCE
82 # Create some links to make all tools happy
84 @
rm -rf
$(SRC_ARCH
)/drivers
85 @ln
-sfn
$(SARCH
)/drivers
$(SRC_ARCH
)/drivers
86 @
rm -rf
$(SRC_ARCH
)/boot
87 @ln
-sfn
$(SARCH
)/boot
$(SRC_ARCH
)/boot
88 @
rm -rf
$(SRC_ARCH
)/lib
89 @ln
-sfn
$(SARCH
)/lib
$(SRC_ARCH
)/lib
90 @
rm -f
$(SRC_ARCH
)/arch
/mach
91 @
rm -rf
$(SRC_ARCH
)/arch
92 @ln
-sfn
$(SARCH
) $(SRC_ARCH
)/arch
93 ifdef CONFIG_ETRAX_ARCH_V32
94 @ln
-sfn ..
/$(SARCH
)/$(MACH
) $(SRC_ARCH
)/arch
/mach
96 @
rm -rf
$(SRC_ARCH
)/kernel
/vmlinux.lds.S
97 @ln
-sfn ..
/$(SARCH
)/vmlinux.lds.S
$(SRC_ARCH
)/kernel
/vmlinux.lds.S
101 $(Q
)if
[ -e arch
/$(ARCH
)/boot
]; then \
102 $(MAKE
) $(clean)=arch
/$(ARCH
)/boot
; \
106 $(MACHINE
)/boot
/zImage \
107 $(MACHINE
)/boot
/compressed
/decompress.bin \
108 $(MACHINE
)/boot
/compressed
/piggy.gz \
109 $(MACHINE
)/boot
/rescue
/rescue.bin \
113 $(SRC_ARCH
)/drivers \
117 $(SRC_ARCH
)/kernel
/vmlinux.lds.S
121 echo
'* zImage - Compressed kernel image (arch/$(ARCH)/boot/zImage)'
122 echo
'* Image - Uncompressed kernel image (arch/$(ARCH)/boot/Image)'