Changeset View
Changeset View
Standalone View
Standalone View
sys/modules/vmm/Makefile
.include <kmod.opts.mk> | .include <kmod.opts.mk> | ||||
KMOD= vmm | KMOD= vmm | ||||
.if ${MACHINE_CPUARCH} == "amd64" | .if ${MACHINE_CPUARCH} == "amd64" | ||||
SRCS+= opt_acpi.h \ | |||||
opt_bhyve_snapshot.h \ | |||||
opt_ddb.h | |||||
.endif | .endif | ||||
SRCS+= acpi_if.h bus_if.h device_if.h pci_if.h pcib_if.h vnode_if.h | SRCS+= acpi_if.h bus_if.h device_if.h pci_if.h pcib_if.h vnode_if.h | ||||
CFLAGS+= -DVMM_KEEP_STATS | CFLAGS+= -DVMM_KEEP_STATS | ||||
CFLAGS+= -I${SRCTOP}/sys/${MACHINE}/vmm | CFLAGS+= -I${SRCTOP}/sys/${MACHINE}/vmm | ||||
CFLAGS+= -I${SRCTOP}/sys/${MACHINE}/vmm/io | |||||
# generic vmm support | # generic vmm support | ||||
.PATH: ${SRCTOP}/sys/dev/vmm ${SRCTOP}/sys/${MACHINE}/vmm | .PATH: ${SRCTOP}/sys/dev/vmm ${SRCTOP}/sys/${MACHINE}/vmm | ||||
SRCS+= vmm.c \ | SRCS+= vmm.c \ | ||||
vmm_dev.c \ | vmm_dev.c \ | ||||
vmm_dev_machdep.c \ | vmm_dev_machdep.c \ | ||||
vmm_instruction_emul.c \ | vmm_instruction_emul.c \ | ||||
vmm_stat.c | vmm_stat.c | ||||
.if ${MACHINE_CPUARCH} == "aarch64" | .if ${MACHINE_CPUARCH} == "aarch64" | ||||
CFLAGS+= -I${SRCTOP}/sys/${MACHINE}/vmm/io | |||||
DPSRCS+= assym.inc | DPSRCS+= assym.inc | ||||
# TODO: Add the new EL2 code | # TODO: Add the new EL2 code | ||||
SRCS+= vmm_arm64.c \ | SRCS+= vmm_arm64.c \ | ||||
vmm_reset.c \ | vmm_reset.c \ | ||||
vmm_call.S \ | vmm_call.S \ | ||||
vmm_handlers.c \ | vmm_handlers.c \ | ||||
vmm_mmu.c \ | vmm_mmu.c \ | ||||
Show All 31 Lines | vmm_hyp_blob.elf: vmm_hyp_blob.elf.full | ||||
${OBJCOPY} --strip-debug ${.ALLSRC} ${.TARGET} | ${OBJCOPY} --strip-debug ${.ALLSRC} ${.TARGET} | ||||
vmm_hyp_blob.bin: vmm_hyp_blob.elf | vmm_hyp_blob.bin: vmm_hyp_blob.elf | ||||
${OBJCOPY} --output-target=binary ${.ALLSRC} ${.TARGET} | ${OBJCOPY} --output-target=binary ${.ALLSRC} ${.TARGET} | ||||
vmm_hyp_el2.o: vmm_hyp_blob.bin | vmm_hyp_el2.o: vmm_hyp_blob.bin | ||||
.elif ${MACHINE_CPUARCH} == "amd64" | .elif ${MACHINE_CPUARCH} == "amd64" | ||||
CFLAGS+= -I${SRCTOP}/sys/${MACHINE}/vmm/io | |||||
DPSRCS+= vmx_assym.h svm_assym.h | DPSRCS+= vmx_assym.h svm_assym.h | ||||
DPSRCS+= vmx_genassym.c svm_genassym.c offset.inc | DPSRCS+= vmx_genassym.c svm_genassym.c offset.inc | ||||
CFLAGS+= -I${SRCTOP}/sys/amd64/vmm/intel | CFLAGS+= -I${SRCTOP}/sys/amd64/vmm/intel | ||||
CFLAGS+= -I${SRCTOP}/sys/amd64/vmm/amd | CFLAGS+= -I${SRCTOP}/sys/amd64/vmm/amd | ||||
SRCS+= opt_acpi.h \ | |||||
opt_bhyve_snapshot.h \ | |||||
opt_ddb.h | |||||
SRCS+= vmm_host.c \ | SRCS+= vmm_host.c \ | ||||
vmm_ioport.c \ | vmm_ioport.c \ | ||||
vmm_lapic.c \ | vmm_lapic.c \ | ||||
vmm_mem.c \ | vmm_mem.c \ | ||||
vmm_util.c \ | vmm_util.c \ | ||||
x86.c | x86.c | ||||
.PATH: ${SRCTOP}/sys/${MACHINE}/vmm/io | .PATH: ${SRCTOP}/sys/${MACHINE}/vmm/io | ||||
Show All 30 Lines | SRCS+= vmcb.c \ | ||||
svm_msr.c | svm_msr.c | ||||
SRCS.BHYVE_SNAPSHOT= vmm_snapshot.c | SRCS.BHYVE_SNAPSHOT= vmm_snapshot.c | ||||
CLEANFILES+= vmx_assym.h vmx_genassym.o svm_assym.h svm_genassym.o | CLEANFILES+= vmx_assym.h vmx_genassym.o svm_assym.h svm_genassym.o | ||||
OBJS_DEPEND_GUESS.vmx_support.o+= vmx_assym.h | OBJS_DEPEND_GUESS.vmx_support.o+= vmx_assym.h | ||||
OBJS_DEPEND_GUESS.svm_support.o+= svm_assym.h | OBJS_DEPEND_GUESS.svm_support.o+= svm_assym.h | ||||
.endif | |||||
vmx_assym.h: vmx_genassym.o | vmx_assym.h: vmx_genassym.o | ||||
sh ${SYSDIR}/kern/genassym.sh vmx_genassym.o > ${.TARGET} | sh ${SYSDIR}/kern/genassym.sh vmx_genassym.o > ${.TARGET} | ||||
svm_assym.h: svm_genassym.o | svm_assym.h: svm_genassym.o | ||||
sh ${SYSDIR}/kern/genassym.sh svm_genassym.o > ${.TARGET} | sh ${SYSDIR}/kern/genassym.sh svm_genassym.o > ${.TARGET} | ||||
vmx_support.o: | vmx_support.o: | ||||
${CC} -c -x assembler-with-cpp -DLOCORE ${CFLAGS} \ | ${CC} -c -x assembler-with-cpp -DLOCORE ${CFLAGS} \ | ||||
${.IMPSRC} -o ${.TARGET} | ${.IMPSRC} -o ${.TARGET} | ||||
svm_support.o: | svm_support.o: | ||||
${CC} -c -x assembler-with-cpp -DLOCORE ${CFLAGS} \ | ${CC} -c -x assembler-with-cpp -DLOCORE ${CFLAGS} \ | ||||
${.IMPSRC} -o ${.TARGET} | ${.IMPSRC} -o ${.TARGET} | ||||
hyp_genassym.o: offset.inc | hyp_genassym.o: offset.inc | ||||
${CC} -c ${NOSAN_CFLAGS:N-flto:N-fno-common} -fcommon ${.IMPSRC} | ${CC} -c ${NOSAN_CFLAGS:N-flto:N-fno-common} -fcommon ${.IMPSRC} | ||||
vmx_genassym.o: offset.inc | vmx_genassym.o: offset.inc | ||||
${CC} -c ${NOSAN_CFLAGS:N-flto*:N-fno-common} -fcommon ${.IMPSRC} | ${CC} -c ${NOSAN_CFLAGS:N-flto*:N-fno-common} -fcommon ${.IMPSRC} | ||||
svm_genassym.o: offset.inc | svm_genassym.o: offset.inc | ||||
${CC} -c ${NOSAN_CFLAGS:N-flto*:N-fno-common} -fcommon ${.IMPSRC} | ${CC} -c ${NOSAN_CFLAGS:N-flto*:N-fno-common} -fcommon ${.IMPSRC} | ||||
.elif ${MACHINE_CPUARCH} == "riscv" | |||||
SRCS+= vmm_aplic.c \ | |||||
vmm_riscv.c \ | |||||
vmm_sbi.c \ | |||||
vmm_switch.S | |||||
.endif | |||||
.include <bsd.kmod.mk> | .include <bsd.kmod.mk> |