Commit | Line | Data |
---|---|---|
ec8f24b7 | 1 | # SPDX-License-Identifier: GPL-2.0-only |
e71ea3ba GH |
2 | LDFLAGS_vmlinux := --no-undefined -X |
3 | OBJCOPYFLAGS := -O binary -R .note -R .note.gnu.build-id -R .comment -S | |
4 | ||
a1808257 ZL |
5 | ifdef CONFIG_FUNCTION_TRACER |
6 | arch-y += -malways-save-lp -mno-relax | |
7 | endif | |
8 | ||
e46bf83c VC |
9 | # Avoid generating FPU instructions |
10 | arch-y += -mno-ext-fpu-sp -mno-ext-fpu-dp -mfloat-abi=soft | |
11 | ||
04e85bbf AD |
12 | # Enable <nds32_intrinsic.h> |
13 | KBUILD_CFLAGS += -isystem $(shell $(CC) -print-file-name=include) | |
d78a62fb GH |
14 | KBUILD_CFLAGS += $(call cc-option, -mno-sched-prolog-epilog) |
15 | KBUILD_CFLAGS += -mcmodel=large | |
e71ea3ba GH |
16 | |
17 | KBUILD_CFLAGS +=$(arch-y) $(tune-y) | |
18 | KBUILD_AFLAGS +=$(arch-y) $(tune-y) | |
19 | ||
20 | #Default value | |
21 | head-y := arch/nds32/kernel/head.o | |
22 | textaddr-y := $(CONFIG_PAGE_OFFSET)+0xc000 | |
23 | ||
24 | TEXTADDR := $(textaddr-y) | |
25 | ||
26 | export TEXTADDR | |
27 | ||
28 | ||
29 | # If we have a machine-specific directory, then include it in the build. | |
30 | core-y += arch/nds32/kernel/ arch/nds32/mm/ | |
1ac83250 | 31 | core-$(CONFIG_FPU) += arch/nds32/math-emu/ |
e71ea3ba | 32 | libs-y += arch/nds32/lib/ |
e71ea3ba GH |
33 | |
34 | ifneq '$(CONFIG_NDS32_BUILTIN_DTB)' '""' | |
35 | BUILTIN_DTB := y | |
36 | else | |
37 | BUILTIN_DTB := n | |
38 | endif | |
39 | ||
40 | ifdef CONFIG_CPU_LITTLE_ENDIAN | |
d78a62fb | 41 | KBUILD_CFLAGS += $(call cc-option, -EL) |
b3b112bb | 42 | KBUILD_AFLAGS += $(call cc-option, -EL) |
d503ac53 | 43 | KBUILD_LDFLAGS += $(call cc-option, -EL) |
97d1e3dc | 44 | CHECKFLAGS += -D__NDS32_EL__ |
e71ea3ba | 45 | else |
d78a62fb | 46 | KBUILD_CFLAGS += $(call cc-option, -EB) |
b3b112bb | 47 | KBUILD_AFLAGS += $(call cc-option, -EB) |
d503ac53 | 48 | KBUILD_LDFLAGS += $(call cc-option, -EB) |
97d1e3dc | 49 | CHECKFLAGS += -D__NDS32_EB__ |
e71ea3ba GH |
50 | endif |
51 | ||
52 | boot := arch/nds32/boot | |
37c8a5fa | 53 | core-y += $(boot)/dts/ |
e71ea3ba | 54 | |
e71ea3ba GH |
55 | Image: vmlinux |
56 | $(Q)$(MAKE) $(build)=$(boot) $(boot)/$@ | |
57 | ||
58 | ||
59 | PHONY += vdso_install | |
60 | vdso_install: | |
61 | $(Q)$(MAKE) $(build)=arch/nds32/kernel/vdso $@ | |
62 | ||
63 | prepare: vdso_prepare | |
64 | vdso_prepare: prepare0 | |
65 | $(Q)$(MAKE) $(build)=arch/nds32/kernel/vdso include/generated/vdso-offsets.h | |
66 | ||
e71ea3ba GH |
67 | archclean: |
68 | $(Q)$(MAKE) $(clean)=$(boot) | |
69 | ||
70 | define archhelp | |
71 | echo ' Image - kernel image (arch/$(ARCH)/boot/Image)' | |
72 | endef |