xref: /illumos-gate/usr/src/uts/intel/io/vmm/Makefile.vmm (revision e760f150)
17c8c0b82SPatrick Mooney#
27c8c0b82SPatrick Mooney# This file and its contents are supplied under the terms of the
37c8c0b82SPatrick Mooney# Common Development and Distribution License ("CDDL"), version 1.0.
47c8c0b82SPatrick Mooney# You may only use this file in accordance with the terms of version
57c8c0b82SPatrick Mooney# 1.0 of the CDDL.
67c8c0b82SPatrick Mooney#
77c8c0b82SPatrick Mooney# A full copy of the text of the CDDL should have accompanied this
87c8c0b82SPatrick Mooney# source.  A copy of the CDDL is also available via the Internet at
97c8c0b82SPatrick Mooney# http://www.illumos.org/license/CDDL.
107c8c0b82SPatrick Mooney#
117c8c0b82SPatrick Mooney
127c8c0b82SPatrick Mooney#
137c8c0b82SPatrick Mooney# Copyright 2019 Joyent, Inc.
147c8c0b82SPatrick Mooney# Copyright 2022 Oxide Computer Company
157c8c0b82SPatrick Mooney#
167c8c0b82SPatrick Mooney
177c8c0b82SPatrick MooneyCONF_SRCDIR	= $(UTSBASE)/intel/io/vmm
187c8c0b82SPatrick MooneyMAPFILE		= $(UTSBASE)/intel/io/vmm/vmm.mapfile
197c8c0b82SPatrick Mooney
207c8c0b82SPatrick MooneyPRE_INC_PATH	= \
217c8c0b82SPatrick Mooney	-I$(COMPAT)/bhyve \
227c8c0b82SPatrick Mooney	-I$(COMPAT)/bhyve/amd64 \
237c8c0b82SPatrick Mooney	-I$(CONTRIB)/bhyve \
247c8c0b82SPatrick Mooney	-I$(CONTRIB)/bhyve/amd64
257c8c0b82SPatrick Mooney
267c8c0b82SPatrick MooneyINC_PATH	+= -I$(UTSBASE)/intel/io/vmm -I$(UTSBASE)/intel/io/vmm/io
277c8c0b82SPatrick MooneyAS_INC_PATH	+= -I$(UTSBASE)/intel/io/vmm -I$(OBJS_DIR)
287c8c0b82SPatrick Mooney
297c8c0b82SPatrick Mooney# enable collection of VMM statistics
307c8c0b82SPatrick MooneyCFLAGS		+= -DVMM_KEEP_STATS
317c8c0b82SPatrick Mooney
32*e760f150SPatrick MooneyLDFLAGS		+= -N misc/pcie -N fs/dev
337c8c0b82SPatrick MooneyLDFLAGS		+= -M $(MAPFILE)
347c8c0b82SPatrick Mooney
35e0994bd2SPatrick Mooney# devmem span calculations currently run afoul of overflow checks
367c8c0b82SPatrick Mooney$(OBJS_DIR)/vmm_sol_dev.o := SMOFF += signed_integer_overflow_check
37e0994bd2SPatrick Mooney# vmm_zsd_add_vm() failure unhandled in face of racing zone shutdown
38e0994bd2SPatrick Mooney$(OBJS_DIR)/vmm_sol_dev.o := SMOFF += all_func_returns
397c8c0b82SPatrick Mooney
407c8c0b82SPatrick MooneyOFFSETS_VMX	= $(CONF_SRCDIR)/intel/offsets.in
417c8c0b82SPatrick MooneyOFFSETS_SVM	= $(CONF_SRCDIR)/amd/offsets.in
427c8c0b82SPatrick MooneyASSYM_VMX	= $(OBJS_DIR)/vmx_assym.h
437c8c0b82SPatrick MooneyASSYM_SVM	= $(OBJS_DIR)/svm_assym.h
447c8c0b82SPatrick Mooney
457c8c0b82SPatrick MooneyCLEANFILES	+= $(ASSYM_VMX) $(ASSYM_SVM)
467c8c0b82SPatrick Mooney
477c8c0b82SPatrick MooneyVMM_OBJS = \
487c8c0b82SPatrick Mooney	vmm.o \
497c8c0b82SPatrick Mooney	vmm_sol_dev.o \
507c8c0b82SPatrick Mooney	vmm_host.o \
517c8c0b82SPatrick Mooney	vmm_instruction_emul.o \
527c8c0b82SPatrick Mooney	vmm_ioport.o \
537c8c0b82SPatrick Mooney	vmm_lapic.o \
547c8c0b82SPatrick Mooney	vmm_stat.o \
557c8c0b82SPatrick Mooney	vmm_util.o \
567c8c0b82SPatrick Mooney	x86.o \
577c8c0b82SPatrick Mooney	iommu.o \
587c8c0b82SPatrick Mooney	vatpic.o \
597c8c0b82SPatrick Mooney	vatpit.o \
607c8c0b82SPatrick Mooney	vhpet.o \
617c8c0b82SPatrick Mooney	vioapic.o \
627c8c0b82SPatrick Mooney	vlapic.o \
637c8c0b82SPatrick Mooney	vrtc.o \
647c8c0b82SPatrick Mooney	vpmtmr.o \
657c8c0b82SPatrick Mooney	vmcs.o \
667c8c0b82SPatrick Mooney	vmx_msr.o \
677c8c0b82SPatrick Mooney	vmx.o \
687c8c0b82SPatrick Mooney	vmx_support.o \
697c8c0b82SPatrick Mooney	svm.o \
707c8c0b82SPatrick Mooney	svm_msr.o \
717c8c0b82SPatrick Mooney	vmcb.o \
727c8c0b82SPatrick Mooney	svm_support.o \
737c8c0b82SPatrick Mooney	vmm_gpt.o \
747c8c0b82SPatrick Mooney	seg_vmm.o \
757c8c0b82SPatrick Mooney	vmm_reservoir.o \
767c8c0b82SPatrick Mooney	vmm_sol_glue.o \
777c8c0b82SPatrick Mooney	vmm_sol_ept.o \
787c8c0b82SPatrick Mooney	vmm_sol_rvi.o \
797c8c0b82SPatrick Mooney	vmm_support.o \
807c8c0b82SPatrick Mooney	vmm_vm.o \
817c8c0b82SPatrick Mooney	vmm_zsd.o