diff options
author | Ley Foon Tan <lftan@altera.com> | 2014-11-06 02:20:19 -0500 |
---|---|---|
committer | Ley Foon Tan <lftan@altera.com> | 2014-12-07 23:56:06 -0500 |
commit | 2fc8483fdcde767795402a38a53e647811dc9abf (patch) | |
tree | 01c734b5191c6ddd5c095fb2a08494720b06f817 /arch/nios2/Makefile | |
parent | 9cce02ec7146248862ba63a41bf8eb32d9e4fb63 (diff) |
nios2: Build infrastructure
This patch adds Makefile and Kconfig files required for building a
nios2 kernel.
Signed-off-by: Ley Foon Tan <lftan@altera.com>
Diffstat (limited to 'arch/nios2/Makefile')
-rw-r--r-- | arch/nios2/Makefile | 73 |
1 files changed, 73 insertions, 0 deletions
diff --git a/arch/nios2/Makefile b/arch/nios2/Makefile new file mode 100644 index 000000000000..e142c9ee51fa --- /dev/null +++ b/arch/nios2/Makefile | |||
@@ -0,0 +1,73 @@ | |||
1 | # | ||
2 | # This file is subject to the terms and conditions of the GNU General Public | ||
3 | # License. See the file "COPYING" in the main directory of this archive | ||
4 | # for more details. | ||
5 | # | ||
6 | # Copyright (C) 2013 Altera Corporation | ||
7 | # Copyright (C) 1994, 95, 96, 2003 by Wind River Systems | ||
8 | # Written by Fredrik Markstrom | ||
9 | # | ||
10 | # This file is included by the global makefile so that you can add your own | ||
11 | # architecture-specific flags and dependencies. Remember to do have actions | ||
12 | # for "archclean" cleaning up for this architecture. | ||
13 | # | ||
14 | # Nios2 port by Wind River Systems Inc trough: | ||
15 | # fredrik.markstrom@gmail.com and ivarholmqvist@gmail.com | ||
16 | |||
17 | UTS_SYSNAME = Linux | ||
18 | |||
19 | export MMU | ||
20 | |||
21 | LIBGCC := $(shell $(CC) $(KBUILD_CFLAGS) -print-libgcc-file-name) | ||
22 | |||
23 | KBUILD_CFLAGS += -pipe -D__linux__ -D__ELF__ | ||
24 | KBUILD_CFLAGS += $(if $(CONFIG_NIOS2_HW_MUL_SUPPORT),-mhw-mul,-mno-hw-mul) | ||
25 | KBUILD_CFLAGS += $(if $(CONFIG_NIOS2_HW_MULX_SUPPORT),-mhw-mulx,-mno-hw-mulx) | ||
26 | KBUILD_CFLAGS += $(if $(CONFIG_NIOS2_HW_DIV_SUPPORT),-mhw-div,-mno-hw-div) | ||
27 | KBUILD_CFLAGS += $(if $(CONFIG_NIOS2_FPU_SUPPORT),-mcustom-fpu-cfg=60-1,) | ||
28 | |||
29 | KBUILD_CFLAGS += -fno-optimize-sibling-calls | ||
30 | KBUILD_CFLAGS += -DUTS_SYSNAME=\"$(UTS_SYSNAME)\" | ||
31 | KBUILD_CFLAGS += -fno-builtin | ||
32 | KBUILD_CFLAGS += -G 0 | ||
33 | |||
34 | head-y := arch/nios2/kernel/head.o | ||
35 | libs-y += arch/nios2/lib/ $(LIBGCC) | ||
36 | core-y += arch/nios2/kernel/ arch/nios2/mm/ | ||
37 | core-y += arch/nios2/platform/ | ||
38 | |||
39 | INSTALL_PATH ?= /tftpboot | ||
40 | nios2-boot := arch/$(ARCH)/boot | ||
41 | BOOT_TARGETS = vmImage zImage | ||
42 | PHONY += $(BOOT_TARGETS) install | ||
43 | KBUILD_IMAGE := $(nios2-boot)/vmImage | ||
44 | |||
45 | ifneq ($(CONFIG_NIOS2_DTB_SOURCE),"") | ||
46 | core-y += $(nios2-boot)/ | ||
47 | endif | ||
48 | |||
49 | all: vmImage | ||
50 | |||
51 | archclean: | ||
52 | $(Q)$(MAKE) $(clean)=$(nios2-boot) | ||
53 | |||
54 | %.dtb: | ||
55 | $(Q)$(MAKE) $(build)=$(nios2-boot) $(nios2-boot)/$@ | ||
56 | |||
57 | dtbs: | ||
58 | $(Q)$(MAKE) $(build)=$(nios2-boot) $(nios2-boot)/$@ | ||
59 | |||
60 | $(BOOT_TARGETS): vmlinux | ||
61 | $(Q)$(MAKE) $(build)=$(nios2-boot) $(nios2-boot)/$@ | ||
62 | |||
63 | install: | ||
64 | $(Q)$(MAKE) $(build)=$(nios2-boot) BOOTIMAGE=$(KBUILD_IMAGE) install | ||
65 | |||
66 | define archhelp | ||
67 | echo '* vmImage - Kernel-only image for U-Boot ($(KBUILD_IMAGE))' | ||
68 | echo ' install - Install kernel using' | ||
69 | echo ' (your) ~/bin/$(INSTALLKERNEL) or' | ||
70 | echo ' (distribution) /sbin/$(INSTALLKERNEL) or' | ||
71 | echo ' install to $$(INSTALL_PATH)' | ||
72 | echo ' dtbs - Build device tree blobs for enabled boards' | ||
73 | endef | ||