1221828Sgrehan# $FreeBSD: releng/10.3/sys/modules/vmm/Makefile 284894 2015-06-27 22:48:22Z neel $ 2221828Sgrehan 3221828SgrehanKMOD= vmm 4221828Sgrehan 5276403SneelSRCS= opt_acpi.h opt_ddb.h device_if.h bus_if.h pci_if.h 6276403SneelSRCS+= vmx_assym.h svm_assym.h 7276429SneelDPSRCS= vmx_genassym.c svm_genassym.c 8221828Sgrehan 9221914SjhbCFLAGS+= -DVMM_KEEP_STATS -DSMP 10254596SuqsCFLAGS+= -I${.CURDIR}/../../amd64/vmm 11254596SuqsCFLAGS+= -I${.CURDIR}/../../amd64/vmm/io 12221828SgrehanCFLAGS+= -I${.CURDIR}/../../amd64/vmm/intel 13276403SneelCFLAGS+= -I${.CURDIR}/../../amd64/vmm/amd 14221828Sgrehan 15221828Sgrehan# generic vmm support 16221828Sgrehan.PATH: ${.CURDIR}/../../amd64/vmm 17221828SgrehanSRCS+= vmm.c \ 18221828Sgrehan vmm_dev.c \ 19242275Sneel vmm_host.c \ 20240941Sneel vmm_instruction_emul.c \ 21268891Sjhb vmm_ioport.c \ 22221828Sgrehan vmm_ipi.c \ 23221828Sgrehan vmm_lapic.c \ 24221828Sgrehan vmm_mem.c \ 25221828Sgrehan vmm_stat.c \ 26221828Sgrehan vmm_util.c \ 27221828Sgrehan x86.c \ 28221828Sgrehan vmm_support.S 29221828Sgrehan 30221828Sgrehan.PATH: ${.CURDIR}/../../amd64/vmm/io 31221828SgrehanSRCS+= iommu.c \ 32221828Sgrehan ppt.c \ 33268891Sjhb vatpic.c \ 34268891Sjhb vatpit.c \ 35261088Sjhb vhpet.c \ 36261088Sjhb vioapic.c \ 37276429Sneel vlapic.c \ 38284894Sneel vpmtmr.c \ 39284894Sneel vrtc.c 40221828Sgrehan 41221828Sgrehan# intel-specific files 42221828Sgrehan.PATH: ${.CURDIR}/../../amd64/vmm/intel 43221828SgrehanSRCS+= ept.c \ 44221828Sgrehan vmcs.c \ 45221828Sgrehan vmx_msr.c \ 46276386Sneel vmx_support.S \ 47221828Sgrehan vmx.c \ 48221828Sgrehan vtd.c 49221828Sgrehan 50221828Sgrehan# amd-specific files 51221828Sgrehan.PATH: ${.CURDIR}/../../amd64/vmm/amd 52276403SneelSRCS+= vmcb.c \ 53276403Sneel svm.c \ 54276403Sneel svm_support.S \ 55276403Sneel npt.c \ 56276403Sneel amdv.c \ 57276403Sneel svm_msr.c 58276429Sneel 59276403SneelCLEANFILES= vmx_assym.h vmx_genassym.o svm_assym.h svm_genassym.o 60221828Sgrehan 61276386Sneelvmx_assym.h: vmx_genassym.o 62221828Sgrehan.if exists(@) 63276386Sneelvmx_assym.h: @/kern/genassym.sh 64221828Sgrehan.endif 65221828Sgrehan sh @/kern/genassym.sh vmx_genassym.o > ${.TARGET} 66221828Sgrehan 67276403Sneelsvm_assym.h: svm_genassym.o 68276403Sneel.if exists(@) 69276403Sneelsvm_assym.h: @/kern/genassym.sh 70276403Sneel.endif 71276403Sneel sh @/kern/genassym.sh svm_genassym.o > ${.TARGET} 72276403Sneel 73276386Sneelvmx_support.o: 74221828Sgrehan ${CC} -c -x assembler-with-cpp -DLOCORE ${CFLAGS} \ 75221828Sgrehan ${.IMPSRC} -o ${.TARGET} 76221828Sgrehan 77276403Sneelsvm_support.o: 78276403Sneel ${CC} -c -x assembler-with-cpp -DLOCORE ${CFLAGS} \ 79276403Sneel ${.IMPSRC} -o ${.TARGET} 80276403Sneel 81276386Sneelvmx_genassym.o: 82221828Sgrehan ${CC} -c ${CFLAGS:N-fno-common} ${.IMPSRC} 83221828Sgrehan 84276403Sneelsvm_genassym.o: 85276403Sneel ${CC} -c ${CFLAGS:N-fno-common} ${.IMPSRC} 86276403Sneel 87221828Sgrehan.include <bsd.kmod.mk> 88