Makefile revision 284894
1# $FreeBSD: stable/10/sys/modules/vmm/Makefile 284894 2015-06-27 22:48:22Z neel $
2
3KMOD=	vmm
4
5SRCS=	opt_acpi.h opt_ddb.h device_if.h bus_if.h pci_if.h
6SRCS+=	vmx_assym.h svm_assym.h
7DPSRCS=	vmx_genassym.c svm_genassym.c
8
9CFLAGS+= -DVMM_KEEP_STATS -DSMP
10CFLAGS+= -I${.CURDIR}/../../amd64/vmm
11CFLAGS+= -I${.CURDIR}/../../amd64/vmm/io
12CFLAGS+= -I${.CURDIR}/../../amd64/vmm/intel
13CFLAGS+= -I${.CURDIR}/../../amd64/vmm/amd
14
15# generic vmm support
16.PATH: ${.CURDIR}/../../amd64/vmm
17SRCS+=	vmm.c		\
18	vmm_dev.c	\
19	vmm_host.c	\
20	vmm_instruction_emul.c	\
21	vmm_ioport.c	\
22	vmm_ipi.c	\
23	vmm_lapic.c	\
24	vmm_mem.c	\
25	vmm_stat.c	\
26	vmm_util.c	\
27	x86.c		\
28	vmm_support.S
29
30.PATH: ${.CURDIR}/../../amd64/vmm/io
31SRCS+=	iommu.c		\
32	ppt.c           \
33	vatpic.c	\
34	vatpit.c	\
35	vhpet.c		\
36	vioapic.c	\
37	vlapic.c	\
38	vpmtmr.c	\
39	vrtc.c
40
41# intel-specific files
42.PATH: ${.CURDIR}/../../amd64/vmm/intel
43SRCS+=	ept.c		\
44	vmcs.c		\
45	vmx_msr.c	\
46	vmx_support.S	\
47	vmx.c		\
48	vtd.c
49
50# amd-specific files
51.PATH: ${.CURDIR}/../../amd64/vmm/amd
52SRCS+=	vmcb.c		\
53	svm.c		\
54	svm_support.S	\
55	npt.c		\
56	amdv.c		\
57	svm_msr.c
58
59CLEANFILES=	vmx_assym.h vmx_genassym.o svm_assym.h svm_genassym.o
60
61vmx_assym.h:    vmx_genassym.o
62.if exists(@)
63vmx_assym.h:    @/kern/genassym.sh
64.endif
65	sh @/kern/genassym.sh vmx_genassym.o > ${.TARGET}
66
67svm_assym.h:    svm_genassym.o
68.if exists(@)
69svm_assym.h:    @/kern/genassym.sh
70.endif
71	sh @/kern/genassym.sh svm_genassym.o > ${.TARGET}
72
73vmx_support.o:
74	${CC} -c -x assembler-with-cpp -DLOCORE ${CFLAGS} \
75	    ${.IMPSRC} -o ${.TARGET}
76
77svm_support.o:
78	${CC} -c -x assembler-with-cpp -DLOCORE ${CFLAGS} \
79	    ${.IMPSRC} -o ${.TARGET}
80
81vmx_genassym.o:
82	${CC} -c ${CFLAGS:N-fno-common} ${.IMPSRC}
83
84svm_genassym.o:
85	${CC} -c ${CFLAGS:N-fno-common} ${.IMPSRC}
86
87.include <bsd.kmod.mk>
88