VirtualBox

source: vbox/trunk/src/VBox/Devices/Config.kmk@ 88770

Last change on this file since 88770 was 88770, checked in by vboxsync, 4 years ago

Audio/SB16: Enabled async I/O handling by default. bugref:9890

  • Property svn:eol-style set to native
  • Property svn:keywords set to Author Date Id Revision
File size: 5.0 KB
Line 
1# $Id: Config.kmk 88770 2021-04-29 09:46:34Z vboxsync $
2## @file
3# kBuild Configuration file for the Devices.
4#
5
6#
7# Copyright (C) 2006-2020 Oracle Corporation
8#
9# This file is part of VirtualBox Open Source Edition (OSE), as
10# available from http://www.virtualbox.org. This file is free software;
11# you can redistribute it and/or modify it under the terms of the GNU
12# General Public License (GPL) as published by the Free Software
13# Foundation, in version 2 as it comes in the "COPYING" file of the
14# VirtualBox OSE distribution. VirtualBox OSE is distributed in the
15# hope that it will be useful, but WITHOUT ANY WARRANTY of any kind.
16#
17
18VBOX_DEVICES_CONFIG_KMK_INCLUDED = 1
19
20# Include the top-level configure file.
21ifndef VBOX_ROOT_CONFIG_KMK_INCLUDED
22 include $(PATH_ROOT)/Config.kmk
23endif
24
25# We need the VMM/Config.kmk one for the VMM_COMMON_DEFS variable.
26ifndef VBOX_VMM_CONFIG_KMK_INCLUDED
27 include $(PATH_ROOT)/src/VBox/VMM/Config.kmk
28endif
29
30VBOX_PATH_DEVICES_SRC := $(PATH_ROOT)/src/VBox/Devices
31
32VBOX_PATH_VMSVGA_DEVICE_INC := $(VBOX_PATH_DEVICES_SRC)/Graphics/vmsvga_include
33
34#
35# VBoxBios - Template for building 16-bit BIOS code.
36#
37# Disabled linker warnings:
38# W1014: ?
39# W1023: ?
40# W2120: ?
41# W1080: file F:\tinderbox\win-rel\out\win.amd64\release\obj\VBoxVgaBios386\vberom.obj is a 32-bit object file
42TEMPLATE_VBoxBios = ROM
43TEMPLATE_VBoxBios_INSTTYPE = none
44TEMPLATE_VBoxBios_TOOL = OPENWATCOM-16
45TEMPLATE_VBoxBios_LDTOOL = OPENWATCOM-WL
46TEMPLATE_VBoxBios_ASTOOL = OPENWATCOM-16
47TEMPLATE_VBoxBios_BLD_TRG = os-agnostic
48TEMPLATE_VBoxBios_BLD_TRG_ARCH = x86
49TEMPLATE_VBoxBios_BINSUFF = .rom
50TEMPLATE_VBoxBios_INCS = . $(VBOX_PATH_DEVICES_SRC)/BiosCommonCode
51TEMPLATE_VBoxBios_ASFLAGS = -q -wx -d1 -0
52TEMPLATE_VBoxBios_CFLAGS = -q -0 -wx -zl -zu -s -oafs -ms -hc -d1+
53TEMPLATE_VBoxBios_CXXFLAGS = $(TEMPLATE_VBoxBios_CFLAGS)
54TEMPLATE_VBoxBios_DEPS = $(VBOX_VERSION_HEADER)
55TEMPLATE_VBoxBios_LDFLAGS = system dos \
56 debug codeview all \
57 option quiet, nofarcalls, map, verbose, statics, symfile \
58 disable 1014, 1023, 2120, 1080
59TEMPLATE_VBoxBios_LNK_DEPS = $(VBOX_BIOSSUMS) $(VBOX_PATH_DEVICES_SRC)/BiosCommonCode/biosorg_check.sed
60TEMPLATE_VBoxBios_POST_CMDS = \
61 $(QUIET)$(SED_EXT) -n -f $(VBOX_PATH_DEVICES_SRC)/BiosCommonCode/biosorg_check.sed $(outbase).map \
62 && $(MV_EXT) -f $(out) $(out).tmp \
63 && $(VBOX_BIOSSUMS) $(out).tmp $(out) \
64 && $(RM_EXT) -f $(out).tmp \
65
66#
67# VBoxBios - Template for building 32-bit BIOS code.
68#
69TEMPLATE_VBoxBios32Lib = ROM
70TEMPLATE_VBoxBios32Lib_EXTENDS = VBoxBios
71TEMPLATE_VBoxBios32Lib_INSTTYPE = none
72TEMPLATE_VBoxBios32Lib_TOOL = OPENWATCOM
73TEMPLATE_VBoxBios32Lib_ASTOOL = OPENWATCOM
74TEMPLATE_VBoxBios32Lib_CFLAGS = -q -wx -zu -s -oas -ms -nt=BIOS32 -nd=BIOS32 -hc
75ifeq ($(KBUILD_TARGET),darwin) # The Open Watcom version we use on darwin generate trouble for the link in -d1+ mode; -d2 doesn't work anywhere.
76TEMPLATE_VBoxBios32Lib_CFLAGS += -d1
77else
78TEMPLATE_VBoxBios32Lib_CFLAGS += -d1+
79endif
80TEMPLATE_VBoxBios32Lib_CXXFLAGS = $(TEMPLATE_VBoxBios32_CFLAGS)
81TEMPLATE_VBoxBios32Lib_LNK_DEPS = $(NO_SUCH_VARIABLE)
82TEMPLATE_VBoxBios32Lib_POST_CMDS = $(NO_SUCH_VARIABLE)
83
84
85#
86# Audio configuration.
87# This must live here because of testcase/
88#
89VBOX_AUDIO_DEFS :=
90if 0 # Not stable yet.
91 # Enable microphone-in support for HDA. Otherwise only line-in is supported.
92 VBOX_AUDIO_DEFS += VBOX_WITH_AUDIO_HDA_MIC_IN
93
94 # Enable interleavig streams support for HDA. Needed for 5.1 surround support.
95 VBOX_AUDIO_DEFS += VBOX_WITH_AUDIO_HDA_INTERLEAVING_STREAMS_SUPPORT
96
97 # Enable 5.1 surround support (Front, Center/LFE, Rear) for HDA.
98 # Without this, only stereo output (Front) is supported.
99 VBOX_AUDIO_DEFS += VBOX_WITH_AUDIO_HDA_51_SURROUND
100endif
101
102# Enable backend-independent device enumeration support.
103VBOX_AUDIO_DEFS += VBOX_WITH_AUDIO_ENUM
104
105# Enable backend callback support.
106VBOX_AUDIO_DEFS += VBOX_WITH_AUDIO_CALLBACKS
107
108# Disable one-time audio stream initialization at device creation (VM startup) instead
109# of creating the stream when needed at some later point in time.
110#
111# This was the default behavior ever since.
112#
113# We now go with the new behavior by default now.
114#VBOX_AUDIO_DEFS += VBOX_WITH_AUDIO_SB16_ONETIME_INIT
115
116ifdef VBOX_WITH_HP_HDA
117 VBOX_AUDIO_DEFS += VBOX_WITH_HP_HDA
118endif
119ifdef VBOX_WITH_INTEL_HDA
120 VBOX_AUDIO_DEFS += VBOX_WITH_INTEL_HDA
121endif
122ifdef VBOX_WITH_NVIDIA_HDA
123 VBOX_AUDIO_DEFS += VBOX_WITH_NVIDIA_HDA
124endif
125
126#
127# Enables asynchronous audio data handling
128# to speed up the actual DMA data routines and keeping up
129# audio processing out of EMT as much as possible.
130#
131# Disabled for AC'97 for now.
132#VBOX_AUDIO_DEFS += VBOX_WITH_AUDIO_AC97_ASYNC_IO
133VBOX_AUDIO_DEFS += VBOX_WITH_AUDIO_HDA_ASYNC_IO
134VBOX_AUDIO_DEFS += VBOX_WITH_AUDIO_SB16_ASYNC_IO
135
136# Not yet enabled: Callbacks for the device emulation to let the backends
137# tell the emulation when and how to process data.
138if 0
139 VBOX_AUDIO_DEFS += VBOX_WITH_AUDIO_SB16_CALLBACKS
140 VBOX_AUDIO_DEFS += VBOX_WITH_AUDIO_AC97_CALLBACKS
141 VBOX_AUDIO_DEFS += VBOX_WITH_AUDIO_HDA_CALLBACKS
142endif
143
Note: See TracBrowser for help on using the repository browser.

© 2024 Oracle Support Privacy / Do Not Sell My Info Terms of Use Trademark Policy Automated Access Etiquette