1 # SPDX-License-Identifier: GPL-2.0-only
2 LDFLAGS_vmlinux
:= --no-undefined
-X
3 OBJCOPYFLAGS
:= -O binary
-R .note
-R .note.gnu.build-id
-R .comment
-S
5 ifdef CONFIG_FUNCTION_TRACER
6 arch-y
+= -malways-save-lp
-mno-relax
9 # Avoid generating FPU instructions
10 arch-y
+= -mno-ext-fpu-sp
-mno-ext-fpu-dp
-mfloat-abi
=soft
12 KBUILD_CFLAGS
+= $(call cc-option
, -mno-sched-prolog-epilog
)
13 KBUILD_CFLAGS
+= -mcmodel
=large
15 KBUILD_CFLAGS
+=$(arch-y
) $(tune-y
)
16 KBUILD_AFLAGS
+=$(arch-y
) $(tune-y
)
19 head-y
:= arch
/nds32
/kernel
/head.o
20 textaddr-y
:= $(CONFIG_PAGE_OFFSET
)+0xc000
22 TEXTADDR
:= $(textaddr-y
)
27 # If we have a machine-specific directory, then include it in the build.
28 core-y
+= arch
/nds32
/kernel
/ arch
/nds32
/mm
/
29 core-
$(CONFIG_FPU
) += arch
/nds32
/math-emu
/
30 libs-y
+= arch
/nds32
/lib
/
32 ifneq '$(CONFIG_NDS32_BUILTIN_DTB)' '""'
38 ifdef CONFIG_CPU_LITTLE_ENDIAN
39 KBUILD_CFLAGS
+= $(call cc-option
, -EL
)
40 KBUILD_AFLAGS
+= $(call cc-option
, -EL
)
41 KBUILD_LDFLAGS
+= $(call cc-option
, -EL
)
42 CHECKFLAGS
+= -D__NDS32_EL__
44 KBUILD_CFLAGS
+= $(call cc-option
, -EB
)
45 KBUILD_AFLAGS
+= $(call cc-option
, -EB
)
46 KBUILD_LDFLAGS
+= $(call cc-option
, -EB
)
47 CHECKFLAGS
+= -D__NDS32_EB__
50 boot
:= arch
/nds32
/boot
51 core-y
+= $(boot
)/dts
/
54 $(Q
)$(MAKE
) $(build
)=$(boot
) $(boot
)/$@
59 $(Q
)$(MAKE
) $(build
)=arch
/nds32
/kernel
/vdso
$@
62 vdso_prepare
: prepare0
63 $(Q
)$(MAKE
) $(build
)=arch
/nds32
/kernel
/vdso
include/generated
/vdso-offsets.h
66 $(Q
)$(MAKE
) $(clean)=$(boot
)
69 echo
' Image - kernel image (arch/$(ARCH)/boot/Image)'