Makefile 1.4 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647
  1. # SPDX-License-Identifier: GPL-2.0
  2. #
  3. # Makefile for Kernel-based Virtual Machine module
  4. #
  5. ccflags-y += -I $(src)
  6. include $(srctree)/virt/kvm/Makefile.kvm
  7. obj-$(CONFIG_KVM) += kvm.o
  8. obj-$(CONFIG_KVM) += hyp/
  9. CFLAGS_sys_regs.o += -Wno-override-init
  10. CFLAGS_handle_exit.o += -Wno-override-init
  11. kvm-y += arm.o mmu.o mmio.o psci.o hypercalls.o pvtime.o \
  12. inject_fault.o va_layout.o handle_exit.o config.o \
  13. guest.o debug.o reset.o sys_regs.o stacktrace.o \
  14. vgic-sys-reg-v3.o fpsimd.o pkvm.o \
  15. arch_timer.o trng.o vmid.o emulate-nested.o nested.o at.o \
  16. vgic/vgic.o vgic/vgic-init.o \
  17. vgic/vgic-irqfd.o vgic/vgic-v2.o \
  18. vgic/vgic-v3.o vgic/vgic-v4.o \
  19. vgic/vgic-mmio.o vgic/vgic-mmio-v2.o \
  20. vgic/vgic-mmio-v3.o vgic/vgic-kvm-device.o \
  21. vgic/vgic-its.o vgic/vgic-debug.o vgic/vgic-v3-nested.o \
  22. vgic/vgic-v5.o
  23. kvm-$(CONFIG_HW_PERF_EVENTS) += pmu-emul.o pmu.o
  24. kvm-$(CONFIG_ARM64_PTR_AUTH) += pauth.o
  25. kvm-$(CONFIG_PTDUMP_STAGE2_DEBUGFS) += ptdump.o
  26. always-y := hyp_constants.h hyp-constants.s
  27. define rule_gen_hyp_constants
  28. $(call filechk,offsets,__HYP_CONSTANTS_H__)
  29. endef
  30. CFLAGS_hyp-constants.o = -I $(src)/hyp/include
  31. $(obj)/hyp-constants.s: $(src)/hyp/hyp-constants.c FORCE
  32. $(call if_changed_dep,cc_s_c)
  33. $(obj)/hyp_constants.h: $(obj)/hyp-constants.s FORCE
  34. $(call if_changed_rule,gen_hyp_constants)
  35. obj-kvm := $(addprefix $(obj)/, $(kvm-y))
  36. $(obj-kvm): $(obj)/hyp_constants.h