[2478] | 1 | # $Id: Makefile.kmk 67254 2017-06-02 17:29:13Z vboxsync $
|
---|
| 2 | ## @file
|
---|
[1] | 3 | # Makefile for the VBox Main module.
|
---|
| 4 | #
|
---|
| 5 |
|
---|
| 6 | #
|
---|
[65162] | 7 | # Copyright (C) 2004-2017 Oracle Corporation
|
---|
[4426] | 8 | #
|
---|
[5999] | 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 | #
|
---|
[1] | 17 |
|
---|
[10056] | 18 | SUB_DEPTH = ../../..
|
---|
[8760] | 19 | include $(KBUILD_PATH)/subheader.kmk
|
---|
[1] | 20 |
|
---|
[12244] | 21 | #
|
---|
[49797] | 22 | # Make sure our Config.kmk is included.
|
---|
| 23 | #
|
---|
| 24 | ifndef VBOX_MAIN_CONFIG_KMK_INCLUDED
|
---|
| 25 | include $(PATH_SUB_CURRENT)/Config.kmk
|
---|
| 26 | endif
|
---|
| 27 |
|
---|
| 28 | #
|
---|
[10268] | 29 | # Include sub-makefile(s).
|
---|
[12244] | 30 | #
|
---|
[13222] | 31 | ifdef VBOX_WITH_WEBSERVICES
|
---|
| 32 | include $(PATH_SUB_CURRENT)/webservice/Makefile.kmk
|
---|
| 33 | endif
|
---|
[10268] | 34 | include $(PATH_SUB_CURRENT)/testcase/Makefile.kmk
|
---|
[16406] | 35 | include $(PATH_SUB_CURRENT)/cbinding/Makefile.kmk
|
---|
[2071] | 36 |
|
---|
[12244] | 37 |
|
---|
[11912] | 38 | #
|
---|
| 39 | # Targets and globals (bit of a mess...)
|
---|
| 40 | #
|
---|
[12244] | 41 | VBOX_PATH_MAIN_SRC := $(PATH_SUB_CURRENT)
|
---|
| 42 |
|
---|
[14687] | 43 | ifdef VBOX_ONLY_SDK
|
---|
[11830] | 44 | # I'm Evil! Dr. Evil.
|
---|
[35386] | 45 | VBoxCOM_0_OUTDIR = $(PATH_TARGET)/VBoxCOM
|
---|
[38082] | 46 | BLDDIRS += $(VBoxCOM_0_OUTDIR) $(PATH_STAGE_BIN)/components
|
---|
[42300] | 47 | include $(KBUILD_PATH)/tools/$(VBOX_VCC_TOOL).kmk # For the idl /cpp statement.
|
---|
[42154] | 48 | include $(KBUILD_PATH)/sdks/$(VBOX_WINPSDK).kmk
|
---|
[25946] | 49 | endif # !VBOX_ONLY_SDK
|
---|
[11721] | 50 |
|
---|
[12244] | 51 |
|
---|
| 52 | # Construct VBOX_MAIN_DEFS
|
---|
| 53 | ## @todo eliminate or expand VBOX_MAIN_DEFS.
|
---|
[45518] | 54 | VBOX_MAIN_DEFS =
|
---|
[8758] | 55 | ifneq ($(KBUILD_TARGET),win)
|
---|
[606] | 56 | ifndef VBOX_WITH_XPCOM
|
---|
| 57 | $(error "VBox: VBOX_WITH_XPCOM isn't defined")
|
---|
| 58 | endif
|
---|
[48431] | 59 | VBOX_MAIN_DEFS += VBOX_WITH_GENERIC_SESSION_WATCHER
|
---|
[1] | 60 | endif
|
---|
[17915] | 61 | VBOX_MAIN_DEFS += \
|
---|
[25946] | 62 | $(if $(VBOX_WITH_RAW_MODE),VBOX_WITH_RAW_MODE,) \
|
---|
[45276] | 63 | $(if $(VBOX_WITH_RAW_RING1),VBOX_WITH_RAW_RING1,) \
|
---|
[49983] | 64 | $(if $(VBOX_WITH_VMSVGA),VBOX_WITH_VMSVGA,) \
|
---|
| 65 | $(if $(VBOX_WITH_VMSVGA3D),VBOX_WITH_VMSVGA3D,) \
|
---|
[17915] | 66 | $(if $(VBOX_WITH_NETFLT),VBOX_WITH_NETFLT,) \
|
---|
[32866] | 67 | $(if $(VBOX_WITH_COPYTOGUEST),VBOX_WITH_COPYTOGUEST,) \
|
---|
[17915] | 68 | $(if $(VBOX_WITH_CROGL),VBOX_WITH_CROGL,) \
|
---|
[50313] | 69 | $(if $(VBOX_WITH_CRHGSMI),VBOX_WITH_CRHGSMI,) \
|
---|
[17915] | 70 | $(if $(VBOX_WITH_GUEST_PROPS),VBOX_WITH_GUEST_PROPS,) \
|
---|
[25332] | 71 | $(if $(VBOX_WITH_GUEST_PROPS_RDONLY_GUEST),VBOX_WITH_GUEST_PROPS_RDONLY_GUEST,) \
|
---|
[27741] | 72 | $(if $(VBOX_WITH_GUEST_CONTROL),VBOX_WITH_GUEST_CONTROL,) \
|
---|
[38192] | 73 | $(if $(VBOX_WITH_USB_CARDREADER),VBOX_WITH_USB_CARDREADER,) \
|
---|
| 74 | $(if $(VBOX_WITH_USB_CARDREADER_TEST),VBOX_WITH_USB_CARDREADER_TEST,) \
|
---|
[42838] | 75 | $(if $(VBOX_WITH_HOSTNETIF_API),VBOX_WITH_HOSTNETIF_API,) \
|
---|
[59369] | 76 | $(if $(VBOX_WITH_MIDL_PROXY_STUB),VBOX_WITH_MIDL_PROXY_STUB,) \
|
---|
[66279] | 77 | $(if $(VBOX_WITH_SDS),VBOX_WITH_SDS,) \
|
---|
[17915] | 78 |
|
---|
[17180] | 79 | # Unconditionally enable the new semaphore key generation code
|
---|
| 80 | VBOX_MAIN_DEFS += VBOX_WITH_NEW_SYS_V_KEYGEN
|
---|
[8119] | 81 |
|
---|
[11912] | 82 | VBOX_IDL_FILE.MSCOM = $(VBOX_PATH_SDK)/bindings/mscom/idl/VirtualBox.idl
|
---|
| 83 | VBOX_IDL_FILE.XPCOM = $(VBOX_PATH_SDK)/bindings/xpcom/idl/VirtualBox_XPCOM.idl
|
---|
[11830] | 84 |
|
---|
[38082] | 85 | VBOX_IDL_TYPELIB.XPCOM = $(PATH_STAGE_BIN)/components/VirtualBox_XPCOM.xpt
|
---|
[11912] | 86 | VBOX_IDL_HEADER.XPCOM = $(VBOX_PATH_SDK)/bindings/xpcom/include/VirtualBox_XPCOM.h
|
---|
[11830] | 87 |
|
---|
[12244] | 88 | # The MS COM specific stuff.
|
---|
| 89 | if defined(VBOX_ONLY_SDK) || "$(KBUILD_TARGET)" == "win"
|
---|
[11830] | 90 | OTHERS += \
|
---|
[40976] | 91 | $(VBOX_IDL_FILE.MSCOM)
|
---|
[6752] | 92 | OTHER_CLEAN += \
|
---|
[40976] | 93 | $(VBOX_IDL_FILE.MSCOM)
|
---|
| 94 |
|
---|
| 95 | INSTALLS += VBox-mscom-bindings-include VBox-mscom-bindings-lib
|
---|
| 96 | VBox-mscom-bindings-include_INST = $(INST_SDK)bindings/mscom/include/
|
---|
| 97 | VBox-mscom-bindings-include_MODE = a+r,u+w
|
---|
| 98 | VBox-mscom-bindings-include_SOURCES = $(VBoxCOM_0_OUTDIR)/VirtualBox.h
|
---|
| 99 | VBox-mscom-bindings-include_CLEAN = $(VBoxCOM_0_OUTDIR)/VirtualBox.h
|
---|
| 100 | VBox-mscom-bindings-lib_INST = $(INST_SDK)bindings/mscom/lib/
|
---|
| 101 | VBox-mscom-bindings-lib_MODE = a+r,u+w
|
---|
| 102 | VBox-mscom-bindings-lib_SOURCES = $(VBoxCOM_0_OUTDIR)/VirtualBox_i.c \
|
---|
[35380] | 103 | $(VBoxCOM_0_OUTDIR)/VirtualBox.tlb
|
---|
[40976] | 104 | VBox-mscom-bindings-lib_CLEAN = $(VBoxCOM_0_OUTDIR)/VirtualBox_i.c \
|
---|
| 105 | $(VBoxCOM_0_OUTDIR)/VirtualBox.tlb
|
---|
[18681] | 106 |
|
---|
[11612] | 107 | BLDDIRS += $(VBOX_PATH_SDK)/bindings/mscom/idl
|
---|
[11830] | 108 | endif
|
---|
| 109 |
|
---|
[12244] | 110 | # The XPCOM specific stuff.
|
---|
[45034] | 111 | # if defined(VBOX_ONLY_SDK) || "$(KBUILD_TARGET)" != "win" -- does not build on Windows
|
---|
| 112 | if "$(KBUILD_TARGET)" != "win"
|
---|
[11912] | 113 | OTHERS += $(VBOX_IDL_FILE.XPCOM) $(VBOX_IDL_TYPELIB.XPCOM) $(VBOX_IDL_HEADER.XPCOM)
|
---|
[6752] | 114 | OTHER_CLEAN += \
|
---|
[41040] | 115 | $(VBOX_IDL_FILE.XPCOM) \
|
---|
| 116 | $(VBOX_IDL_HEADER.XPCOM) \
|
---|
| 117 | $(VBOX_IDL_TYPELIB.XPCOM)
|
---|
[1] | 118 |
|
---|
[50121] | 119 | INSTALLS += VBox-xpcom-bindings-lib
|
---|
| 120 | VBox-xpcom-bindings-lib_INST = $(INST_SDK)bindings/xpcom/lib/
|
---|
| 121 | VBox-xpcom-bindings-lib_MODE = a+r,u+w
|
---|
[50124] | 122 | VBox-xpcom-bindings-lib_SOURCES = $(VBoxCOM_0_OUTDIR)/VirtualBox_XPCOM_i.c=>VirtualBox_i.c
|
---|
| 123 | VBox-xpcom-bindings-lib_CLEAN = $(VBoxCOM_0_OUTDIR)/VirtualBox_XPCOM_i.c
|
---|
[50121] | 124 |
|
---|
[11912] | 125 | VBOX_MAIN_PREREQS += $(VBOX_IDL_TYPELIB.XPCOM) $(VBOX_IDL_HEADER.XPCOM)
|
---|
[14245] | 126 | BLDDIRS += \
|
---|
| 127 | $(VBOX_PATH_SDK)/bindings/xpcom/idl \
|
---|
| 128 | $(VBOX_PATH_SDK)/bindings/xpcom/include
|
---|
[66279] | 129 | # disable VBoxSDS for XPCOM
|
---|
| 130 | override VBOX_WITH_SDS =
|
---|
[10057] | 131 | endif # xpcom
|
---|
[1] | 132 |
|
---|
[16682] | 133 |
|
---|
[16676] | 134 | #
|
---|
| 135 | # Strip documentation from source XIDL so that we don't get a full
|
---|
[16682] | 136 | # recompile every time a comma in the documentation is changed.
|
---|
[16676] | 137 | #
|
---|
[66643] | 138 | $(call KB_FN_AUTO_CMD_DEPS,$(VBOX_XIDL_FILE).ts)
|
---|
[21138] | 139 | $(VBOX_XIDL_FILE).ts +| $(VBOX_XIDL_FILE): \
|
---|
[16677] | 140 | $(VBOX_XIDL_FILE_SRC) \
|
---|
| 141 | $(VBOX_PATH_MAIN_SRC)/idl/docstrip.xsl \
|
---|
| 142 | | $$(dir $$@)
|
---|
[66643] | 143 | $(call KB_FN_AUTO_CMD_DEPS_COMMANDS)
|
---|
| 144 | # $(CP) -fv $(VBOX_XIDL_FILE_SRC) $(VBOX_XIDL_FILE).ts
|
---|
| 145 | $(QUIET)$(VBOX_XSLTPROC) -o $(VBOX_XIDL_FILE).ts $(VBOX_PATH_MAIN_SRC)/idl/docstrip.xsl $(VBOX_XIDL_FILE_SRC)
|
---|
[32312] | 146 | $(QUIET)$(CP) --changed -fv $(VBOX_XIDL_FILE).ts $(VBOX_XIDL_FILE)
|
---|
[1] | 147 |
|
---|
[32231] | 148 | OTHER_CLEAN += $(VBOX_XIDL_FILE) $(VBOX_XIDL_FILE).ts
|
---|
[16682] | 149 |
|
---|
[1] | 150 | #
|
---|
| 151 | # The Main API documentation
|
---|
| 152 | #
|
---|
[12244] | 153 | VBOX_MAIN_DOC_DIR = $(VBOX_PATH_SDK)/docs
|
---|
| 154 | BLDDIRS += $(VBOX_MAIN_DOC_DIR)
|
---|
| 155 |
|
---|
[1] | 156 | $(PATH_TARGET)/docs.Main: \
|
---|
[10225] | 157 | $(VBOX_PATH_MAIN_SRC)/Doxyfile.Main \
|
---|
| 158 | $(VBOX_PATH_MAIN_SRC)/idl/doxygen.xsl \
|
---|
[16676] | 159 | $(VBOX_XIDL_FILE_SRC) \
|
---|
[12244] | 160 | | $(PATH_TARGET)/ \
|
---|
| 161 | $(VBOX_MAIN_DOC_DIR)/
|
---|
[32312] | 162 | $(call MSG_TOOL,xsltproc,doxygen input,$<,$@)
|
---|
| 163 | $(QUIET)$(RM) -f $(wildcard $(VBOX_MAIN_DOC_DIR)/html/*) $(PATH_TARGET)/docs.Main
|
---|
| 164 | $(QUIET)$(VBOX_XSLTPROC) -o $(PATH_TARGET)/VirtualBox.idl $(VBOX_PATH_MAIN_SRC)/idl/doxygen.xsl $(VBOX_XIDL_FILE_SRC)
|
---|
| 165 | $(QUIET)$(REDIRECT) -E 'DOCDIR=$(VBOX_MAIN_DOC_DIR)' -E 'PATH_TARGET=$(PATH_TARGET)' -E 'PATH_CHM=$(subst /,\,$(VBOX_MAIN_DOC_DIR)/VirtualBoxAPI.chm)' \
|
---|
[10225] | 166 | -- doxygen $(VBOX_PATH_MAIN_SRC)/Doxyfile.Main
|
---|
[18743] | 167 | $(QUIET)$(TEST) -s "$(PATH_TARGET)/Main.err" -- $(ECHO_EXT) ">>>>>>>>>>>>>>>>>>>> Main.err: >>>>>>>>>>>>>>>>>>>>>>>>"
|
---|
| 168 | $(QUIET)$(TEST) -s "$(PATH_TARGET)/Main.err" -- $(CAT) "$(PATH_TARGET)/Main.err"
|
---|
| 169 | $(QUIET)$(TEST) -s "$(PATH_TARGET)/Main.err" -- $(ECHO_EXT) "<<<<<<<<<<<<<<<<<<<< Main.err <<<<<<<<<<<<<<<<<<<<<<<<<"
|
---|
| 170 | $(QUIET)$(TEST) -s "$(PATH_TARGET)/Main.err" -- $(ECHO_EXT) "===> **************************************************"
|
---|
| 171 | $(QUIET)$(TEST) -s "$(PATH_TARGET)/Main.err" -- $(ECHO_EXT) "===> Please fix above doxygen errors/warnings listed in"
|
---|
| 172 | $(QUIET)$(TEST) -s "$(PATH_TARGET)/Main.err" -- $(ECHO_EXT) "===> $(PATH_TARGET)/Main.err"
|
---|
| 173 | $(QUIET)$(TEST) -s "$(PATH_TARGET)/Main.err" -- $(ECHO_EXT) "===> **************************************************"
|
---|
[12244] | 174 | -$(EXEC_X86_WIN32) $(VBOX_PATH_HTML_HELP_WORKSHOP)/hhc.exe $(subst /,\\,$(VBOX_MAIN_DOC_DIR)/html/index.hhp)
|
---|
[1] | 175 | $(APPEND) $(PATH_TARGET)/docs.Main
|
---|
[12780] | 176 | # aliases
|
---|
| 177 | docs.main docs.Main: $(PATH_TARGET)/docs.Main
|
---|
[51175] | 178 | if !defined(VBOX_ONLY_DOCS) && defined(VBOX_WITH_ALL_DOXYGEN_TARGETS)
|
---|
[12780] | 179 | docs: $(PATH_TARGET)/docs.Main
|
---|
[51175] | 180 | else
|
---|
| 181 | docs:
|
---|
[12780] | 182 | endif
|
---|
[1] | 183 |
|
---|
| 184 |
|
---|
[48459] | 185 | ifndef VBOX_ONLY_SDK
|
---|
[63340] | 186 | #
|
---|
| 187 | # Generate library with API class wrappers from the XIDL file.
|
---|
| 188 | #
|
---|
| 189 | LIBRARIES += VBoxAPIWrap
|
---|
| 190 | VBoxAPIWrap_TEMPLATE = VBoxMainLib
|
---|
[63966] | 191 | ifeq ($(KBUILD_TARGET),win)
|
---|
[63935] | 192 | VBoxAPIWrap_USES = vccprecomp
|
---|
| 193 | VBoxAPIWrap_PCH_HDR := $(PATH_SUB_CURRENT)/src-all/win/VBoxAPIWrap-precomp_vcc.h
|
---|
| 194 | endif
|
---|
[63340] | 195 | VBoxAPIWrap_SOURCES = \
|
---|
| 196 | $(VBoxAPIWrap_0_OUTDIR)/VBoxAPI.d \
|
---|
| 197 | $(VBOX_MAIN_APIWRAPPER_GEN_SRCS)
|
---|
| 198 | VBoxAPIWrap_INTERMEDIATES = $(VBOX_MAIN_APIWRAPPER_GEN_HDRS)
|
---|
| 199 | VBoxAPIWrap_DEFS.win.x86 += _WIN32_WINNT=0x0500
|
---|
| 200 | VBoxAPIWrap_DEFS.win.amd64 += _WIN32_WINNT=0x0510
|
---|
| 201 | VBoxAPIWrap_INCS += \
|
---|
| 202 | include
|
---|
| 203 | VBoxAPIWrap_CLEAN = \
|
---|
| 204 | $(wildcard $(VBoxAPIWrap_0_OUTDIR)/*.cpp) \
|
---|
| 205 | $(wildcard $(VBoxAPIWrap_0_OUTDIR)/*.h) \
|
---|
| 206 | $(VBoxAPIWrap_0_OUTDIR)/VBoxAPI.d.ts \
|
---|
| 207 | $(VBoxAPIWrap_0_OUTDIR)/VBoxAPI.d \
|
---|
| 208 | $(VBoxAPIWrap_0_OUTDIR)/apiwrappers-headers \
|
---|
| 209 | $(VBoxAPIWrap_0_OUTDIR)/apiwrappers-sources-even \
|
---|
| 210 | $(VBoxAPIWrap_0_OUTDIR)/apiwrappers-sources-odd
|
---|
[49803] | 211 |
|
---|
[63340] | 212 | # Two VBox variables used here and/or in the rules generating wrappers.
|
---|
| 213 | VBoxAPIWrap_VBOX_XSLT = \
|
---|
| 214 | $(VBOX_PATH_MAIN_SRC)/idl/apiwrap-server.xsl
|
---|
[49805] | 215 |
|
---|
[53865] | 216 |
|
---|
[63340] | 217 | # This include file (generated at the bottom of this file), defines
|
---|
| 218 | # VBOX_MAIN_APIWRAPPER_GEN_SRCS and VBOX_MAIN_APIWRAPPER_GEN_HDRS.
|
---|
| 219 | VBoxAPIWrap_VBOX_KMK_FILE = $(PATH_OUT)/vboxapiwrap.kmk
|
---|
| 220 | include $(VBoxAPIWrap_VBOX_KMK_FILE)
|
---|
[45518] | 221 |
|
---|
[63340] | 222 | ifdef VBOX_WITH_32_ON_64_MAIN_API
|
---|
| 223 | LIBRARIES += VBoxAPIWrap-x86
|
---|
| 224 | VBoxAPIWrap-x86_TEMPLATE = VBoxMainLib-x86
|
---|
| 225 | VBoxAPIWrap-x86_EXTENDS = VBoxAPIWrap
|
---|
| 226 | VBoxAPIWrap-x86_DTRACE_HDR_FLAGS = -32 # ugly, should be fixed in the tool in Config.kmk
|
---|
[63966] | 227 | ifeq ($(KBUILD_TARGET),win) ## @todo fix inheritance
|
---|
[63935] | 228 | VBoxAPIWrap-x86_USES = vccprecomp
|
---|
| 229 | VBoxAPIWrap-x86_PCH_HDR := $(PATH_SUB_CURRENT)/src-all/win/VBoxAPIWrap-precomp_vcc.h
|
---|
| 230 | endif
|
---|
[63340] | 231 | endif
|
---|
[45518] | 232 |
|
---|
[48459] | 233 | endif # !VBOX_ONLY_SDK
|
---|
| 234 |
|
---|
[45518] | 235 | #
|
---|
[12244] | 236 | # Some SDK bit.
|
---|
| 237 | #
|
---|
| 238 | INSTALLS += VBox-main-xidl
|
---|
| 239 | VBox-main-xidl_INST = $(INST_SDK)bindings/
|
---|
[38093] | 240 | VBox-main-xidl_MODE = a+r,u+w
|
---|
[16676] | 241 | VBox-main-xidl_SOURCES = $(VBOX_XIDL_FILE_SRC)
|
---|
[1] | 242 |
|
---|
[20149] | 243 | ifdef VBOX_WITH_PYTHON
|
---|
[66643] | 244 | INSTALLS += VBox-python-glue
|
---|
| 245 | VBox-python-glue_INST = $(INST_SDK)installer/vboxapi/
|
---|
| 246 | VBox-python-glue_MODE = a+r,u+w
|
---|
| 247 | VBox-python-glue_SOURCES = \
|
---|
| 248 | glue/vboxapi.py=>__init__.py \
|
---|
| 249 | $(VBox-python-glue_0_OUTDIR)/VirtualBox_constants.py
|
---|
| 250 | VBox-python-glue_CLEAN = \
|
---|
| 251 | $(VBox-python-glue_0_OUTDIR)/VirtualBox_constants.py
|
---|
| 252 | $(call KB_FN_DO_PASS0_ON_TARGET,VBox-python-glue)
|
---|
| 253 | $(call KB_FN_AUTO_CMD_DEPS,$(VBox-python-glue_0_OUTDIR)/VirtualBox_constants.py)
|
---|
| 254 | $(VBox-python-glue_0_OUTDIR)/VirtualBox_constants.py: \
|
---|
[38093] | 255 | $(VBOX_PATH_MAIN_SRC)/glue/constants-python.xsl \
|
---|
| 256 | $(VBOX_XIDL_FILE) \
|
---|
| 257 | | $$(dir $$@)
|
---|
[66643] | 258 | $(call KB_FN_AUTO_CMD_DEPS_COMMANDS)
|
---|
[21730] | 259 | $(call MSG_TOOL,xsltproc,Python constants,$<,$@)
|
---|
[66643] | 260 | $(QUIET)$(VBOX_XSLTPROC) -o $@ $(VBOX_PATH_MAIN_SRC)/glue/constants-python.xsl $(VBOX_XIDL_FILE)
|
---|
[20149] | 261 | endif # VBOX_WITH_PYTHON
|
---|
| 262 |
|
---|
[12244] | 263 | ifndef VBOX_ONLY_SDK # Note this goes on for *very* long
|
---|
| 264 |
|
---|
[1] | 265 | #
|
---|
[12244] | 266 | # Generate SchemaDefs.h and SchemaDefs.cpp from XML Schema
|
---|
| 267 | # These two files are used by both VBoxC and VBoxSVC.
|
---|
| 268 | #
|
---|
| 269 | BLDDIRS += $(PATH_TARGET)/Main
|
---|
| 270 |
|
---|
| 271 | testschemadefs: $(VBOX_XML_SCHEMADEFS_H) $(VBOX_XML_SCHEMADEFS_CPP)
|
---|
| 272 |
|
---|
| 273 |
|
---|
| 274 | #
|
---|
[66274] | 275 | # VBoxSDS executable
|
---|
| 276 | #
|
---|
| 277 | if defined(VBOX_WITH_SDS) && "$(KBUILD_TARGET)" == "win"
|
---|
[66643] | 278 | PROGRAMS += VBoxSDS
|
---|
| 279 | VBoxSDS_TEMPLATE = VBOXMAINEXE
|
---|
| 280 | VBoxSDS_DEFS = \
|
---|
| 281 | VBoxSDS_DEFS.win += VBOX_COM_OUTOFPROC_MODULE
|
---|
| 282 | VBoxSDS_DEFS.win += _WIN32_WINNT=0x0510
|
---|
| 283 | VBoxSDS_INCS = \
|
---|
| 284 | include \
|
---|
| 285 | $(VBoxSDS_0_OUTDIR) \
|
---|
| 286 | $(VBOX_MAIN_APIWRAPPER_INCS)
|
---|
| 287 | VBoxSDS_INCS.win = \
|
---|
| 288 | $(VBoxCOM_0_OUTDIR)
|
---|
| 289 | VBoxSDS_LIBS += \
|
---|
| 290 | $(PATH_STAGE_LIB)/VBoxAPIWrap$(VBOX_SUFF_LIB)
|
---|
| 291 | VBoxSDS_INTERMEDIATES = \
|
---|
| 292 | $(VBOX_MAIN_PREREQS) \
|
---|
| 293 | $(VBOX_MAIN_APIWRAPPER_GEN_HDRS)
|
---|
| 294 | VBoxSDS_SOURCES = \
|
---|
| 295 | src-all/Global.cpp \
|
---|
| 296 | src-all/AutoCaller.cpp \
|
---|
| 297 | src-all/VirtualBoxBase.cpp \
|
---|
| 298 | src-all/VirtualBoxErrorInfoImpl.cpp \
|
---|
| 299 | src-global/VirtualBoxSDSImpl.cpp
|
---|
| 300 | VBoxSDS_SOURCES.win = \
|
---|
| 301 | src-global/win/VBoxSDS.cpp \
|
---|
| 302 | src-global/win/VBoxSDS.rc
|
---|
| 303 | $(call KB_FN_DO_PASS0_ON_TARGET,VBoxSDS) # Sets VBoxSDS_0_OUTDIR
|
---|
[66274] | 304 |
|
---|
[66643] | 305 | src-global/win/VBoxSDS.rc_INCS = $(VBoxSDS_0_OUTDIR)
|
---|
| 306 | src-global/win/VBoxSDS.rc_DEPS = $(VBoxSDS_0_OUTDIR)/VBoxSDS-icon.rc #$(VBoxSDS_0_OUTDIR)/VBoxSDS.rgs
|
---|
| 307 | src-global/win/VBoxSDS.rc_CLEAN = $(VBoxSDS_0_OUTDIR)/VBoxSDS-icon.rc #$(VBoxSDS_0_OUTDIR)/VBoxSDS.rgs
|
---|
[66274] | 308 |
|
---|
[66643] | 309 | $(call KB_FN_AUTO_CMD_DEPS,$(VBoxSDS_0_OUTDIR)/VBoxSDS-icon.rc)
|
---|
| 310 | $(VBoxSDS_0_OUTDIR)/VBoxSDS-icon.rc: $(VBOX_WINDOWS_ICON_FILE) | $$(dir $$@)
|
---|
| 311 | $(call KB_FN_AUTO_CMD_DEPS_COMMANDS)
|
---|
[66274] | 312 | $(APPEND) -t $@ '1 ICON DISCARDABLE "$(subst /,\\,$(VBOX_WINDOWS_ICON_FILE))"'
|
---|
| 313 |
|
---|
[66643] | 314 | # $(call KB_FN_AUTO_CMD_DEPS,$(VBoxSDS_0_OUTDIR)/VBoxSDS.rgs)
|
---|
| 315 | # $(VBoxSDS_0_OUTDIR)/VBoxSDS.rgs: $(VBOX_PATH_MAIN_SRC)/src-all/win/VirtualBox_rgs.xsl $(VBOX_XIDL_FILE) | $$(dir $$@)
|
---|
| 316 | # $(call KB_FN_AUTO_CMD_DEPS_COMMANDS)
|
---|
| 317 | # $(VBOX_XSLTPROC) \
|
---|
| 318 | # --stringparam Application "VirtualBox System" \
|
---|
| 319 | # --stringparam Module VBoxSDS \
|
---|
| 320 | # -o $@ \
|
---|
| 321 | # $(VBOX_PATH_MAIN_SRC)/src-all/win/VirtualBox_rgs.xsl \
|
---|
| 322 | # $(VBOX_XIDL_FILE)
|
---|
| 323 | #
|
---|
[66274] | 324 | endif #if defined(VBOX_WITH_SDS) && "$(KBUILD_TARGET)" == "win"
|
---|
| 325 |
|
---|
| 326 | #
|
---|
[1471] | 327 | # VBoxSVC executable
|
---|
[1] | 328 | #
|
---|
[12244] | 329 | PROGRAMS += VBoxSVC
|
---|
[1] | 330 | VBoxSVC_TEMPLATE = VBOXMAINEXE
|
---|
[63935] | 331 | if defined(VBOX_WITH_PRECOMPILED_HEADERS) && "$(KBUILD_TARGET)" == "win"
|
---|
| 332 | VBoxSVC_USES += vccprecomp
|
---|
| 333 | VBoxSVC_PCH_HDR := $(PATH_SUB_CURRENT)/src-server/win/precomp_vcc.h
|
---|
| 334 | endif
|
---|
[11820] | 335 | VBoxSVC_DEFS = \
|
---|
| 336 | VBOX_MAIN_SETTINGS_ADDONS \
|
---|
[24577] | 337 | IN_VMM_STATIC \
|
---|
[11820] | 338 | $(VBOX_MAIN_DEFS) \
|
---|
[18785] | 339 | $(if $(VBOX_WITH_VBOXSDL),VBOX_WITH_VBOXSDL,) \
|
---|
[11820] | 340 | $(if $(VBOX_WITH_HEADLESS),VBOX_WITH_HEADLESS,) \
|
---|
[16174] | 341 | $(if $(VBOX_WITH_QTGUI),VBOX_WITH_QTGUI,) \
|
---|
[11820] | 342 | $(if $(VBOX_WITH_HGCM),VBOX_WITH_HGCM,) \
|
---|
[62585] | 343 | $(if $(VBOX_WITH_AUDIO_OSS),VBOX_WITH_AUDIO_OSS,) \
|
---|
| 344 | $(if $(VBOX_WITH_AUDIO_ALSA),VBOX_WITH_AUDIO_ALSA,) \
|
---|
| 345 | $(if $(VBOX_WITH_AUDIO_PULSE),VBOX_WITH_AUDIO_PULSE,) \
|
---|
[62580] | 346 | $(if $(VBOX_WITH_AUDIO_DEBUG),VBOX_WITH_AUDIO_DEBUG,) \
|
---|
[64511] | 347 | $(if $(VBOX_WITH_AUDIO_VALIDATIONKIT),VBOX_WITH_AUDIO_VALIDATIONKIT,) \
|
---|
[65163] | 348 | $(if $(VBOX_WITH_AUDIO_VIDEOREC),VBOX_WITH_AUDIO_VIDEOREC,) \
|
---|
[65264] | 349 | $(if $(VBOX_WITH_VIDEOREC),VBOX_WITH_VIDEOREC,) \
|
---|
| 350 | $(if $(VBOX_WITH_VRDE_AUDIO),VBOX_WITH_VRDE_AUDIO,) \
|
---|
[11820] | 351 | $(if $(VBOX_WITH_E1000),VBOX_WITH_E1000,) \
|
---|
[22866] | 352 | $(if $(VBOX_WITH_VIRTIO),VBOX_WITH_VIRTIO,) \
|
---|
[11820] | 353 | $(if $(VBOX_WITH_AHCI),VBOX_WITH_AHCI,) \
|
---|
[20211] | 354 | $(if $(VBOX_WITH_LSILOGIC),VBOX_WITH_LSILOGIC,) \
|
---|
[18866] | 355 | $(if $(VBOX_WITH_LINUX_COMPILER_H),VBOX_WITH_LINUX_COMPILER_H,) \
|
---|
[12028] | 356 | $(if $(VBOX_WITH_RESOURCE_USAGE_API),VBOX_WITH_RESOURCE_USAGE_API,) \
|
---|
[65049] | 357 | $(if $(VBOX_WITH_UNATTENDED),VBOX_WITH_UNATTENDED,) \
|
---|
[14711] | 358 | $(if $(VBOX_WITH_PDM_ASYNC_COMPLETION),VBOX_WITH_PDM_ASYNC_COMPLETION,) \
|
---|
[55664] | 359 | $(if $(VBOX_WITH_DBUS),VBOX_WITH_DBUS,) \
|
---|
[28781] | 360 | $(if $(VBOX_WITH_DBUS),$(if $(VBOX_USB_WITH_DBUS),VBOX_USB_WITH_DBUS,),) \
|
---|
[22784] | 361 | $(if $(VBOX_USB_WITH_SYSFS),VBOX_USB_WITH_SYSFS,) \
|
---|
[28882] | 362 | $(if $(VBOX_USB_WITH_INOTIFY),VBOX_USB_WITH_INOTIFY,) \
|
---|
[26951] | 363 | $(if $(VBOX_WITH_LIVE_MIGRATION),VBOX_WITH_LIVE_MIGRATION,) \
|
---|
[33474] | 364 | $(if $(VBOX_WITH_EXTPACK),VBOX_WITH_EXTPACK,) \
|
---|
[35284] | 365 | $(if $(VBOX_WITH_VUSB),VBOX_WITH_VUSB,) \
|
---|
[45138] | 366 | $(if $(VBOX_WITH_PCI_PASSTHROUGH),VBOX_WITH_PCI_PASSTHROUGH,) \
|
---|
[50313] | 367 | $(if $(VBOX_WITH_NAT_SERVICE),VBOX_WITH_NAT_SERVICE,) \
|
---|
[50560] | 368 | $(if $(VBOX_WITH_CROGL),VBOX_WITH_CROGL,) \
|
---|
[50313] | 369 | $(if $(VBOX_WITH_CRHGSMI),VBOX_WITH_CRHGSMI,)
|
---|
[1] | 370 | ifdef VBOX_WITH_USB
|
---|
[12244] | 371 | VBoxSVC_DEFS += \
|
---|
[33474] | 372 | VBOX_WITH_USB \
|
---|
[29770] | 373 | $(if $(VBOX_WITH_EHCI),VBOX_WITH_EHCI,) \
|
---|
[31911] | 374 | $(if $(VBOX_WITH_NEW_USB_CODE_ON_DARWIN),VBOX_WITH_NEW_USB_CODE_ON_DARWIN,)
|
---|
[5620] | 375 | endif
|
---|
[1] | 376 | VBoxSVC_DEFS.win += VBOX_COM_OUTOFPROC_MODULE
|
---|
[58885] | 377 | VBoxSVC_DEFS.win += _WIN32_WINNT=0x0510
|
---|
[14713] | 378 | # Try to load and use libhal at runtime for probing removable media
|
---|
[14714] | 379 | # VBoxSVC_DEFS.linux += VBOX_USE_LIBHAL
|
---|
[14713] | 380 | VBoxSVC_DEFS.solaris += VBOX_USE_LIBHAL
|
---|
[3934] | 381 |
|
---|
[63434] | 382 | if $(KBUILD_TARGET) != "win" && $(VBOX_GCC_VERSION_CXX) >= 40900 # gcc 4.9.x (4.8.x is causing endless RT_ELEMENT trouble)
|
---|
[62363] | 383 | VBoxSVC_CXXFLAGS = -Wunused -Wconversion
|
---|
[62349] | 384 | endif
|
---|
[19062] | 385 |
|
---|
[1] | 386 | VBoxSVC_INCS = \
|
---|
| 387 | include \
|
---|
[35380] | 388 | $(VBoxSVC_0_OUTDIR) \
|
---|
[12244] | 389 | $(dir $(VBOX_XML_SCHEMADEFS_H)) \
|
---|
[49797] | 390 | $(VBOX_MAIN_APIWRAPPER_INCS) \
|
---|
[65381] | 391 | . \
|
---|
| 392 | $(VBOX_GRAPHICS_INCS)
|
---|
[6076] | 393 | VBoxSVC_INCS.win = \
|
---|
[35380] | 394 | $(VBoxCOM_0_OUTDIR)
|
---|
[5652] | 395 | ifdef VBOX_WITH_USB
|
---|
| 396 | VBoxSVC_INCS.os2 = \
|
---|
| 397 | $(PATH_ROOT)/src/VBox/HostDrivers/VBoxUSB/os2
|
---|
| 398 | endif
|
---|
| 399 |
|
---|
[6361] | 400 | VBoxSVC_LIBS += \
|
---|
[45518] | 401 | $(PATH_STAGE_LIB)/VBoxAPIWrap$(VBOX_SUFF_LIB) \
|
---|
[38082] | 402 | $(PATH_STAGE_LIB)/SSMStandalone$(VBOX_SUFF_LIB) \
|
---|
[22185] | 403 | $(LIB_DDU)
|
---|
[50832] | 404 |
|
---|
[63969] | 405 | VBoxSVC_SDKS = VBOX_LIBPNG VBOX_ZLIB
|
---|
[5209] | 406 | VBoxSVC_LIBS.solaris = \
|
---|
[17769] | 407 | adm \
|
---|
[29162] | 408 | nsl \
|
---|
[31337] | 409 | devinfo \
|
---|
[34963] | 410 | socket \
|
---|
[41040] | 411 | $(LIB_VMM)
|
---|
| 412 |
|
---|
[53242] | 413 | VBoxSVC_LIBS.win += \
|
---|
| 414 | $(PATH_SDK_$(VBOX_WINPSDK)_LIB)/dnsapi.lib
|
---|
| 415 |
|
---|
[12244] | 416 | VBoxSVC_INTERMEDIATES = \
|
---|
| 417 | $(VBOX_MAIN_PREREQS) \
|
---|
[34393] | 418 | $(VBOX_XML_SCHEMADEFS_H) \
|
---|
[49803] | 419 | $(VBOX_AUTOGEN_EVENT_H) \
|
---|
| 420 | $(VBOX_MAIN_APIWRAPPER_GEN_HDRS)
|
---|
[10057] | 421 |
|
---|
[1] | 422 | VBoxSVC_SOURCES = \
|
---|
[53870] | 423 | $(VBoxAPIWrap_0_OUTDIR)/VBoxAPI.d \
|
---|
[58383] | 424 | src-all/AuthLibrary.cpp \
|
---|
[35368] | 425 | src-all/DisplayPNGUtil.cpp \
|
---|
| 426 | src-all/DisplayResampleImage.cpp \
|
---|
| 427 | src-all/DisplayUtils.cpp \
|
---|
| 428 | src-all/EventImpl.cpp \
|
---|
| 429 | src-all/Global.cpp \
|
---|
[40066] | 430 | src-all/HashedPw.cpp \
|
---|
[35368] | 431 | src-all/Logging.cpp \
|
---|
[42551] | 432 | src-all/PCIDeviceAttachmentImpl.cpp \
|
---|
[35368] | 433 | src-all/ProgressImpl.cpp \
|
---|
[52546] | 434 | src-all/QMTranslatorImpl.cpp \
|
---|
[55182] | 435 | src-all/SecretKeyStore.cpp \
|
---|
[35368] | 436 | src-all/SharedFolderImpl.cpp \
|
---|
[51903] | 437 | src-all/AutoCaller.cpp \
|
---|
[63933] | 438 | src-all/ThreadTask.cpp \
|
---|
[35368] | 439 | src-all/VirtualBoxBase.cpp \
|
---|
| 440 | src-all/VirtualBoxErrorInfoImpl.cpp \
|
---|
| 441 | $(if $(VBOX_WITH_EXTPACK),src-all/ExtPackManagerImpl.cpp src-all/ExtPackUtil.cpp,) \
|
---|
[60219] | 442 | src-server/CertificateImpl.cpp \
|
---|
[35368] | 443 | src-server/ApplianceImpl.cpp \
|
---|
| 444 | src-server/ApplianceImplExport.cpp \
|
---|
| 445 | src-server/ApplianceImplImport.cpp \
|
---|
| 446 | src-server/AudioAdapterImpl.cpp \
|
---|
| 447 | src-server/BandwidthControlImpl.cpp \
|
---|
| 448 | src-server/BandwidthGroupImpl.cpp \
|
---|
| 449 | src-server/BIOSSettingsImpl.cpp \
|
---|
[47561] | 450 | src-server/ClientWatcher.cpp \
|
---|
| 451 | src-server/ClientToken.cpp \
|
---|
[35368] | 452 | src-server/DHCPServerImpl.cpp \
|
---|
[47018] | 453 | src-server/NetworkServiceRunner.cpp \
|
---|
[45138] | 454 | src-server/NATNetworkImpl.cpp \
|
---|
[35368] | 455 | src-server/GuestOSTypeImpl.cpp \
|
---|
[48335] | 456 | src-server/HostDnsService.cpp \
|
---|
[35368] | 457 | src-server/HostImpl.cpp \
|
---|
| 458 | src-server/HostNetworkInterfaceImpl.cpp \
|
---|
| 459 | src-server/HostPower.cpp \
|
---|
[48607] | 460 | src-server/HostVideoInputDeviceImpl.cpp \
|
---|
[35368] | 461 | src-server/MachineImpl.cpp \
|
---|
[37491] | 462 | src-server/MachineImplCloneVM.cpp \
|
---|
[35368] | 463 | src-server/Matching.cpp \
|
---|
| 464 | src-server/MediumAttachmentImpl.cpp \
|
---|
| 465 | src-server/MediumFormatImpl.cpp \
|
---|
| 466 | src-server/MediumImpl.cpp \
|
---|
| 467 | src-server/MediumLock.cpp \
|
---|
| 468 | src-server/NATEngineImpl.cpp \
|
---|
| 469 | src-server/NetworkAdapterImpl.cpp \
|
---|
| 470 | src-server/ParallelPortImpl.cpp \
|
---|
| 471 | src-server/ProgressProxyImpl.cpp \
|
---|
| 472 | src-server/SerialPortImpl.cpp \
|
---|
| 473 | src-server/SnapshotImpl.cpp \
|
---|
| 474 | src-server/StorageControllerImpl.cpp \
|
---|
| 475 | src-server/SystemPropertiesImpl.cpp \
|
---|
[48297] | 476 | src-server/TokenImpl.cpp \
|
---|
[66703] | 477 | $(if $(VBOX_WITH_UNATTENDED), \
|
---|
[66704] | 478 | src-server/UnattendedImpl.cpp \
|
---|
[66703] | 479 | src-server/UnattendedInstaller.cpp \
|
---|
| 480 | src-server/UnattendedScript.cpp \
|
---|
| 481 | src-server/UnattendedHelper.cpp \
|
---|
| 482 | ,) \
|
---|
[35368] | 483 | src-server/USBControllerImpl.cpp \
|
---|
[47376] | 484 | src-server/USBDeviceFiltersImpl.cpp \
|
---|
[35368] | 485 | src-server/VFSExplorerImpl.cpp \
|
---|
| 486 | src-server/VirtualBoxImpl.cpp \
|
---|
| 487 | src-server/VRDEServerImpl.cpp \
|
---|
[41999] | 488 | src-server/generic/AutostartDb-generic.cpp \
|
---|
[35368] | 489 | xml/ovfreader.cpp \
|
---|
[22213] | 490 | xml/Settings.cpp \
|
---|
[35368] | 491 | $(VBOX_XML_SCHEMADEFS_CPP) \
|
---|
[30476] | 492 | $(VBOX_AUTOGEN_EVENT_CPP) \
|
---|
[35368] | 493 | $(if $(VBOX_WITH_XPCOM),src-server/xpcom/server.cpp,)
|
---|
[1] | 494 |
|
---|
[67254] | 495 | src-server/ApplianceImplExport.cpp_DEFS = VBOX_SVN_REV=$(VBOX_SVN_REV)
|
---|
| 496 |
|
---|
[50460] | 497 | ifn1of ($(KBUILD_TARGET), win darwin)
|
---|
[50263] | 498 | VBoxSVC_SOURCES += $(PATH_ROOT)/src/VBox/Devices/Network/slirp/resolv_conf_parser.c
|
---|
[60963] | 499 | # $(PATH_ROOT)/src/VBox/Devices/Network/slirp/resolv_conf_parser.c_DEFS += LOG_GROUP=LOG_GROUP_MAIN
|
---|
[50263] | 500 | endif
|
---|
| 501 |
|
---|
[1906] | 502 | VBoxSVC_SOURCES.darwin = \
|
---|
[35368] | 503 | src-server/darwin/iokit.cpp \
|
---|
[48331] | 504 | src-server/darwin/HostPowerDarwin.cpp \
|
---|
| 505 | src-server/darwin/HostDnsServiceDarwin.cpp
|
---|
[1906] | 506 |
|
---|
[1] | 507 | VBoxSVC_SOURCES.win = \
|
---|
[35368] | 508 | src-server/win/svcmain.cpp \
|
---|
| 509 | src-server/win/svchlp.cpp \
|
---|
| 510 | src-server/win/HostPowerWin.cpp \
|
---|
| 511 | src-server/win/VBoxSVC.rc \
|
---|
[48331] | 512 | src-server/win/HostDnsServiceWin.cpp
|
---|
[1] | 513 |
|
---|
[16225] | 514 | VBoxSVC_SOURCES.linux = \
|
---|
[48331] | 515 | src-server/linux/HostHardwareLinux.cpp \
|
---|
[49202] | 516 | src-server/linux/HostDnsServiceLinux.cpp \
|
---|
[55615] | 517 | $(if $(VBOX_WITH_DBUS),src-server/linux/HostPowerLinux.cpp) \
|
---|
[48331] | 518 | src-server/HostDnsServiceResolvConf.cpp
|
---|
[16225] | 519 |
|
---|
[5186] | 520 | VBoxSVC_SOURCES.solaris = \
|
---|
[35368] | 521 | src-server/linux/vbox-libhal.cpp \
|
---|
[48331] | 522 | src-server/solaris/DynLoadLibSolaris.cpp \
|
---|
| 523 | src-server/HostDnsServiceResolvConf.cpp
|
---|
[5186] | 524 |
|
---|
[48331] | 525 | VBoxSVC_SOURCES.os2 = \
|
---|
| 526 | src-server/HostDnsServiceResolvConf.cpp
|
---|
| 527 |
|
---|
[19968] | 528 | VBoxSVC_SOURCES.freebsd = \
|
---|
[55095] | 529 | src-server/freebsd/HostHardwareFreeBSD.cpp \
|
---|
| 530 | src-server/HostDnsServiceResolvConf.cpp
|
---|
[19968] | 531 |
|
---|
[37666] | 532 |
|
---|
[1] | 533 | ifdef VBOX_WITH_USB
|
---|
[23104] | 534 | ifdef VBOX_WITH_SYSFS_BY_DEFAULT
|
---|
[59117] | 535 | src-server/linux/USBProxyBackendLinux.cpp_DEFS += VBOX_WITH_SYSFS_BY_DEFAULT
|
---|
[23102] | 536 | endif
|
---|
[12244] | 537 | VBoxSVC_SOURCES += \
|
---|
[35368] | 538 | src-server/USBDeviceFilterImpl.cpp \
|
---|
| 539 | src-server/USBProxyService.cpp \
|
---|
[59117] | 540 | src-server/USBProxyBackend.cpp \
|
---|
| 541 | src-server/generic/USBProxyBackendUsbIp.cpp \
|
---|
[56824] | 542 | src-server/HostUSBDeviceImpl.cpp
|
---|
[59117] | 543 | VBoxSVC_SOURCES.darwin += src-server/darwin/USBProxyBackendDarwin.cpp
|
---|
| 544 | VBoxSVC_SOURCES.linux += src-server/linux/USBProxyBackendLinux.cpp
|
---|
[35368] | 545 | VBoxSVC_SOURCES.linux += src-server/linux/USBGetDevices.cpp
|
---|
[59117] | 546 | VBoxSVC_SOURCES.os2 += src-server/os2/USBProxyBackendOs2.cpp
|
---|
| 547 | VBoxSVC_SOURCES.solaris += src-server/solaris/USBProxyBackendSolaris.cpp
|
---|
| 548 | VBoxSVC_SOURCES.win += src-server/win/USBProxyBackendWindows.cpp
|
---|
| 549 | VBoxSVC_SOURCES.freebsd += src-server/freebsd/USBProxyBackendFreeBSD.cpp
|
---|
[1] | 550 | endif
|
---|
| 551 |
|
---|
[13720] | 552 | ifdef VBOX_WITH_NETFLT
|
---|
[17208] | 553 | VBoxSVC_LIBS.win += \
|
---|
[40965] | 554 | $(PATH_STAGE_LIB)/WinNetConfig$(VBOX_SUFF_LIB) \
|
---|
| 555 | $(PATH_STAGE_LIB)/VBoxDrvCfg$(VBOX_SUFF_LIB) \
|
---|
[53492] | 556 | $(PATH_SDK_$(VBOX_WINDDK)_LIB)/newdev.lib \
|
---|
[17208] | 557 | $(PATH_TOOL_$(VBOX_VCC_TOOL)_LIB)/comsupp.lib \
|
---|
[42154] | 558 | $(PATH_SDK_$(VBOX_WINPSDK)_LIB)/WbemUuid.Lib
|
---|
[13720] | 559 | endif
|
---|
[12244] | 560 | VBoxSVC_LDFLAGS.darwin = -framework IOKit -framework SystemConfiguration
|
---|
[20160] | 561 |
|
---|
| 562 | ifdef VBOX_WITH_CROGL
|
---|
[40965] | 563 | VBoxSVC_LIBS += $(PATH_STAGE_LIB)/VBoxOGLTest$(VBOX_SUFF_LIB)
|
---|
[20160] | 564 | VBoxSVC_LDFLAGS.darwin += -framework OpenGL
|
---|
| 565 | endif
|
---|
| 566 |
|
---|
[11778] | 567 | ifeq ($(KBUILD_TYPE),debug)
|
---|
[12244] | 568 | VBoxSVC_LDFLAGS.linux += -rdynamic # for backtrace_symbols()
|
---|
[11778] | 569 | endif
|
---|
| 570 |
|
---|
[10544] | 571 | ifdef VBOX_WITH_RESOURCE_USAGE_API
|
---|
[12244] | 572 | VBoxSVC_SOURCES += \
|
---|
[35368] | 573 | src-server/PerformanceImpl.cpp \
|
---|
| 574 | src-server/Performance.cpp
|
---|
| 575 | VBoxSVC_SOURCES.darwin += src-server/darwin/PerformanceDarwin.cpp
|
---|
| 576 | VBoxSVC_SOURCES.freebsd += src-server/freebsd/PerformanceFreeBSD.cpp
|
---|
| 577 | VBoxSVC_SOURCES.linux += src-server/linux/PerformanceLinux.cpp
|
---|
| 578 | VBoxSVC_SOURCES.os2 += src-server/os2/PerformanceOs2.cpp
|
---|
| 579 | VBoxSVC_SOURCES.solaris += src-server/solaris/PerformanceSolaris.cpp
|
---|
| 580 | VBoxSVC_SOURCES.win += src-server/win/PerformanceWin.cpp
|
---|
[12244] | 581 | VBoxSVC_LDFLAGS.darwin += -lproc
|
---|
[43831] | 582 | VBoxSVC_LDFLAGS.solaris += -lkstat -lnvpair
|
---|
[12513] | 583 | VBoxSVC_LDFLAGS.win += psapi.lib powrprof.lib
|
---|
[10544] | 584 | endif
|
---|
| 585 |
|
---|
[15372] | 586 | ifdef VBOX_WITH_HOSTNETIF_API
|
---|
[35368] | 587 | VBoxSVC_SOURCES.win += src-server/win/NetIf-win.cpp
|
---|
| 588 | VBoxSVC_SOURCES.linux += src-server/linux/NetIf-linux.cpp
|
---|
| 589 | VBoxSVC_SOURCES.os2 += src-server/os2/NetIf-os2.cpp
|
---|
| 590 | VBoxSVC_SOURCES.darwin += src-server/darwin/NetIf-darwin.cpp
|
---|
| 591 | VBoxSVC_SOURCES.solaris += src-server/solaris/NetIf-solaris.cpp
|
---|
[35498] | 592 | VBoxSVC_SOURCES.freebsd += src-server/freebsd/NetIf-freebsd.cpp
|
---|
[15372] | 593 | VBoxSVC_DEFS += VBOX_WITH_HOSTNETIF_API
|
---|
[18924] | 594 | if1of ($(KBUILD_TARGET), linux darwin solaris freebsd)
|
---|
[35368] | 595 | VBoxSVC_SOURCES += src-server/generic/NetIf-generic.cpp
|
---|
[17443] | 596 | endif
|
---|
[15372] | 597 | endif
|
---|
| 598 |
|
---|
[66643] | 599 | $(call KB_FN_DO_PASS0_ON_TARGET,VBoxSVC) # Sets VBoxSVC_0_OUTDIR
|
---|
| 600 |
|
---|
[56959] | 601 | ifdef VBOX_WITH_MAIN_USB_ID_DATABASE # Generate a database of USB vendor IDs and device IDs.
|
---|
| 602 | VBoxSVC_DEFS += VBOX_WITH_MAIN_USB_ID_DATABASE
|
---|
| 603 | VBoxSVC_SOURCES += $(VBoxSVC_0_OUTDIR)/USBIdDatabase.cpp
|
---|
| 604 | VBoxSVC_CLEAN += $(VBoxSVC_0_OUTDIR)/USBIdDatabase.cpp
|
---|
| 605 |
|
---|
[66643] | 606 | $(call KB_FN_AUTO_CMD_DEPS,$(VBoxSVC_0_OUTDIR)/USBIdDatabase.cpp)
|
---|
| 607 | $(VBoxSVC_0_OUTDIR)/USBIdDatabase.cpp: $$(USBIdDatabaseGenerator_1_TARGET) \
|
---|
[56959] | 608 | $(PATH_SUB_CURRENT)/src-server/usb.ids $(PATH_SUB_CURRENT)/src-server/custom.ids | $$(dir $$@)
|
---|
[66643] | 609 | $(call KB_FN_AUTO_CMD_DEPS_COMMANDS)
|
---|
| 610 | $(call MSG_GENERATE,USBIdDatabase,$@,$(USBIdDatabaseGenerator_1_TARGET))
|
---|
[56959] | 611 | $(QUIET)$(USBIdDatabaseGenerator_1_TARGET) -o "$@" $(filter %.ids,$^)
|
---|
| 612 |
|
---|
| 613 | BLDPROGS += USBIdDatabaseGenerator
|
---|
| 614 | USBIdDatabaseGenerator_TEMPLATE = VBoxAdvBldProg
|
---|
| 615 | USBIdDatabaseGenerator_SOURCES = src-server/USBIdDatabaseGenerator.cpp
|
---|
[57034] | 616 | else
|
---|
[57358] | 617 | VBoxSVC_SOURCES += src-server/USBIdDatabaseStub.cpp
|
---|
[56959] | 618 | endif
|
---|
| 619 |
|
---|
[35380] | 620 | src-server/win/VBoxSVC.rc_INCS = $(VBoxSVC_0_OUTDIR)
|
---|
[59371] | 621 | src-server/win/VBoxSVC.rc_DEPS = $(VBoxSVC_0_OUTDIR)/VBoxSVC-icon.rc
|
---|
| 622 | src-server/win/VBoxSVC.rc_CLEAN = $(VBoxSVC_0_OUTDIR)/VBoxSVC-icon.rc
|
---|
[66643] | 623 | $(call KB_FN_AUTO_CMD_DEPS,$(VBoxSVC_0_OUTDIR)/VBoxSVC-icon.rc)
|
---|
| 624 | $(VBoxSVC_0_OUTDIR)/VBoxSVC-icon.rc: $(VBOX_WINDOWS_ICON_FILE) | $$(dir $$@)
|
---|
| 625 | $(call KB_FN_AUTO_CMD_DEPS_COMMANDS)
|
---|
[12244] | 626 | $(APPEND) -t $@ '1 ICON DISCARDABLE "$(subst /,\\,$(VBOX_WINDOWS_ICON_FILE))"'
|
---|
[4103] | 627 |
|
---|
[59371] | 628 | ifndef VBOX_WITH_MIDL_PROXY_STUB
|
---|
[66643] | 629 | src-server/win/VBoxSVC.rc_DEPS += $(VBoxSVC_0_OUTDIR)/VBoxSVC.rgs
|
---|
| 630 | src-server/win/VBoxSVC.rc_CLEAN += $(VBoxSVC_0_OUTDIR)/VBoxSVC.rgs
|
---|
| 631 | $(call KB_FN_AUTO_CMD_DEPS,$(VBoxSVC_0_OUTDIR)/VBoxSVC.rgs)
|
---|
| 632 | $(VBoxSVC_0_OUTDIR)/VBoxSVC.rgs: $(VBOX_PATH_MAIN_SRC)/src-all/win/VirtualBox_rgs.xsl $(VBOX_XIDL_FILE) | $$(dir $$@)
|
---|
| 633 | $(call KB_FN_AUTO_CMD_DEPS_COMMANDS)
|
---|
| 634 | $(VBOX_XSLTPROC) \
|
---|
| 635 | --stringparam Application VirtualBox \
|
---|
| 636 | --stringparam Module VBoxSVC \
|
---|
| 637 | -o $@ \
|
---|
| 638 | $(VBOX_PATH_MAIN_SRC)/src-all/win/VirtualBox_rgs.xsl \
|
---|
| 639 | $(VBOX_XIDL_FILE)
|
---|
[59371] | 640 | endif
|
---|
[8754] | 641 |
|
---|
[47649] | 642 | ## @todo r=klaus unfortunately we don't have xmllint everywhere, would be
|
---|
| 643 | # good to check the validity for every VirtualBox.xidl change.
|
---|
| 644 | #$(VBOX_XIDL_FILE).validated.ts: $(VBOX_XIDL_FILE_SRC)
|
---|
| 645 | # xmllint --dtdvalid $(VBOX_PATH_MAIN_SRC)/idl/VirtualBox.dtd --noout $<
|
---|
| 646 | # $(QUIET)$(CP) --changed -fv $< $(VBOX_XIDL_FILE).validated.ts
|
---|
| 647 | #
|
---|
| 648 | #OTHERS += $(VBOX_XIDL_FILE).validated.ts
|
---|
| 649 | #OTHER_CLEAN += $(VBOX_XIDL_FILE).validated.ts
|
---|
[33693] | 650 |
|
---|
[47649] | 651 | testvalidxidl: $(VBOX_XIDL_FILE_SRC)
|
---|
| 652 | xmllint --dtdvalid $(VBOX_PATH_MAIN_SRC)/idl/VirtualBox.dtd --noout $<
|
---|
| 653 |
|
---|
| 654 |
|
---|
[12244] | 655 | #
|
---|
[44948] | 656 | # Embed some constraints from XML Schema file into VBoxSVC
|
---|
[12244] | 657 | #
|
---|
[44948] | 658 | VBOX_XML_SCHEMA = $(VBOX_PATH_MAIN_SRC)/xml/VirtualBox-settings.xsd
|
---|
[12244] | 659 |
|
---|
[44948] | 660 | $(VBOX_XML_SCHEMADEFS_H): $(VBOX_XML_SCHEMADEFS_XSL) $(VBOX_XML_SCHEMA) | $$(dir $$@)
|
---|
[15073] | 661 | $(call MSG_GENERATE,SchemaDefs,$@,$<)
|
---|
[44948] | 662 | $(QUIET)$(VBOX_XSLTPROC) --stringparam mode declare -o $@ $(VBOX_XML_SCHEMADEFS_XSL) $(VBOX_XML_SCHEMA)
|
---|
[12244] | 663 |
|
---|
[44948] | 664 | $(VBOX_XML_SCHEMADEFS_CPP): $(VBOX_XML_SCHEMADEFS_XSL) $(VBOX_XML_SCHEMA) | $$(dir $$@)
|
---|
[15073] | 665 | $(call MSG_GENERATE,SchemaDefs,$@,$<)
|
---|
[44948] | 666 | $(QUIET)$(VBOX_XSLTPROC) --stringparam mode define -o $@ $(VBOX_XML_SCHEMADEFS_XSL) $(VBOX_XML_SCHEMA)
|
---|
[12244] | 667 |
|
---|
[44948] | 668 | testvalidsettings: $(VBOX_XML_SCHEMA)
|
---|
| 669 | xmllint --schema $< --noout $(HOME)/.VirtualBox/VirtualBox.xml
|
---|
| 670 | xmllint --schema $< --noout $(HOME)/.VirtualBox/Machines/*/*.xml
|
---|
| 671 | xmllint --schema $< --noout $(HOME)/.VirtualBox/Machines/*/*.vbox
|
---|
| 672 | xmllint --schema $< --noout $(HOME)/VirtualBox\ VMs/*/*.vbox
|
---|
| 673 |
|
---|
[32728] | 674 | OTHER_CLEAN += $(VBOX_XML_SCHEMADEFS_H) $(VBOX_XML_SCHEMADEFS_CPP)
|
---|
[15073] | 675 |
|
---|
| 676 |
|
---|
[33693] | 677 | #
|
---|
[66643] | 678 | # Generate some event stuff for VBoxSVC and VBoxC.
|
---|
[33693] | 679 | #
|
---|
[34393] | 680 | $(VBOX_AUTOGEN_EVENT_H): $(VBOX_PATH_MAIN_SRC)/idl/comimpl.xsl $(VBOX_XIDL_FILE) | $$(dir $$@)
|
---|
| 681 | $(call MSG_TOOL,xsltproc,autogen events,$<,$@)
|
---|
| 682 | $(QUIET)$(VBOX_XSLTPROC) --stringparam G_kind VBoxEventHeader -o $@ $< $(VBOX_XIDL_FILE)
|
---|
| 683 |
|
---|
[33693] | 684 | $(VBOX_AUTOGEN_EVENT_CPP): $(VBOX_PATH_MAIN_SRC)/idl/comimpl.xsl $(VBOX_XIDL_FILE) | $$(dir $$@)
|
---|
| 685 | $(call MSG_TOOL,xsltproc,autogen events,$<,$@)
|
---|
| 686 | $(QUIET)$(VBOX_XSLTPROC) --stringparam G_kind VBoxEvent -o $@ $< $(VBOX_XIDL_FILE)
|
---|
| 687 |
|
---|
[34393] | 688 | OTHER_CLEAN += $(VBOX_AUTOGEN_EVENT_H) $(VBOX_AUTOGEN_EVENT_CPP)
|
---|
[33693] | 689 |
|
---|
[11725] | 690 | ifdef VBOX_WITH_XPCOM
|
---|
[1] | 691 | #
|
---|
[12244] | 692 | # VBoxSVCM - VBoxSVC wrapper module
|
---|
[1] | 693 | #
|
---|
[12244] | 694 | DLLS += VBoxSVCM
|
---|
[11725] | 695 | VBoxSVCM_TEMPLATE = VBOXMAINCOMP
|
---|
[6752] | 696 | VBoxSVCM_DEFS = IN_RING3 $(VBOX_MAIN_DEFS)
|
---|
[21090] | 697 | ifdef VBOX_WITH_HARDENING
|
---|
| 698 | VBoxSVCM_DEFS += VBOX_WITH_HARDENING
|
---|
| 699 | endif
|
---|
[2484] | 700 | VBoxSVCM_INCS = \
|
---|
[1471] | 701 | include \
|
---|
[35380] | 702 | $(VBoxC_0_OUTDIR) \
|
---|
[10056] | 703 | .
|
---|
[10057] | 704 | VBoxSVCM_INTERMEDIATES = $(VBOX_MAIN_PREREQS)
|
---|
[2484] | 705 | VBoxSVCM_SOURCES = \
|
---|
[35368] | 706 | src-server/xpcom/server_module.cpp
|
---|
[2754] | 707 | VBoxSVCM_LDFLAGS.darwin = \
|
---|
[11725] | 708 | -install_name $(VBOX_DYLD_EXECUTABLE_PATH)/components/VBoxSVCM.dylib \
|
---|
[35380] | 709 | -exported_symbols_list $(VBoxSVCM_0_OUTDIR)/VBoxSVCM.def
|
---|
[12244] | 710 | ifeq ($(KBUILD_TARGET),darwin)
|
---|
[35380] | 711 | VBoxSVCM_ORDERDEPS += $(VBoxSVCM_0_OUTDIR)/VBoxSVCM.def
|
---|
| 712 | VBoxSVCM_CLEAN += $(VBoxSVCM_0_OUTDIR)/VBoxSVCM.def
|
---|
| 713 | $$(VBoxSVCM_0_OUTDIR)/VBoxSVCM.def:
|
---|
[2754] | 714 | $(RM) -f $@
|
---|
| 715 | $(APPEND) $@ _NSGetModule
|
---|
[12244] | 716 | endif
|
---|
[11912] | 717 | VBoxSVCM_INTERMEDIATES += $(VBOX_IDL_HEADER.XPCOM)
|
---|
[48282] | 718 |
|
---|
| 719 | # 32-bit version of the module.
|
---|
| 720 | ifdef VBOX_WITH_32_ON_64_MAIN_API
|
---|
| 721 | DLLS += VBoxSVCM-x86
|
---|
| 722 | VBoxSVCM-x86_TEMPLATE = VBoxMainComp-x86
|
---|
| 723 | VBoxSVCM-x86_EXTENDS = VBoxSVCM
|
---|
| 724 | endif
|
---|
| 725 |
|
---|
[1471] | 726 | endif # VBOX_WITH_XPCOM
|
---|
| 727 |
|
---|
[33693] | 728 |
|
---|
[1471] | 729 | #
|
---|
| 730 | # VBoxC module
|
---|
| 731 | #
|
---|
[12244] | 732 | DLLS += VBoxC
|
---|
[63935] | 733 | VBoxC_TEMPLATE = VBOXMAINCOMP
|
---|
| 734 | if defined(VBOX_WITH_PRECOMPILED_HEADERS) && "$(KBUILD_TARGET)" == "win"
|
---|
| 735 | VBoxC_USES = vccprecomp
|
---|
| 736 | VBoxC_PCH_HDR := $(PATH_SUB_CURRENT)/src-client/win/precomp_vcc.h
|
---|
| 737 | endif
|
---|
[11820] | 738 | VBoxC_DEFS = \
|
---|
| 739 | IN_RING3 \
|
---|
| 740 | $(VBOX_MAIN_DEFS) \
|
---|
| 741 | VBOX_COM_INPROC \
|
---|
| 742 | $(if $(VBOX_WITH_HGCM),VBOX_WITH_HGCM,) \
|
---|
[62585] | 743 | $(if $(VBOX_WITH_AUDIO_OSS),VBOX_WITH_AUDIO_OSS,) \
|
---|
| 744 | $(if $(VBOX_WITH_AUDIO_ALSA),VBOX_WITH_AUDIO_ALSA,) \
|
---|
| 745 | $(if $(VBOX_WITH_AUDIO_PULSE),VBOX_WITH_AUDIO_PULSE,) \
|
---|
[62589] | 746 | $(if $(VBOX_WITH_AUDIO_DEBUG),VBOX_WITH_AUDIO_DEBUG,) \
|
---|
[64511] | 747 | $(if $(VBOX_WITH_AUDIO_VALIDATIONKIT),VBOX_WITH_AUDIO_VALIDATIONKIT,) \
|
---|
[65163] | 748 | $(if $(VBOX_WITH_AUDIO_VIDEOREC),VBOX_WITH_AUDIO_VIDEOREC,) \
|
---|
[65264] | 749 | $(if $(VBOX_WITH_VIDEOREC),VBOX_WITH_VIDEOREC,) \
|
---|
[61922] | 750 | $(if $(VBOX_WITH_VRDE_AUDIO),VBOX_WITH_VRDE_AUDIO,) \
|
---|
[12474] | 751 | $(if $(VBOX_WITH_E1000),VBOX_WITH_E1000,) \
|
---|
[22866] | 752 | $(if $(VBOX_WITH_VIRTIO),VBOX_WITH_VIRTIO,) \
|
---|
[16648] | 753 | $(if $(VBOX_WITH_EFI),VBOX_WITH_EFI,) \
|
---|
[22784] | 754 | $(if $(VBOX_WITH_PDM_ASYNC_COMPLETION),VBOX_WITH_PDM_ASYNC_COMPLETION,) \
|
---|
[26951] | 755 | $(if $(VBOX_WITH_LIVE_MIGRATION),VBOX_WITH_LIVE_MIGRATION,) \
|
---|
[33474] | 756 | $(if $(VBOX_WITH_VUSB),VBOX_WITH_VUSB,) \
|
---|
| 757 | $(if $(VBOX_WITH_HGSMI),VBOX_WITH_HGSMI,) \
|
---|
| 758 | $(if $(VBOX_WITH_VIDEOHWACCEL),VBOX_WITH_VIDEOHWACCEL,) \
|
---|
[39450] | 759 | $(if $(VBOX_WITH_DRAG_AND_DROP),VBOX_WITH_DRAG_AND_DROP,) \
|
---|
[42261] | 760 | $(if $(VBOX_WITH_DRAG_AND_DROP_GH),VBOX_WITH_DRAG_AND_DROP_GH,) \
|
---|
[33474] | 761 | $(if $(VBOX_WITH_USB),VBOX_WITH_USB,) \
|
---|
| 762 | $(if-expr defined(VBOX_WITH_EHCI) && defined(VBOX_WITH_USB),VBOX_WITH_EHCI,) \
|
---|
[35685] | 763 | $(if $(VBOX_WITH_EXTPACK),VBOX_WITH_EXTPACK,) \
|
---|
[42838] | 764 | $(if $(VBOX_WITH_PCI_PASSTHROUGH),VBOX_WITH_PCI_PASSTHROUGH,) \
|
---|
[66274] | 765 | $(if $(VBOX_WITH_VRDEAUTH_IN_VBOXSVC),VBOX_WITH_VRDEAUTH_IN_VBOXSVC,) \
|
---|
[66279] | 766 | $(if $(VBOX_WITH_SDS),VBOX_WITH_SDS,)
|
---|
[48282] | 767 | ifdef VBOX_WITH_CRHGSMI
|
---|
| 768 | VBoxC_DEFS += VBOX_WITH_CRHGSMI
|
---|
| 769 | endif
|
---|
| 770 | ifdef VBOX_WITH_NETSHAPER
|
---|
| 771 | VBoxC_DEFS += VBOX_WITH_NETSHAPER
|
---|
| 772 | endif
|
---|
[16341] | 773 | VBoxC_DEFS.darwin.x86 = VBOX_WITH_2X_4GB_ADDR_SPACE
|
---|
[1169] | 774 | VBoxC_DEFS.win.x86 += _WIN32_WINNT=0x0500
|
---|
[1] | 775 | VBoxC_DEFS.win.amd64 += _WIN32_WINNT=0x0510
|
---|
[3186] | 776 |
|
---|
[63434] | 777 | if $(KBUILD_TARGET) != "win" && $(VBOX_GCC_VERSION_CXX) >= 40900 # gcc 4.9.x (4.8.x is causing endless RT_ELEMENT trouble)
|
---|
[62406] | 778 | # VBoxC_CXXFLAGS = -Wunused -Wconversion
|
---|
| 779 | endif
|
---|
| 780 |
|
---|
[45731] | 781 | VBoxC_SDKS = VBOX_LIBPNG VBOX_ZLIB
|
---|
[65263] | 782 |
|
---|
| 783 | ifdef VBOX_WITH_VIDEOREC
|
---|
| 784 | ifdef VBOX_WITH_LIBVPX
|
---|
| 785 | VBoxC_SDKS += VBOX_VPX
|
---|
| 786 | VBoxC_DEFS += VBOX_WITH_LIBVPX
|
---|
[65362] | 787 | VBoxC_SOURCES += \
|
---|
| 788 | src-client/VideoRec.cpp
|
---|
[65263] | 789 | else
|
---|
| 790 | $(error "VBox: No alternative for VPX when using video capturing support yet")
|
---|
| 791 | endif
|
---|
[42838] | 792 | endif
|
---|
[65263] | 793 |
|
---|
[65184] | 794 | ifdef VBOX_WITH_AUDIO_VIDEOREC
|
---|
| 795 | ifdef VBOX_WITH_LIBOPUS
|
---|
| 796 | VBoxC_SDKS += VBOX_OPUS
|
---|
[65263] | 797 | VBoxC_DEFS += VBOX_WITH_LIBOPUS
|
---|
[65184] | 798 | else
|
---|
| 799 | $(error "VBox: No alternative for Opus when using audio support for video capturing yet")
|
---|
| 800 | endif
|
---|
| 801 | endif
|
---|
[65263] | 802 |
|
---|
[51417] | 803 | ifdef VBOX_WITH_OPENSSL_FIPS
|
---|
| 804 | VBoxC_SDKS += VBOX_OPENSSL2
|
---|
| 805 | endif
|
---|
[42838] | 806 |
|
---|
[1] | 807 | VBoxC_INCS = \
|
---|
| 808 | include \
|
---|
[35380] | 809 | $(VBoxC_0_OUTDIR) \
|
---|
[49797] | 810 | $(VBOX_MAIN_APIWRAPPER_INCS) \
|
---|
[53867] | 811 | $(dir $(VBOX_XML_SCHEMADEFS_H)) \
|
---|
[65381] | 812 | $(VBOX_MAIN_APIWRAPPER_DIR)/dtrace \
|
---|
| 813 | $(VBOX_GRAPHICS_INCS)
|
---|
[6076] | 814 | VBoxC_INCS.win = \
|
---|
[35380] | 815 | $(VBoxCOM_0_OUTDIR) \
|
---|
[10056] | 816 | .
|
---|
[3186] | 817 |
|
---|
[2754] | 818 | VBoxC_LDFLAGS.darwin = \
|
---|
[11725] | 819 | -install_name $(VBOX_DYLD_EXECUTABLE_PATH)/components/VBoxC.dylib \
|
---|
[35380] | 820 | -exported_symbols_list $(VBoxC_0_OUTDIR)/VBoxC.def \
|
---|
[26331] | 821 | -framework IOKit
|
---|
[52242] | 822 | VBoxC_LDFLAGS.win += /MANIFEST \
|
---|
| 823 | /DELAYLOAD:user32.dll
|
---|
[3186] | 824 |
|
---|
[52242] | 825 |
|
---|
[606] | 826 | VBoxC_LIBS += \
|
---|
[48406] | 827 | $(PATH_STAGE_LIB)/VBoxAPIWrap$(VBOX_SUFF_LIB) \
|
---|
[46474] | 828 | $(if-expr "$(LIB_VMM)" == "$(VBOX_LIB_VMM_LAZY)",$(LIB_REM),) \
|
---|
| 829 | $(VBOX_LIB_VMM_LAZY)
|
---|
[52244] | 830 | VBoxC_LIBS.win += \
|
---|
[55314] | 831 | $(PATH_SDK_$(VBOX_WINPSDK)_LIB)/psapi.lib \
|
---|
[52244] | 832 | $(PATH_TOOL_$(VBOX_VCC_TOOL)_LIB)/delayimp.lib
|
---|
[14485] | 833 | ifdef VBOX_WITH_NETFLT
|
---|
[36495] | 834 | VBoxC_LIBS.win += \
|
---|
[41040] | 835 | $(PATH_STAGE_LIB)/VBoxDrvCfg$(VBOX_SUFF_LIB) \
|
---|
[53492] | 836 | $(PATH_SDK_$(VBOX_WINDDK)_LIB)/newdev.lib \
|
---|
[41040] | 837 | $(PATH_STAGE_LIB)/WinNetConfig$(VBOX_SUFF_LIB) \
|
---|
| 838 | $(PATH_TOOL_$(VBOX_VCC_TOOL)_LIB)/comsupp.lib \
|
---|
[52244] | 839 | $(PATH_SDK_$(VBOX_WINPSDK)_LIB)/WbemUuid.Lib
|
---|
[52242] | 840 | VBoxC_LDFLAGS.win += \
|
---|
| 841 | /DELAYLOAD:newdev.dll \
|
---|
| 842 | /DELAYLOAD:setupapi.dll \
|
---|
| 843 | /DELAYLOAD:iphlpapi.dll
|
---|
[14485] | 844 | endif
|
---|
| 845 |
|
---|
[40845] | 846 | ifdef VBOX_WITH_CROGL
|
---|
[40965] | 847 | VBoxC_LIBS += $(PATH_STAGE_LIB)/VBoxOGLTest$(VBOX_SUFF_LIB)
|
---|
[40846] | 848 | VBoxC_LDFLAGS.darwin += -framework OpenGL
|
---|
[40845] | 849 | endif
|
---|
| 850 |
|
---|
[50460] | 851 | ifdef VBOX_WITH_DRAG_AND_DROP
|
---|
| 852 | VBoxC_LIBS += $(PATH_STAGE_LIB)/VBoxDnDHostR3Lib$(VBOX_SUFF_LIB)
|
---|
| 853 | endif
|
---|
| 854 |
|
---|
[48282] | 855 | VBoxC_INTERMEDIATES = \
|
---|
| 856 | $(VBOX_MAIN_PREREQS) \
|
---|
[34393] | 857 | $(VBOX_XML_SCHEMADEFS_H) \
|
---|
[49803] | 858 | $(VBOX_AUTOGEN_EVENT_H) \
|
---|
| 859 | $(VBOX_MAIN_APIWRAPPER_GEN_HDRS)
|
---|
[10057] | 860 |
|
---|
[65364] | 861 | VBoxC_SOURCES += \
|
---|
[53870] | 862 | $(VBoxAPIWrap_0_OUTDIR)/VBoxAPI.d \
|
---|
[35368] | 863 | src-all/DisplayPNGUtil.cpp \
|
---|
| 864 | src-all/DisplayResampleImage.cpp \
|
---|
| 865 | src-all/DisplayUtils.cpp \
|
---|
| 866 | src-all/EventImpl.cpp \
|
---|
| 867 | src-all/Global.cpp \
|
---|
[40066] | 868 | src-all/HashedPw.cpp \
|
---|
[35368] | 869 | src-all/Logging.cpp \
|
---|
[42551] | 870 | src-all/PCIDeviceAttachmentImpl.cpp \
|
---|
[35368] | 871 | src-all/ProgressImpl.cpp \
|
---|
[55182] | 872 | src-all/SecretKeyStore.cpp \
|
---|
[35368] | 873 | src-all/SharedFolderImpl.cpp \
|
---|
[51903] | 874 | src-all/AutoCaller.cpp \
|
---|
[58003] | 875 | src-all/ThreadTask.cpp \
|
---|
[35368] | 876 | src-all/VirtualBoxBase.cpp \
|
---|
| 877 | src-all/VirtualBoxErrorInfoImpl.cpp \
|
---|
| 878 | $(if $(VBOX_WITH_EXTPACK),src-all/ExtPackManagerImpl.cpp src-all/ExtPackUtil.cpp,) \
|
---|
[48406] | 879 | src-client/UsbWebcamInterface.cpp \
|
---|
[41352] | 880 | $(if $(VBOX_WITH_USB_CARDREADER),src-client/UsbCardReader.cpp,) \
|
---|
[43131] | 881 | src-client/Nvram.cpp \
|
---|
[35967] | 882 | src-client/AdditionsFacilityImpl.cpp \
|
---|
[35368] | 883 | src-client/BusAssignmentManager.cpp \
|
---|
[42551] | 884 | $(if $(VBOX_WITH_PCI_PASSTHROUGH),src-client/PCIRawDevImpl.cpp,) \
|
---|
[47561] | 885 | src-client/ClientTokenHolder.cpp \
|
---|
[35368] | 886 | src-client/ConsoleImpl.cpp \
|
---|
| 887 | src-client/ConsoleImpl2.cpp \
|
---|
| 888 | src-client/ConsoleImplTeleporter.cpp \
|
---|
| 889 | src-client/ConsoleVRDPServer.cpp \
|
---|
| 890 | src-client/DisplayImpl.cpp \
|
---|
[52769] | 891 | src-client/DisplayImplLegacy.cpp \
|
---|
[51436] | 892 | src-client/DisplaySourceBitmapImpl.cpp \
|
---|
[65263] | 893 | src-client/EbmlWriter.cpp \
|
---|
[48406] | 894 | src-client/EmulatedUSBImpl.cpp \
|
---|
[38235] | 895 | src-client/GuestImpl.cpp \
|
---|
[35368] | 896 | src-client/GuestCtrlImpl.cpp \
|
---|
| 897 | src-client/KeyboardImpl.cpp \
|
---|
| 898 | src-client/MachineDebuggerImpl.cpp \
|
---|
| 899 | src-client/MouseImpl.cpp \
|
---|
| 900 | src-client/RemoteUSBDeviceImpl.cpp \
|
---|
| 901 | src-client/SessionImpl.cpp \
|
---|
| 902 | src-client/USBDeviceImpl.cpp \
|
---|
| 903 | src-client/VBoxDriversRegister.cpp \
|
---|
| 904 | src-client/VirtualBoxClientImpl.cpp \
|
---|
| 905 | src-client/VMMDevInterface.cpp \
|
---|
[30476] | 906 | $(VBOX_AUTOGEN_EVENT_CPP) \
|
---|
[61413] | 907 | $(VBOX_XML_SCHEMADEFS_CPP)
|
---|
[56085] | 908 |
|
---|
[61413] | 909 | # Audio bits.
|
---|
| 910 | VBoxC_SOURCES += \
|
---|
[62577] | 911 | ../Devices/Audio/AudioMixBuffer.cpp \
|
---|
| 912 | ../Devices/Audio/DrvAudioCommon.cpp \
|
---|
[65162] | 913 | $(if $(VBOX_WITH_VRDE_AUDIO),src-client/DrvAudioVRDE.cpp,) \
|
---|
| 914 | $(if $(VBOX_WITH_AUDIO_VIDEOREC),src-client/DrvAudioVideoRec.cpp,)
|
---|
[61413] | 915 |
|
---|
[1] | 916 | VBoxC_SOURCES.win = \
|
---|
[35368] | 917 | src-client/win/dllmain.cpp \
|
---|
| 918 | src-client/win/VBoxC.def \
|
---|
| 919 | src-client/win/VBoxC.rc
|
---|
[38235] | 920 | ifdef VBOX_WITH_GUEST_CONTROL
|
---|
[48282] | 921 | VBoxC_SOURCES += \
|
---|
[42810] | 922 | src-client/GuestSessionImplTasks.cpp \
|
---|
[55644] | 923 | src-client/GuestCtrlPrivate.cpp \
|
---|
| 924 | src-client/GuestDirectoryImpl.cpp \
|
---|
| 925 | src-client/GuestFileImpl.cpp \
|
---|
| 926 | src-client/GuestFsObjInfoImpl.cpp \
|
---|
| 927 | src-client/GuestProcessImpl.cpp \
|
---|
| 928 | src-client/GuestSessionImpl.cpp
|
---|
[38235] | 929 | endif
|
---|
[39450] | 930 | ifdef VBOX_WITH_DRAG_AND_DROP
|
---|
[48282] | 931 | VBoxC_SOURCES += \
|
---|
[51476] | 932 | src-client/GuestDnDPrivate.cpp \
|
---|
| 933 | src-client/GuestDnDSourceImpl.cpp \
|
---|
| 934 | src-client/GuestDnDTargetImpl.cpp
|
---|
[39450] | 935 | endif
|
---|
[606] | 936 | ifdef VBOX_WITH_XPCOM
|
---|
[48282] | 937 | VBoxC_SOURCES += \
|
---|
[35368] | 938 | src-client/xpcom/module.cpp
|
---|
[606] | 939 | endif
|
---|
[1] | 940 | ifdef VBOX_WITH_HGCM
|
---|
[48282] | 941 | VBoxC_SOURCES += \
|
---|
[35368] | 942 | src-client/HGCMObjects.cpp \
|
---|
| 943 | src-client/HGCMThread.cpp \
|
---|
| 944 | src-client/HGCM.cpp
|
---|
[1] | 945 | endif
|
---|
| 946 | ifdef VBOX_WITH_USB
|
---|
[48282] | 947 | VBoxC_SOURCES += \
|
---|
[35368] | 948 | src-client/RemoteUSBBackend.cpp
|
---|
[1] | 949 | endif
|
---|
[58383] | 950 | ifndef VBOX_WITH_VRDEAUTH_IN_VBOXSVC
|
---|
| 951 | VBoxC_SOURCES += \
|
---|
| 952 | src-all/AuthLibrary.cpp
|
---|
| 953 | endif
|
---|
[42838] | 954 |
|
---|
[66643] | 955 | $(call KB_FN_DO_PASS0_ON_TARGET,VBoxC) # Sets VBoxC_0_OUTDIR
|
---|
| 956 |
|
---|
[8758] | 957 | ifeq ($(KBUILD_TARGET),darwin)
|
---|
[66643] | 958 | VBoxC_ORDERDEPS += $(VBoxC_0_OUTDIR)/VBoxC.def
|
---|
| 959 | VBoxC_CLEAN += $(VBoxC_0_OUTDIR)/VBoxC.def
|
---|
| 960 | $(call KB_FN_AUTO_CMD_DEPS,$(VBoxC_0_OUTDIR)/VBoxC.def)
|
---|
| 961 | $(VBoxC_0_OUTDIR)/VBoxC.def:
|
---|
| 962 | $(call KB_FN_AUTO_CMD_DEPS_COMMANDS)
|
---|
[2754] | 963 | $(RM) -f $@
|
---|
| 964 | $(APPEND) $@ _NSGetModule
|
---|
| 965 | $(APPEND) $@ _VBoxDriversRegister
|
---|
| 966 | endif
|
---|
[1] | 967 |
|
---|
[35368] | 968 | src-client/ConsoleImpl.cpp_DEFS = \
|
---|
[51417] | 969 | $(if $(VBOX_WITH_OPENSSL_FIPS), VBOX_OPENSSL_FIPS,)
|
---|
[5146] | 970 |
|
---|
[12780] | 971 |
|
---|
[35380] | 972 | src-client/win/VBoxC.rc_DEPS = $(VBoxC_0_OUTDIR)/VBoxC.rgs $(VBoxCOM_0_OUTDIR)/VirtualBox.tlb
|
---|
[66643] | 973 | VBoxC_CLEAN.win += $(VBoxC_0_OUTDIR)/VBoxC.rgs
|
---|
| 974 | $(call KB_FN_AUTO_CMD_DEPS,$(VBoxC_0_OUTDIR)/VBoxC.rgs)
|
---|
| 975 | $(VBoxC_0_OUTDIR)/VBoxC.rgs: $(VBOX_PATH_MAIN_SRC)/src-all/win/VirtualBox_rgs.xsl $(VBOX_XIDL_FILE) | $$(dir $$@)
|
---|
| 976 | $(call KB_FN_AUTO_CMD_DEPS_COMMANDS)
|
---|
| 977 | $(VBOX_XSLTPROC) \
|
---|
| 978 | --stringparam Application VirtualBox \
|
---|
| 979 | --stringparam Module VBoxC \
|
---|
| 980 | -o $@ \
|
---|
| 981 | $(VBOX_PATH_MAIN_SRC)/src-all/win/VirtualBox_rgs.xsl \
|
---|
| 982 | $(VBOX_XIDL_FILE)
|
---|
[4103] | 983 |
|
---|
[48282] | 984 | ifdef VBOX_WITH_32_ON_64_MAIN_API
|
---|
| 985 | #
|
---|
| 986 | # 32-bit VBox API Client In-Process module.
|
---|
| 987 | #
|
---|
[48323] | 988 | # This is currently just a 32-bit version of VBoxC. It might be desirable to
|
---|
| 989 | # split up VBoxC into a simple client and a VM client part later, in which
|
---|
| 990 | # case this module will be a simple client.
|
---|
| 991 | #
|
---|
| 992 | # Note! One important thing is that the typelib for this DLL must be build
|
---|
| 993 | # with the /env win32 switch and the VBoxC typelib with /env amd64, if
|
---|
| 994 | # not they will overwrite each others typelib module entry.
|
---|
| 995 | #
|
---|
[48282] | 996 | DLLS += VBoxClient-x86
|
---|
| 997 | VBoxClient-x86_TEMPLATE = VBoxMainComp-x86
|
---|
| 998 | VBoxClient-x86_EXTENDS = VBoxC
|
---|
[63935] | 999 | if defined(VBOX_WITH_PRECOMPILED_HEADERS) && "$(KBUILD_TARGET)" == "win" ## @todo fix inheritance
|
---|
| 1000 | VBoxClient-x86_USES = vccprecomp
|
---|
| 1001 | VBoxClient-x86_PCH_HDR := $(PATH_SUB_CURRENT)/src-client/win/precomp_vcc.h
|
---|
| 1002 | endif
|
---|
[48282] | 1003 | VBoxClient-x86_DEFS = VBOX_COM_INPROC_API_CLIENT $(VBoxC_DEFS)
|
---|
[48323] | 1004 | VBoxClient-x86_INCS.win = \
|
---|
| 1005 | $(VBoxClient-x86_0_OUTDIR) \
|
---|
| 1006 | $(VBoxCOM-x86_0_OUTDIR) \
|
---|
| 1007 | $(VBoxC_INCS.win)
|
---|
[48282] | 1008 | VBoxClient-x86_SOURCES = \
|
---|
| 1009 | src-all/EventImpl.cpp \
|
---|
| 1010 | src-all/Global.cpp \
|
---|
[51903] | 1011 | src-all/AutoCaller.cpp \
|
---|
[59326] | 1012 | src-all/ThreadTask.cpp \
|
---|
[48282] | 1013 | src-all/VirtualBoxBase.cpp \
|
---|
| 1014 | src-all/VirtualBoxErrorInfoImpl.cpp \
|
---|
| 1015 | src-client/ClientTokenHolder.cpp \
|
---|
| 1016 | src-client/SessionImpl.cpp \
|
---|
| 1017 | src-client/VirtualBoxClientImpl.cpp \
|
---|
| 1018 | $(VBOX_AUTOGEN_EVENT_CPP) \
|
---|
| 1019 | $(VBOX_XML_SCHEMADEFS_CPP)
|
---|
| 1020 | VBoxClient-x86_SOURCES.win = \
|
---|
| 1021 | src-client/win/dllmain.cpp \
|
---|
[48323] | 1022 | src-client/win/VBoxClient-x86.def \
|
---|
| 1023 | src-client/win/VBoxClient-x86.rc
|
---|
[48282] | 1024 | ifdef VBOX_WITH_XPCOM
|
---|
| 1025 | VBoxClient-x86_SOURCES += \
|
---|
| 1026 | src-client/xpcom/module.cpp
|
---|
| 1027 | endif
|
---|
[52232] | 1028 | VBoxClient-x86_LIBS = \
|
---|
| 1029 | $(PATH_STAGE_LIB)/VBoxAPIWrap-x86$(VBOX_SUFF_LIB)
|
---|
[48323] | 1030 | VBoxClient-x86_LIBS.win = $(NO_SUCH_VARIABLE)
|
---|
[66411] | 1031 | VBoxClient-x86_LIBS.win.x86 += \
|
---|
| 1032 | $(PATH_TOOL_$(VBOX_VCC_TOOL_STEM)X86_LIB)/delayimp.lib \
|
---|
| 1033 | $(PATH_SDK_$(VBOX_WINPSDK)_LIB.x86)/WbemUuid.Lib
|
---|
[49802] | 1034 | VBoxClient-x86_CLEAN.win += $(VBoxClient-x86_0_OUTDIR)/VBoxClient-x86.rgs
|
---|
[66643] | 1035 | $(call KB_FN_DO_PASS0_ON_TARGET,VBoxClient-x86) # Sets VBoxClient-x86_0_OUTDIR
|
---|
| 1036 |
|
---|
[48323] | 1037 | src-client/win/VBoxClient-x86.rc_DEPS = \
|
---|
| 1038 | $(VBoxClient-x86_0_OUTDIR)/VBoxClient-x86.rgs \
|
---|
| 1039 | $(VBoxCOM-x86_0_OUTDIR)/VirtualBox-x86.tlb
|
---|
| 1040 |
|
---|
[66643] | 1041 | $(call KB_FN_AUTO_CMD_DEPS,$(VBoxClient-x86_0_OUTDIR)/VBoxClient-x86.rgs)
|
---|
| 1042 | $(VBoxClient-x86_0_OUTDIR)/VBoxClient-x86.rgs: \
|
---|
[48323] | 1043 | $(VBOX_PATH_MAIN_SRC)/src-all/win/VirtualBox_rgs.xsl \
|
---|
| 1044 | $(VBOX_XIDL_FILE) | $$(dir $$@)
|
---|
[66643] | 1045 | $(call KB_FN_AUTO_CMD_DEPS_COMMANDS)
|
---|
| 1046 | $(VBOX_XSLTPROC) \
|
---|
| 1047 | --stringparam Application VirtualBox \
|
---|
| 1048 | --stringparam Module VBoxC \
|
---|
| 1049 | -o $@ \
|
---|
| 1050 | $(VBOX_PATH_MAIN_SRC)/src-all/win/VirtualBox_rgs.xsl \
|
---|
| 1051 | $(VBOX_XIDL_FILE)
|
---|
[48282] | 1052 | endif
|
---|
[12244] | 1053 |
|
---|
[48282] | 1054 |
|
---|
[1] | 1055 | #
|
---|
| 1056 | # VBoxCOM - COM Abstraction Layer library
|
---|
| 1057 | #
|
---|
[12244] | 1058 | LIBRARIES += VBoxCOM
|
---|
[48282] | 1059 | VBoxCOM_TEMPLATE = VBoxMainLib
|
---|
[50874] | 1060 | VBoxCOM_INTERMEDIATES = $(VBOX_MAIN_PREREQS) \
|
---|
| 1061 | $(VBOX_MAIN_APIWRAPPER_GEN_HDRS)
|
---|
[3188] | 1062 | VBoxCOM_SOURCES = \
|
---|
[1] | 1063 | glue/com.cpp \
|
---|
[2754] | 1064 | glue/initterm.cpp \
|
---|
[1] | 1065 | glue/string.cpp \
|
---|
[25813] | 1066 | glue/AutoLock.cpp \
|
---|
[1] | 1067 | glue/EventQueue.cpp \
|
---|
[46649] | 1068 | glue/NativeEventQueue.cpp \
|
---|
[13580] | 1069 | glue/ErrorInfo.cpp \
|
---|
[50124] | 1070 | glue/errorprint.cpp
|
---|
[50874] | 1071 | VBoxCOM_INCS += $(VBOX_MAIN_APIWRAPPER_INCS) \
|
---|
[22705] | 1072 | include
|
---|
[8758] | 1073 | ifeq ($(KBUILD_TARGET),win)
|
---|
[59367] | 1074 | ifdef VBOX_WITH_MIDL_PROXY_STUB
|
---|
| 1075 | VBoxCOM_DEFS.win = VBOX_WITH_AUTO_COM_REG_UPDATE
|
---|
| 1076 | endif
|
---|
[48323] | 1077 | VBoxCOM_DEFS.x86 = _WIN32_WINNT=0x0500
|
---|
| 1078 | VBoxCOM_DEFS.amd64 = _WIN32_WINNT=0x0510
|
---|
[50124] | 1079 | VBoxCOM_SOURCES += \
|
---|
| 1080 | $(VBoxCOM_0_OUTDIR)/VirtualBox_i.c
|
---|
[59385] | 1081 | VBoxCOM_CLEAN = \
|
---|
| 1082 | $(VBoxCOM_0_OUTDIR)/VirtualBox_i.c \
|
---|
| 1083 | $(VBoxCOM_0_OUTDIR)/VirtualBox_p.c \
|
---|
| 1084 | $(VBoxCOM_0_OUTDIR)/dlldata.c \
|
---|
| 1085 | $(VBoxCOM_0_OUTDIR)/VirtualBox.h \
|
---|
| 1086 | $(VBoxCOM_0_OUTDIR)/VirtualBox.tlb
|
---|
[59418] | 1087 | VBoxCOM_CLEAN += \
|
---|
| 1088 | $(VBoxCOM_0_OUTDIR)/legacy/VirtualBox_i.c \
|
---|
| 1089 | $(VBoxCOM_0_OUTDIR)/legacy/VirtualBox_p.c \
|
---|
| 1090 | $(VBoxCOM_0_OUTDIR)/legacy/dlldata.c \
|
---|
| 1091 | $(VBoxCOM_0_OUTDIR)/legacy/VirtualBox.h \
|
---|
| 1092 | $(VBoxCOM_0_OUTDIR)/legacy/VirtualBox.tlb
|
---|
| 1093 | VBoxCOM_BLDDIRS = $(VBoxCOM_0_OUTDIR)/legacy/
|
---|
[12244] | 1094 | else # !win
|
---|
[3188] | 1095 | VBoxCOM_SOURCES += \
|
---|
[50124] | 1096 | $(VBoxCOM_0_OUTDIR)/VirtualBox_XPCOM_i.c \
|
---|
[35368] | 1097 | glue/xpcom/helpers.cpp
|
---|
[12244] | 1098 | endif # !win
|
---|
[1] | 1099 |
|
---|
[41040] | 1100 | glue/com.cpp_DEFS = \
|
---|
[48654] | 1101 | KBUILD_TYPE=\"$(KBUILD_TYPE)\"
|
---|
[1] | 1102 |
|
---|
[48282] | 1103 | # 32-bit version of VBoxCOM.
|
---|
| 1104 | ifdef VBOX_WITH_32_ON_64_MAIN_API
|
---|
| 1105 | LIBRARIES += VBoxCOM-x86
|
---|
| 1106 | VBoxCOM-x86_TEMPLATE = VBoxMainLib-x86
|
---|
| 1107 | VBoxCOM-x86_EXTENDS = VBoxCOM
|
---|
[59385] | 1108 | ifeq ($(KBUILD_TARGET),win)
|
---|
| 1109 | VBoxCOM-x86_CLEAN = \
|
---|
| 1110 | $(VBoxCOM-x86_0_OUTDIR)/VirtualBox_i.c \
|
---|
| 1111 | $(VBoxCOM-x86_0_OUTDIR)/VirtualBox_p.c \
|
---|
| 1112 | $(VBoxCOM-x86_0_OUTDIR)/dlldata.c \
|
---|
| 1113 | $(VBoxCOM-x86_0_OUTDIR)/VirtualBox.h \
|
---|
| 1114 | $(VBoxCOM-x86_0_OUTDIR)/VirtualBox.tlb
|
---|
| 1115 | endif
|
---|
[48282] | 1116 | endif
|
---|
[41040] | 1117 |
|
---|
[58233] | 1118 | # -MD version for the GUI in -MDd builds.
|
---|
| 1119 | ifeq ($(KBUILD_TARGET).$(VBOX_VCC_CRT_TYPE),win.d)
|
---|
| 1120 | LIBRARIES += VBoxCOM-GUI
|
---|
[67067] | 1121 | USES += qt5
|
---|
[59473] | 1122 | VBoxCOM-GUI_TEMPLATE = VBOXQTGUI$(if-expr defined(VBOX_WITH_HARDENING),,EXE)
|
---|
[58233] | 1123 | VBoxCOM-GUI_EXTENDS = VBoxCOM
|
---|
| 1124 | endif
|
---|
[48282] | 1125 |
|
---|
| 1126 |
|
---|
[58233] | 1127 |
|
---|
[1] | 1128 | #
|
---|
[33623] | 1129 | # The VBoxExtPackHelperApp.
|
---|
| 1130 | #
|
---|
[34293] | 1131 | ifdef VBOX_WITH_EXTPACK
|
---|
[33623] | 1132 | PROGRAMS += VBoxExtPackHelperApp
|
---|
[33806] | 1133 | VBoxExtPackHelperApp_TEMPLATE = VBoxR3SetUidToRoot
|
---|
[34723] | 1134 | VBoxExtPackHelperApp_LDFLAGS.darwin = -framework Security
|
---|
[34713] | 1135 | VBoxExtPackHelperApp_LDFLAGS.win = /SUBSYSTEM:windows
|
---|
[33806] | 1136 | VBoxExtPackHelperApp_SOURCES = \
|
---|
[35368] | 1137 | src-helper-apps/VBoxExtPackHelperApp.cpp \
|
---|
| 1138 | src-all/ExtPackUtil.cpp
|
---|
[53844] | 1139 | VBoxExtPackHelperApp_SOURCES.win = \
|
---|
| 1140 | src-helper-apps/VBoxExtPackHelperApp.rc
|
---|
[33623] | 1141 | VBoxExtPackHelperApp_LIBS = \
|
---|
[41040] | 1142 | $(LIB_RUNTIME)
|
---|
[33623] | 1143 | endif # VBOX_WITH_EXTPACK
|
---|
| 1144 |
|
---|
[48669] | 1145 | #
|
---|
| 1146 | # VolInfo
|
---|
| 1147 | #
|
---|
| 1148 | ifdef VBOX_WITH_DEVMAPPER
|
---|
| 1149 | PROGRAMS.linux += VBoxVolInfo
|
---|
| 1150 | VBoxVolInfo_TEMPLATE = VBoxR3SetUidToRoot
|
---|
| 1151 | VBoxVolInfo_SOURCES = src-helper-apps/VBoxVolInfo.cpp
|
---|
| 1152 | VBoxVolInfo_LIBS = devmapper
|
---|
| 1153 | endif
|
---|
[34296] | 1154 |
|
---|
| 1155 | endif # !VBOX_ONLY_SDK (the ifndef is far above)
|
---|
| 1156 |
|
---|
| 1157 |
|
---|
[33623] | 1158 | #
|
---|
[10242] | 1159 | # Installs com related thing(s) to bin.
|
---|
| 1160 | #
|
---|
[12244] | 1161 | INSTALLS.win += VBoxMain-com-inst
|
---|
[10242] | 1162 | VBoxMain-com-inst_INST = $(INST_BIN)
|
---|
[38093] | 1163 | VBoxMain-com-inst_MODE = a+r,u+w
|
---|
[35376] | 1164 | VBoxMain-com-inst_SOURCES = src-all/win/comregister.cmd
|
---|
[10242] | 1165 |
|
---|
| 1166 |
|
---|
[18883] | 1167 | if defined(VBOX_WITH_HARDENING) && "$(KBUILD_TARGET)" == "linux"
|
---|
| 1168 | #
|
---|
| 1169 | # Installs linux/hardening related things to components.
|
---|
| 1170 | #
|
---|
| 1171 | INSTALLS.linux += VBoxMain-hardening-inst
|
---|
| 1172 | VBoxMain-hardening-inst_INST = $(INST_BIN)components/
|
---|
| 1173 | VBoxMain-hardening-inst_SYMLINKS = \
|
---|
[29770] | 1174 | VBoxDDU.so=>../VBoxDDU.so \
|
---|
| 1175 | VBoxREM.so=>../VBoxREM.so \
|
---|
| 1176 | VBoxRT.so=>../VBoxRT.so \
|
---|
| 1177 | VBoxVMM.so=>../VBoxVMM.so \
|
---|
| 1178 | VBoxXPCOM.so=>../VBoxXPCOM.so
|
---|
[18883] | 1179 | endif
|
---|
| 1180 |
|
---|
| 1181 |
|
---|
[49908] | 1182 | if defined(VBOX_WITH_MIDL_PROXY_STUB) && "$(KBUILD_TARGET)" == "win"
|
---|
| 1183 | #
|
---|
[59385] | 1184 | # Experimental COM proxy + stub DLL w/ automatic registration updating.
|
---|
[49908] | 1185 | #
|
---|
[59385] | 1186 | # The Legacy stub is for older 64-bit windows versions (pre Windows 7) as we
|
---|
| 1187 | # were having various problems on windows server 2003 and 2008 with the code
|
---|
| 1188 | # MIDL generated. Also, in windows 7 there are some potentially interesting
|
---|
| 1189 | # changes in the generated code where it uses new helpers from OLE32.
|
---|
| 1190 | #
|
---|
[49908] | 1191 | DLLS += VBoxProxyStub
|
---|
| 1192 | VBoxProxyStub_TEMPLATE = VBOXMAINCOMP
|
---|
[66274] | 1193 | VBoxProxyStub_DEFS = REGISTER_PROXY_DLL PROXY_CLSID_IS="$(VBOX_MIDL_PROXY_CLSID_IS)" \
|
---|
[66279] | 1194 | $(if $(VBOX_WITH_SDS),VBOX_WITH_SDS,)
|
---|
[49911] | 1195 | VBoxProxyStub_DEFS.win.x86 = WIN32
|
---|
[59367] | 1196 | VBoxProxyStub_SDKS = VBOX_NTDLL
|
---|
[59418] | 1197 | VBoxProxyStub_DEFPATH = $(VBoxCOM_0_OUTDIR)/# Hack to workaround drive letter in $(VBoxCOM_0_OUTDIR)/ for CFLAGS hack below.
|
---|
[59327] | 1198 | VBoxProxyStub_INCS = $(VBoxCOM_0_OUTDIR)/
|
---|
[59418] | 1199 | VBoxProxyStub_SOURCES := \
|
---|
| 1200 | VirtualBox_p.c \
|
---|
| 1201 | VirtualBox_i.c \
|
---|
| 1202 | $(PATH_SUB_CURRENT)/src-all/win/VBoxProxyStub.def \
|
---|
| 1203 | $(PATH_SUB_CURRENT)/src-all/win/VBoxProxyStub.rc \
|
---|
| 1204 | $(PATH_SUB_CURRENT)/src-all/win/VBoxProxyStub.c
|
---|
| 1205 | src-all/win/VBoxProxyStub.rc_DEPS = $(VBoxCOM_0_OUTDIR)/VirtualBox.tlb
|
---|
| 1206 | VBoxProxyStub_VirtualBox_p.c_CFLAGS.x86 = /Gz # Workaround for incorrect ObjectStublessClient* prototypes in SDK v7.1.
|
---|
| 1207 |
|
---|
| 1208 | DLLS += VBoxProxyStubLegacy
|
---|
| 1209 | VBoxProxyStubLegacy_TEMPLATE = VBOXMAINCOMP
|
---|
| 1210 | VBoxProxyStubLegacy_EXTENDS = VBoxProxyStub
|
---|
| 1211 | VBoxProxyStubLegacy_DEFS = $(VBoxProxyStub_DEFS) VBOX_IN_PROXY_STUB_LEGACY
|
---|
| 1212 | VBoxProxyStubLegacy_INCS = $(VBoxCOM_0_OUTDIR)/legacy/
|
---|
| 1213 | VBoxProxyStubLegacy_SOURCES = \
|
---|
| 1214 | $(VBoxCOM_0_OUTDIR)/legacy/VirtualBox_p.c \
|
---|
| 1215 | $(VBoxCOM_0_OUTDIR)/legacy/VirtualBox_i.c \
|
---|
[59327] | 1216 | src-all/win/VBoxProxyStub.def \
|
---|
[59418] | 1217 | src-all/win/VBoxProxyStubLegacy.rc \
|
---|
[59363] | 1218 | src-all/win/VBoxProxyStub.c
|
---|
[59418] | 1219 | src-all/win/VBoxProxyStubLegacy.rc_DEPS = $(VBoxCOM_0_OUTDIR)/legacy/VirtualBox.tlb
|
---|
[49911] | 1220 |
|
---|
| 1221 | ifdef VBOX_WITH_32_ON_64_MAIN_API
|
---|
| 1222 | DLLS += VBoxProxyStub-x86
|
---|
| 1223 | VBoxProxyStub-x86_TEMPLATE = VBoxMainComp-x86
|
---|
[59367] | 1224 | VBoxProxyStub-x86_SDKS = VBOX_NTDLL
|
---|
[59363] | 1225 | VBoxProxyStub-x86_DEFS = $(VBoxProxyStub_DEFS) VBOX_PROXY_STUB_32_ON_64 WIN32
|
---|
[59327] | 1226 | VBoxProxyStub-x86_INCS = $(VBoxCOM-x86_0_OUTDIR)/
|
---|
[49911] | 1227 | VBoxProxyStub-x86_SOURCES = \
|
---|
| 1228 | $(VBoxCOM-x86_0_OUTDIR)/VirtualBox_p.c \
|
---|
| 1229 | $(VBoxCOM-x86_0_OUTDIR)/VirtualBox_i.c \
|
---|
[59363] | 1230 | src-all/win/VBoxProxyStub.c \
|
---|
| 1231 | src-all/win/VBoxProxyStub-x86.rc \
|
---|
| 1232 | src-all/win/VBoxProxyStub.def
|
---|
[59327] | 1233 | src-all/win/VBoxProxyStub-x86.rc_DEPS = $(VBoxCOM-x86_0_OUTDIR)/VirtualBox-x86.tlb
|
---|
[49911] | 1234 | endif
|
---|
[49908] | 1235 | endif
|
---|
| 1236 |
|
---|
| 1237 |
|
---|
| 1238 |
|
---|
[6772] | 1239 | # generate rules
|
---|
[41477] | 1240 | include $(FILE_KBUILD_SUB_FOOTER)
|
---|
[1] | 1241 |
|
---|
[12244] | 1242 |
|
---|
| 1243 |
|
---|
[1] | 1244 | #
|
---|
| 1245 | # Additions rules.
|
---|
| 1246 | #
|
---|
| 1247 |
|
---|
[10056] | 1248 | ## @todo this hack ain't cutting it any longer. (the file name is abspath'ed since ages now.)
|
---|
[35368] | 1249 | glue/xpcom/helpers.cpp: $(VBOX_IDL_TYPELIB.XPCOM)
|
---|
[1] | 1250 |
|
---|
[66636] | 1251 | $(call KB_FN_AUTO_CMD_DEPS_EX,$(VBOX_IDL_FILE.XPCOM),$(PATH_OUT)/VBOX_IDL_FILE.XPCOM.vbox-dep)
|
---|
[12275] | 1252 | $(VBOX_IDL_FILE.XPCOM): $(VBOX_PATH_MAIN_SRC)/idl/xpidl.xsl $(VBOX_XIDL_FILE) | $$(dir $$@)
|
---|
[66636] | 1253 | $(call KB_FN_AUTO_CMD_DEPS_COMMANDS_EX,$(PATH_OUT)/VBOX_IDL_FILE.XPCOM.vbox-dep)
|
---|
| 1254 | $(call MSG_TOOL,xsltproc,VBoxSVC,$(VBOX_PATH_MAIN_SRC)/idl/xpidl.xsl,$@)
|
---|
| 1255 | $(QUIET)$(VBOX_XSLTPROC) -o $@ $(VBOX_PATH_MAIN_SRC)/idl/xpidl.xsl $(VBOX_XIDL_FILE)
|
---|
[1] | 1256 |
|
---|
[66636] | 1257 | $(call KB_FN_AUTO_CMD_DEPS_EX,$(VBOX_IDL_TYPELIB.XPCOM),$(PATH_OUT)/VBOX_IDL_TYPELIB.XPCOM.vbox-dep)
|
---|
[14003] | 1258 | $(VBOX_IDL_TYPELIB.XPCOM): $(VBOX_IDL_FILE.XPCOM) | $$(dir $$@) $(VBOX_XPIDL)
|
---|
[66636] | 1259 | $(call KB_FN_AUTO_CMD_DEPS_COMMANDS_EX,$(PATH_OUT)/VBOX_IDL_TYPELIB.XPCOM.vbox-dep)
|
---|
| 1260 | $(call MSG_TOOL,xpidl,VBoxSVC,$(VBOX_IDL_FILE.XPCOM),$@)
|
---|
| 1261 | $(QUIET)$(VBOX_XPIDL_ENV)$(VBOX_XPIDL) -m typelib -I $(VBOX_PATH_XPCOM_IDL) -e $@ $(VBOX_IDL_FILE.XPCOM)
|
---|
[19134] | 1262 | $(CHMOD) 0644 $@
|
---|
[11772] | 1263 | ## @todo ^^^^^^^^^^^^ fix horrible hack
|
---|
[1] | 1264 |
|
---|
[66636] | 1265 | $(call KB_FN_AUTO_CMD_DEPS_EX,$(VBOX_IDL_HEADER.XPCOM),$(PATH_OUT)/VBOX_IDL_HEADER.XPCOM.vbox-dep)
|
---|
[14003] | 1266 | $(VBOX_IDL_HEADER.XPCOM): $(VBOX_IDL_FILE.XPCOM) | $$(dir $$@) $(VBOX_XPIDL)
|
---|
[66636] | 1267 | $(call KB_FN_AUTO_CMD_DEPS_COMMANDS_EX,$(PATH_OUT)/VBOX_IDL_HEADER.XPCOM.vbox-dep)
|
---|
| 1268 | $(call MSG_TOOL,xpidl,VBoxSVC,$(VBOX_IDL_FILE.XPCOM),$@)
|
---|
| 1269 | $(QUIET)$(VBOX_XPIDL_ENV)$(VBOX_XPIDL) -m header -I $(VBOX_PATH_XPCOM_IDL) -e $@ $(VBOX_IDL_FILE.XPCOM)
|
---|
[1] | 1270 |
|
---|
[66636] | 1271 | $(call KB_FN_AUTO_CMD_DEPS_EX,$(VBOX_IDL_FILE.MSCOM),$(PATH_OUT)/VBOX_IDL_FILE.MSCOM.vbox-dep)
|
---|
[12275] | 1272 | $(VBOX_IDL_FILE.MSCOM): $(VBOX_PATH_MAIN_SRC)/idl/midl.xsl $(VBOX_XIDL_FILE) | $$(dir $$@)
|
---|
[66636] | 1273 | $(call KB_FN_AUTO_CMD_DEPS_COMMANDS_EX,$(PATH_OUT)/VBOX_IDL_FILE.MSCOM.vbox-dep)
|
---|
[6076] | 1274 | $(call MSG_TOOL,xsltproc,VBoxSVC,$<,$@)
|
---|
[66274] | 1275 | $(QUIET)$(VBOX_XSLTPROC) -o $@ \
|
---|
[66279] | 1276 | $(if $(VBOX_WITH_MIDL_PROXY_STUB),-stringparam g_fGenProxy yes,) \
|
---|
| 1277 | $(if $(VBOX_WITH_SDS),-stringparam g_fVBoxWithSDS yes,) \
|
---|
[66636] | 1278 | $(VBOX_PATH_MAIN_SRC)/idl/midl.xsl $(VBOX_XIDL_FILE)
|
---|
[1] | 1279 |
|
---|
[66636] | 1280 |
|
---|
[12244] | 1281 | # Aliases for testing purposes.
|
---|
| 1282 | ifdef VBOX_WITH_XPCOM
|
---|
[50124] | 1283 | testidl: $(VBOX_IDL_FILE.XPCOM) $(VBOX_IDL_TYPELIB.XPCOM) $(VBoxCOM_0_OUTDIR)/VirtualBox_XPCOM_i.c
|
---|
[12244] | 1284 | testidlhdr: $(VBOX_IDL_HEADER.XPCOM)
|
---|
| 1285 | else
|
---|
[48323] | 1286 | testidl: $(VBOX_IDL_FILE.MSCOM) $(VBoxCOM_0_OUTDIR)/VirtualBox_i.c \
|
---|
| 1287 | $(if $(VBOX_WITH_32_ON_64_MAIN_API),$(VBoxCOM-x86_0_OUTDIR)/VirtualBox_i.c,)
|
---|
[12244] | 1288 | endif
|
---|
[4103] | 1289 |
|
---|
[12244] | 1290 |
|
---|
[50124] | 1291 | $(VBoxCOM_0_OUTDIR)/VirtualBox_XPCOM_i.c: $(VBOX_PATH_MAIN_SRC)/idl/xpidl_iid.xsl $(VBOX_XIDL_FILE) | $$(dir $$@)
|
---|
[50121] | 1292 | $(call MSG_TOOL,xsltproc,VBoxSVC,$<,$@)
|
---|
| 1293 | $(QUIET)$(VBOX_XSLTPROC) -o $@ $< $(VBOX_XIDL_FILE)
|
---|
[50124] | 1294 |
|
---|
[62774] | 1295 | ##
|
---|
| 1296 | # Edits $1 and adding #pragma directives for disabling warnings windows.h causes.
|
---|
| 1297 | # @param 1 The name of the file to edit.
|
---|
| 1298 | define def_VBoxMainDisableMscWarnings
|
---|
[63353] | 1299 | $(QUIET)$(MV) -f "$1" "$1.tmp"
|
---|
| 1300 | $(QUIET)$(APPEND) -nt "$1" \
|
---|
[62774] | 1301 | '#pragma warning(push) /* -Wall and windows.h */' \
|
---|
| 1302 | '#pragma warning(disable:4668 4255)' \
|
---|
[66832] | 1303 | '#if _MSC_VER >= 1800 /* RT_MSC_VER_VC120 */' \
|
---|
| 1304 | '# pragma warning(disable:4005)' \
|
---|
| 1305 | '#endif' \
|
---|
[62774] | 1306 | ''
|
---|
[63353] | 1307 | $(QUIET)$(CAT_EXT) "$1.tmp" >> "$1"
|
---|
| 1308 | $(QUIET)$(APPEND) -n "$1" \
|
---|
[62774] | 1309 | '' \
|
---|
| 1310 | '#pragma warning(pop)' \
|
---|
| 1311 | ''
|
---|
[63353] | 1312 | $(QUIET)$(RM) -f "$1.tmp"
|
---|
[62774] | 1313 |
|
---|
| 1314 | endef
|
---|
| 1315 |
|
---|
[59385] | 1316 | # Note! Because we've got a different proxy stub DLL for pre windows 7 64-bit hosts, we target windows 7 for AMD64.
|
---|
| 1317 | # The output is different and hopefully more efficient, at least memory wise (using more helpers in OLE32).
|
---|
[59450] | 1318 | # Note! We're checking for win.amd64 below when setting the target because of the SDK build which happens on linux.amd64
|
---|
| 1319 | # but with a 32-bit Wine.
|
---|
[66643] | 1320 | $(call KB_FN_AUTO_CMD_DEPS,$(VBoxCOM_0_OUTDIR)/VirtualBox_i.c)
|
---|
[35380] | 1321 | $(VBoxCOM_0_OUTDIR)/VirtualBox_i.c \
|
---|
[66643] | 1322 | $(if $(VBOX_WITH_MIDL_PROXY_STUB), + $(VBoxCOM_0_OUTDIR)/VirtualBox_p.c + $(VBoxCOM_0_OUTDIR)/dlldata.c,) \
|
---|
[35380] | 1323 | + $(VBoxCOM_0_OUTDIR)/VirtualBox.h \
|
---|
[40976] | 1324 | + $(VBoxCOM_0_OUTDIR)/VirtualBox.tlb: $(VBOX_IDL_FILE.MSCOM) | $$(dir $$@)
|
---|
[66643] | 1325 | $(call KB_FN_AUTO_CMD_DEPS_COMMANDS)
|
---|
[63352] | 1326 | $(VBOX_WIN_MIDL) /nologo /W4 \
|
---|
[59450] | 1327 | /env $(if-expr "$(KBUILD_TARGET).$(KBUILD_TARGET_ARCH)" == "win.amd64" ,amd64,win32) \
|
---|
[59447] | 1328 | /robust /protocol all /target $(if-expr defined(VBOX_WITH_MIDL_PROXY_STUB),NT61,NT51) \
|
---|
[35380] | 1329 | /out $(call VBOX_FN_MAKE_WIN_PATH,$(VBoxCOM_0_OUTDIR)) \
|
---|
[42304] | 1330 | /cpp_cmd $(subst $(EXEC_X86_WIN32),,$(call VBOX_FN_MAKE_WIN_PATH,$(TOOL_$(VBOX_VCC_TOOL)_CC))) \
|
---|
[42154] | 1331 | /I $(call VBOX_FN_MAKE_WIN_PATH,$(PATH_SDK_$(VBOX_WINPSDK)_INC)) \
|
---|
[1] | 1332 | /I idl \
|
---|
[66643] | 1333 | $(call VBOX_FN_MAKE_WIN_PATH,$(VBOX_IDL_FILE.MSCOM))
|
---|
[62774] | 1334 | $(call def_VBoxMainDisableMscWarnings,$(VBoxCOM_0_OUTDIR)/VirtualBox.h)
|
---|
| 1335 | $(call def_VBoxMainDisableMscWarnings,$(VBoxCOM_0_OUTDIR)/VirtualBox_i.c)
|
---|
[63140] | 1336 | $(call def_VBoxMainDisableMscWarnings,$(VBoxCOM_0_OUTDIR)/VirtualBox_p.c)
|
---|
[1] | 1337 |
|
---|
[59418] | 1338 | if defined(VBOX_WITH_MIDL_PROXY_STUB)
|
---|
[59385] | 1339 | # -Windows Server 2003 AMD64 SP1 does not like the result when using '/protocol all' and '/target NT51'.
|
---|
| 1340 | # -Vista AMD64 SP1 and Windows Server 2008 AMD64 seems to have some objections as well, but it seemed
|
---|
| 1341 | # that using an older MIDL compiler (v7.00.0499 instead of v7.00.0555) helps. But the W2K3 fix also works.
|
---|
[59418] | 1342 | # To avoid 32-bit vs. 64-bit differences, we do the same for 32-bit windows versions.
|
---|
[66643] | 1343 | $(call KB_FN_AUTO_CMD_DEPS,$(VBoxCOM_0_OUTDIR)/legacy/VirtualBox_i.c)
|
---|
[59418] | 1344 | $(VBoxCOM_0_OUTDIR)/legacy/VirtualBox_i.c \
|
---|
| 1345 | + $(VBoxCOM_0_OUTDIR)/legacy/VirtualBox_p.c\
|
---|
| 1346 | + $(VBoxCOM_0_OUTDIR)/legacy/dlldata.c \
|
---|
| 1347 | + $(VBoxCOM_0_OUTDIR)/legacy/VirtualBox.h \
|
---|
| 1348 | + $(VBoxCOM_0_OUTDIR)/legacy/VirtualBox.tlb: $(VBOX_IDL_FILE.MSCOM) | $$(dir $$@)
|
---|
[66643] | 1349 | $(call KB_FN_AUTO_CMD_DEPS_COMMANDS)
|
---|
[63352] | 1350 | $(VBOX_WIN_MIDL) /nologo /W4 \
|
---|
[59450] | 1351 | $(if-expr "$(KBUILD_TARGET).$(KBUILD_TARGET_ARCH)" == "win.amd64" \
|
---|
[59418] | 1352 | ,/env amd64 /x64 /target NT50 /robust \
|
---|
| 1353 | ,/env win32 /target NT51 /robust /protocol all ) \
|
---|
[59385] | 1354 | /out $(call VBOX_FN_MAKE_WIN_PATH,$(dir $@)) \
|
---|
| 1355 | /cpp_cmd $(subst $(EXEC_X86_WIN32),,$(call VBOX_FN_MAKE_WIN_PATH,$(TOOL_$(VBOX_VCC_TOOL)_CC))) \
|
---|
| 1356 | /I $(call VBOX_FN_MAKE_WIN_PATH,$(PATH_SDK_$(VBOX_WINPSDK)_INC)) \
|
---|
| 1357 | /I idl \
|
---|
[66643] | 1358 | $(call VBOX_FN_MAKE_WIN_PATH,$(VBOX_IDL_FILE.MSCOM))
|
---|
[62774] | 1359 | $(call def_VBoxMainDisableMscWarnings,$(VBoxCOM_0_OUTDIR)/legacy/VirtualBox.h)
|
---|
| 1360 | $(call def_VBoxMainDisableMscWarnings,$(VBoxCOM_0_OUTDIR)/legacy/VirtualBox_i.c)
|
---|
[63140] | 1361 | $(call def_VBoxMainDisableMscWarnings,$(VBoxCOM_0_OUTDIR)/legacy/VirtualBox_p.c)
|
---|
[59385] | 1362 | endif
|
---|
| 1363 |
|
---|
[59418] | 1364 | # The XP targetted 32-bit proxy stub works with all versions of windows (the
|
---|
| 1365 | # issues leading to the VBoxProxyStubLegacy.dll are only on 64-bit windows).
|
---|
[66643] | 1366 | $(call KB_FN_AUTO_CMD_DEPS,$(VBoxCOM-x86_0_OUTDIR)/VirtualBox_i.c)
|
---|
[48323] | 1367 | $(VBoxCOM-x86_0_OUTDIR)/VirtualBox_i.c \
|
---|
[66643] | 1368 | $(if $(VBOX_WITH_MIDL_PROXY_STUB), + $(VBoxCOM-x86_0_OUTDIR)/VirtualBox_p.c + $(VBoxCOM-x86_0_OUTDIR)/dlldata.c,) \
|
---|
[48323] | 1369 | + $(VBoxCOM-x86_0_OUTDIR)/VirtualBox.h \
|
---|
[59438] | 1370 | + $(VBoxCOM-x86_0_OUTDIR)/VirtualBox-x86.tlb: $(VBOX_IDL_FILE.MSCOM) | $$(dir $$@)
|
---|
[66643] | 1371 | $(call KB_FN_AUTO_CMD_DEPS_COMMANDS)
|
---|
[63352] | 1372 | $(VBOX_WIN_MIDL) /nologo /W4 \
|
---|
[59418] | 1373 | /env win32 /target NT51 /robust /protocol all \
|
---|
[48323] | 1374 | /out $(call VBOX_FN_MAKE_WIN_PATH,$(VBoxCOM-x86_0_OUTDIR)) \
|
---|
| 1375 | /tlb $(call VBOX_FN_MAKE_WIN_PATH,$(VBoxCOM-x86_0_OUTDIR)/VirtualBox-x86.tlb) \
|
---|
| 1376 | /cpp_cmd $(subst $(EXEC_X86_WIN32),,$(call VBOX_FN_MAKE_WIN_PATH,$(TOOL_$(VBOX_VCC_TOOL_STEM)X86_CC))) \
|
---|
| 1377 | /I $(call VBOX_FN_MAKE_WIN_PATH,$(PATH_SDK_$(VBOX_WINPSDK)_INC)) \
|
---|
| 1378 | /I idl \
|
---|
[66643] | 1379 | $(call VBOX_FN_MAKE_WIN_PATH,$(VBOX_IDL_FILE.MSCOM))
|
---|
[62774] | 1380 | $(call def_VBoxMainDisableMscWarnings,$(VBoxCOM-x86_0_OUTDIR)/VirtualBox.h)
|
---|
| 1381 | $(call def_VBoxMainDisableMscWarnings,$(VBoxCOM-x86_0_OUTDIR)/VirtualBox_i.c)
|
---|
[63140] | 1382 | $(call def_VBoxMainDisableMscWarnings,$(VBoxCOM-x86_0_OUTDIR)/VirtualBox_p.c)
|
---|
[48323] | 1383 |
|
---|
[1] | 1384 | #
|
---|
| 1385 | # Translation stuff
|
---|
| 1386 | #
|
---|
[11913] | 1387 | VBoxSVC_VBOX_HEADERS = \
|
---|
[1] | 1388 | include/collection.h \
|
---|
[23223] | 1389 | include/MachineImpl.h
|
---|
[12244] | 1390 | VBoxSVC_VBOX_TRANSLATIONS = \
|
---|
| 1391 | nls/VBoxSVC_de.ts
|
---|
[1] | 1392 |
|
---|
[11913] | 1393 | VBoxC_VBOX_HEADERS = \
|
---|
[1] | 1394 | include/ConsoleImpl.h
|
---|
[50528] | 1395 |
|
---|
| 1396 | VBoxC_VBOX_INTERMEDIATES = $(VBOX_MAIN_APIWRAPPER_GEN_HDRS)
|
---|
| 1397 | VBoxC_VBOX_HEADERS += $(VBOX_MAIN_APIWRAPPER_INCS)
|
---|
| 1398 |
|
---|
[11913] | 1399 | VBoxC_VBOX_TRANSLATIONS = \
|
---|
[1] | 1400 | nls/VBoxC_de.ts
|
---|
| 1401 |
|
---|
[29770] | 1402 | ifdef VBOX_WITH_JMSCOM
|
---|
| 1403 |
|
---|
[66643] | 1404 | #
|
---|
| 1405 | # Java glue JAR files
|
---|
| 1406 | #
|
---|
| 1407 | VBOX_JMSCOM_JAR = $(VBoxJMscom-inst-jar_0_OUTDIR)/vboxjmscom.jar
|
---|
| 1408 | VBOX_JMSCOM_TARGET := $(PATH_TARGET)/vboxjmscom-gen
|
---|
| 1409 | VBOX_JMSCOM_GEN = $(VBOX_JMSCOM_TARGET)/jmscomgen
|
---|
| 1410 | VBOX_JMSCOM_JDEST := $(VBOX_JMSCOM_TARGET)/jdest
|
---|
| 1411 | VBOX_GLUE_XSLT_DIR := $(PATH_ROOT)/src/VBox/Main/glue
|
---|
| 1412 | VBOX_JACOB_DIR := $(PATH_ROOT)/src/libs/jacob-1.17
|
---|
[29770] | 1413 |
|
---|
[66643] | 1414 | INSTALLS += VBoxJMscom-inst-jar
|
---|
| 1415 | VBoxJMscom-inst-jar_INST = $(INST_SDK)bindings/mscom/java/
|
---|
| 1416 | VBoxJMscom-inst-jar_MODE = a+r,u+w
|
---|
| 1417 | VBoxJMscom-inst-jar_SOURCES = \
|
---|
| 1418 | $(VBoxJMscom-inst-jar_0_OUTDIR)/vboxjmscom.jar
|
---|
| 1419 | VBoxJMscom-inst-jar_CLEAN = \
|
---|
| 1420 | $(VBoxJMscom-inst-jar_0_OUTDIR)/vboxjmscom.jar \
|
---|
| 1421 | $(VBOX_JMSCOM_GEN)/jmscomglue.list \
|
---|
| 1422 | $(wildcard \
|
---|
| 1423 | $(VBOX_JMSCOM_GEN)/java/*.java \
|
---|
| 1424 | $(VBOX_JMSCOM_JDEST)/*.class \
|
---|
| 1425 | $(VBOX_JMSCOM_JDEST)/*/*.class \
|
---|
| 1426 | $(VBOX_JMSCOM_JDEST)/*/*/*.class \
|
---|
| 1427 | $(VBOX_JMSCOM_JDEST)/*/*/*/*.class \
|
---|
| 1428 | )
|
---|
| 1429 | VBoxJMscom-inst-jar_BLDDIRS += $(VBOX_JMSCOM_GEN)/java
|
---|
| 1430 | $(call KB_FN_DO_PASS0_ON_TARGET,VBoxJMscom-inst-jar) # Sets VBoxJMscom-inst-jar_0_OUTDIR
|
---|
[29770] | 1431 |
|
---|
[66643] | 1432 | $(call KB_FN_AUTO_CMD_DEPS,$(VBOX_JMSCOM_GEN)/jmscomglue.list)
|
---|
| 1433 | $(VBOX_JMSCOM_GEN)/jmscomglue.list: \
|
---|
[38788] | 1434 | $(VBOX_XIDL_FILE) \
|
---|
| 1435 | $(VBOX_GLUE_XSLT_DIR)/glue-java.xsl \
|
---|
| 1436 | $(VBOX_FILESPLIT) \
|
---|
[29770] | 1437 | | $(VBOX_JMSCOM_GEN)/java/
|
---|
[66636] | 1438 | $(call KB_FN_AUTO_CMD_DEPS_COMMANDS)
|
---|
[30880] | 1439 | $(call MSG_L1,Generating Java MSCOM glue files from XIDL)
|
---|
[45497] | 1440 | $(QUIET)$(RM) -f $(wildcard $(VBOX_JMSCOM_GEN)/java/*.java)
|
---|
[29770] | 1441 | $(QUIET)$(VBOX_XSLTPROC) \
|
---|
[63340] | 1442 | --stringparam filelistonly "" \
|
---|
| 1443 | --stringparam G_vboxApiSuffix $(VBOX_API_SUFFIX) \
|
---|
| 1444 | --stringparam G_vboxGlueStyle mscom \
|
---|
| 1445 | --stringparam G_vboxDirPrefix "" \
|
---|
[66636] | 1446 | -o $(VBOX_JMSCOM_GEN)/java/merged.file $(VBOX_GLUE_XSLT_DIR)/glue-java.xsl $(VBOX_XIDL_FILE)
|
---|
[29859] | 1447 | $(QUIET)$(VBOX_FILESPLIT) $(VBOX_JMSCOM_GEN)/java/merged.file $(VBOX_JMSCOM_GEN)/java
|
---|
[29770] | 1448 | $(QUIET)echo $(VBOX_JMSCOM_GEN)/java/*.java > $@
|
---|
| 1449 |
|
---|
[66643] | 1450 | $(call KB_FN_AUTO_CMD_DEPS,$(VBoxJMscom-inst-jar_0_OUTDIR)/vboxjmscom.jar)
|
---|
| 1451 | $(VBoxJMscom-inst-jar_0_OUTDIR)/vboxjmscom.jar: $(VBOX_JMSCOM_GEN)/jmscomglue.list | $$(dir $$@)
|
---|
| 1452 | $(call KB_FN_AUTO_CMD_DEPS_COMMANDS)
|
---|
[51416] | 1453 | $(call MSG_TOOL,javac,$(notdir $@),jmscomglue.list,)
|
---|
[29770] | 1454 | $(QUIET)$(RM) -Rf $(VBOX_JMSCOM_JDEST)
|
---|
| 1455 | $(QUIET)$(MKDIR) -p $(VBOX_JMSCOM_JDEST)
|
---|
| 1456 | $(call MSG_TOOL,javac,$(notdir $@),...,)
|
---|
[51416] | 1457 | $(QUIET)$(VBOX_JAVAC) $(VBOX_JAVAC_OPTS) @$(VBOX_JMSCOM_GEN)/jmscomglue.list \
|
---|
[48479] | 1458 | -d $(VBOX_JMSCOM_JDEST) -classpath "$(VBOX_JMSCOM_JDEST)$(VBOX_SEP)$(VBOX_JACOB_DIR)/jacob.jar"
|
---|
[29770] | 1459 | $(call MSG_LINK,$(notdir $@),$@)
|
---|
[51416] | 1460 | $(QUIET)$(VBOX_JAR) cf $@ -C $(VBOX_JMSCOM_JDEST) .
|
---|
[29770] | 1461 |
|
---|
[66643] | 1462 | ## @todo compile TestVBox.java (see below) to have sanity checking
|
---|
[29771] | 1463 | endif # VBOX_WITH_JMSCOM
|
---|
| 1464 |
|
---|
[31135] | 1465 | #
|
---|
| 1466 | # Install Java glue sample code.
|
---|
| 1467 | #
|
---|
| 1468 | INSTALLS += javagluesample
|
---|
[38000] | 1469 | javagluesample_INST = $(INST_SDK)bindings/glue/java/
|
---|
[38093] | 1470 | javagluesample_MODE = a+r,u+w
|
---|
[31135] | 1471 | javagluesample_SOURCES = \
|
---|
| 1472 | $(VBOX_PATH_MAIN_SRC)/glue/tests/TestVBox.java=>TestVBox.java \
|
---|
[38914] | 1473 | $(VBOX_PATH_MAIN_SRC)/glue/tests/Makefile=>Makefile
|
---|
[31135] | 1474 |
|
---|
[53880] | 1475 | #
|
---|
| 1476 | # Rules associated with VBoxAPIWrap (in typical invocation order).
|
---|
| 1477 | # We keep them down here to simplify the use of VBoxAPIWrap_0_OUTDIR.
|
---|
| 1478 | #
|
---|
[53878] | 1479 |
|
---|
[53880] | 1480 | # Generate a make include file which lists the wrapper header and source files.
|
---|
[66636] | 1481 | $(call KB_FN_AUTO_CMD_DEPS,$(VBoxAPIWrap_VBOX_KMK_FILE).ts)
|
---|
[53879] | 1482 | $(VBoxAPIWrap_VBOX_KMK_FILE).ts \
|
---|
| 1483 | +| $(VBoxAPIWrap_VBOX_KMK_FILE): \
|
---|
| 1484 | $(VBOX_XIDL_FILE) \
|
---|
[53913] | 1485 | $(VBOX_PATH_MAIN_SRC)/idl/apiwrap-server-filelist.xsl \
|
---|
[53879] | 1486 | $(VBOX_PATH_MAIN_SRC)/Makefile.kmk
|
---|
[66636] | 1487 | $(call KB_FN_AUTO_CMD_DEPS_COMMANDS)
|
---|
[49798] | 1488 | $(call MSG_GENERATE,,$(VBoxAPIWrap_VBOX_KMK_FILE))
|
---|
[45518] | 1489 | $(QUIET)$(RM) -f $@
|
---|
| 1490 | $(QUIET)$(MKDIR) -p $(@D)
|
---|
[53884] | 1491 | $(QUIET)$(VBOX_XSLTPROC) --stringparam KBUILD_HOST $(KBUILD_HOST) \
|
---|
[66636] | 1492 | $(if $(VBOX_WITH_SDS),-stringparam g_fVBoxWithSDS yes,) \
|
---|
| 1493 | -o $@ $(VBOX_PATH_MAIN_SRC)/idl/apiwrap-server-filelist.xsl $(VBOX_XIDL_FILE)
|
---|
[49798] | 1494 | $(QUIET)$(CP) --changed -fv $@ $(VBoxAPIWrap_VBOX_KMK_FILE)
|
---|
[45518] | 1495 |
|
---|
[53880] | 1496 | # Generate the header files for the wrappers.
|
---|
[66636] | 1497 | $(call KB_FN_AUTO_CMD_DEPS,$(VBoxAPIWrap_0_OUTDIR)/apiwrappers-headers)
|
---|
[53880] | 1498 | $(VBoxAPIWrap_0_OUTDIR)/apiwrappers-headers \
|
---|
| 1499 | +| $(VBOX_MAIN_APIWRAPPER_GEN_HDRS): \
|
---|
| 1500 | $(VBOX_XIDL_FILE) \
|
---|
| 1501 | $(VBOX_PATH_MAIN_SRC)/idl/typemap-shared.inc.xsl \
|
---|
| 1502 | $(VBoxAPIWrap_VBOX_XSLT) \
|
---|
| 1503 | $(VBOX_FILESPLIT) \
|
---|
| 1504 | | $$(dir $$@)
|
---|
[66636] | 1505 | $(call KB_FN_AUTO_CMD_DEPS_COMMANDS)
|
---|
[53880] | 1506 | $(call MSG_L1,Generating C++ Server API wrapper header files from XIDL)
|
---|
| 1507 | $(QUIET)$(RM) -f -- $(filter-out $(VBOX_MAIN_APIWRAPPER_GEN_HDRS), $(wildcard $(VBoxAPIWrap_0_OUTDIR)/*.h))
|
---|
[53885] | 1508 | $(QUIET)$(VBOX_XSLTPROC) --stringparam KBUILD_HOST $(KBUILD_HOST) \
|
---|
[53880] | 1509 | --stringparam generating "headers" \
|
---|
[66636] | 1510 | -o $@ $(VBoxAPIWrap_VBOX_XSLT) $(VBOX_XIDL_FILE)
|
---|
[53880] | 1511 | $(QUIET)$(VBOX_FILESPLIT) $@ $(VBoxAPIWrap_0_OUTDIR)
|
---|
| 1512 |
|
---|
| 1513 | # Generate the DTrace probes for the wrappers and combine them with handcoded probes.
|
---|
[66636] | 1514 | $(call KB_FN_AUTO_CMD_DEPS,$(VBoxAPIWrap_0_OUTDIR)/VBoxAPI.d.ts)
|
---|
[53865] | 1515 | $(VBoxAPIWrap_0_OUTDIR)/VBoxAPI.d.ts \
|
---|
| 1516 | +| $(VBoxAPIWrap_0_OUTDIR)/VBoxAPI.d: \
|
---|
[53878] | 1517 | $(VBOX_XIDL_FILE) \
|
---|
| 1518 | $(VBOX_PATH_MAIN_SRC)/idl/typemap-shared.inc.xsl \
|
---|
| 1519 | $(VBoxAPIWrap_VBOX_XSLT) \
|
---|
| 1520 | $(VBOX_FILESPLIT) \
|
---|
| 1521 | | $$(dir $$@)
|
---|
[66636] | 1522 | $(call KB_FN_AUTO_CMD_DEPS_COMMANDS)
|
---|
[53878] | 1523 | $(call MSG_L1,Generating DTrace Provider for the VBox API (from XIDL))
|
---|
| 1524 | $(QUIET)$(RM) -f -- "$@" "$@.tmp"
|
---|
[53885] | 1525 | $(QUIET)$(VBOX_XSLTPROC) --stringparam KBUILD_HOST $(KBUILD_HOST) \
|
---|
[53878] | 1526 | --stringparam generating "dtrace-probes" \
|
---|
[66636] | 1527 | -o "$@" $(VBoxAPIWrap_VBOX_XSLT) $(VBOX_XIDL_FILE)
|
---|
[53880] | 1528 | $(QUIET)$(SED) -e '' -o "$@.tmp" \
|
---|
[53878] | 1529 | "$(VBOX_PATH_MAIN_SRC)/src-all/VBoxAPI-start.d" \
|
---|
[53880] | 1530 | "$@" \
|
---|
[53878] | 1531 | "$(VBOX_PATH_MAIN_SRC)/src-all/VBoxAPI-end.d"
|
---|
| 1532 | $(QUIET)$(MV) -- "$@.tmp" "$@"
|
---|
| 1533 | $(QUIET)$(CP) --changed -fv -- "$@" "$(VBoxAPIWrap_0_OUTDIR)/VBoxAPI.d"
|
---|
[53865] | 1534 |
|
---|
[53913] | 1535 | # Generate the wrapper source files - split in two due to long processing time
|
---|
[66636] | 1536 | $(call KB_FN_AUTO_CMD_DEPS,$(VBoxAPIWrap_0_OUTDIR)/apiwrappers-sources-even)
|
---|
[53913] | 1537 | $(VBoxAPIWrap_0_OUTDIR)/apiwrappers-sources-even \
|
---|
| 1538 | +| $(VBOX_MAIN_APIWRAPPER_GEN_SRCS_EVEN): \
|
---|
[53880] | 1539 | $(VBOX_XIDL_FILE) \
|
---|
| 1540 | $(VBOX_PATH_MAIN_SRC)/idl/typemap-shared.inc.xsl \
|
---|
| 1541 | $(VBoxAPIWrap_VBOX_XSLT) \
|
---|
| 1542 | $(VBOX_FILESPLIT) \
|
---|
| 1543 | | $$(dir $$@)
|
---|
[66636] | 1544 | $(call KB_FN_AUTO_CMD_DEPS_COMMANDS)
|
---|
[53913] | 1545 | $(call MSG_L1,Generating C++ Server API wrapper files from XIDL - part 1)
|
---|
[53880] | 1546 | $(QUIET)$(RM) -f -- $(filter-out $(VBOX_MAIN_APIWRAPPER_GEN_SRCS), $(wildcard $(VBoxAPIWrap_0_OUTDIR)/*.cpp))
|
---|
[53905] | 1547 | $(QUIET)$(VBOX_XSLTPROC) --stringparam KBUILD_HOST $(KBUILD_HOST) \
|
---|
[53880] | 1548 | --stringparam generating "sources" \
|
---|
[53913] | 1549 | --param reminder 0 \
|
---|
[66636] | 1550 | -o $@ $(VBoxAPIWrap_VBOX_XSLT) $(VBOX_XIDL_FILE)
|
---|
[53880] | 1551 | $(QUIET)$(VBOX_FILESPLIT) $@ $(VBoxAPIWrap_0_OUTDIR)
|
---|
[53865] | 1552 |
|
---|
[66636] | 1553 | $(call KB_FN_AUTO_CMD_DEPS,$(VBoxAPIWrap_0_OUTDIR)/apiwrappers-sources-odd)
|
---|
[53913] | 1554 | $(VBoxAPIWrap_0_OUTDIR)/apiwrappers-sources-odd \
|
---|
| 1555 | +| $(VBOX_MAIN_APIWRAPPER_GEN_SRCS_ODD): \
|
---|
| 1556 | $(VBOX_XIDL_FILE) \
|
---|
| 1557 | $(VBOX_PATH_MAIN_SRC)/idl/typemap-shared.inc.xsl \
|
---|
| 1558 | $(VBoxAPIWrap_VBOX_XSLT) \
|
---|
| 1559 | $(VBOX_FILESPLIT) \
|
---|
| 1560 | | $$(dir $$@)
|
---|
[66636] | 1561 | $(call KB_FN_AUTO_CMD_DEPS_COMMANDS)
|
---|
[53913] | 1562 | $(call MSG_L1,Generating C++ Server API wrapper files from XIDL - part 2)
|
---|
| 1563 | $(QUIET)$(RM) -f -- $(filter-out $(VBOX_MAIN_APIWRAPPER_GEN_SRCS), $(wildcard $(VBoxAPIWrap_0_OUTDIR)/*.cpp))
|
---|
| 1564 | $(QUIET)$(VBOX_XSLTPROC) --stringparam KBUILD_HOST $(KBUILD_HOST) \
|
---|
| 1565 | --stringparam generating "sources" \
|
---|
| 1566 | --param reminder 1 \
|
---|
[66636] | 1567 | -o $@ $(VBoxAPIWrap_VBOX_XSLT) $(VBOX_XIDL_FILE)
|
---|
[53913] | 1568 | $(QUIET)$(VBOX_FILESPLIT) $@ $(VBoxAPIWrap_0_OUTDIR)
|
---|
| 1569 |
|
---|
[53903] | 1570 | testapiwrappers:: \
|
---|
| 1571 | $(VBoxAPIWrap_0_OUTDIR)/apiwrappers-headers \
|
---|
| 1572 | $(VBoxAPIWrap_0_OUTDIR)/VBoxAPI.d.ts \
|
---|
[53913] | 1573 | $(VBoxAPIWrap_0_OUTDIR)/apiwrappers-sources-odd \
|
---|
| 1574 | $(VBoxAPIWrap_0_OUTDIR)/apiwrappers-sources-even
|
---|
[53880] | 1575 |
|
---|
[53903] | 1576 |
|
---|
[53880] | 1577 | #
|
---|
| 1578 | # NLS stuff.
|
---|
| 1579 | #
|
---|
[11913] | 1580 | updatenls::
|
---|
| 1581 | $(VBOX_LUPDATE) $(VBoxSVC_SOURCES) $(VBoxSVC_VBOX_HEADERS) -ts $(VBoxSVC_VBOX_TRANSLATIONS)
|
---|
| 1582 | $(VBOX_LUPDATE) $(VBoxC_SOURCES) $(VBoxC_VBOX_HEADERS) -ts $(VBoxC_VBOX_TRANSLATIONS)
|
---|
[1] | 1583 |
|
---|