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