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
14 arch-
$(CONFIG_ETRAX_ARCH_V10
) := v10
15 arch-
$(CONFIG_ETRAX_ARCH_V32
) := v32
17 # No config available for make clean etc
19 mach-
$(CONFIG_CRIS_MACH_ARTPEC3
) := a3
20 mach-
$(CONFIG_ETRAXFS
) := fs
23 SARCH
:= arch-
$(arch-y
)
29 MACH
:= mach-
$(mach-y
)
34 LD
= $(CROSS_COMPILE
)ld -mcrislinux
36 OBJCOPYFLAGS
:= -O binary
-R .note
-R .comment
-S
38 CPPFLAGS_vmlinux.lds
= -DDRAM_VIRTUAL_BASE
=0x
$(CONFIG_ETRAX_DRAM_VIRTUAL_BASE
)
40 KBUILD_AFLAGS
+= -mlinux
-march
=$(arch-y
) -Iinclude
/asm
/arch
/mach
-Iinclude
/asm
/arch
42 KBUILD_CFLAGS
+= -mlinux
-march
=$(arch-y
) -pipe
-Iinclude
/asm
/arch
/mach
-Iinclude
/asm
/arch
44 ifdef CONFIG_FRAME_POINTER
45 KBUILD_CFLAGS
:= $(subst -fomit-frame-pointer
,,$(KBUILD_CFLAGS
)) -g
46 KBUILD_CFLAGS
+= -fno-omit-frame-pointer
49 head-y
:= arch
/$(ARCH
)/$(SARCH
)/kernel
/head.o
51 LIBGCC
= $(shell $(CC
) $(KBUILD_CFLAGS
) -print-file-name
=libgcc.a
)
53 core-y
+= arch
/$(ARCH
)/kernel
/ arch
/$(ARCH
)/mm
/
54 core-y
+= arch
/$(ARCH
)/$(SARCH
)/kernel
/ arch
/$(ARCH
)/$(SARCH
)/mm
/
55 ifdef CONFIG_ETRAX_ARCH_V32
56 core-y
+= arch
/$(ARCH
)/$(SARCH
)/$(MACH
)/
58 drivers-y
+= arch
/$(ARCH
)/$(SARCH
)/drivers
/
59 libs-y
+= arch
/$(ARCH
)/$(SARCH
)/lib
/ $(LIBGCC
)
62 SRC_ARCH
= $(srctree
)/arch
/$(ARCH
)
63 # cris object files path
64 OBJ_ARCH
= $(objtree
)/arch
/$(ARCH
)
66 boot
:= arch
/$(ARCH
)/boot
67 MACHINE
:= arch
/$(ARCH
)/$(SARCH
)
72 $(Q
)$(MAKE
) $(build
)=$(boot
) MACHINE
=$(MACHINE
) $(boot
)/$@
74 archprepare
: $(SRC_ARCH
)/.links
$(srctree
)/include/asm-
$(ARCH
)/.arch FORCE
76 # Create some links to make all tools happy
78 @
rm -rf
$(SRC_ARCH
)/drivers
79 @ln
-sfn
$(SARCH
)/drivers
$(SRC_ARCH
)/drivers
80 @
rm -rf
$(SRC_ARCH
)/boot
81 @ln
-sfn
$(SARCH
)/boot
$(SRC_ARCH
)/boot
82 @
rm -rf
$(SRC_ARCH
)/lib
83 @ln
-sfn
$(SARCH
)/lib
$(SRC_ARCH
)/lib
84 @
rm -f
$(SRC_ARCH
)/arch
/mach
85 @
rm -rf
$(SRC_ARCH
)/arch
86 @ln
-sfn
$(SARCH
) $(SRC_ARCH
)/arch
87 ifdef CONFIG_ETRAX_ARCH_V32
88 @ln
-sfn ..
/$(SARCH
)/$(MACH
) $(SRC_ARCH
)/arch
/mach
90 @
rm -rf
$(SRC_ARCH
)/kernel
/vmlinux.lds.S
91 @ln
-sfn ..
/$(SARCH
)/vmlinux.lds.S
$(SRC_ARCH
)/kernel
/vmlinux.lds.S
92 @
rm -rf
$(SRC_ARCH
)/kernel
/asm-offsets.c
93 @ln
-sfn ..
/$(SARCH
)/kernel
/asm-offsets.c
$(SRC_ARCH
)/kernel
/asm-offsets.c
96 # Create link to sub arch includes
97 $(srctree
)/include/asm-
$(ARCH
)/.arch
: $(wildcard include/config
/arch
/*.h
)
98 @echo
' SYMLINK include/asm-$(ARCH)/arch -> include/asm-$(ARCH)/$(SARCH)'
99 @
rm -f
$(srctree
)/include/asm-
$(ARCH
)/arch
/mach
100 @
rm -f
$(srctree
)/include/asm-
$(ARCH
)/arch
101 @ln
-sf
$(SARCH
) $(srctree
)/include/asm-
$(ARCH
)/arch
102 ifdef CONFIG_ETRAX_ARCH_V32
103 @ln
-sf
$(MACH
) $(srctree
)/include/asm-
$(ARCH
)/arch
/mach
108 $(Q
)if
[ -e arch
/$(ARCH
)/boot
]; then \
109 $(MAKE
) $(clean)=arch
/$(ARCH
)/boot
; \
113 $(MACHINE
)/boot
/zImage \
114 $(MACHINE
)/boot
/compressed
/decompress.bin \
115 $(MACHINE
)/boot
/compressed
/piggy.gz \
116 $(MACHINE
)/boot
/rescue
/rescue.bin \
118 $(srctree
)/include/asm-
$(ARCH
)/.arch
121 $(SRC_ARCH
)/drivers \
125 $(SRC_ARCH
)/kernel
/vmlinux.lds.S \
126 $(SRC_ARCH
)/kernel
/asm-offsets.c
129 echo
'* zImage - Compressed kernel image (arch/$(ARCH)/boot/zImage)'
130 echo
'* Image - Uncompressed kernel image (arch/$(ARCH)/boot/Image)'