1fa96b57cSHuacai Chen# SPDX-License-Identifier: GPL-2.0 2fa96b57cSHuacai Chen# 3fa96b57cSHuacai Chen# Makefile for the Linux/LoongArch kernel. 4fa96b57cSHuacai Chen# 5fa96b57cSHuacai Chen 6cb8a2ef0STiezhu YangOBJECT_FILES_NON_STANDARD_head.o := y 7cb8a2ef0STiezhu Yang 8e21efe83SMasahiro Yamadaalways-$(KBUILD_BUILTIN) := vmlinux.lds 9fa96b57cSHuacai Chen 1032164845SMasahiro Yamadaobj-y += head.o cpu-probe.o cacheinfo.o env.o setup.o entry.o genex.o \ 116e3f5e62SJulian Vetter traps.o irq.o idle.o process.o dma.o mem.o reset.o switch.o \ 1261a6fcccSHuacai Chen elf.o syscall.o signal.o time.o topology.o inst.o ptrace.o vdso.o \ 1304816c15SHuacai Chen alternative.o kdebugfs.o unwind.o 14fa96b57cSHuacai Chen 15fa96b57cSHuacai Chenobj-$(CONFIG_ACPI) += acpi.o 16fa96b57cSHuacai Chenobj-$(CONFIG_EFI) += efi.o 17fa96b57cSHuacai Chen 182b3bd32eSHuacai Chenobj-$(CONFIG_CPU_HAS_FPU) += fpu.o kfpu.o 19fa96b57cSHuacai Chen 20bd3c5798SQi Huobj-$(CONFIG_CPU_HAS_LBT) += lbt.o 21bd3c5798SQi Hu 2241596803SHuacai Chenobj-$(CONFIG_ARCH_STRICT_ALIGN) += unaligned.o 2341596803SHuacai Chen 24a79be02bSLinus TorvaldsCFLAGS_module.o += $(call cc-disable-warning, override-init) 25a79be02bSLinus TorvaldsCFLAGS_syscall.o += $(call cc-disable-warning, override-init) 26a79be02bSLinus TorvaldsCFLAGS_traps.o += $(call cc-disable-warning, override-init) 27a79be02bSLinus TorvaldsCFLAGS_perf_event.o += $(call cc-disable-warning, override-init) 28c718a0baSBibo Mao 29dbe3ba30SQing Zhangifdef CONFIG_FUNCTION_TRACER 304733f09dSQing Zhang ifndef CONFIG_DYNAMIC_FTRACE 31dbe3ba30SQing Zhang obj-y += mcount.o ftrace.o 32dbe3ba30SQing Zhang CFLAGS_REMOVE_ftrace.o = $(CC_FLAGS_FTRACE) 334733f09dSQing Zhang else 344733f09dSQing Zhang obj-y += mcount_dyn.o ftrace_dyn.o 354733f09dSQing Zhang CFLAGS_REMOVE_ftrace_dyn.o = $(CC_FLAGS_FTRACE) 364733f09dSQing Zhang endif 37dbe3ba30SQing Zhang CFLAGS_REMOVE_inst.o = $(CC_FLAGS_FTRACE) 38dbe3ba30SQing Zhang CFLAGS_REMOVE_time.o = $(CC_FLAGS_FTRACE) 39dbe3ba30SQing Zhang CFLAGS_REMOVE_perf_event.o = $(CC_FLAGS_FTRACE) 407b0a0964SHaoran Jiang CFLAGS_REMOVE_rethook.o = $(CC_FLAGS_FTRACE) 417b0a0964SHaoran Jiang CFLAGS_REMOVE_rethook_trampoline.o = $(CC_FLAGS_FTRACE) 42dbe3ba30SQing Zhangendif 43dbe3ba30SQing Zhang 445aa4ac64SQing ZhangKASAN_SANITIZE_efi.o := n 455aa4ac64SQing ZhangKASAN_SANITIZE_cpu-probe.o := n 465aa4ac64SQing ZhangKASAN_SANITIZE_traps.o := n 475aa4ac64SQing ZhangKASAN_SANITIZE_smp.o := n 485aa4ac64SQing ZhangKASAN_SANITIZE_vdso.o := n 495aa4ac64SQing Zhang 50fa96b57cSHuacai Chenobj-$(CONFIG_MODULES) += module.o module-sections.o 5193a4fa62SQing Zhangobj-$(CONFIG_STACKTRACE) += stacktrace.o 52fa96b57cSHuacai Chen 53fa96b57cSHuacai Chenobj-$(CONFIG_PROC_FS) += proc.o 5474c16b2eSBibo Maoobj-$(CONFIG_PARAVIRT) += paravirt.o 55fa96b57cSHuacai Chen 5646859ac8SHuacai Chenobj-$(CONFIG_SMP) += smp.o 5746859ac8SHuacai Chen 58d4b6f156SHuacai Chenobj-$(CONFIG_NUMA) += numa.o 59d4b6f156SHuacai Chen 60dea2df3cSHuacai Chenobj-$(CONFIG_MAGIC_SYSRQ) += sysrq.o 61dea2df3cSHuacai Chen 62d8da19fbSYouling Tangobj-$(CONFIG_RELOCATABLE) += relocate.o 63d8da19fbSYouling Tang 64655fc6cdSBaoquan Heobj-$(CONFIG_KEXEC_CORE) += machine_kexec.o relocate_kernel.o 65*fc9c112fSYouling Tangobj-$(CONFIG_KEXEC_FILE) += machine_kexec_file.o kexec_efi.o kexec_elf.o 664e62d1d8SYouling Tangobj-$(CONFIG_CRASH_DUMP) += crash_dump.o 674a03b2acSYouling Tang 6849232773SQing Zhangobj-$(CONFIG_UNWINDER_GUESS) += unwind_guess.o 6949aef111SQing Zhangobj-$(CONFIG_UNWINDER_PROLOGUE) += unwind_prologue.o 70cb8a2ef0STiezhu Yangobj-$(CONFIG_UNWINDER_ORC) += unwind_orc.o 7149232773SQing Zhang 72b37042b2SHuacai Chenobj-$(CONFIG_PERF_EVENTS) += perf_event.o perf_regs.o 73edffa33cSQing Zhangobj-$(CONFIG_HAVE_HW_BREAKPOINT) += hw_breakpoint.o 74b37042b2SHuacai Chen 75e14dd076SQing Zhangobj-$(CONFIG_KGDB) += kgdb.o 767b0a0964SHaoran Jiangobj-$(CONFIG_KPROBES) += kprobes.o 777b0a0964SHaoran Jiangobj-$(CONFIG_RETHOOK) += rethook.o rethook_trampoline.o 7819bc6cb6STiezhu Yangobj-$(CONFIG_UPROBES) += uprobes.o 796d4cc40fSTiezhu Yang 80f02644e3SYouling Tangobj-$(CONFIG_JUMP_LABEL) += jump_label.o 81f02644e3SYouling Tang 82fa96b57cSHuacai ChenCPPFLAGS_vmlinux.lds := $(KBUILD_CFLAGS) 83