# $Id: Config.kmk 86024 2020-09-03 14:37:31Z vboxsync $ ## @file # kBuild Configuration file for the Devices. # # # Copyright (C) 2006-2020 Oracle Corporation # # This file is part of VirtualBox Open Source Edition (OSE), as # available from http://www.virtualbox.org. This file is free software; # you can redistribute it and/or modify it under the terms of the GNU # General Public License (GPL) as published by the Free Software # Foundation, in version 2 as it comes in the "COPYING" file of the # VirtualBox OSE distribution. VirtualBox OSE is distributed in the # hope that it will be useful, but WITHOUT ANY WARRANTY of any kind. # VBOX_DEVICES_CONFIG_KMK_INCLUDED = 1 # Include the top-level configure file. ifndef VBOX_ROOT_CONFIG_KMK_INCLUDED include $(PATH_ROOT)/Config.kmk endif # We need the VMM/Config.kmk one for the VMM_COMMON_DEFS variable. ifndef VBOX_VMM_CONFIG_KMK_INCLUDED include $(PATH_ROOT)/src/VBox/VMM/Config.kmk endif # We need the Additions/3D/Config.kmk for the VBOX_PATH_VMSVGA_INC variable. ifndef VBOX_MESA3D_CONFIG_KMK_INCLUDED include $(PATH_ROOT)/src/VBox/Additions/3D/Config.kmk endif VBOX_PATH_DEVICES_SRC := $(PATH_ROOT)/src/VBox/Devices # # VBoxBios - Template for building 16-bit BIOS code. # # Disabled linker warnings: # W1014: ? # W1023: ? # W2120: ? # W1080: file F:\tinderbox\win-rel\out\win.amd64\release\obj\VBoxVgaBios386\vberom.obj is a 32-bit object file TEMPLATE_VBoxBios = ROM TEMPLATE_VBoxBios_INSTTYPE = none TEMPLATE_VBoxBios_TOOL = OPENWATCOM-16 TEMPLATE_VBoxBios_LDTOOL = OPENWATCOM-WL TEMPLATE_VBoxBios_ASTOOL = OPENWATCOM-16 TEMPLATE_VBoxBios_BLD_TRG = os-agnostic TEMPLATE_VBoxBios_BLD_TRG_ARCH = x86 TEMPLATE_VBoxBios_BINSUFF = .rom TEMPLATE_VBoxBios_INCS = . $(VBOX_PATH_DEVICES_SRC)/BiosCommonCode TEMPLATE_VBoxBios_ASFLAGS = -q -wx -d1 -0 TEMPLATE_VBoxBios_CFLAGS = -q -0 -wx -zl -zu -s -oafs -ms -hc -d1+ TEMPLATE_VBoxBios_CXXFLAGS = $(TEMPLATE_VBoxBios_CFLAGS) TEMPLATE_VBoxBios_DEPS = $(VBOX_VERSION_HEADER) TEMPLATE_VBoxBios_LDFLAGS = system dos \ debug codeview all \ option quiet, nofarcalls, map, verbose, statics, symfile \ disable 1014, 1023, 2120, 1080 TEMPLATE_VBoxBios_LNK_DEPS = $(VBOX_BIOSSUMS) $(VBOX_PATH_DEVICES_SRC)/BiosCommonCode/biosorg_check.sed TEMPLATE_VBoxBios_POST_CMDS = \ $(QUIET)$(SED_EXT) -n -f $(VBOX_PATH_DEVICES_SRC)/BiosCommonCode/biosorg_check.sed $(outbase).map \ && $(MV_EXT) -f $(out) $(out).tmp \ && $(VBOX_BIOSSUMS) $(out).tmp $(out) \ && $(RM_EXT) -f $(out).tmp \ # # VBoxBios - Template for building 32-bit BIOS code. # TEMPLATE_VBoxBios32Lib = ROM TEMPLATE_VBoxBios32Lib_EXTENDS = VBoxBios TEMPLATE_VBoxBios32Lib_INSTTYPE = none TEMPLATE_VBoxBios32Lib_TOOL = OPENWATCOM TEMPLATE_VBoxBios32Lib_ASTOOL = OPENWATCOM TEMPLATE_VBoxBios32Lib_CFLAGS = -q -wx -zu -s -oas -ms -nt=BIOS32 -nd=BIOS32 -hc ifeq ($(KBUILD_TARGET),darwin) # The Open Watcom version we use on darwin generate trouble for the link in -d1+ mode; -d2 doesn't work anywhere. TEMPLATE_VBoxBios32Lib_CFLAGS += -d1 else TEMPLATE_VBoxBios32Lib_CFLAGS += -d1+ endif TEMPLATE_VBoxBios32Lib_CXXFLAGS = $(TEMPLATE_VBoxBios32_CFLAGS) TEMPLATE_VBoxBios32Lib_LNK_DEPS = $(NO_SUCH_VARIABLE) TEMPLATE_VBoxBios32Lib_POST_CMDS = $(NO_SUCH_VARIABLE) # # Audio configuration. # This must live here because of testcase/ # VBOX_AUDIO_DEFS := if 0 # Not stable yet. # Enable microphone-in support for HDA. Otherwise only line-in is supported. VBOX_AUDIO_DEFS += VBOX_WITH_AUDIO_HDA_MIC_IN # Enable interleavig streams support for HDA. Needed for 5.1 surround support. VBOX_AUDIO_DEFS += VBOX_WITH_AUDIO_HDA_INTERLEAVING_STREAMS_SUPPORT # Enable 5.1 surround support (Front, Center/LFE, Rear) for HDA. # Without this, only stereo output (Front) is supported. VBOX_AUDIO_DEFS += VBOX_WITH_AUDIO_HDA_51_SURROUND endif # Enable backend-independent device enumeration support. VBOX_AUDIO_DEFS += VBOX_WITH_AUDIO_ENUM # Enable backend callback support. VBOX_AUDIO_DEFS += VBOX_WITH_AUDIO_CALLBACKS # Disable one-time audio stream initialization at device creation (VM startup) instead # of creating the stream when needed at some later point in time. # # This was the default behavior ever since. # # We now go with the new behavior by default now. #VBOX_AUDIO_DEFS += VBOX_WITH_AUDIO_SB16_ONETIME_INIT ifdef VBOX_WITH_HP_HDA VBOX_AUDIO_DEFS += VBOX_WITH_HP_HDA endif ifdef VBOX_WITH_INTEL_HDA VBOX_AUDIO_DEFS += VBOX_WITH_INTEL_HDA endif ifdef VBOX_WITH_NVIDIA_HDA VBOX_AUDIO_DEFS += VBOX_WITH_NVIDIA_HDA endif # # Enables asynchronous audio data handling # to speed up the actual DMA data routines and keeping up # audio processing out of EMT as much as possible. # # Disabled for AC'97 for now. #VBOX_AUDIO_DEFS += VBOX_WITH_AUDIO_AC97_ASYNC_IO VBOX_AUDIO_DEFS += VBOX_WITH_AUDIO_HDA_ASYNC_IO # Not yet enabled: Callbacks for the device emulation to let the backends # tell the emulation when and how to process data. if 0 VBOX_AUDIO_DEFS += VBOX_WITH_AUDIO_SB16_CALLBACKS VBOX_AUDIO_DEFS += VBOX_WITH_AUDIO_AC97_CALLBACKS VBOX_AUDIO_DEFS += VBOX_WITH_AUDIO_HDA_CALLBACKS endif