blob: b33d5d81b6ae18410466bbbeda6ea80bd97681fc [file] [log] [blame]
Thomas Gleixnerec8f24b2019-05-19 13:07:45 +01001# SPDX-License-Identifier: GPL-2.0-only
Greentime Hue71ea3b2017-10-25 15:03:49 +08002LDFLAGS_vmlinux := --no-undefined -X
3OBJCOPYFLAGS := -O binary -R .note -R .note.gnu.build-id -R .comment -S
4
Zong Lia1808252018-08-15 10:45:59 +08005ifdef CONFIG_FUNCTION_TRACER
6arch-y += -malways-save-lp -mno-relax
7endif
8
Vincent Chene46bf832018-11-22 11:14:34 +08009# Avoid generating FPU instructions
10arch-y += -mno-ext-fpu-sp -mno-ext-fpu-dp -mfloat-abi=soft
11
Alexey Dobriyan04e85bb2021-08-02 23:43:15 +030012# Enable <nds32_intrinsic.h>
13KBUILD_CFLAGS += -isystem $(shell $(CC) -print-file-name=include)
Greentime Hud78a62f2018-03-01 10:54:07 +080014KBUILD_CFLAGS += $(call cc-option, -mno-sched-prolog-epilog)
15KBUILD_CFLAGS += -mcmodel=large
Greentime Hue71ea3b2017-10-25 15:03:49 +080016
17KBUILD_CFLAGS +=$(arch-y) $(tune-y)
18KBUILD_AFLAGS +=$(arch-y) $(tune-y)
19
20#Default value
21head-y := arch/nds32/kernel/head.o
22textaddr-y := $(CONFIG_PAGE_OFFSET)+0xc000
23
24TEXTADDR := $(textaddr-y)
25
26export TEXTADDR
27
28
29# If we have a machine-specific directory, then include it in the build.
30core-y += arch/nds32/kernel/ arch/nds32/mm/
Vincent Chen1ac83252018-11-22 11:14:35 +080031core-$(CONFIG_FPU) += arch/nds32/math-emu/
Greentime Hue71ea3b2017-10-25 15:03:49 +080032libs-y += arch/nds32/lib/
Greentime Hue71ea3b2017-10-25 15:03:49 +080033
Greentime Hue71ea3b2017-10-25 15:03:49 +080034ifdef CONFIG_CPU_LITTLE_ENDIAN
Greentime Hud78a62f2018-03-01 10:54:07 +080035KBUILD_CFLAGS += $(call cc-option, -EL)
Greentime Hub3b112b2018-04-19 16:26:43 +080036KBUILD_AFLAGS += $(call cc-option, -EL)
Masahiro Yamadad503ac52018-08-24 08:20:39 +090037KBUILD_LDFLAGS += $(call cc-option, -EL)
Luc Van Oostenryck97d1e3d2018-05-28 18:29:02 +020038CHECKFLAGS += -D__NDS32_EL__
Greentime Hue71ea3b2017-10-25 15:03:49 +080039else
Greentime Hud78a62f2018-03-01 10:54:07 +080040KBUILD_CFLAGS += $(call cc-option, -EB)
Greentime Hub3b112b2018-04-19 16:26:43 +080041KBUILD_AFLAGS += $(call cc-option, -EB)
Masahiro Yamadad503ac52018-08-24 08:20:39 +090042KBUILD_LDFLAGS += $(call cc-option, -EB)
Luc Van Oostenryck97d1e3d2018-05-28 18:29:02 +020043CHECKFLAGS += -D__NDS32_EB__
Greentime Hue71ea3b2017-10-25 15:03:49 +080044endif
45
46boot := arch/nds32/boot
Rob Herring37c8a5f2018-01-10 15:19:37 -060047core-y += $(boot)/dts/
Greentime Hue71ea3b2017-10-25 15:03:49 +080048
Greentime Hue71ea3b2017-10-25 15:03:49 +080049Image: vmlinux
50 $(Q)$(MAKE) $(build)=$(boot) $(boot)/$@
51
52
53PHONY += vdso_install
54vdso_install:
55 $(Q)$(MAKE) $(build)=arch/nds32/kernel/vdso $@
56
57prepare: vdso_prepare
58vdso_prepare: prepare0
59 $(Q)$(MAKE) $(build)=arch/nds32/kernel/vdso include/generated/vdso-offsets.h
60
Greentime Hue71ea3b2017-10-25 15:03:49 +080061define archhelp
62 echo ' Image - kernel image (arch/$(ARCH)/boot/Image)'
63endef