Makefile 1.9 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576
  1. # SPDX-License-Identifier: GPL-2.0-only
  2. #
  3. # Makefile for the RISC-V Linux kernel
  4. #
  5. ifdef CONFIG_FTRACE
  6. CFLAGS_REMOVE_ftrace.o = $(CC_FLAGS_FTRACE)
  7. CFLAGS_REMOVE_patch.o = $(CC_FLAGS_FTRACE)
  8. CFLAGS_REMOVE_sbi.o = $(CC_FLAGS_FTRACE)
  9. endif
  10. ifdef CONFIG_KEXEC
  11. AFLAGS_kexec_relocate.o := -mcmodel=medany $(call cc-option,-mno-relax)
  12. endif
  13. extra-y += head.o
  14. extra-y += vmlinux.lds
  15. obj-y += soc.o
  16. obj-y += cpu.o
  17. obj-y += cpufeature.o
  18. obj-y += entry.o
  19. obj-y += irq.o
  20. obj-y += process.o
  21. obj-y += ptrace.o
  22. obj-y += reset.o
  23. obj-y += setup.o
  24. obj-y += signal.o
  25. obj-y += syscall_table.o
  26. obj-y += sys_riscv.o
  27. obj-y += time.o
  28. obj-y += traps.o
  29. obj-y += riscv_ksyms.o
  30. obj-y += stacktrace.o
  31. obj-y += cacheinfo.o
  32. obj-y += patch.o
  33. obj-y += probes/
  34. obj-$(CONFIG_MMU) += vdso.o vdso/
  35. obj-$(CONFIG_VECTOR_EMU) += soft_vector/
  36. obj-$(CONFIG_RISCV_M_MODE) += traps_misaligned.o
  37. obj-$(CONFIG_FPU) += fpu.o
  38. obj-$(CONFIG_VECTOR) += vector.o
  39. obj-$(CONFIG_SMP) += smpboot.o
  40. obj-$(CONFIG_SMP) += smp.o
  41. obj-$(CONFIG_SMP) += cpu_ops.o
  42. obj-$(CONFIG_SMP) += cpu_ops_spinwait.o
  43. obj-$(CONFIG_MODULES) += module.o
  44. obj-$(CONFIG_MODULE_SECTIONS) += module-sections.o
  45. obj-$(CONFIG_FUNCTION_TRACER) += mcount.o ftrace.o
  46. obj-$(CONFIG_DYNAMIC_FTRACE) += mcount-dyn.o
  47. obj-$(CONFIG_TRACE_IRQFLAGS) += trace_irq.o
  48. obj-$(CONFIG_RISCV_BASE_PMU) += perf_event.o
  49. obj-$(CONFIG_PERF_EVENTS) += perf_callchain.o
  50. obj-$(CONFIG_HAVE_PERF_REGS) += perf_regs.o
  51. obj-$(CONFIG_RISCV_SBI) += sbi.o
  52. ifeq ($(CONFIG_RISCV_SBI), y)
  53. obj-$(CONFIG_SMP) += cpu_ops_sbi.o
  54. endif
  55. obj-$(CONFIG_HOTPLUG_CPU) += cpu-hotplug.o
  56. obj-$(CONFIG_KGDB) += kgdb.o
  57. obj-$(CONFIG_KEXEC) += kexec_relocate.o crash_save_regs.o machine_kexec.o
  58. obj-$(CONFIG_CRASH_DUMP) += crash_dump.o
  59. obj-$(CONFIG_JUMP_LABEL) += jump_label.o
  60. obj-$(CONFIG_EFI) += efi.o
  61. obj-$(CONFIG_COMPAT) += compat_syscall_table.o
  62. obj-$(CONFIG_COMPAT) += compat_signal.o
  63. obj-$(CONFIG_COMPAT) += compat_vdso/
  64. clean: