mirror of
https://github.com/torvalds/linux.git
synced 2024-12-24 20:01:55 +00:00
7275acdfe2
As KVM/arm64 is looming on the horizon, it makes sense to move some of the common code to a single location in order to reduce duplication. The code could live anywhere. Actually, most of KVM is already built with a bunch of ugly ../../.. hacks in the various Makefiles, so we're not exactly talking about style here. But maybe it is time to start moving into a less ugly direction. The include files must be in a "public" location, as they are accessed from non-KVM files (arch/arm/kernel/asm-offsets.c). For this purpose, introduce two new locations: - virt/kvm/arm/ : x86 and ia64 already share the ioapic code in virt/kvm, so this could be seen as a (very ugly) precedent. - include/kvm/ : there is already an include/xen, and while the intent is slightly different, this seems as good a location as any Eventually, we should probably have independant Makefiles at every levels (just like everywhere else in the kernel), but this is just the first step. Signed-off-by: Marc Zyngier <marc.zyngier@arm.com> Signed-off-by: Gleb Natapov <gleb@redhat.com>
25 lines
725 B
Makefile
25 lines
725 B
Makefile
#
|
|
# Makefile for Kernel-based Virtual Machine module
|
|
#
|
|
|
|
plus_virt := $(call as-instr,.arch_extension virt,+virt)
|
|
ifeq ($(plus_virt),+virt)
|
|
plus_virt_def := -DREQUIRES_VIRT=1
|
|
endif
|
|
|
|
ccflags-y += -Ivirt/kvm -Iarch/arm/kvm
|
|
CFLAGS_arm.o := -I. $(plus_virt_def)
|
|
CFLAGS_mmu.o := -I.
|
|
|
|
AFLAGS_init.o := -Wa,-march=armv7-a$(plus_virt)
|
|
AFLAGS_interrupts.o := -Wa,-march=armv7-a$(plus_virt)
|
|
|
|
KVM := ../../../virt/kvm
|
|
kvm-arm-y = $(addprefix $(KVM)/, kvm_main.o coalesced_mmio.o)
|
|
|
|
obj-y += kvm-arm.o init.o interrupts.o
|
|
obj-y += arm.o handle_exit.o guest.o mmu.o emulate.o reset.o
|
|
obj-y += coproc.o coproc_a15.o mmio.o psci.o perf.o
|
|
obj-$(CONFIG_KVM_ARM_VGIC) += $(KVM)/arm/vgic.o
|
|
obj-$(CONFIG_KVM_ARM_TIMER) += $(KVM)/arm/arch_timer.o
|