xref: /freebsd/usr.sbin/bhyve/Makefile (revision e17f5b1d)
1#
2# $FreeBSD$
3#
4
5.include <src.opts.mk>
6CFLAGS+=-I${SRCTOP}/sys
7.PATH:  ${SRCTOP}/sys/cam/ctl
8
9PROG=	bhyve
10PACKAGE=	bhyve
11
12MAN=	bhyve.8
13
14BHYVE_SYSDIR?=${SRCTOP}
15
16SRCS=	\
17	atkbdc.c		\
18	acpi.c			\
19	audio.c			\
20	bhyvegc.c		\
21	bhyverun.c		\
22	block_if.c		\
23	bootrom.c		\
24	console.c		\
25	consport.c		\
26	ctl_util.c		\
27	ctl_scsi_all.c		\
28	dbgport.c		\
29	fwctl.c			\
30	gdb.c			\
31	hda_codec.c		\
32	inout.c			\
33	ioapic.c		\
34	kernemu_dev.c		\
35	mem.c			\
36	mevent.c		\
37	mptbl.c			\
38	net_backends.c		\
39	net_utils.c		\
40	pci_ahci.c		\
41	pci_e82545.c		\
42	pci_emul.c		\
43	pci_hda.c		\
44	pci_fbuf.c		\
45	pci_hostbridge.c	\
46	pci_irq.c		\
47	pci_lpc.c		\
48	pci_nvme.c		\
49	pci_passthru.c		\
50	pci_virtio_block.c	\
51	pci_virtio_console.c	\
52	pci_virtio_net.c	\
53	pci_virtio_rnd.c	\
54	pci_virtio_scsi.c	\
55	pci_uart.c		\
56	pci_xhci.c		\
57	pm.c			\
58	post.c			\
59	ps2kbd.c		\
60	ps2mouse.c		\
61	rfb.c			\
62	rtc.c			\
63	smbiostbl.c		\
64	sockstream.c		\
65	task_switch.c		\
66	uart_emul.c		\
67	usb_emul.c		\
68	usb_mouse.c		\
69	virtio.c		\
70	vga.c			\
71	vmgenc.c		\
72	xmsr.c			\
73	spinup_ap.c		\
74	iov.c
75
76.if ${MK_BHYVE_SNAPSHOT} != "no"
77SRCS+=	snapshot.c
78.endif
79
80CFLAGS.kernemu_dev.c+=	-I${SRCTOP}/sys/amd64
81
82.PATH:  ${BHYVE_SYSDIR}/sys/amd64/vmm
83SRCS+=	vmm_instruction_emul.c
84
85LIBADD=	vmmapi md pthread z util sbuf cam
86.if ${MK_BHYVE_SNAPSHOT} != "no"
87LIBADD+= ucl xo
88.endif
89
90.if ${MK_INET_SUPPORT} != "no"
91CFLAGS+=-DINET
92.endif
93.if ${MK_INET6_SUPPORT} != "no"
94CFLAGS+=-DINET6
95.endif
96.if ${MK_NETGRAPH_SUPPORT} != "no"
97CFLAGS+=-DNETGRAPH
98LIBADD+=    netgraph
99.endif
100.if ${MK_OPENSSL} == "no"
101CFLAGS+=-DNO_OPENSSL
102.else
103LIBADD+=	crypto
104.endif
105
106CFLAGS+= -I${BHYVE_SYSDIR}/sys/dev/e1000
107CFLAGS+= -I${BHYVE_SYSDIR}/sys/dev/mii
108CFLAGS+= -I${BHYVE_SYSDIR}/sys/dev/usb/controller
109.if ${MK_BHYVE_SNAPSHOT} != "no"
110CFLAGS+= -I${SRCTOP}/contrib/libucl/include
111
112# Temporary disable capsicum, until we integrate checkpoint code with it.
113CFLAGS+= -DWITHOUT_CAPSICUM
114
115CFLAGS+= -DBHYVE_SNAPSHOT
116.endif
117
118.ifdef GDB_LOG
119CFLAGS+=-DGDB_LOG
120.endif
121
122WARNS?=	2
123
124.include <bsd.prog.mk>
125