67 lines
1.2 KiB
Makefile
67 lines
1.2 KiB
Makefile
|
# $FreeBSD$
|
||
|
|
||
|
# *REQUIRES* binutils 2.20.1 for VT-x instructions
|
||
|
AS= /usr/local/bin/as
|
||
|
LD= /usr/local/bin/ld
|
||
|
CFLAGS+= -B /usr/local/bin
|
||
|
|
||
|
KMOD= vmm
|
||
|
|
||
|
SRCS= device_if.h bus_if.h pci_if.h
|
||
|
|
||
|
CFLAGS+= -DVMM_KEEP_STATS
|
||
|
CFLAGS+= -DOLD_BINUTILS
|
||
|
CFLAGS+= -I${.CURDIR}/../../amd64/vmm
|
||
|
CFLAGS+= -I${.CURDIR}/../../amd64/vmm/io
|
||
|
CFLAGS+= -I${.CURDIR}/../../amd64/vmm/intel
|
||
|
|
||
|
# generic vmm support
|
||
|
.PATH: ${.CURDIR}/../../amd64/vmm
|
||
|
SRCS+= vmm.c \
|
||
|
vmm_dev.c \
|
||
|
vmm_ipi.c \
|
||
|
vmm_lapic.c \
|
||
|
vmm_mem.c \
|
||
|
vmm_msr.c \
|
||
|
vmm_stat.c \
|
||
|
vmm_util.c \
|
||
|
x86.c \
|
||
|
vmm_support.S
|
||
|
|
||
|
.PATH: ${.CURDIR}/../../amd64/vmm/io
|
||
|
SRCS+= iommu.c \
|
||
|
ppt.c \
|
||
|
vdev.c \
|
||
|
vlapic.c
|
||
|
|
||
|
# intel-specific files
|
||
|
.PATH: ${.CURDIR}/../../amd64/vmm/intel
|
||
|
SRCS+= ept.c \
|
||
|
vmcs.c \
|
||
|
vmx_msr.c \
|
||
|
vmx.c \
|
||
|
vtd.c
|
||
|
|
||
|
# amd-specific files
|
||
|
.PATH: ${.CURDIR}/../../amd64/vmm/amd
|
||
|
SRCS+= amdv.c
|
||
|
|
||
|
OBJS= vmx_support.o
|
||
|
|
||
|
CLEANFILES= vmx_assym.s vmx_genassym.o
|
||
|
|
||
|
vmx_assym.s: vmx_genassym.o
|
||
|
.if exists(@)
|
||
|
vmx_assym.s: @/kern/genassym.sh
|
||
|
.endif
|
||
|
sh @/kern/genassym.sh vmx_genassym.o > ${.TARGET}
|
||
|
|
||
|
vmx_support.o: vmx_support.S vmx_assym.s
|
||
|
${CC} -c -x assembler-with-cpp -DLOCORE ${CFLAGS} \
|
||
|
${.IMPSRC} -o ${.TARGET}
|
||
|
|
||
|
vmx_genassym.o: vmx_genassym.c @ machine
|
||
|
${CC} -c ${CFLAGS:N-fno-common} ${.IMPSRC}
|
||
|
|
||
|
.include <bsd.kmod.mk>
|