Index: trunk/src/VBox/Main/Makefile.kmk
===================================================================
--- trunk/src/VBox/Main/Makefile.kmk	(revision 98430)
+++ trunk/src/VBox/Main/Makefile.kmk	(revision 98431)
@@ -78,85 +78,85 @@
 ifneq ($(KBUILD_TARGET),win)
  ifndef VBOX_WITH_XPCOM
-$(error "VBox: VBOX_WITH_XPCOM isn't defined")
- endif
-VBOX_MAIN_DEFS += VBOX_WITH_GENERIC_SESSION_WATCHER
+  $(error "VBox: VBOX_WITH_XPCOM isn't defined")
+ endif
+ VBOX_MAIN_DEFS += VBOX_WITH_GENERIC_SESSION_WATCHER
 endif
 ifdef VBOX_WITH_AUDIO_ALSA
-VBOX_MAIN_DEFS += VBOX_WITH_AUDIO_ALSA
+ VBOX_MAIN_DEFS += VBOX_WITH_AUDIO_ALSA
 endif
 ifdef VBOX_WITH_AUDIO_DEBUG
-VBOX_MAIN_DEFS += VBOX_WITH_AUDIO_DEBUG
+ VBOX_MAIN_DEFS += VBOX_WITH_AUDIO_DEBUG
 endif
 ifdef VBOX_WITH_AUDIO_OSS
-VBOX_MAIN_DEFS += VBOX_WITH_AUDIO_OSS
+ VBOX_MAIN_DEFS += VBOX_WITH_AUDIO_OSS
 endif
 ifdef VBOX_WITH_AUDIO_PULSE
-VBOX_MAIN_DEFS += VBOX_WITH_AUDIO_PULSE
+ VBOX_MAIN_DEFS += VBOX_WITH_AUDIO_PULSE
 endif
 ifdef VBOX_WITH_AUDIO_RECORDING
-VBOX_MAIN_DEFS += VBOX_WITH_AUDIO_RECORDING
+ VBOX_MAIN_DEFS += VBOX_WITH_AUDIO_RECORDING
 endif
 ifdef VBOX_WITH_AUDIO_VALIDATIONKIT
-VBOX_MAIN_DEFS += VBOX_WITH_AUDIO_VALIDATIONKIT
+ VBOX_MAIN_DEFS += VBOX_WITH_AUDIO_VALIDATIONKIT
 endif
 ifdef VBOX_WITH_AUDIO_VRDE
-VBOX_MAIN_DEFS += VBOX_WITH_AUDIO_VRDE
+ VBOX_MAIN_DEFS += VBOX_WITH_AUDIO_VRDE
 endif
 ifdef VBOX_WITH_COPYTOGUEST
-VBOX_MAIN_DEFS += VBOX_WITH_COPYTOGUEST
+ VBOX_MAIN_DEFS += VBOX_WITH_COPYTOGUEST
 endif
 ifdef VBOX_WITH_E1000
-VBOX_MAIN_DEFS += VBOX_WITH_E1000
+ VBOX_MAIN_DEFS += VBOX_WITH_E1000
 endif
 ifdef VBOX_WITH_EXTPACK
-VBOX_MAIN_DEFS += VBOX_WITH_EXTPACK
+ VBOX_MAIN_DEFS += VBOX_WITH_EXTPACK
 endif
 ifdef VBOX_WITH_GUEST_CONTROL
-VBOX_MAIN_DEFS += VBOX_WITH_GUEST_CONTROL
+ VBOX_MAIN_DEFS += VBOX_WITH_GUEST_CONTROL
 endif
 ifdef VBOX_WITH_GUEST_PROPS
-VBOX_MAIN_DEFS += VBOX_WITH_GUEST_PROPS
+ VBOX_MAIN_DEFS += VBOX_WITH_GUEST_PROPS
  ifdef VBOX_WITH_GUEST_PROPS_RDONLY_GUEST
-VBOX_MAIN_DEFS += VBOX_WITH_GUEST_PROPS_RDONLY_GUEST
+  VBOX_MAIN_DEFS += VBOX_WITH_GUEST_PROPS_RDONLY_GUEST
  endif
 endif
 ifdef VBOX_WITH_HGCM
-VBOX_MAIN_DEFS += VBOX_WITH_HGCM
+ VBOX_MAIN_DEFS += VBOX_WITH_HGCM
 endif
 ifdef VBOX_WITH_HOSTNETIF_API
-VBOX_MAIN_DEFS += VBOX_WITH_HOSTNETIF_API
+ VBOX_MAIN_DEFS += VBOX_WITH_HOSTNETIF_API
 endif
 ifdef VBOX_WITH_DHCPD
-VBOX_MAIN_DEFS += VBOX_WITH_DHCPD
+ VBOX_MAIN_DEFS += VBOX_WITH_DHCPD
 endif
 ifdef VBOX_WITH_LIVE_MIGRATION
-VBOX_MAIN_DEFS += VBOX_WITH_LIVE_MIGRATION
+ VBOX_MAIN_DEFS += VBOX_WITH_LIVE_MIGRATION
 endif
 ifdef VBOX_WITH_MIDL_PROXY_STUB
-VBOX_MAIN_DEFS += VBOX_WITH_MIDL_PROXY_STUB
+ VBOX_MAIN_DEFS += VBOX_WITH_MIDL_PROXY_STUB
 endif
 ifdef VBOX_WITH_NETFLT
-VBOX_MAIN_DEFS += VBOX_WITH_NETFLT
+ VBOX_MAIN_DEFS += VBOX_WITH_NETFLT
 endif
 if defined(VBOX_WITH_VMNET) && "$(KBUILD_TARGET)" == "darwin"
-VBOX_MAIN_DEFS += VBOX_WITH_VMNET
+ VBOX_MAIN_DEFS += VBOX_WITH_VMNET
 endif
 ifdef VBOX_WITH_CLOUD_NET
-VBOX_MAIN_DEFS += VBOX_WITH_CLOUD_NET
+ VBOX_MAIN_DEFS += VBOX_WITH_CLOUD_NET
 endif
 ifdef VBOX_WITH_PCI_PASSTHROUGH
-VBOX_MAIN_DEFS += VBOX_WITH_PCI_PASSTHROUGH
+ VBOX_MAIN_DEFS += VBOX_WITH_PCI_PASSTHROUGH
 endif
 ifdef VBOX_WITH_PDM_ASYNC_COMPLETION
-VBOX_MAIN_DEFS += VBOX_WITH_PDM_ASYNC_COMPLETION
+ VBOX_MAIN_DEFS += VBOX_WITH_PDM_ASYNC_COMPLETION
 endif
 ifdef VBOX_WITH_RECORDING
-VBOX_MAIN_DEFS += VBOX_WITH_RECORDING
+ VBOX_MAIN_DEFS += VBOX_WITH_RECORDING
 endif
 ifdef VBOX_WITH_SDS
-VBOX_MAIN_DEFS += VBOX_WITH_SDS
+ VBOX_MAIN_DEFS += VBOX_WITH_SDS
 endif
 ifdef VBOX_WITH_SHARED_CLIPBOARD
-VBOX_MAIN_DEFS += VBOX_WITH_SHARED_CLIPBOARD
+ VBOX_MAIN_DEFS += VBOX_WITH_SHARED_CLIPBOARD
  ifdef VBOX_WITH_SHARED_CLIPBOARD_TRANSFERS
   VBOX_MAIN_DEFS += VBOX_WITH_SHARED_CLIPBOARD_TRANSFERS
@@ -164,33 +164,33 @@
 endif
 if defined(VBOX_WITH_LIBCURL) && defined(VBOX_WITH_UPDATE_AGENT)
-VBOX_MAIN_DEFS += VBOX_WITH_UPDATE_AGENT
+ VBOX_MAIN_DEFS += VBOX_WITH_UPDATE_AGENT
 endif
 ifdef VBOX_WITH_USB_CARDREADER
-VBOX_MAIN_DEFS += VBOX_WITH_USB_CARDREADER
+ VBOX_MAIN_DEFS += VBOX_WITH_USB_CARDREADER
 endif
 ifdef VBOX_WITH_USB_CARDREADER_TEST
-VBOX_MAIN_DEFS += VBOX_WITH_USB_CARDREADER_TEST
+ VBOX_MAIN_DEFS += VBOX_WITH_USB_CARDREADER_TEST
 endif
 ifdef VBOX_WITH_VIRTIO
-VBOX_MAIN_DEFS += VBOX_WITH_VIRTIO
+ VBOX_MAIN_DEFS += VBOX_WITH_VIRTIO
 endif
 ifdef VBOX_WITH_VIRTIO_1_0
-VBOX_MAIN_DEFS += VBOX_WITH_VIRTIO_1_0
+ VBOX_MAIN_DEFS += VBOX_WITH_VIRTIO_1_0
 endif
 ifdef VBOX_WITH_VIRTIO_NET_1_0
-VBOX_MAIN_DEFS += VBOX_WITH_VIRTIO_NET_1_0
+ VBOX_MAIN_DEFS += VBOX_WITH_VIRTIO_NET_1_0
 endif
 ifdef VBOX_WITH_VMSVGA
-VBOX_MAIN_DEFS += VBOX_WITH_VMSVGA
+ VBOX_MAIN_DEFS += VBOX_WITH_VMSVGA
 endif
 ifdef VBOX_WITH_VMSVGA3D
-VBOX_MAIN_DEFS += VBOX_WITH_VMSVGA3D
+ VBOX_MAIN_DEFS += VBOX_WITH_VMSVGA3D
 endif
 ifdef VBOX_WITH_VUSB
-VBOX_MAIN_DEFS += VBOX_WITH_VUSB
+ VBOX_MAIN_DEFS += VBOX_WITH_VUSB
 endif
 ifdef VBOX_WITH_EHCI
  ifdef VBOX_WITH_USB
- VBOX_MAIN_DEFS += VBOX_WITH_EHCI
+  VBOX_MAIN_DEFS += VBOX_WITH_EHCI
  endif
 endif
@@ -214,7 +214,7 @@
 if defined(VBOX_ONLY_SDK) || "$(KBUILD_TARGET)" == "win"
  OTHERS         += \
-	$(VBOX_IDL_FILE.MSCOM)
+ 	$(VBOX_IDL_FILE.MSCOM)
  OTHER_CLEAN    += \
-	$(VBOX_IDL_FILE.MSCOM)
+ 	$(VBOX_IDL_FILE.MSCOM)
 
  INSTALLS += VBox-mscom-bindings-include VBox-mscom-bindings-lib
@@ -226,7 +226,7 @@
  VBox-mscom-bindings-lib_MODE = a+r,u+w
  VBox-mscom-bindings-lib_SOURCES = $(VBoxCOM_0_OUTDIR)/VirtualBox_i.c \
-	$(VBoxCOM_0_OUTDIR)/VirtualBox.tlb
+ 	$(VBoxCOM_0_OUTDIR)/VirtualBox.tlb
  VBox-mscom-bindings-lib_CLEAN = $(VBoxCOM_0_OUTDIR)/VirtualBox_i.c \
-	$(VBoxCOM_0_OUTDIR)/VirtualBox.tlb
+ 	$(VBoxCOM_0_OUTDIR)/VirtualBox.tlb
 
  BLDDIRS += $(VBOX_PATH_SDK)/bindings/mscom/idl
@@ -238,7 +238,7 @@
  OTHERS         += $(VBOX_IDL_FILE.XPCOM) $(VBOX_IDL_TYPELIB.XPCOM) $(VBOX_IDL_HEADER.XPCOM)
  OTHER_CLEAN    += \
-	$(VBOX_IDL_FILE.XPCOM) \
-	$(VBOX_IDL_HEADER.XPCOM) \
-	$(VBOX_IDL_TYPELIB.XPCOM)
+ 	$(VBOX_IDL_FILE.XPCOM) \
+ 	$(VBOX_IDL_HEADER.XPCOM) \
+ 	$(VBOX_IDL_TYPELIB.XPCOM)
 
  INSTALLS += VBox-xpcom-bindings-lib
@@ -250,6 +250,6 @@
  VBOX_MAIN_PREREQS += $(VBOX_IDL_TYPELIB.XPCOM) $(VBOX_IDL_HEADER.XPCOM)
  BLDDIRS += \
-	$(VBOX_PATH_SDK)/bindings/xpcom/idl \
-	$(VBOX_PATH_SDK)/bindings/xpcom/include
+ 	$(VBOX_PATH_SDK)/bindings/xpcom/idl \
+ 	$(VBOX_PATH_SDK)/bindings/xpcom/include
  # disable VBoxSDS for XPCOM
  override VBOX_WITH_SDS =
@@ -303,7 +303,7 @@
 docs.main docs.Main: $(PATH_TARGET)/docs.Main
 if !defined(VBOX_ONLY_DOCS) && defined(VBOX_WITH_ALL_DOXYGEN_TARGETS)
-docs:                $(PATH_TARGET)/docs.Main
+ docs: $(PATH_TARGET)/docs.Main
 else
-docs:
+ docs:
 endif
 
@@ -320,6 +320,6 @@
  else if $(KBUILD_KMK_REVISION) >= 3256 && "$(KBUILD_TARGET)" != "darwin" && !defined(VBOX_WITHOUT_PRECOMPILED_HEADERS)
   if $(VBOX_GCC_VERSION_CXX) >= 50000 # GCC 4.x runs into trouble compiling the header.
-VBoxAPIWrap_USES           = gccprecomp
-VBoxAPIWrap_PCH_HDR       := $(PATH_SUB_CURRENT)/src-all/xpcom/VBoxAPIWrap-precomp_gcc.h
+   VBoxAPIWrap_USES        = gccprecomp
+   VBoxAPIWrap_PCH_HDR    := $(PATH_SUB_CURRENT)/src-all/xpcom/VBoxAPIWrap-precomp_gcc.h
   endif
  endif
@@ -327,12 +327,12 @@
  	$(VBoxAPIWrap_0_OUTDIR)/VBoxAPI.d \
  	$(if-expr defined(VBOX_ONLY_EXTPACKS) \
-	, $(addprefix $(VBoxAPIWrap_0_OUTDIR)/,$(filter \
-	Cloud%\
-	DataStreamWrap.cpp\
-	%FormValueWrap.cpp\
-	%FormWrap.cpp\
-	StringArrayWrap.cpp\
-	, $(notdir $(VBOX_MAIN_APIWRAPPER_GEN_SRCS)))) \
-	, $(VBOX_MAIN_APIWRAPPER_GEN_SRCS))
+ 	, $(addprefix $(VBoxAPIWrap_0_OUTDIR)/,$(filter \
+ 	Cloud% \
+ 	DataStreamWrap.cpp \
+ 	%FormValueWrap.cpp \
+ 	%FormWrap.cpp \
+ 	StringArrayWrap.cpp \
+ 	, $(notdir $(VBOX_MAIN_APIWRAPPER_GEN_SRCS)))) \
+ 	, $(VBOX_MAIN_APIWRAPPER_GEN_SRCS))
  VBoxAPIWrap_INTERMEDIATES   = $(VBOX_MAIN_APIWRAPPER_GEN_HDRS)
  VBoxAPIWrap_DEFS.win.x86   += _WIN32_WINNT=0x0500
@@ -394,15 +394,15 @@
  VBox-python-glue_CLEAN = \
  	$(VBox-python-glue_0_OUTDIR)/VirtualBox_constants.py \
-	$(VBox-python-glue_0_OUTDIR)/VirtualBox_constants_err_h_1.txt
+ 	$(VBox-python-glue_0_OUTDIR)/VirtualBox_constants_err_h_1.txt
  $(call KB_FN_DO_PASS0_ON_TARGET,VBox-python-glue)
  $(call KB_FN_AUTO_CMD_DEPS,$(VBox-python-glue_0_OUTDIR)/VirtualBox_constants.py)
  $(VBox-python-glue_0_OUTDIR)/VirtualBox_constants.py \
- + $(VBox-python-glue_0_OUTDIR)/VirtualBox_constants_err_h_1.txt:  \
-		$(VBOX_PATH_MAIN_SRC)/glue/constants-python.xsl \
-		$(VBOX_PATH_MAIN_SRC)/glue/vbox-err-consts.sed \
-		$(PATH_ROOT)/include/iprt/err.h \
-		$(PATH_ROOT)/include/VBox/err.h \
-		$(VBOX_XIDL_FILE) \
-		| $$(dir $$@)
+ + $(VBox-python-glue_0_OUTDIR)/VirtualBox_constants_err_h_1.txt: \
+ 		$(VBOX_PATH_MAIN_SRC)/glue/constants-python.xsl \
+ 		$(VBOX_PATH_MAIN_SRC)/glue/vbox-err-consts.sed \
+ 		$(PATH_ROOT)/include/iprt/err.h \
+ 		$(PATH_ROOT)/include/VBox/err.h \
+ 		$(VBOX_XIDL_FILE) \
+ 		| $$(dir $$@)
 	$(call KB_FN_AUTO_CMD_DEPS_COMMANDS)
 	$(call MSG_TOOL,xsltproc,Python constants,$<,$@)
@@ -418,30 +418,30 @@
 if !defined(VBOX_ONLY_SDK) && !defined(VBOX_ONLY_EXTPACKS) # Note this goes on for *very* long
 
-#
-# Generate SchemaDefs.h and SchemaDefs.cpp from XML Schema
-# These two files are used by both VBoxC and VBoxSVC.
-#
-BLDDIRS += $(PATH_TARGET)/Main
-
-testschemadefs: $(VBOX_XML_SCHEMADEFS_H) $(VBOX_XML_SCHEMADEFS_CPP)
-
-
-#
-# Trust anchors and certificates -> .cpp
-#
-VBOX_SVC_CERTS_FILE = $(VBoxSVC_0_OUTDIR)/TrustAnchorsAndCerts.cpp
-VBOX_SVC_CERTS := \
-       UefiMicrosoftKek=MicCorKEKCA2011_2011-06-24.crt \
-       UefiMicrosoftCa=MicCorUEFCA2011_2011-06-27.crt \
-       UefiMicrosoftProPca=MicWinProPCA2011_2011-10-19.crt \
-       UefiOracleDefPk=OrclUefiDefPk2021_2021-09-29.crt
-
-VBOX_SVC_CERT_NAMES := $(foreach cert,$(VBOX_SVC_CERTS),$(firstword $(subst =,$(SPACE) ,$(cert))))
-VBOX_SVC_PATH_CERTIFICATES := $(PATH_SUB_CURRENT)/Certificates
-
-$$(VBOX_SVC_CERTS_FILE): $(MAKEFILE_CURRENT) \
-		$(foreach cert,$(VBOX_SVC_CERTS),$(VBOX_SVC_PATH_CERTIFICATES)/$(lastword $(subst =,$(SPACE) ,$(cert)))) \
-		$(VBOX_BIN2C) \
-		| $$(dir $$@)
+ #
+ # Generate SchemaDefs.h and SchemaDefs.cpp from XML Schema
+ # These two files are used by both VBoxC and VBoxSVC.
+ #
+ BLDDIRS += $(PATH_TARGET)/Main
+
+ testschemadefs: $(VBOX_XML_SCHEMADEFS_H) $(VBOX_XML_SCHEMADEFS_CPP)
+
+
+ #
+ # Trust anchors and certificates -> .cpp
+ #
+ VBOX_SVC_CERTS_FILE = $(VBoxSVC_0_OUTDIR)/TrustAnchorsAndCerts.cpp
+ VBOX_SVC_CERTS := \
+ 	UefiMicrosoftKek=MicCorKEKCA2011_2011-06-24.crt \
+ 	UefiMicrosoftCa=MicCorUEFCA2011_2011-06-27.crt \
+ 	UefiMicrosoftProPca=MicWinProPCA2011_2011-10-19.crt \
+ 	UefiOracleDefPk=OrclUefiDefPk2021_2021-09-29.crt
+
+ VBOX_SVC_CERT_NAMES := $(foreach cert,$(VBOX_SVC_CERTS),$(firstword $(subst =,$(SPACE) ,$(cert))))
+ VBOX_SVC_PATH_CERTIFICATES := $(PATH_SUB_CURRENT)/Certificates
+
+ $$(VBOX_SVC_CERTS_FILE): $(MAKEFILE_CURRENT) \
+ 		$(foreach cert,$(VBOX_SVC_CERTS),$(VBOX_SVC_PATH_CERTIFICATES)/$(lastword $(subst =,$(SPACE) ,$(cert)))) \
+ 		$(VBOX_BIN2C) \
+ 		| $$(dir $$@)
 	$(QUIET)$(RM) -f -- $@
 	$(QUIET)$(APPEND) -n "$@" \
@@ -454,402 +454,402 @@
 		"$@")
 
-OTHER_CLEAN += $(VBOX_SVC_CERTS_FILE)
-
-tst-main-certificates: $(VBOX_SVC_CERTS_FILE)
-
-
-#
-# VBoxSDS executable
-#
-if defined(VBOX_WITH_SDS) && "$(KBUILD_TARGET)" == "win"
-PROGRAMS.win += VBoxSDS
-VBoxSDS_TEMPLATE = VBoxMainExe
-VBoxSDS_DEFS += VBOX_COM_OUTOFPROC_MODULE _WIN32_WINNT=0x0600
- ifdef VBOX_WITH_VBOXSDL
-VBoxSDS_DEFS += VBOX_WITH_VBOXSDL
- endif
- ifdef VBOX_WITH_HEADLESS
-VBoxSDS_DEFS += VBOX_WITH_HEADLESS
- endif
- ifdef VBOX_WITH_QTGUI
-VBoxSDS_DEFS += VBOX_WITH_QTGUI
- endif
- ifdef VBOX_WITH_VBOXSVC_SESSION_0
-VBoxSDS_DEFS += VBOX_WITH_VBOXSVC_SESSION_0
- endif
-VBoxSDS_INCS  = \
-	include \
-	$(VBoxSDS_0_OUTDIR) \
-	$(VBoxCOM_0_OUTDIR)
-VBoxSDS_INTERMEDIATES = \
-	$(VBOX_MAIN_PREREQS)
-VBoxSDS_SOURCES = \
-	src-global/win/VBoxSDS.cpp \
-	src-global/win/VirtualBoxSDSImpl.cpp \
-	src-global/win/VBoxSDS.rc \
-	src-all/MachineLaunchVMCommonWorker.cpp
-$(call KB_FN_DO_PASS0_ON_TARGET,VBoxSDS) # Sets VBoxSDS_0_OUTDIR
-
-src-global/win/VBoxSDS.rc_INCS  = $(VBoxSDS_0_OUTDIR)
-src-global/win/VBoxSDS.rc_DEPS  = $(VBoxSDS_0_OUTDIR)/VBoxSDS-icon.rc #$(VBoxSDS_0_OUTDIR)/VBoxSDS.rgs
-VBoxSDS_CLEAN                   = $(VBoxSDS_0_OUTDIR)/VBoxSDS-icon.rc #$(VBoxSDS_0_OUTDIR)/VBoxSDS.rgs
-
-$(call KB_FN_AUTO_CMD_DEPS,$(VBoxSDS_0_OUTDIR)/VBoxSDS-icon.rc)
-$(VBoxSDS_0_OUTDIR)/VBoxSDS-icon.rc: $(VBOX_WINDOWS_ICON_FILE) | $$(dir $$@)
+ OTHER_CLEAN += $(VBOX_SVC_CERTS_FILE)
+
+ tst-main-certificates: $(VBOX_SVC_CERTS_FILE)
+
+
+ #
+ # VBoxSDS executable
+ #
+ if defined(VBOX_WITH_SDS) && "$(KBUILD_TARGET)" == "win"
+  PROGRAMS.win += VBoxSDS
+  VBoxSDS_TEMPLATE = VBoxMainExe
+  VBoxSDS_DEFS += VBOX_COM_OUTOFPROC_MODULE _WIN32_WINNT=0x0600
+  ifdef VBOX_WITH_VBOXSDL
+   VBoxSDS_DEFS += VBOX_WITH_VBOXSDL
+  endif
+  ifdef VBOX_WITH_HEADLESS
+   VBoxSDS_DEFS += VBOX_WITH_HEADLESS
+  endif
+  ifdef VBOX_WITH_QTGUI
+   VBoxSDS_DEFS += VBOX_WITH_QTGUI
+  endif
+  ifdef VBOX_WITH_VBOXSVC_SESSION_0
+   VBoxSDS_DEFS += VBOX_WITH_VBOXSVC_SESSION_0
+  endif
+  VBoxSDS_INCS = \
+  	include \
+  	$(VBoxSDS_0_OUTDIR) \
+  	$(VBoxCOM_0_OUTDIR)
+  VBoxSDS_INTERMEDIATES = \
+  	$(VBOX_MAIN_PREREQS)
+  VBoxSDS_SOURCES = \
+  	src-global/win/VBoxSDS.cpp \
+  	src-global/win/VirtualBoxSDSImpl.cpp \
+  	src-global/win/VBoxSDS.rc \
+  	src-all/MachineLaunchVMCommonWorker.cpp
+  $(call KB_FN_DO_PASS0_ON_TARGET,VBoxSDS) # Sets VBoxSDS_0_OUTDIR
+
+  src-global/win/VBoxSDS.rc_INCS = $(VBoxSDS_0_OUTDIR)
+  src-global/win/VBoxSDS.rc_DEPS = $(VBoxSDS_0_OUTDIR)/VBoxSDS-icon.rc #$(VBoxSDS_0_OUTDIR)/VBoxSDS.rgs
+  VBoxSDS_CLEAN                 = $(VBoxSDS_0_OUTDIR)/VBoxSDS-icon.rc #$(VBoxSDS_0_OUTDIR)/VBoxSDS.rgs
+
+  $(call KB_FN_AUTO_CMD_DEPS,$(VBoxSDS_0_OUTDIR)/VBoxSDS-icon.rc)
+  $(VBoxSDS_0_OUTDIR)/VBoxSDS-icon.rc: $(VBOX_WINDOWS_ICON_FILE) | $$(dir $$@)
 	$(call KB_FN_AUTO_CMD_DEPS_COMMANDS)
 	$(APPEND) -t $@ '1 ICON DISCARDABLE "$(subst /,\\,$(VBOX_WINDOWS_ICON_FILE))"'
 
-# $(call KB_FN_AUTO_CMD_DEPS,$(VBoxSDS_0_OUTDIR)/VBoxSDS.rgs)
-# $(VBoxSDS_0_OUTDIR)/VBoxSDS.rgs: $(VBOX_PATH_MAIN_SRC)/src-all/win/VirtualBox_rgs.xsl $(VBOX_XIDL_FILE) | $$(dir $$@)
-#	$(call KB_FN_AUTO_CMD_DEPS_COMMANDS)
-#	$(VBOX_XSLTPROC) \
-#		--stringparam Application "VirtualBox System" \
-#		--stringparam Module VBoxSDS \
-#		-o $@ \
-#		$(VBOX_PATH_MAIN_SRC)/src-all/win/VirtualBox_rgs.xsl \
-#		$(VBOX_XIDL_FILE)
-#
-endif #if defined(VBOX_WITH_SDS) && "$(KBUILD_TARGET)" == "win"
-
-#
-# VBoxSVC executable
-#
-PROGRAMS += VBoxSVC
-VBoxSVC_TEMPLATE = VBoxMainExe
-if defined(VBOX_WITH_PRECOMPILED_HEADERS) && "$(KBUILD_TARGET)" == "win"
- VBoxSVC_USES    += vccprecomp
- VBoxSVC_PCH_HDR := $(PATH_SUB_CURRENT)/src-server/win/precomp_vcc.h
-else if $(KBUILD_KMK_REVISION) >= 3256 && "$(KBUILD_TARGET)" != "darwin" && !defined(VBOX_WITHOUT_PRECOMPILED_HEADERS)
- if $(VBOX_GCC_VERSION_CXX) >= 50000 # GCC 4.x runs into trouble compiling the header.
-VBoxSVC_USES    += gccprecomp
-VBoxSVC_PCH_HDR := $(PATH_SUB_CURRENT)/src-server/xpcom/precomp_gcc.h
- endif
-endif
-VBoxSVC_DEFS = \
-	IN_VBOXSVC \
-	VBOX_MAIN_SETTINGS_ADDONS \
-	IN_VMM_STATIC \
-	$(VBOX_MAIN_DEFS) \
-	$(if $(VBOX_WITH_VBOXSDL),VBOX_WITH_VBOXSDL,) \
-	$(if $(VBOX_WITH_HEADLESS),VBOX_WITH_HEADLESS,) \
-	$(if $(VBOX_WITH_QTGUI),VBOX_WITH_QTGUI,) \
-	$(if $(VBOX_WITH_AHCI),VBOX_WITH_AHCI,) \
-	$(if $(VBOX_WITH_LSILOGIC),VBOX_WITH_LSILOGIC,) \
-	$(if $(VBOX_WITH_LINUX_COMPILER_H),VBOX_WITH_LINUX_COMPILER_H,) \
-	$(if $(VBOX_WITH_RESOURCE_USAGE_API),VBOX_WITH_RESOURCE_USAGE_API,) \
-	$(if $(VBOX_WITH_UNATTENDED),VBOX_WITH_UNATTENDED,) \
-	$(if $(VBOX_WITH_DBUS),VBOX_WITH_DBUS,) \
-	$(if $(VBOX_WITH_DBUS),$(if $(VBOX_USB_WITH_DBUS),VBOX_USB_WITH_DBUS,),) \
-	$(if $(VBOX_USB_WITH_SYSFS),VBOX_USB_WITH_SYSFS,) \
-	$(if $(VBOX_USB_WITH_INOTIFY),VBOX_USB_WITH_INOTIFY,) \
-	$(if $(VBOX_WITH_NAT_SERVICE),VBOX_WITH_NAT_SERVICE,) \
-	$(if $(VBOX_WITH_IOMMU_AMD),VBOX_WITH_IOMMU_AMD,) \
-	$(if $(VBOX_WITH_IOMMU_INTEL),VBOX_WITH_IOMMU_INTEL,) \
-	$(if $(VBOX_WITH_TPM),VBOX_WITH_TPM,) \
-	$(if $(VBOX_WITH_FULL_VM_ENCRYPTION),VBOX_WITH_FULL_VM_ENCRYPTION,) \
-	$(if-expr defined(VBOX_WITH_SDS),VBOX_WITH_SDS,)
-ifdef VBOX_WITH_USB
- VBoxSVC_DEFS += \
-	VBOX_WITH_USB \
-	$(if $(VBOX_WITH_EHCI),VBOX_WITH_EHCI,) \
-	$(if $(VBOX_WITH_NEW_USB_CODE_ON_DARWIN),VBOX_WITH_NEW_USB_CODE_ON_DARWIN,)
-endif
-VBoxSVC_DEFS.win += VBOX_COM_OUTOFPROC_MODULE _WIN32_WINNT=0x0600
-# Try to load and use libhal at runtime for probing removable media
-# VBoxSVC_DEFS.linux += VBOX_USE_LIBHAL
-VBoxSVC_DEFS.solaris += VBOX_USE_LIBHAL
-
-if $(KBUILD_TARGET) != "win" && $(VBOX_GCC_VERSION_CXX) >= 40900 # gcc 4.9.x (4.8.x is causing endless RT_ELEMENT trouble)
- VBoxSVC_CXXFLAGS = -Wunused -Wconversion
-endif
-
-VBoxSVC_INCS = \
-	include \
-	$(VBoxSVC_0_OUTDIR) \
-	$(dir $(VBOX_XML_SCHEMADEFS_H)) \
-	$(VBOX_MAIN_APIWRAPPER_INCS) \
-	. \
-	$(VBOX_GRAPHICS_INCS)
-VBoxSVC_INCS.win = \
-	$(VBoxCOM_0_OUTDIR)
-ifdef VBOX_WITH_USB
- VBoxSVC_INCS.os2 = \
-	$(PATH_ROOT)/src/VBox/HostDrivers/VBoxUSB/os2
-endif
-
-VBoxSVC_LIBS += \
-	$(PATH_STAGE_LIB)/VBoxAPIWrap$(VBOX_SUFF_LIB) \
-	$(PATH_STAGE_LIB)/SSMStandalone$(VBOX_SUFF_LIB) \
-	$(LIB_DDU)
-
-VBoxSVC_SDKS = VBoxLibPng VBoxZlib
-VBoxSVC_LIBS.solaris = \
-	adm \
-	nsl \
-	devinfo \
-	socket
-
-VBoxSVC_LIBS.win += \
-	$(PATH_SDK_$(VBOX_WINPSDK)_LIB)/dnsapi.lib
-
-VBoxSVC_INTERMEDIATES = \
-	$(VBOX_MAIN_PREREQS) \
-	$(VBOX_XML_SCHEMADEFS_H) \
-	$(VBOX_AUTOGEN_EVENT_H) \
-	$(VBOX_AUTOGEN_STRINGIFY_ENUMS_H) \
-	$(VBOX_MAIN_APIWRAPPER_GEN_HDRS)
-
-VBoxSVC_SOURCES = \
-	$(VBOX_SVC_CERTS_FILE) \
-	$(VBoxAPIWrap_0_OUTDIR)/VBoxAPI.d \
-	src-all/AuthLibrary.cpp \
-	src-all/CryptoUtils.cpp \
-	src-all/DisplayPNGUtil.cpp \
-	src-all/DisplayResampleImage.cpp \
-	src-all/DisplayUtils.cpp \
-	src-all/EventImpl.cpp \
-	src-all/Global.cpp \
-	src-all/GlobalStatusConversion.cpp \
-	src-all/HashedPw.cpp \
-	src-all/Logging.cpp \
-	src-all/NvramStoreImpl.cpp \
-	src-all/PCIDeviceAttachmentImpl.cpp \
-	src-all/ProgressImpl.cpp \
-	src-all/SecretKeyStore.cpp \
-  src-all/SharedFolderImpl.cpp \
-	src-all/AutoCaller.cpp \
-	src-all/ThreadTask.cpp \
-	src-all/VirtualBoxBase.cpp \
-	src-all/VirtualBoxErrorInfoImpl.cpp \
-	$(if $(VBOX_WITH_EXTPACK),src-all/ExtPackManagerImpl.cpp src-all/ExtPackUtil.cpp,) \
-	src-server/CertificateImpl.cpp \
-	src-server/ApplianceImpl.cpp \
-	src-server/ApplianceImplExport.cpp \
-	src-server/ApplianceImplImport.cpp \
-	src-server/AudioAdapterImpl.cpp \
-	src-server/AudioSettingsImpl.cpp \
-	src-server/BandwidthControlImpl.cpp \
-	src-server/BandwidthGroupImpl.cpp \
-	src-server/BIOSSettingsImpl.cpp \
-	src-server/RecordingSettingsImpl.cpp \
-	src-server/RecordingScreenSettingsImpl.cpp \
-	src-server/GraphicsAdapterImpl.cpp \
-	src-server/ClientWatcher.cpp \
-	src-server/ClientToken.cpp \
-	src-server/CloudProviderManagerImpl.cpp \
-	src-server/CPUProfileImpl.cpp \
-	src-server/DataStreamImpl.cpp \
-	src-server/DHCPServerImpl.cpp \
-	src-server/DHCPConfigImpl.cpp \
-	../NetworkServices/Dhcpd/DhcpOptions.cpp \
-	src-server/NetworkServiceRunner.cpp \
-	src-server/NATNetworkImpl.cpp \
-	$(if $(VBOX_WITH_CLOUD_NET), \
-	src-server/CloudNetworkImpl.cpp \
-	,) \
-	src-server/GuestDebugControlImpl.cpp \
-	src-server/GuestOSTypeImpl.cpp \
-	src-server/HostDnsService.cpp \
-	src-server/HostImpl.cpp \
-	src-server/HostAudioDeviceImpl.cpp \
-	src-server/HostNetworkInterfaceImpl.cpp \
-	src-server/HostPower.cpp \
-	$(if $(VBOX_WITH_LIBCURL), \
-	$(if $(VBOX_WITH_UPDATE_AGENT), \
-	src-server/UpdateAgentImpl.cpp,), \
-	) \
-	src-server/HostVideoInputDeviceImpl.cpp \
-	src-server/HostDrivePartitionImpl.cpp \
-	src-server/HostDriveImpl.cpp \
-	src-server/MachineImpl.cpp \
-	src-all/MachineLaunchVMCommonWorker.cpp \
-	src-server/MachineImplCloneVM.cpp \
-	src-server/MachineImplMoveVM.cpp \
-	src-server/Matching.cpp \
-	src-server/MediumAttachmentImpl.cpp \
-	src-server/MediumFormatImpl.cpp \
-	src-server/MediumImpl.cpp \
-	src-server/MediumLock.cpp \
-	src-server/MediumIOImpl.cpp \
-	src-server/NATEngineImpl.cpp \
-	src-server/NetworkAdapterImpl.cpp \
-	src-server/ParallelPortImpl.cpp \
-	src-server/ProgressProxyImpl.cpp \
-	src-server/SerialPortImpl.cpp \
-	src-server/SnapshotImpl.cpp \
-	src-server/StorageControllerImpl.cpp \
-	src-server/SystemPropertiesImpl.cpp \
-	src-server/TokenImpl.cpp \
-	src-server/TrustedPlatformModuleImpl.cpp \
-	src-server/UefiVariableStoreImpl.cpp \
-	$(if $(VBOX_WITH_UNATTENDED), \
-	src-server/UnattendedImpl.cpp \
-	src-server/UnattendedInstaller.cpp \
-	src-server/UnattendedOs2Installer.cpp \
-	src-server/UnattendedScript.cpp \
-	src-all/TextScript.cpp \
-	,) \
-	src-server/USBControllerImpl.cpp \
-	src-server/USBDeviceFiltersImpl.cpp \
-	src-server/VFSExplorerImpl.cpp \
-	src-server/VirtualBoxImpl.cpp \
-	src-server/VRDEServerImpl.cpp \
-	src-server/generic/AutostartDb-generic.cpp \
-	xml/ovfreader.cpp \
-	xml/Settings.cpp \
-	$(VBOX_XML_SCHEMADEFS_CPP) \
-	$(VBOX_AUTOGEN_EVENT_CPP) \
-	$(VBOX_AUTOGEN_STRINGIFY_ENUMS_CPP) \
-	$(if $(VBOX_WITH_XPCOM),src-server/xpcom/server.cpp,)
-
-ifdef VBOX_WITH_MAIN_NLS
-VBoxSVC_SOURCES += \
-	src-all/VirtualBoxTranslator.cpp \
-	src-all/QMTranslatorImpl.cpp
-endif
-
-ifn1of ($(KBUILD_TARGET), win darwin)
-VBoxSVC_SOURCES += $(PATH_ROOT)/src/VBox/Devices/Network/slirp/resolv_conf_parser.c
-#$(PATH_ROOT)/src/VBox/Devices/Network/slirp/resolv_conf_parser.c_DEFS += LOG_GROUP=LOG_GROUP_MAIN
-endif
-
-VBoxSVC_SOURCES.darwin = \
-	src-server/darwin/iokit.cpp \
-	src-server/darwin/HostPowerDarwin.cpp \
-	src-server/darwin/HostDnsServiceDarwin.cpp
-ifdef VBOX_WITH_VMNET
- VBoxSVC_SOURCES.darwin += \
- 	src-server/HostOnlyNetworkImpl.cpp
-endif
-
-VBoxSVC_SOURCES.win = \
-	src-server/win/svcmain.cpp \
-	src-server/win/svchlp.cpp \
-	src-server/win/HostPowerWin.cpp \
-	src-server/win/VBoxSVC.rc \
-	src-server/win/HostDnsServiceWin.cpp
-
-VBoxSVC_SOURCES.linux = \
-	src-server/linux/HostHardwareLinux.cpp \
-	src-server/linux/HostDnsServiceLinux.cpp \
-	$(if $(VBOX_WITH_DBUS),src-server/linux/HostPowerLinux.cpp) \
-	src-server/HostDnsServiceResolvConf.cpp
-
-VBoxSVC_SOURCES.solaris = \
-	src-server/linux/vbox-libhal.cpp \
-	src-server/solaris/DynLoadLibSolaris.cpp \
-	src-server/HostDnsServiceResolvConf.cpp
-
-VBoxSVC_SOURCES.os2 = \
-	src-server/HostDnsServiceResolvConf.cpp
-
-VBoxSVC_SOURCES.freebsd = \
-	src-server/freebsd/HostHardwareFreeBSD.cpp \
-	src-server/HostDnsServiceResolvConf.cpp
-
-VBoxSVC_LDFLAGS.freebsd += -lcam
-
-
-ifdef VBOX_WITH_USB
- ifdef VBOX_WITH_SYSFS_BY_DEFAULT
-  src-server/linux/USBProxyBackendLinux.cpp_DEFS += VBOX_WITH_SYSFS_BY_DEFAULT
- endif
- VBoxSVC_SOURCES  += \
-	src-server/USBDeviceFilterImpl.cpp \
-	src-server/USBProxyService.cpp \
-	src-server/USBProxyBackend.cpp \
-	src-server/generic/USBProxyBackendUsbIp.cpp \
-	src-server/HostUSBDeviceImpl.cpp
- VBoxSVC_SOURCES.darwin  +=  src-server/darwin/USBProxyBackendDarwin.cpp
- VBoxSVC_SOURCES.linux   +=   src-server/linux/USBProxyBackendLinux.cpp
- VBoxSVC_SOURCES.linux   +=   src-server/linux/USBGetDevices.cpp
- VBoxSVC_SOURCES.os2     +=     src-server/os2/USBProxyBackendOs2.cpp
- VBoxSVC_SOURCES.solaris += src-server/solaris/USBProxyBackendSolaris.cpp
- VBoxSVC_SOURCES.win     +=     src-server/win/USBProxyBackendWindows.cpp
- VBoxSVC_SOURCES.freebsd += src-server/freebsd/USBProxyBackendFreeBSD.cpp
-endif
-
-ifdef VBOX_WITH_NETFLT
- VBoxSVC_SDKS.win += VBoxWinNewDevLib
+  # $(call KB_FN_AUTO_CMD_DEPS,$(VBoxSDS_0_OUTDIR)/VBoxSDS.rgs)
+  # $(VBoxSDS_0_OUTDIR)/VBoxSDS.rgs: $(VBOX_PATH_MAIN_SRC)/src-all/win/VirtualBox_rgs.xsl $(VBOX_XIDL_FILE) | $$(dir $$@)
+  #	$(call KB_FN_AUTO_CMD_DEPS_COMMANDS)
+  #	$(VBOX_XSLTPROC) \
+  #		--stringparam Application "VirtualBox System" \
+  #		--stringparam Module VBoxSDS \
+  #		-o $@ \
+  #		$(VBOX_PATH_MAIN_SRC)/src-all/win/VirtualBox_rgs.xsl \
+  #		$(VBOX_XIDL_FILE)
+  #
+ endif #if defined(VBOX_WITH_SDS) && "$(KBUILD_TARGET)" == "win"
+
+ #
+ # VBoxSVC executable
+ #
+ PROGRAMS += VBoxSVC
+ VBoxSVC_TEMPLATE = VBoxMainExe
+ if defined(VBOX_WITH_PRECOMPILED_HEADERS) && "$(KBUILD_TARGET)" == "win"
+  VBoxSVC_USES   += vccprecomp
+  VBoxSVC_PCH_HDR := $(PATH_SUB_CURRENT)/src-server/win/precomp_vcc.h
+ else if $(KBUILD_KMK_REVISION) >= 3256 && "$(KBUILD_TARGET)" != "darwin" && !defined(VBOX_WITHOUT_PRECOMPILED_HEADERS)
+  if $(VBOX_GCC_VERSION_CXX) >= 50000 # GCC 4.x runs into trouble compiling the header.
+   VBoxSVC_USES += gccprecomp
+   VBoxSVC_PCH_HDR := $(PATH_SUB_CURRENT)/src-server/xpcom/precomp_gcc.h
+  endif
+ endif
+ VBoxSVC_DEFS = \
+ 	IN_VBOXSVC \
+ 	VBOX_MAIN_SETTINGS_ADDONS \
+ 	IN_VMM_STATIC \
+ 	$(VBOX_MAIN_DEFS) \
+ 	$(if $(VBOX_WITH_VBOXSDL),VBOX_WITH_VBOXSDL,) \
+ 	$(if $(VBOX_WITH_HEADLESS),VBOX_WITH_HEADLESS,) \
+ 	$(if $(VBOX_WITH_QTGUI),VBOX_WITH_QTGUI,) \
+ 	$(if $(VBOX_WITH_AHCI),VBOX_WITH_AHCI,) \
+ 	$(if $(VBOX_WITH_LSILOGIC),VBOX_WITH_LSILOGIC,) \
+ 	$(if $(VBOX_WITH_LINUX_COMPILER_H),VBOX_WITH_LINUX_COMPILER_H,) \
+ 	$(if $(VBOX_WITH_RESOURCE_USAGE_API),VBOX_WITH_RESOURCE_USAGE_API,) \
+ 	$(if $(VBOX_WITH_UNATTENDED),VBOX_WITH_UNATTENDED,) \
+ 	$(if $(VBOX_WITH_DBUS),VBOX_WITH_DBUS,) \
+ 	$(if $(VBOX_WITH_DBUS),$(if $(VBOX_USB_WITH_DBUS),VBOX_USB_WITH_DBUS,),) \
+ 	$(if $(VBOX_USB_WITH_SYSFS),VBOX_USB_WITH_SYSFS,) \
+ 	$(if $(VBOX_USB_WITH_INOTIFY),VBOX_USB_WITH_INOTIFY,) \
+ 	$(if $(VBOX_WITH_NAT_SERVICE),VBOX_WITH_NAT_SERVICE,) \
+ 	$(if $(VBOX_WITH_IOMMU_AMD),VBOX_WITH_IOMMU_AMD,) \
+ 	$(if $(VBOX_WITH_IOMMU_INTEL),VBOX_WITH_IOMMU_INTEL,) \
+ 	$(if $(VBOX_WITH_TPM),VBOX_WITH_TPM,) \
+ 	$(if $(VBOX_WITH_FULL_VM_ENCRYPTION),VBOX_WITH_FULL_VM_ENCRYPTION,) \
+ 	$(if-expr defined(VBOX_WITH_SDS),VBOX_WITH_SDS,)
+ ifdef VBOX_WITH_USB
+  VBoxSVC_DEFS += \
+  	VBOX_WITH_USB \
+  	$(if $(VBOX_WITH_EHCI),VBOX_WITH_EHCI,) \
+  	$(if $(VBOX_WITH_NEW_USB_CODE_ON_DARWIN),VBOX_WITH_NEW_USB_CODE_ON_DARWIN,)
+ endif
+ VBoxSVC_DEFS.win += VBOX_COM_OUTOFPROC_MODULE _WIN32_WINNT=0x0600
+ # Try to load and use libhal at runtime for probing removable media
+ # VBoxSVC_DEFS.linux += VBOX_USE_LIBHAL
+ VBoxSVC_DEFS.solaris += VBOX_USE_LIBHAL
+
+ if $(KBUILD_TARGET) != "win" && $(VBOX_GCC_VERSION_CXX) >= 40900 # gcc 4.9.x (4.8.x is causing endless RT_ELEMENT trouble)
+  VBoxSVC_CXXFLAGS = -Wunused -Wconversion
+ endif
+
+ VBoxSVC_INCS = \
+ 	include \
+ 	$(VBoxSVC_0_OUTDIR) \
+ 	$(dir $(VBOX_XML_SCHEMADEFS_H)) \
+ 	$(VBOX_MAIN_APIWRAPPER_INCS) \
+ 	. \
+ 	$(VBOX_GRAPHICS_INCS)
+ VBoxSVC_INCS.win = \
+ 	$(VBoxCOM_0_OUTDIR)
+ ifdef VBOX_WITH_USB
+  VBoxSVC_INCS.os2 = \
+  	$(PATH_ROOT)/src/VBox/HostDrivers/VBoxUSB/os2
+ endif
+
+ VBoxSVC_LIBS += \
+ 	$(PATH_STAGE_LIB)/VBoxAPIWrap$(VBOX_SUFF_LIB) \
+ 	$(PATH_STAGE_LIB)/SSMStandalone$(VBOX_SUFF_LIB) \
+ 	$(LIB_DDU)
+
+ VBoxSVC_SDKS = VBoxLibPng VBoxZlib
+ VBoxSVC_LIBS.solaris = \
+ 	adm \
+ 	nsl \
+ 	devinfo \
+ 	socket
+
  VBoxSVC_LIBS.win += \
-	$(PATH_STAGE_LIB)/WinNetConfigDll$(VBOX_SUFF_LIB) \
-	$(PATH_STAGE_LIB)/VBoxDrvCfgDll$(VBOX_SUFF_LIB) \
-	$(PATH_TOOL_$(VBOX_VCC_TOOL)_LIB)/comsupp.lib \
-	$(PATH_SDK_$(VBOX_WINPSDK)_LIB)/WbemUuid.Lib
-endif
-VBoxSVC_LDFLAGS.darwin    = -framework IOKit -framework SystemConfiguration
-
-ifdef VBOX_WITH_3D_ACCELERATION
- VBoxSVC_DEFS            += VBOX_WITH_3D_ACCELERATION
- VBoxSVC_LIBS            += $(PATH_STAGE_LIB)/VBoxOGLTest$(VBOX_SUFF_LIB)
- VBoxSVC_LDFLAGS.darwin  += -framework OpenGL
-endif
-
-ifeq ($(KBUILD_TYPE),debug)
- VBoxSVC_LDFLAGS.linux   += -rdynamic # for backtrace_symbols()
-endif
-
-ifdef VBOX_WITH_RESOURCE_USAGE_API
- VBoxSVC_SOURCES += \
-	src-server/PerformanceImpl.cpp \
-	src-server/Performance.cpp
- VBoxSVC_SOURCES.darwin  +=  src-server/darwin/PerformanceDarwin.cpp
- VBoxSVC_SOURCES.freebsd += src-server/freebsd/PerformanceFreeBSD.cpp
- VBoxSVC_SOURCES.linux   +=   src-server/linux/PerformanceLinux.cpp
- VBoxSVC_SOURCES.os2     +=     src-server/os2/PerformanceOs2.cpp
- VBoxSVC_SOURCES.solaris += src-server/solaris/PerformanceSolaris.cpp
- VBoxSVC_SOURCES.win     +=     src-server/win/PerformanceWin.cpp
- VBoxSVC_LDFLAGS.darwin  += -lproc
- VBoxSVC_LDFLAGS.solaris += -lkstat -lnvpair
- VBoxSVC_LDFLAGS.win     += psapi.lib powrprof.lib
-endif
-
-ifdef VBOX_WITH_HOSTNETIF_API
- VBoxSVC_SOURCES.win     +=     src-server/win/NetIf-win.cpp
- VBoxSVC_SOURCES.linux   +=   src-server/linux/NetIf-linux.cpp
- VBoxSVC_SOURCES.os2     +=     src-server/os2/NetIf-os2.cpp
- VBoxSVC_SOURCES.darwin  +=  src-server/darwin/NetIf-darwin.cpp
- VBoxSVC_SOURCES.solaris += src-server/solaris/NetIf-solaris.cpp
- VBoxSVC_SOURCES.freebsd += src-server/freebsd/NetIf-freebsd.cpp
- VBoxSVC_DEFS            += VBOX_WITH_HOSTNETIF_API
- if1of ($(KBUILD_TARGET), linux darwin solaris freebsd)
-  VBoxSVC_SOURCES        += src-server/generic/NetIf-generic.cpp
- endif
-endif
-
-$(call KB_FN_DO_PASS0_ON_TARGET,VBoxSVC) # Sets VBoxSVC_0_OUTDIR
-
-ifdef VBOX_WITH_MAIN_USB_ID_DATABASE # Generate a database of USB vendor IDs and device IDs.
- VBoxSVC_DEFS    += VBOX_WITH_MAIN_USB_ID_DATABASE
- VBoxSVC_SOURCES += $(VBoxSVC_0_OUTDIR)/USBIdDatabase.cpp
- VBoxSVC_CLEAN   += $(VBoxSVC_0_OUTDIR)/USBIdDatabase.cpp
-
- $(call KB_FN_AUTO_CMD_DEPS,$(VBoxSVC_0_OUTDIR)/USBIdDatabase.cpp)
- $(VBoxSVC_0_OUTDIR)/USBIdDatabase.cpp:  $$(USBIdDatabaseGenerator_1_TARGET) \
- 		$(PATH_SUB_CURRENT)/src-server/usb.ids $(PATH_SUB_CURRENT)/src-server/custom.ids | $$(dir $$@)
+ 	$(PATH_SDK_$(VBOX_WINPSDK)_LIB)/dnsapi.lib
+
+ VBoxSVC_INTERMEDIATES = \
+ 	$(VBOX_MAIN_PREREQS) \
+ 	$(VBOX_XML_SCHEMADEFS_H) \
+ 	$(VBOX_AUTOGEN_EVENT_H) \
+ 	$(VBOX_AUTOGEN_STRINGIFY_ENUMS_H) \
+ 	$(VBOX_MAIN_APIWRAPPER_GEN_HDRS)
+
+ VBoxSVC_SOURCES = \
+ 	$(VBOX_SVC_CERTS_FILE) \
+ 	$(VBoxAPIWrap_0_OUTDIR)/VBoxAPI.d \
+ 	src-all/AuthLibrary.cpp \
+ 	src-all/CryptoUtils.cpp \
+ 	src-all/DisplayPNGUtil.cpp \
+ 	src-all/DisplayResampleImage.cpp \
+ 	src-all/DisplayUtils.cpp \
+ 	src-all/EventImpl.cpp \
+ 	src-all/Global.cpp \
+ 	src-all/GlobalStatusConversion.cpp \
+ 	src-all/HashedPw.cpp \
+ 	src-all/Logging.cpp \
+ 	src-all/NvramStoreImpl.cpp \
+ 	src-all/PCIDeviceAttachmentImpl.cpp \
+ 	src-all/ProgressImpl.cpp \
+ 	src-all/SecretKeyStore.cpp \
+ 	src-all/SharedFolderImpl.cpp \
+ 	src-all/AutoCaller.cpp \
+ 	src-all/ThreadTask.cpp \
+ 	src-all/VirtualBoxBase.cpp \
+ 	src-all/VirtualBoxErrorInfoImpl.cpp \
+ 	$(if $(VBOX_WITH_EXTPACK),src-all/ExtPackManagerImpl.cpp src-all/ExtPackUtil.cpp,) \
+ 	src-server/CertificateImpl.cpp \
+ 	src-server/ApplianceImpl.cpp \
+ 	src-server/ApplianceImplExport.cpp \
+ 	src-server/ApplianceImplImport.cpp \
+ 	src-server/AudioAdapterImpl.cpp \
+ 	src-server/AudioSettingsImpl.cpp \
+ 	src-server/BandwidthControlImpl.cpp \
+ 	src-server/BandwidthGroupImpl.cpp \
+ 	src-server/BIOSSettingsImpl.cpp \
+ 	src-server/RecordingSettingsImpl.cpp \
+ 	src-server/RecordingScreenSettingsImpl.cpp \
+ 	src-server/GraphicsAdapterImpl.cpp \
+ 	src-server/ClientWatcher.cpp \
+ 	src-server/ClientToken.cpp \
+ 	src-server/CloudProviderManagerImpl.cpp \
+ 	src-server/CPUProfileImpl.cpp \
+ 	src-server/DataStreamImpl.cpp \
+ 	src-server/DHCPServerImpl.cpp \
+ 	src-server/DHCPConfigImpl.cpp \
+ 	../NetworkServices/Dhcpd/DhcpOptions.cpp \
+ 	src-server/NetworkServiceRunner.cpp \
+ 	src-server/NATNetworkImpl.cpp \
+ 	$(if $(VBOX_WITH_CLOUD_NET), \
+ 	src-server/CloudNetworkImpl.cpp \
+ 	,) \
+ 	src-server/GuestDebugControlImpl.cpp \
+ 	src-server/GuestOSTypeImpl.cpp \
+ 	src-server/HostDnsService.cpp \
+ 	src-server/HostImpl.cpp \
+ 	src-server/HostAudioDeviceImpl.cpp \
+ 	src-server/HostNetworkInterfaceImpl.cpp \
+ 	src-server/HostPower.cpp \
+ 	$(if $(VBOX_WITH_LIBCURL), \
+ 	$(if $(VBOX_WITH_UPDATE_AGENT), \
+ 	src-server/UpdateAgentImpl.cpp,), \
+ 	) \
+ 	src-server/HostVideoInputDeviceImpl.cpp \
+ 	src-server/HostDrivePartitionImpl.cpp \
+ 	src-server/HostDriveImpl.cpp \
+ 	src-server/MachineImpl.cpp \
+ 	src-all/MachineLaunchVMCommonWorker.cpp \
+ 	src-server/MachineImplCloneVM.cpp \
+ 	src-server/MachineImplMoveVM.cpp \
+ 	src-server/Matching.cpp \
+ 	src-server/MediumAttachmentImpl.cpp \
+ 	src-server/MediumFormatImpl.cpp \
+ 	src-server/MediumImpl.cpp \
+ 	src-server/MediumLock.cpp \
+ 	src-server/MediumIOImpl.cpp \
+ 	src-server/NATEngineImpl.cpp \
+ 	src-server/NetworkAdapterImpl.cpp \
+ 	src-server/ParallelPortImpl.cpp \
+ 	src-server/ProgressProxyImpl.cpp \
+ 	src-server/SerialPortImpl.cpp \
+ 	src-server/SnapshotImpl.cpp \
+ 	src-server/StorageControllerImpl.cpp \
+ 	src-server/SystemPropertiesImpl.cpp \
+ 	src-server/TokenImpl.cpp \
+ 	src-server/TrustedPlatformModuleImpl.cpp \
+ 	src-server/UefiVariableStoreImpl.cpp \
+ 	$(if $(VBOX_WITH_UNATTENDED), \
+ 	src-server/UnattendedImpl.cpp \
+ 	src-server/UnattendedInstaller.cpp \
+ 	src-server/UnattendedOs2Installer.cpp \
+ 	src-server/UnattendedScript.cpp \
+ 	src-all/TextScript.cpp \
+ 	,) \
+ 	src-server/USBControllerImpl.cpp \
+ 	src-server/USBDeviceFiltersImpl.cpp \
+ 	src-server/VFSExplorerImpl.cpp \
+ 	src-server/VirtualBoxImpl.cpp \
+ 	src-server/VRDEServerImpl.cpp \
+ 	src-server/generic/AutostartDb-generic.cpp \
+ 	xml/ovfreader.cpp \
+ 	xml/Settings.cpp \
+ 	$(VBOX_XML_SCHEMADEFS_CPP) \
+ 	$(VBOX_AUTOGEN_EVENT_CPP) \
+ 	$(VBOX_AUTOGEN_STRINGIFY_ENUMS_CPP) \
+ 	$(if $(VBOX_WITH_XPCOM),src-server/xpcom/server.cpp,)
+
+ ifdef VBOX_WITH_MAIN_NLS
+  VBoxSVC_SOURCES += \
+  	src-all/VirtualBoxTranslator.cpp \
+  	src-all/QMTranslatorImpl.cpp
+ endif
+
+ ifn1of ($(KBUILD_TARGET), win darwin)
+  VBoxSVC_SOURCES += $(PATH_ROOT)/src/VBox/Devices/Network/slirp/resolv_conf_parser.c
+  #$(PATH_ROOT)/src/VBox/Devices/Network/slirp/resolv_conf_parser.c_DEFS += LOG_GROUP=LOG_GROUP_MAIN
+ endif
+
+ VBoxSVC_SOURCES.darwin = \
+ 	src-server/darwin/iokit.cpp \
+ 	src-server/darwin/HostPowerDarwin.cpp \
+ 	src-server/darwin/HostDnsServiceDarwin.cpp
+ ifdef VBOX_WITH_VMNET
+  VBoxSVC_SOURCES.darwin += \
+  	src-server/HostOnlyNetworkImpl.cpp
+ endif
+
+ VBoxSVC_SOURCES.win = \
+ 	src-server/win/svcmain.cpp \
+ 	src-server/win/svchlp.cpp \
+ 	src-server/win/HostPowerWin.cpp \
+ 	src-server/win/VBoxSVC.rc \
+ 	src-server/win/HostDnsServiceWin.cpp
+
+ VBoxSVC_SOURCES.linux = \
+ 	src-server/linux/HostHardwareLinux.cpp \
+ 	src-server/linux/HostDnsServiceLinux.cpp \
+ 	$(if $(VBOX_WITH_DBUS),src-server/linux/HostPowerLinux.cpp) \
+ 	src-server/HostDnsServiceResolvConf.cpp
+
+ VBoxSVC_SOURCES.solaris = \
+ 	src-server/linux/vbox-libhal.cpp \
+ 	src-server/solaris/DynLoadLibSolaris.cpp \
+ 	src-server/HostDnsServiceResolvConf.cpp
+
+ VBoxSVC_SOURCES.os2 = \
+ 	src-server/HostDnsServiceResolvConf.cpp
+
+ VBoxSVC_SOURCES.freebsd = \
+ 	src-server/freebsd/HostHardwareFreeBSD.cpp \
+ 	src-server/HostDnsServiceResolvConf.cpp
+
+ VBoxSVC_LDFLAGS.freebsd += -lcam
+
+
+ ifdef VBOX_WITH_USB
+  ifdef VBOX_WITH_SYSFS_BY_DEFAULT
+   src-server/linux/USBProxyBackendLinux.cpp_DEFS += VBOX_WITH_SYSFS_BY_DEFAULT
+  endif
+  VBoxSVC_SOURCES += \
+  	src-server/USBDeviceFilterImpl.cpp \
+  	src-server/USBProxyService.cpp \
+  	src-server/USBProxyBackend.cpp \
+  	src-server/generic/USBProxyBackendUsbIp.cpp \
+  	src-server/HostUSBDeviceImpl.cpp
+  VBoxSVC_SOURCES.darwin += src-server/darwin/USBProxyBackendDarwin.cpp
+  VBoxSVC_SOURCES.linux  += src-server/linux/USBProxyBackendLinux.cpp
+  VBoxSVC_SOURCES.linux  += src-server/linux/USBGetDevices.cpp
+  VBoxSVC_SOURCES.os2    += src-server/os2/USBProxyBackendOs2.cpp
+  VBoxSVC_SOURCES.solaris += src-server/solaris/USBProxyBackendSolaris.cpp
+  VBoxSVC_SOURCES.win    += src-server/win/USBProxyBackendWindows.cpp
+  VBoxSVC_SOURCES.freebsd += src-server/freebsd/USBProxyBackendFreeBSD.cpp
+ endif
+
+ ifdef VBOX_WITH_NETFLT
+  VBoxSVC_SDKS.win += VBoxWinNewDevLib
+  VBoxSVC_LIBS.win += \
+  	$(PATH_STAGE_LIB)/WinNetConfigDll$(VBOX_SUFF_LIB) \
+  	$(PATH_STAGE_LIB)/VBoxDrvCfgDll$(VBOX_SUFF_LIB) \
+  	$(PATH_TOOL_$(VBOX_VCC_TOOL)_LIB)/comsupp.lib \
+  	$(PATH_SDK_$(VBOX_WINPSDK)_LIB)/WbemUuid.Lib
+ endif
+ VBoxSVC_LDFLAGS.darwin   = -framework IOKit -framework SystemConfiguration
+
+ ifdef VBOX_WITH_3D_ACCELERATION
+  VBoxSVC_DEFS           += VBOX_WITH_3D_ACCELERATION
+  VBoxSVC_LIBS           += $(PATH_STAGE_LIB)/VBoxOGLTest$(VBOX_SUFF_LIB)
+  VBoxSVC_LDFLAGS.darwin += -framework OpenGL
+ endif
+
+ ifeq ($(KBUILD_TYPE),debug)
+  VBoxSVC_LDFLAGS.linux  += -rdynamic # for backtrace_symbols()
+ endif
+
+ ifdef VBOX_WITH_RESOURCE_USAGE_API
+  VBoxSVC_SOURCES += \
+  	src-server/PerformanceImpl.cpp \
+  	src-server/Performance.cpp
+  VBoxSVC_SOURCES.darwin += src-server/darwin/PerformanceDarwin.cpp
+  VBoxSVC_SOURCES.freebsd += src-server/freebsd/PerformanceFreeBSD.cpp
+  VBoxSVC_SOURCES.linux  += src-server/linux/PerformanceLinux.cpp
+  VBoxSVC_SOURCES.os2    += src-server/os2/PerformanceOs2.cpp
+  VBoxSVC_SOURCES.solaris += src-server/solaris/PerformanceSolaris.cpp
+  VBoxSVC_SOURCES.win    += src-server/win/PerformanceWin.cpp
+  VBoxSVC_LDFLAGS.darwin += -lproc
+  VBoxSVC_LDFLAGS.solaris += -lkstat -lnvpair
+  VBoxSVC_LDFLAGS.win    += psapi.lib powrprof.lib
+ endif
+
+ ifdef VBOX_WITH_HOSTNETIF_API
+  VBoxSVC_SOURCES.win    += src-server/win/NetIf-win.cpp
+  VBoxSVC_SOURCES.linux  += src-server/linux/NetIf-linux.cpp
+  VBoxSVC_SOURCES.os2    += src-server/os2/NetIf-os2.cpp
+  VBoxSVC_SOURCES.darwin += src-server/darwin/NetIf-darwin.cpp
+  VBoxSVC_SOURCES.solaris += src-server/solaris/NetIf-solaris.cpp
+  VBoxSVC_SOURCES.freebsd += src-server/freebsd/NetIf-freebsd.cpp
+  VBoxSVC_DEFS           += VBOX_WITH_HOSTNETIF_API
+  if1of ($(KBUILD_TARGET), linux darwin solaris freebsd)
+   VBoxSVC_SOURCES       += src-server/generic/NetIf-generic.cpp
+  endif
+ endif
+
+ $(call KB_FN_DO_PASS0_ON_TARGET,VBoxSVC) # Sets VBoxSVC_0_OUTDIR
+
+ ifdef VBOX_WITH_MAIN_USB_ID_DATABASE # Generate a database of USB vendor IDs and device IDs.
+  VBoxSVC_DEFS   += VBOX_WITH_MAIN_USB_ID_DATABASE
+  VBoxSVC_SOURCES += $(VBoxSVC_0_OUTDIR)/USBIdDatabase.cpp
+  VBoxSVC_CLEAN  += $(VBoxSVC_0_OUTDIR)/USBIdDatabase.cpp
+
+  $(call KB_FN_AUTO_CMD_DEPS,$(VBoxSVC_0_OUTDIR)/USBIdDatabase.cpp)
+  $(VBoxSVC_0_OUTDIR)/USBIdDatabase.cpp: $$(USBIdDatabaseGenerator_1_TARGET) \
+  		$(PATH_SUB_CURRENT)/src-server/usb.ids $(PATH_SUB_CURRENT)/src-server/custom.ids | $$(dir $$@)
 	$(call KB_FN_AUTO_CMD_DEPS_COMMANDS)
 	$(call MSG_GENERATE,USBIdDatabase,$@,$(USBIdDatabaseGenerator_1_TARGET))
 	$(QUIET)$(USBIdDatabaseGenerator_1_TARGET) -o "$@" $(filter %.ids,$^)
 
- BLDPROGS += USBIdDatabaseGenerator
- USBIdDatabaseGenerator_TEMPLATE = VBoxAdvBldProg
- USBIdDatabaseGenerator_SOURCES  = src-server/USBIdDatabaseGenerator.cpp
-else
- VBoxSVC_SOURCES += src-server/USBIdDatabaseStub.cpp
-endif
-
-src-server/win/VBoxSVC.rc_INCS  = $(VBoxSVC_0_OUTDIR)
-src-server/win/VBoxSVC.rc_DEPS  = $(VBoxSVC_0_OUTDIR)/VBoxSVC-icon.rc
-VBoxSVC_CLEAN                  += $(VBoxSVC_0_OUTDIR)/VBoxSVC-icon.rc
-$(call KB_FN_AUTO_CMD_DEPS,$(VBoxSVC_0_OUTDIR)/VBoxSVC-icon.rc)
-$(VBoxSVC_0_OUTDIR)/VBoxSVC-icon.rc: $(VBOX_WINDOWS_ICON_FILE) | $$(dir $$@)
+  BLDPROGS += USBIdDatabaseGenerator
+  USBIdDatabaseGenerator_TEMPLATE = VBoxAdvBldProg
+  USBIdDatabaseGenerator_SOURCES = src-server/USBIdDatabaseGenerator.cpp
+ else
+  VBoxSVC_SOURCES += src-server/USBIdDatabaseStub.cpp
+ endif
+
+ src-server/win/VBoxSVC.rc_INCS = $(VBoxSVC_0_OUTDIR)
+ src-server/win/VBoxSVC.rc_DEPS = $(VBoxSVC_0_OUTDIR)/VBoxSVC-icon.rc
+ VBoxSVC_CLEAN                 += $(VBoxSVC_0_OUTDIR)/VBoxSVC-icon.rc
+ $(call KB_FN_AUTO_CMD_DEPS,$(VBoxSVC_0_OUTDIR)/VBoxSVC-icon.rc)
+ $(VBoxSVC_0_OUTDIR)/VBoxSVC-icon.rc: $(VBOX_WINDOWS_ICON_FILE) | $$(dir $$@)
 	$(call KB_FN_AUTO_CMD_DEPS_COMMANDS)
 	$(APPEND) -t $@ '1 ICON DISCARDABLE "$(subst /,\\,$(VBOX_WINDOWS_ICON_FILE))"'
 
-ifndef VBOX_WITH_MIDL_PROXY_STUB
- src-server/win/VBoxSVC.rc_DEPS += $(VBoxSVC_0_OUTDIR)/VBoxSVC.rgs
- VBoxSVC_CLEAN                  += $(VBoxSVC_0_OUTDIR)/VBoxSVC.rgs
- $(call KB_FN_AUTO_CMD_DEPS,$(VBoxSVC_0_OUTDIR)/VBoxSVC.rgs)
- $(VBoxSVC_0_OUTDIR)/VBoxSVC.rgs: $(VBOX_PATH_MAIN_SRC)/src-all/win/VirtualBox_rgs.xsl $(VBOX_XIDL_FILE) | $$(dir $$@)
+ ifndef VBOX_WITH_MIDL_PROXY_STUB
+  src-server/win/VBoxSVC.rc_DEPS += $(VBoxSVC_0_OUTDIR)/VBoxSVC.rgs
+  VBoxSVC_CLEAN                 += $(VBoxSVC_0_OUTDIR)/VBoxSVC.rgs
+  $(call KB_FN_AUTO_CMD_DEPS,$(VBoxSVC_0_OUTDIR)/VBoxSVC.rgs)
+  $(VBoxSVC_0_OUTDIR)/VBoxSVC.rgs: $(VBOX_PATH_MAIN_SRC)/src-all/win/VirtualBox_rgs.xsl $(VBOX_XIDL_FILE) | $$(dir $$@)
 	$(call KB_FN_AUTO_CMD_DEPS_COMMANDS)
 	$(VBOX_XSLTPROC) \
@@ -859,33 +859,33 @@
 		$(VBOX_PATH_MAIN_SRC)/src-all/win/VirtualBox_rgs.xsl \
 		$(VBOX_XIDL_FILE)
-endif
-
-## @todo r=klaus unfortunately we don't have xmllint everywhere, would be
-# good to check the validity for every VirtualBox.xidl change.
-#$(VBOX_XIDL_FILE).validated.ts: $(VBOX_XIDL_FILE_SRC)
-#	xmllint --dtdvalid $(VBOX_PATH_MAIN_SRC)/idl/VirtualBox.dtd --noout $<
-#	$(QUIET)$(CP) --changed -fv $< $(VBOX_XIDL_FILE).validated.ts
-#
-#OTHERS += $(VBOX_XIDL_FILE).validated.ts
-#OTHER_CLEAN += $(VBOX_XIDL_FILE).validated.ts
-
-testvalidxidl: $(VBOX_XIDL_FILE_SRC)
+ endif
+
+ ## @todo r=klaus unfortunately we don't have xmllint everywhere, would be
+ # good to check the validity for every VirtualBox.xidl change.
+ #$(VBOX_XIDL_FILE).validated.ts: $(VBOX_XIDL_FILE_SRC)
+ #	xmllint --dtdvalid $(VBOX_PATH_MAIN_SRC)/idl/VirtualBox.dtd --noout $<
+ #	$(QUIET)$(CP) --changed -fv $< $(VBOX_XIDL_FILE).validated.ts
+ #
+ #OTHERS += $(VBOX_XIDL_FILE).validated.ts
+ #OTHER_CLEAN += $(VBOX_XIDL_FILE).validated.ts
+
+ testvalidxidl: $(VBOX_XIDL_FILE_SRC)
 	xmllint --dtdvalid $(VBOX_PATH_MAIN_SRC)/idl/VirtualBox.dtd --noout $<
 
 
-#
-# Embed some constraints from XML Schema file into VBoxSVC
-#
-VBOX_XML_SCHEMA	= $(VBOX_PATH_MAIN_SRC)/xml/VirtualBox-settings.xsd
-
-$(VBOX_XML_SCHEMADEFS_H): $(VBOX_XML_SCHEMADEFS_XSL) $(VBOX_XML_SCHEMA) | $$(dir $$@)
+ #
+ # Embed some constraints from XML Schema file into VBoxSVC
+ #
+ VBOX_XML_SCHEMA = $(VBOX_PATH_MAIN_SRC)/xml/VirtualBox-settings.xsd
+
+ $(VBOX_XML_SCHEMADEFS_H): $(VBOX_XML_SCHEMADEFS_XSL) $(VBOX_XML_SCHEMA) | $$(dir $$@)
 	$(call MSG_GENERATE,SchemaDefs,$@,$<)
 	$(QUIET)$(VBOX_XSLTPROC)  --stringparam mode declare -o $@ $(VBOX_XML_SCHEMADEFS_XSL) $(VBOX_XML_SCHEMA)
 
-$(VBOX_XML_SCHEMADEFS_CPP): $(VBOX_XML_SCHEMADEFS_XSL) $(VBOX_XML_SCHEMA) | $$(dir $$@)
+ $(VBOX_XML_SCHEMADEFS_CPP): $(VBOX_XML_SCHEMADEFS_XSL) $(VBOX_XML_SCHEMA) | $$(dir $$@)
 	$(call MSG_GENERATE,SchemaDefs,$@,$<)
 	$(QUIET)$(VBOX_XSLTPROC)  --stringparam mode define  -o $@ $(VBOX_XML_SCHEMADEFS_XSL) $(VBOX_XML_SCHEMA)
 
-testvalidsettings: $(VBOX_XML_SCHEMA)
+ testvalidsettings: $(VBOX_XML_SCHEMA)
 	xmllint --schema $< --noout $(HOME)/.VirtualBox/VirtualBox.xml
 	xmllint --schema $< --noout $(HOME)/.VirtualBox/Machines/*/*.xml
@@ -893,14 +893,14 @@
 	xmllint --schema $< --noout $(HOME)/VirtualBox\ VMs/*/*.vbox
 
-OTHER_CLEAN += $(VBOX_XML_SCHEMADEFS_H) $(VBOX_XML_SCHEMADEFS_CPP)
-
-
-#
-# Generate some event stuff for VBoxSVC and VBoxC.
-#
-
-# Events
-$(call KB_FN_AUTO_CMD_DEPS,$(VBOX_AUTOGEN_EVENT_H).ts)
-$(VBOX_AUTOGEN_EVENT_H).ts +| $(VBOX_AUTOGEN_EVENT_H): $(VBOX_PATH_MAIN_SRC)/idl/comimpl.xsl $(VBOX_XIDL_FILE) | $$(dir $$@)
+ OTHER_CLEAN += $(VBOX_XML_SCHEMADEFS_H) $(VBOX_XML_SCHEMADEFS_CPP)
+
+
+ #
+ # Generate some event stuff for VBoxSVC and VBoxC.
+ #
+
+ # Events
+ $(call KB_FN_AUTO_CMD_DEPS,$(VBOX_AUTOGEN_EVENT_H).ts)
+ $(VBOX_AUTOGEN_EVENT_H).ts +| $(VBOX_AUTOGEN_EVENT_H): $(VBOX_PATH_MAIN_SRC)/idl/comimpl.xsl $(VBOX_XIDL_FILE) | $$(dir $$@)
 	$(call KB_FN_AUTO_CMD_DEPS_COMMANDS)
 	$(call MSG_TOOL,xsltproc,autogen events,$<,$@)
@@ -908,6 +908,6 @@
 	$(QUIET)$(CP) --changed -fv -- "$@" "$(VBOX_AUTOGEN_EVENT_H)"
 
-$(call KB_FN_AUTO_CMD_DEPS,$(VBOX_AUTOGEN_EVENT_CPP).ts)
-$(VBOX_AUTOGEN_EVENT_CPP).ts +| $(VBOX_AUTOGEN_EVENT_CPP): $(VBOX_PATH_MAIN_SRC)/idl/comimpl.xsl $(VBOX_XIDL_FILE) | $$(dir $$@)
+ $(call KB_FN_AUTO_CMD_DEPS,$(VBOX_AUTOGEN_EVENT_CPP).ts)
+ $(VBOX_AUTOGEN_EVENT_CPP).ts +| $(VBOX_AUTOGEN_EVENT_CPP): $(VBOX_PATH_MAIN_SRC)/idl/comimpl.xsl $(VBOX_XIDL_FILE) | $$(dir $$@)
 	$(call KB_FN_AUTO_CMD_DEPS_COMMANDS)
 	$(call MSG_TOOL,xsltproc,autogen events,$<,$@)
@@ -915,9 +915,9 @@
 	$(QUIET)$(CP) --changed -fv -- "$@" "$(VBOX_AUTOGEN_EVENT_CPP)"
 
-OTHER_CLEAN += $(VBOX_AUTOGEN_EVENT_H).ts $(VBOX_AUTOGEN_EVENT_H) $(VBOX_AUTOGEN_EVENT_CPP).ts $(VBOX_AUTOGEN_EVENT_CPP)
-
-# Enum stringifiers
-$(call KB_FN_AUTO_CMD_DEPS,$(VBOX_AUTOGEN_STRINGIFY_ENUMS_H).ts)
-$(VBOX_AUTOGEN_STRINGIFY_ENUMS_H).ts +| $(VBOX_AUTOGEN_STRINGIFY_ENUMS_H): $(VBOX_PATH_MAIN_SRC)/idl/stringify-enums.xsl $(VBOX_XIDL_FILE) | $$(dir $$@)
+ OTHER_CLEAN += $(VBOX_AUTOGEN_EVENT_H).ts $(VBOX_AUTOGEN_EVENT_H) $(VBOX_AUTOGEN_EVENT_CPP).ts $(VBOX_AUTOGEN_EVENT_CPP)
+
+ # Enum stringifiers
+ $(call KB_FN_AUTO_CMD_DEPS,$(VBOX_AUTOGEN_STRINGIFY_ENUMS_H).ts)
+ $(VBOX_AUTOGEN_STRINGIFY_ENUMS_H).ts +| $(VBOX_AUTOGEN_STRINGIFY_ENUMS_H): $(VBOX_PATH_MAIN_SRC)/idl/stringify-enums.xsl $(VBOX_XIDL_FILE) | $$(dir $$@)
 	$(call KB_FN_AUTO_CMD_DEPS_COMMANDS)
 	$(call MSG_TOOL,xsltproc,autogen enum stringifiers,$<,$@)
@@ -925,6 +925,6 @@
 	$(QUIET)$(CP) --changed -fv -- "$@" "$(VBOX_AUTOGEN_STRINGIFY_ENUMS_H)"
 
-$(call KB_FN_AUTO_CMD_DEPS,$(VBOX_AUTOGEN_STRINGIFY_ENUMS_CPP).ts)
-$(VBOX_AUTOGEN_STRINGIFY_ENUMS_CPP).ts +| $(VBOX_AUTOGEN_STRINGIFY_ENUMS_CPP): $(VBOX_PATH_MAIN_SRC)/idl/stringify-enums.xsl $(VBOX_XIDL_FILE) | $$(dir $$@)
+ $(call KB_FN_AUTO_CMD_DEPS,$(VBOX_AUTOGEN_STRINGIFY_ENUMS_CPP).ts)
+ $(VBOX_AUTOGEN_STRINGIFY_ENUMS_CPP).ts +| $(VBOX_AUTOGEN_STRINGIFY_ENUMS_CPP): $(VBOX_PATH_MAIN_SRC)/idl/stringify-enums.xsl $(VBOX_XIDL_FILE) | $$(dir $$@)
 	$(call KB_FN_AUTO_CMD_DEPS_COMMANDS)
 	$(call MSG_TOOL,xsltproc,autogen enum stringifiers,$<,$@)
@@ -932,317 +932,317 @@
 	$(QUIET)$(CP) --changed -fv -- "$@" "$(VBOX_AUTOGEN_STRINGIFY_ENUMS_CPP)"
 
-OTHER_CLEAN += $(VBOX_AUTOGEN_STRINGIFY_ENUMS_H).ts $(VBOX_AUTOGEN_STRINGIFY_ENUMS_H) $(VBOX_AUTOGEN_STRINGIFY_ENUMS_CPP).ts $(VBOX_AUTOGEN_STRINGIFY_ENUMS_CPP)
-
-ifdef VBOX_WITH_XPCOM
-#
-# VBoxSVCM - VBoxSVC wrapper module
-#
-DLLS += VBoxSVCM
-VBoxSVCM_TEMPLATE       = VBoxMainComp
-VBoxSVCM_DEFS           = IN_RING3 $(VBOX_MAIN_DEFS)
- ifdef VBOX_WITH_HARDENING
-VBoxSVCM_DEFS         += VBOX_WITH_HARDENING
- endif
-VBoxSVCM_INCS           = \
-	include \
-	$(VBoxC_0_OUTDIR) \
-	.
-VBoxSVCM_INTERMEDIATES  = $(VBOX_MAIN_PREREQS)
-VBoxSVCM_SOURCES        = \
-	src-server/xpcom/server_module.cpp
-VBoxSVCM_LDFLAGS.darwin = \
-	-install_name $(VBOX_DYLD_EXECUTABLE_PATH)/components/VBoxSVCM.dylib \
-	-exported_symbols_list $(VBoxSVCM_0_OUTDIR)/VBoxSVCM.def
- ifeq ($(KBUILD_TARGET),darwin)
-VBoxSVCM_ORDERDEPS     += $(VBoxSVCM_0_OUTDIR)/VBoxSVCM.def
-VBoxSVCM_CLEAN         += $(VBoxSVCM_0_OUTDIR)/VBoxSVCM.def
-$$(VBoxSVCM_0_OUTDIR)/VBoxSVCM.def:
+ OTHER_CLEAN += $(VBOX_AUTOGEN_STRINGIFY_ENUMS_H).ts $(VBOX_AUTOGEN_STRINGIFY_ENUMS_H) $(VBOX_AUTOGEN_STRINGIFY_ENUMS_CPP).ts $(VBOX_AUTOGEN_STRINGIFY_ENUMS_CPP)
+
+ ifdef VBOX_WITH_XPCOM
+  #
+  # VBoxSVCM - VBoxSVC wrapper module
+  #
+  DLLS += VBoxSVCM
+  VBoxSVCM_TEMPLATE     = VBoxMainComp
+  VBoxSVCM_DEFS         = IN_RING3 $(VBOX_MAIN_DEFS)
+  ifdef VBOX_WITH_HARDENING
+   VBoxSVCM_DEFS      += VBOX_WITH_HARDENING
+  endif
+  VBoxSVCM_INCS         = \
+  	include \
+  	$(VBoxC_0_OUTDIR) \
+  	.
+  VBoxSVCM_INTERMEDIATES = $(VBOX_MAIN_PREREQS)
+  VBoxSVCM_SOURCES      = \
+  	src-server/xpcom/server_module.cpp
+  VBoxSVCM_LDFLAGS.darwin = \
+  	-install_name $(VBOX_DYLD_EXECUTABLE_PATH)/components/VBoxSVCM.dylib \
+  	-exported_symbols_list $(VBoxSVCM_0_OUTDIR)/VBoxSVCM.def
+  ifeq ($(KBUILD_TARGET),darwin)
+   VBoxSVCM_ORDERDEPS  += $(VBoxSVCM_0_OUTDIR)/VBoxSVCM.def
+   VBoxSVCM_CLEAN      += $(VBoxSVCM_0_OUTDIR)/VBoxSVCM.def
+   $$(VBoxSVCM_0_OUTDIR)/VBoxSVCM.def:
 	$(RM) -f $@
 	$(APPEND) $@ _NSGetModule
- endif
-VBoxSVCM_INTERMEDIATES += $(VBOX_IDL_HEADER.XPCOM)
-
- # 32-bit version of the module.
- ifdef VBOX_WITH_32_ON_64_MAIN_API
-DLLS += VBoxSVCM-x86
-VBoxSVCM-x86_TEMPLATE = VBoxMainComp-x86
-VBoxSVCM-x86_EXTENDS  = VBoxSVCM
- endif
-
-endif # VBOX_WITH_XPCOM
-
-
-#
-# VBoxC module
-#
-DLLS += VBoxC
-VBoxC_TEMPLATE  = VBoxMainComp
-if defined(VBOX_WITH_PRECOMPILED_HEADERS) && "$(KBUILD_TARGET)" == "win"
- VBoxC_USES     = vccprecomp
- VBoxC_PCH_HDR := $(PATH_SUB_CURRENT)/src-client/win/precomp_vcc.h
-else if $(KBUILD_KMK_REVISION) >= 3256 && "$(KBUILD_TARGET)" != "darwin" && !defined(VBOX_WITHOUT_PRECOMPILED_HEADERS)
- if $(VBOX_GCC_VERSION_CXX) >= 50000 # GCC 4.x runs into trouble compiling the header.
-VBoxC_USES    += gccprecomp
-VBoxC_PCH_HDR := $(PATH_SUB_CURRENT)/src-client/xpcom/precomp_gcc.h
- endif
-endif
-VBoxC_DEFS = \
-	IN_RING3 \
-	$(VBOX_MAIN_DEFS) \
-	VBOX_COM_INPROC \
-	$(if $(VBOX_WITH_EFI),VBOX_WITH_EFI,) \
-	$(if $(VBOX_WITH_HGSMI),VBOX_WITH_HGSMI,) \
-	$(if $(VBOX_WITH_VIDEOHWACCEL),VBOX_WITH_VIDEOHWACCEL,) \
-	$(if $(VBOX_WITH_DRAG_AND_DROP),VBOX_WITH_DRAG_AND_DROP,) \
-	$(if $(VBOX_WITH_DRAG_AND_DROP_GH),VBOX_WITH_DRAG_AND_DROP_GH,) \
-	$(if $(VBOX_WITH_USB),VBOX_WITH_USB,) \
-	$(if $(VBOX_WITH_VRDEAUTH_IN_VBOXSVC),VBOX_WITH_VRDEAUTH_IN_VBOXSVC,) \
-	$(if $(VBOX_WITH_IOMMU_AMD),VBOX_WITH_IOMMU_AMD,) \
-	$(if $(VBOX_WITH_IOMMU_INTEL),VBOX_WITH_IOMMU_INTEL,) \
-	$(if $(VBOX_WITH_TPM),VBOX_WITH_TPM,) \
-	$(if $(VBOX_WITH_FULL_VM_ENCRYPTION),VBOX_WITH_FULL_VM_ENCRYPTION,)
-ifdef VBOX_WITH_NETSHAPER
- VBoxC_DEFS += VBOX_WITH_NETSHAPER
-endif
-VBoxC_DEFS.darwin.x86 = VBOX_WITH_2X_4GB_ADDR_SPACE
-VBoxC_DEFS.win.x86 += _WIN32_WINNT=0x0500
-VBoxC_DEFS.win.amd64 += _WIN32_WINNT=0x0510
-
-if $(KBUILD_TARGET) != "win" && $(VBOX_GCC_VERSION_CXX) >= 40900 # gcc 4.9.x (4.8.x is causing endless RT_ELEMENT trouble)
-# VBoxC_CXXFLAGS = -Wunused -Wconversion
-endif
-
-VBoxC_SDKS = VBoxLibPng VBoxZlib
-
-ifdef VBOX_WITH_RECORDING
- ifdef VBOX_WITH_LIBVPX
-  VBoxC_SDKS += VBoxLibVpx
-  VBoxC_DEFS += VBOX_WITH_LIBVPX
- endif
- VBoxC_SOURCES += \
-	src-client/EBMLWriter.cpp \
-	src-client/WebMWriter.cpp \
-	src-client/Recording.cpp \
-	src-client/RecordingInternals.cpp \
-	src-client/RecordingCodec.cpp \
-	src-client/RecordingStream.cpp \
-	src-client/RecordingUtils.cpp
-
- ifdef VBOX_WITH_AUDIO_RECORDING
-  VBoxC_DEFS += VBOX_WITH_AUDIO_RECORDING
-  # Needed in VBoxSVC for ISystemProperties.
-  src-server/SystemPropertiesImpl.cpp_DEFS += VBOX_WITH_AUDIO_RECORDING
-  ifdef VBOX_WITH_LIBOGG
-   VBOX_MAIN_DEFS += VBOX_WITH_LIBOGG
-   VBoxC_SDKS     += VBoxLibOgg
-   VBoxC_DEFS     += VBOX_WITH_LIBOGG
-   ## @todo We need this for libvorbis down below. Remove once the libvorbis @todo is resolved.
-   VBoxSVC_SDKS   += VBoxLibOgg
-  endif
-  ifdef VBOX_WITH_LIBVORBIS
-   VBOX_MAIN_DEFS += VBOX_WITH_LIBVORBIS
-   VBoxC_SDKS     += VBoxLibVorbis
-   ## @todo We also need to specify this for VBoxSVC, as we need to have VBOX_WITH_LIBVORBIS defined
-   ##       for SystemProperties::getSupportedRecordingAudioCodecs().
-   #        SystemPropertiesImpl_DEFS += VBOX_WITH_LIBVORBIS didn't work for precompiled headers on Windows --
-   #        needs to be solved properly so that we can remove the following _SDKS from VBoxSVC again.
-   VBoxSVC_SDKS   += VBoxLibVorbis
-  endif
-  VBoxC_SOURCES += src-client/DrvAudioRec.cpp
- endif # VBOX_WITH_AUDIO_RECORDING
-endif # VBOX_WITH_RECORDING
-
-ifdef VBOX_WITH_OPENSSL_FIPS
-VBoxC_SDKS += VBoxOpenSsl
-endif
-
-VBoxC_INCS          = \
-	include \
-	$(VBoxC_0_OUTDIR) \
-	$(VBOX_MAIN_APIWRAPPER_INCS) \
-	$(dir $(VBOX_XML_SCHEMADEFS_H)) \
-	$(VBOX_MAIN_APIWRAPPER_DIR)/dtrace \
-	$(VBOX_GRAPHICS_INCS)
-VBoxC_INCS.win      = \
-	$(VBoxCOM_0_OUTDIR) \
-	.
-
-VBoxC_LDFLAGS.darwin = \
-	-install_name $(VBOX_DYLD_EXECUTABLE_PATH)/components/VBoxC.dylib \
-	-exported_symbols_list $(VBoxC_0_OUTDIR)/VBoxC.def \
-	-framework IOKit
-VBoxC_LDFLAGS.win += /MANIFEST \
-  	/DELAYLOAD:user32.dll
-
-
-VBoxC_LIBS += \
-	$(PATH_STAGE_LIB)/VBoxAPIWrap$(VBOX_SUFF_LIB)
-VBoxC_LIBS.win += \
-	$(PATH_SDK_$(VBOX_WINPSDK)_LIB)/psapi.lib \
-	$(PATH_TOOL_$(VBOX_VCC_TOOL)_LIB)/delayimp.lib
-ifdef VBOX_WITH_NETFLT
- VBoxC_SDKS.win += VBoxWinNewDevLib
+  endif
+  VBoxSVCM_INTERMEDIATES += $(VBOX_IDL_HEADER.XPCOM)
+
+  # 32-bit version of the module.
+  ifdef VBOX_WITH_32_ON_64_MAIN_API
+   DLLS += VBoxSVCM-x86
+   VBoxSVCM-x86_TEMPLATE = VBoxMainComp-x86
+   VBoxSVCM-x86_EXTENDS = VBoxSVCM
+  endif
+
+ endif # VBOX_WITH_XPCOM
+
+
+ #
+ # VBoxC module
+ #
+ DLLS += VBoxC
+ VBoxC_TEMPLATE = VBoxMainComp
+ if defined(VBOX_WITH_PRECOMPILED_HEADERS) && "$(KBUILD_TARGET)" == "win"
+  VBoxC_USES    = vccprecomp
+  VBoxC_PCH_HDR := $(PATH_SUB_CURRENT)/src-client/win/precomp_vcc.h
+ else if $(KBUILD_KMK_REVISION) >= 3256 && "$(KBUILD_TARGET)" != "darwin" && !defined(VBOX_WITHOUT_PRECOMPILED_HEADERS)
+  if $(VBOX_GCC_VERSION_CXX) >= 50000 # GCC 4.x runs into trouble compiling the header.
+   VBoxC_USES += gccprecomp
+   VBoxC_PCH_HDR := $(PATH_SUB_CURRENT)/src-client/xpcom/precomp_gcc.h
+  endif
+ endif
+ VBoxC_DEFS = \
+ 	IN_RING3 \
+ 	$(VBOX_MAIN_DEFS) \
+ 	VBOX_COM_INPROC \
+ 	$(if $(VBOX_WITH_EFI),VBOX_WITH_EFI,) \
+ 	$(if $(VBOX_WITH_HGSMI),VBOX_WITH_HGSMI,) \
+ 	$(if $(VBOX_WITH_VIDEOHWACCEL),VBOX_WITH_VIDEOHWACCEL,) \
+ 	$(if $(VBOX_WITH_DRAG_AND_DROP),VBOX_WITH_DRAG_AND_DROP,) \
+ 	$(if $(VBOX_WITH_DRAG_AND_DROP_GH),VBOX_WITH_DRAG_AND_DROP_GH,) \
+ 	$(if $(VBOX_WITH_USB),VBOX_WITH_USB,) \
+ 	$(if $(VBOX_WITH_VRDEAUTH_IN_VBOXSVC),VBOX_WITH_VRDEAUTH_IN_VBOXSVC,) \
+ 	$(if $(VBOX_WITH_IOMMU_AMD),VBOX_WITH_IOMMU_AMD,) \
+ 	$(if $(VBOX_WITH_IOMMU_INTEL),VBOX_WITH_IOMMU_INTEL,) \
+ 	$(if $(VBOX_WITH_TPM),VBOX_WITH_TPM,) \
+ 	$(if $(VBOX_WITH_FULL_VM_ENCRYPTION),VBOX_WITH_FULL_VM_ENCRYPTION,)
+ ifdef VBOX_WITH_NETSHAPER
+  VBoxC_DEFS += VBOX_WITH_NETSHAPER
+ endif
+ VBoxC_DEFS.darwin.x86 = VBOX_WITH_2X_4GB_ADDR_SPACE
+ VBoxC_DEFS.win.x86 += _WIN32_WINNT=0x0500
+ VBoxC_DEFS.win.amd64 += _WIN32_WINNT=0x0510
+
+ if $(KBUILD_TARGET) != "win" && $(VBOX_GCC_VERSION_CXX) >= 40900 # gcc 4.9.x (4.8.x is causing endless RT_ELEMENT trouble)
+  # VBoxC_CXXFLAGS = -Wunused -Wconversion
+ endif
+
+ VBoxC_SDKS = VBoxLibPng VBoxZlib
+
+ ifdef VBOX_WITH_RECORDING
+  ifdef VBOX_WITH_LIBVPX
+   VBoxC_SDKS += VBoxLibVpx
+   VBoxC_DEFS += VBOX_WITH_LIBVPX
+  endif
+  VBoxC_SOURCES += \
+  	src-client/EBMLWriter.cpp \
+  	src-client/WebMWriter.cpp \
+  	src-client/Recording.cpp \
+  	src-client/RecordingInternals.cpp \
+  	src-client/RecordingCodec.cpp \
+  	src-client/RecordingStream.cpp \
+  	src-client/RecordingUtils.cpp
+
+  ifdef VBOX_WITH_AUDIO_RECORDING
+   VBoxC_DEFS += VBOX_WITH_AUDIO_RECORDING
+   # Needed in VBoxSVC for ISystemProperties.
+   src-server/SystemPropertiesImpl.cpp_DEFS += VBOX_WITH_AUDIO_RECORDING
+   ifdef VBOX_WITH_LIBOGG
+    VBOX_MAIN_DEFS += VBOX_WITH_LIBOGG
+    VBoxC_SDKS    += VBoxLibOgg
+    VBoxC_DEFS    += VBOX_WITH_LIBOGG
+    ## @todo We need this for libvorbis down below. Remove once the libvorbis @todo is resolved.
+    VBoxSVC_SDKS  += VBoxLibOgg
+   endif
+   ifdef VBOX_WITH_LIBVORBIS
+    VBOX_MAIN_DEFS += VBOX_WITH_LIBVORBIS
+    VBoxC_SDKS    += VBoxLibVorbis
+    ## @todo We also need to specify this for VBoxSVC, as we need to have VBOX_WITH_LIBVORBIS defined
+    ##       for SystemProperties::getSupportedRecordingAudioCodecs().
+    #        SystemPropertiesImpl_DEFS += VBOX_WITH_LIBVORBIS didn't work for precompiled headers on Windows --
+    #        needs to be solved properly so that we can remove the following _SDKS from VBoxSVC again.
+    VBoxSVC_SDKS  += VBoxLibVorbis
+   endif
+   VBoxC_SOURCES += src-client/DrvAudioRec.cpp
+  endif # VBOX_WITH_AUDIO_RECORDING
+ endif # VBOX_WITH_RECORDING
+
+ ifdef VBOX_WITH_OPENSSL_FIPS
+  VBoxC_SDKS += VBoxOpenSsl
+ endif
+
+ VBoxC_INCS         = \
+ 	include \
+ 	$(VBoxC_0_OUTDIR) \
+ 	$(VBOX_MAIN_APIWRAPPER_INCS) \
+ 	$(dir $(VBOX_XML_SCHEMADEFS_H)) \
+ 	$(VBOX_MAIN_APIWRAPPER_DIR)/dtrace \
+ 	$(VBOX_GRAPHICS_INCS)
+ VBoxC_INCS.win     = \
+ 	$(VBoxCOM_0_OUTDIR) \
+ 	.
+
+ VBoxC_LDFLAGS.darwin = \
+ 	-install_name $(VBOX_DYLD_EXECUTABLE_PATH)/components/VBoxC.dylib \
+ 	-exported_symbols_list $(VBoxC_0_OUTDIR)/VBoxC.def \
+ 	-framework IOKit
+ VBoxC_LDFLAGS.win += /MANIFEST \
+ 	/DELAYLOAD:user32.dll
+
+
+ VBoxC_LIBS += \
+ 	$(PATH_STAGE_LIB)/VBoxAPIWrap$(VBOX_SUFF_LIB)
  VBoxC_LIBS.win += \
-	$(PATH_STAGE_LIB)/WinNetConfigDll$(VBOX_SUFF_LIB) \
-	$(PATH_STAGE_LIB)/VBoxDrvCfgDll$(VBOX_SUFF_LIB) \
-	$(PATH_TOOL_$(VBOX_VCC_TOOL)_LIB)/comsupp.lib \
-	$(PATH_SDK_$(VBOX_WINPSDK)_LIB)/WbemUuid.Lib
- VBoxC_LDFLAGS.win += \
+ 	$(PATH_SDK_$(VBOX_WINPSDK)_LIB)/psapi.lib \
+ 	$(PATH_TOOL_$(VBOX_VCC_TOOL)_LIB)/delayimp.lib
+ ifdef VBOX_WITH_NETFLT
+  VBoxC_SDKS.win += VBoxWinNewDevLib
+  VBoxC_LIBS.win += \
+  	$(PATH_STAGE_LIB)/WinNetConfigDll$(VBOX_SUFF_LIB) \
+  	$(PATH_STAGE_LIB)/VBoxDrvCfgDll$(VBOX_SUFF_LIB) \
+  	$(PATH_TOOL_$(VBOX_VCC_TOOL)_LIB)/comsupp.lib \
+  	$(PATH_SDK_$(VBOX_WINPSDK)_LIB)/WbemUuid.Lib
+  VBoxC_LDFLAGS.win += \
   	/DELAYLOAD:newdev.dll \
   	/DELAYLOAD:setupapi.dll \
   	/DELAYLOAD:iphlpapi.dll
-endif
-
-ifdef VBOX_WITH_DRAG_AND_DROP
- VBoxC_LIBS += $(PATH_STAGE_LIB)/VBoxDnDHostR3Lib$(VBOX_SUFF_LIB)
-endif
-
-VBoxC_INTERMEDIATES = \
-	$(VBOX_MAIN_PREREQS) \
-	$(VBOX_XML_SCHEMADEFS_H) \
-	$(VBOX_AUTOGEN_EVENT_H) \
-	$(VBOX_AUTOGEN_STRINGIFY_ENUMS_H) \
-	$(VBOX_MAIN_APIWRAPPER_GEN_HDRS)
-
-VBoxC_SOURCES += \
-	$(VBoxAPIWrap_0_OUTDIR)/VBoxAPI.d \
-	src-all/CryptoUtils.cpp \
-  src-all/ConsoleSharedFolderImpl.cpp \
-	src-all/DisplayPNGUtil.cpp \
-	src-all/DisplayResampleImage.cpp \
-	src-all/EventImpl.cpp \
-	src-all/Global.cpp \
-	src-all/GlobalStatusConversion.cpp \
-	src-all/HashedPw.cpp \
-	src-all/Logging.cpp \
-	src-all/NvramStoreImpl.cpp \
-	src-all/PCIDeviceAttachmentImpl.cpp \
-	src-all/ProgressImpl.cpp \
-	src-all/SecretKeyStore.cpp \
-	src-all/AutoCaller.cpp \
-	src-all/ThreadTask.cpp \
-	src-all/VirtualBoxBase.cpp \
-	src-all/VirtualBoxErrorInfoImpl.cpp \
-	$(if $(VBOX_WITH_EXTPACK),src-all/ExtPackManagerImpl.cpp src-all/ExtPackUtil.cpp,) \
-	src-client/UsbWebcamInterface.cpp \
-	$(if $(VBOX_WITH_USB_CARDREADER),src-client/UsbCardReader.cpp,) \
-	src-client/AdditionsFacilityImpl.cpp \
-	src-client/BusAssignmentManager.cpp \
-	$(if $(VBOX_WITH_PCI_PASSTHROUGH),src-client/PCIRawDevImpl.cpp,) \
-	src-client/ClientTokenHolder.cpp \
-	src-client/ConsoleImpl.cpp \
-	src-client/ConsoleImpl2.cpp \
-	src-client/ConsoleImplTeleporter.cpp \
-	src-client/ConsoleVRDPServer.cpp \
-	src-client/DisplayImpl.cpp \
-	src-client/DisplayImplLegacy.cpp \
-	src-client/DisplaySourceBitmapImpl.cpp \
-	src-client/EmulatedUSBImpl.cpp \
-	src-client/GuestImpl.cpp \
-	src-client/GuestCtrlImpl.cpp \
-	src-client/KeyboardImpl.cpp \
-	src-client/MachineDebuggerImpl.cpp \
-	src-client/MouseImpl.cpp \
-	src-client/RemoteUSBDeviceImpl.cpp \
-	src-client/SessionImpl.cpp \
-	src-client/USBDeviceImpl.cpp \
-	src-client/VBoxDriversRegister.cpp \
-	src-client/VirtualBoxClientImpl.cpp \
-	src-client/VMMDevInterface.cpp \
-	xml/Settings.cpp \
-	$(VBOX_AUTOGEN_EVENT_CPP) \
-	$(VBOX_AUTOGEN_STRINGIFY_ENUMS_CPP) \
-	$(VBOX_XML_SCHEMADEFS_CPP)
-
-ifdef VBOX_WITH_MAIN_NLS
-VBoxC_SOURCES += \
-	src-all/VirtualBoxTranslator.cpp \
-	src-all/QMTranslatorImpl.cpp
-endif
-
-# Experimental cloud support
-if defined(VBOX_WITH_CLOUD_NET)
- if defined(VBOX_WITH_LIBSSH)
-  VBoxC_SDKS += VBoxLibSsh VBoxOpenSsl
-  VBoxC_DEFS += VBOX_WITH_LIBSSH
- endif
- VBoxC_SOURCES += src-client/CloudGateway.cpp
-
- VBoxC_SOURCES       += \
- 	$(VBoxC_0_OUTDIR)/VBoxLibSshLazyLoad.asm
- VBoxC_CLEAN         += $(VBoxC_0_OUTDIR)/VBoxLibSshLazyLoad.asm
- $$(VBoxC_0_OUTDIR)/VBoxLibSshLazyLoad.asm: $(PATH_SUB_CURRENT)/src-all/VBoxLibSsh.def $(VBOX_DEF_2_LAZY_LOAD) | $$(dir $$@)
+ endif
+
+ ifdef VBOX_WITH_DRAG_AND_DROP
+  VBoxC_LIBS += $(PATH_STAGE_LIB)/VBoxDnDHostR3Lib$(VBOX_SUFF_LIB)
+ endif
+
+ VBoxC_INTERMEDIATES = \
+ 	$(VBOX_MAIN_PREREQS) \
+ 	$(VBOX_XML_SCHEMADEFS_H) \
+ 	$(VBOX_AUTOGEN_EVENT_H) \
+ 	$(VBOX_AUTOGEN_STRINGIFY_ENUMS_H) \
+ 	$(VBOX_MAIN_APIWRAPPER_GEN_HDRS)
+
+ VBoxC_SOURCES += \
+ 	$(VBoxAPIWrap_0_OUTDIR)/VBoxAPI.d \
+ 	src-all/CryptoUtils.cpp \
+ 	src-all/ConsoleSharedFolderImpl.cpp \
+ 	src-all/DisplayPNGUtil.cpp \
+ 	src-all/DisplayResampleImage.cpp \
+ 	src-all/EventImpl.cpp \
+ 	src-all/Global.cpp \
+ 	src-all/GlobalStatusConversion.cpp \
+ 	src-all/HashedPw.cpp \
+ 	src-all/Logging.cpp \
+ 	src-all/NvramStoreImpl.cpp \
+ 	src-all/PCIDeviceAttachmentImpl.cpp \
+ 	src-all/ProgressImpl.cpp \
+ 	src-all/SecretKeyStore.cpp \
+ 	src-all/AutoCaller.cpp \
+ 	src-all/ThreadTask.cpp \
+ 	src-all/VirtualBoxBase.cpp \
+ 	src-all/VirtualBoxErrorInfoImpl.cpp \
+ 	$(if $(VBOX_WITH_EXTPACK),src-all/ExtPackManagerImpl.cpp src-all/ExtPackUtil.cpp,) \
+ 	src-client/UsbWebcamInterface.cpp \
+ 	$(if $(VBOX_WITH_USB_CARDREADER),src-client/UsbCardReader.cpp,) \
+ 	src-client/AdditionsFacilityImpl.cpp \
+ 	src-client/BusAssignmentManager.cpp \
+ 	$(if $(VBOX_WITH_PCI_PASSTHROUGH),src-client/PCIRawDevImpl.cpp,) \
+ 	src-client/ClientTokenHolder.cpp \
+ 	src-client/ConsoleImpl.cpp \
+ 	src-client/ConsoleImpl2.cpp \
+ 	src-client/ConsoleImplTeleporter.cpp \
+ 	src-client/ConsoleVRDPServer.cpp \
+ 	src-client/DisplayImpl.cpp \
+ 	src-client/DisplayImplLegacy.cpp \
+ 	src-client/DisplaySourceBitmapImpl.cpp \
+ 	src-client/EmulatedUSBImpl.cpp \
+ 	src-client/GuestImpl.cpp \
+ 	src-client/GuestCtrlImpl.cpp \
+ 	src-client/KeyboardImpl.cpp \
+ 	src-client/MachineDebuggerImpl.cpp \
+ 	src-client/MouseImpl.cpp \
+ 	src-client/RemoteUSBDeviceImpl.cpp \
+ 	src-client/SessionImpl.cpp \
+ 	src-client/USBDeviceImpl.cpp \
+ 	src-client/VBoxDriversRegister.cpp \
+ 	src-client/VirtualBoxClientImpl.cpp \
+ 	src-client/VMMDevInterface.cpp \
+ 	xml/Settings.cpp \
+ 	$(VBOX_AUTOGEN_EVENT_CPP) \
+ 	$(VBOX_AUTOGEN_STRINGIFY_ENUMS_CPP) \
+ 	$(VBOX_XML_SCHEMADEFS_CPP)
+
+ ifdef VBOX_WITH_MAIN_NLS
+  VBoxC_SOURCES += \
+  	src-all/VirtualBoxTranslator.cpp \
+  	src-all/QMTranslatorImpl.cpp
+ endif
+
+ # Experimental cloud support
+ if defined(VBOX_WITH_CLOUD_NET)
+  if defined(VBOX_WITH_LIBSSH)
+   VBoxC_SDKS += VBoxLibSsh VBoxOpenSsl
+   VBoxC_DEFS += VBOX_WITH_LIBSSH
+  endif
+  VBoxC_SOURCES += src-client/CloudGateway.cpp
+
+  VBoxC_SOURCES      += \
+  	$(VBoxC_0_OUTDIR)/VBoxLibSshLazyLoad.asm
+  VBoxC_CLEAN        += $(VBoxC_0_OUTDIR)/VBoxLibSshLazyLoad.asm
+  $$(VBoxC_0_OUTDIR)/VBoxLibSshLazyLoad.asm: $(PATH_SUB_CURRENT)/src-all/VBoxLibSsh.def $(VBOX_DEF_2_LAZY_LOAD) | $$(dir $$@)
 	$(call MSG_TOOL,VBoxDef2LazyLoad,VBoxC,$(filter %.def, $^),$@)
 	$(QUIET)$(RM) -f -- "$@"
 	$(VBOX_DEF_2_LAZY_LOAD) --explicit-load-function --library VBoxLibSsh --output "$@" $(filter %.def, $^)
 
-endif
-
-# Audio bits.
-VBoxC_SOURCES += \
-	src-client/AudioDriver.cpp \
-	$(if $(VBOX_WITH_AUDIO_VRDE),src-client/DrvAudioVRDE.cpp,)
-
-VBoxC_SOURCES.win = \
-	src-client/win/dllmain.cpp \
-	src-client/win/VBoxC.def \
-	src-client/win/VBoxC.rc
-ifdef VBOX_WITH_GUEST_CONTROL
+ endif
+
+ # Audio bits.
  VBoxC_SOURCES += \
-	src-client/GuestSessionImplTasks.cpp \
-	src-client/GuestCtrlPrivate.cpp \
-	src-client/GuestDirectoryImpl.cpp \
-	src-client/GuestFileImpl.cpp \
-	src-client/GuestFsObjInfoImpl.cpp \
-	src-client/GuestProcessImpl.cpp \
-	src-client/GuestSessionImpl.cpp
-endif
-ifdef VBOX_WITH_DRAG_AND_DROP
- VBoxC_SOURCES += \
-	src-client/GuestDnDPrivate.cpp \
-	src-client/GuestDnDSourceImpl.cpp \
-	src-client/GuestDnDTargetImpl.cpp \
-	$(PATH_ROOT)/src/VBox/GuestHost/DragAndDrop/DnDUtils.cpp
-endif
-ifdef VBOX_WITH_XPCOM
- VBoxC_SOURCES += \
-	src-client/xpcom/module.cpp
-endif
-ifdef VBOX_WITH_HGCM
- VBoxC_SOURCES += \
-	src-client/HGCMObjects.cpp \
-	src-client/HGCMThread.cpp \
-	src-client/HGCM.cpp
-endif
-ifdef VBOX_WITH_USB
- VBoxC_SOURCES += \
-	src-client/RemoteUSBBackend.cpp
-endif
-ifndef VBOX_WITH_VRDEAUTH_IN_VBOXSVC
- VBoxC_SOURCES += \
-	src-all/AuthLibrary.cpp
-endif
-
-$(call KB_FN_DO_PASS0_ON_TARGET,VBoxC) # Sets VBoxC_0_OUTDIR
-
-ifeq ($(KBUILD_TARGET),darwin)
- VBoxC_ORDERDEPS += $(VBoxC_0_OUTDIR)/VBoxC.def
- VBoxC_CLEAN     += $(VBoxC_0_OUTDIR)/VBoxC.def
- $(call KB_FN_AUTO_CMD_DEPS,$(VBoxC_0_OUTDIR)/VBoxC.def)
- $(VBoxC_0_OUTDIR)/VBoxC.def:
+ 	src-client/AudioDriver.cpp \
+ 	$(if $(VBOX_WITH_AUDIO_VRDE),src-client/DrvAudioVRDE.cpp,)
+
+ VBoxC_SOURCES.win = \
+ 	src-client/win/dllmain.cpp \
+ 	src-client/win/VBoxC.def \
+ 	src-client/win/VBoxC.rc
+ ifdef VBOX_WITH_GUEST_CONTROL
+  VBoxC_SOURCES += \
+  	src-client/GuestSessionImplTasks.cpp \
+  	src-client/GuestCtrlPrivate.cpp \
+  	src-client/GuestDirectoryImpl.cpp \
+  	src-client/GuestFileImpl.cpp \
+  	src-client/GuestFsObjInfoImpl.cpp \
+  	src-client/GuestProcessImpl.cpp \
+  	src-client/GuestSessionImpl.cpp
+ endif
+ ifdef VBOX_WITH_DRAG_AND_DROP
+  VBoxC_SOURCES += \
+  	src-client/GuestDnDPrivate.cpp \
+  	src-client/GuestDnDSourceImpl.cpp \
+  	src-client/GuestDnDTargetImpl.cpp \
+  	$(PATH_ROOT)/src/VBox/GuestHost/DragAndDrop/DnDUtils.cpp
+ endif
+ ifdef VBOX_WITH_XPCOM
+  VBoxC_SOURCES += \
+  	src-client/xpcom/module.cpp
+ endif
+ ifdef VBOX_WITH_HGCM
+  VBoxC_SOURCES += \
+  	src-client/HGCMObjects.cpp \
+  	src-client/HGCMThread.cpp \
+  	src-client/HGCM.cpp
+ endif
+ ifdef VBOX_WITH_USB
+  VBoxC_SOURCES += \
+  	src-client/RemoteUSBBackend.cpp
+ endif
+ ifndef VBOX_WITH_VRDEAUTH_IN_VBOXSVC
+  VBoxC_SOURCES += \
+  	src-all/AuthLibrary.cpp
+ endif
+
+ $(call KB_FN_DO_PASS0_ON_TARGET,VBoxC) # Sets VBoxC_0_OUTDIR
+
+ ifeq ($(KBUILD_TARGET),darwin)
+  VBoxC_ORDERDEPS += $(VBoxC_0_OUTDIR)/VBoxC.def
+  VBoxC_CLEAN    += $(VBoxC_0_OUTDIR)/VBoxC.def
+  $(call KB_FN_AUTO_CMD_DEPS,$(VBoxC_0_OUTDIR)/VBoxC.def)
+  $(VBoxC_0_OUTDIR)/VBoxC.def:
 	$(call KB_FN_AUTO_CMD_DEPS_COMMANDS)
 	$(RM) -f $@
 	$(APPEND) $@ _NSGetModule
 	$(APPEND) $@ _VBoxDriversRegister
-endif
-
-src-client/ConsoleImpl.cpp_DEFS = \
-	$(if $(VBOX_WITH_OPENSSL_FIPS), VBOX_OPENSSL_FIPS,)
-
-
-src-client/win/VBoxC.rc_DEPS = $(VBoxC_0_OUTDIR)/VBoxC.rgs $(VBoxCOM_0_OUTDIR)/VirtualBox.tlb
-VBoxC_CLEAN.win             += $(VBoxC_0_OUTDIR)/VBoxC.rgs
-$(call KB_FN_AUTO_CMD_DEPS,$(VBoxC_0_OUTDIR)/VBoxC.rgs)
-$(VBoxC_0_OUTDIR)/VBoxC.rgs: $(VBOX_PATH_MAIN_SRC)/src-all/win/VirtualBox_rgs.xsl $(VBOX_XIDL_FILE) | $$(dir $$@)
+ endif
+
+ src-client/ConsoleImpl.cpp_DEFS = \
+ 	$(if $(VBOX_WITH_OPENSSL_FIPS), VBOX_OPENSSL_FIPS,)
+
+
+ src-client/win/VBoxC.rc_DEPS = $(VBoxC_0_OUTDIR)/VBoxC.rgs $(VBoxCOM_0_OUTDIR)/VirtualBox.tlb
+ VBoxC_CLEAN.win            += $(VBoxC_0_OUTDIR)/VBoxC.rgs
+ $(call KB_FN_AUTO_CMD_DEPS,$(VBoxC_0_OUTDIR)/VBoxC.rgs)
+ $(VBoxC_0_OUTDIR)/VBoxC.rgs: $(VBOX_PATH_MAIN_SRC)/src-all/win/VirtualBox_rgs.xsl $(VBOX_XIDL_FILE) | $$(dir $$@)
 	$(call KB_FN_AUTO_CMD_DEPS_COMMANDS)
 	$(VBOX_XSLTPROC) \
@@ -1253,75 +1253,75 @@
 		$(VBOX_XIDL_FILE)
 
-ifdef VBOX_WITH_32_ON_64_MAIN_API
- #
- # 32-bit VBox API Client In-Process module.
- #
- # This is currently just a 32-bit version of VBoxC.  It might be desirable to
- # split up VBoxC into a simple client and a VM client part later, in which
- # case this module will be a simple client.
- #
- # Note! One important thing is that the typelib for this DLL must be build
- #       with the /env win32 switch and the VBoxC typelib with /env amd64, if
- #       not they will overwrite each others typelib module entry.
- #
- DLLS += VBoxClient-x86
- VBoxClient-x86_TEMPLATE = VBoxMainComp-x86
- VBoxClient-x86_EXTENDS  = VBoxC
-if defined(VBOX_WITH_PRECOMPILED_HEADERS) && "$(KBUILD_TARGET)" == "win" ## @todo fix inheritance (fixed in r3253)
- VBoxClient-x86_USES     = vccprecomp
- VBoxClient-x86_PCH_HDR := $(PATH_SUB_CURRENT)/src-client/win/precomp_vcc.h
-endif
- VBoxClient-x86_SDKS = $(filter-out VBoxLibVpx,$(VBoxC_SDKS))
- VBoxClient-x86_DEFS = VBOX_COM_INPROC_API_CLIENT \
-	$(filter-out VBOX_WITH_RECORDING VBOX_WITH_AUDIO_RECORDING \
-                 VBOX_WITH_LIBVPX,$(VBoxC_DEFS))
- VBoxClient-x86_INCS.win = \
- 	$(VBoxClient-x86_0_OUTDIR) \
- 	$(VBoxCOM-x86_0_OUTDIR) \
-	$(VBoxC_INCS.win)
- VBoxClient-x86_SOURCES = \
- 	src-all/EventImpl.cpp \
- 	src-all/Global.cpp \
- 	src-all/GlobalStatusConversion.cpp \
-	src-all/AutoCaller.cpp \
- 	src-all/ThreadTask.cpp \
- 	src-all/VirtualBoxBase.cpp \
- 	src-all/VirtualBoxErrorInfoImpl.cpp \
- 	src-client/ClientTokenHolder.cpp \
- 	src-client/SessionImpl.cpp \
- 	src-client/VirtualBoxClientImpl.cpp \
- 	$(VBOX_AUTOGEN_EVENT_CPP) \
- 	$(VBOX_AUTOGEN_STRINGIFY_ENUMS_CPP) \
- 	$(VBOX_XML_SCHEMADEFS_CPP)
- ifdef VBOX_WITH_MAIN_NLS
- VBoxClient-x86_SOURCES += \
-	src-all/VirtualBoxTranslator.cpp \
-	src-all/QMTranslatorImpl.cpp
- endif
- VBoxClient-x86_SOURCES.win = \
- 	src-client/win/dllmain.cpp \
- 	src-client/win/VBoxClient-x86.def \
- 	src-client/win/VBoxClient-x86.rc
- ifdef VBOX_WITH_XPCOM
-  VBoxClient-x86_SOURCES += \
-  	src-client/xpcom/module.cpp
- endif
- VBoxClient-x86_LIBS = \
-	$(PATH_STAGE_LIB)/VBoxAPIWrap-x86$(VBOX_SUFF_LIB)
- VBoxClient-x86_LIBS.win = $(NO_SUCH_VARIABLE)
- VBoxClient-x86_LIBS.win.x86 += \
- 	$(PATH_TOOL_$(VBOX_VCC_TOOL_STEM)X86_LIB)/delayimp.lib \
- 	$(PATH_SDK_$(VBOX_WINPSDK)_LIB.x86)/WbemUuid.Lib
- VBoxClient-x86_CLEAN.win += $(VBoxClient-x86_0_OUTDIR)/VBoxClient-x86.rgs
- $(call KB_FN_DO_PASS0_ON_TARGET,VBoxClient-x86) # Sets VBoxClient-x86_0_OUTDIR
-
- src-client/win/VBoxClient-x86.rc_DEPS = \
- 	$(VBoxClient-x86_0_OUTDIR)/VBoxClient-x86.rgs \
- 	$(VBoxCOM-x86_0_OUTDIR)/VirtualBox-x86.tlb
-
- $(call KB_FN_AUTO_CMD_DEPS,$(VBoxClient-x86_0_OUTDIR)/VBoxClient-x86.rgs)
- $(VBoxClient-x86_0_OUTDIR)/VBoxClient-x86.rgs: \
- 		$(VBOX_PATH_MAIN_SRC)/src-all/win/VirtualBox_rgs.xsl \
-		$(VBOX_XIDL_FILE) | $$(dir $$@)
+ ifdef VBOX_WITH_32_ON_64_MAIN_API
+  #
+  # 32-bit VBox API Client In-Process module.
+  #
+  # This is currently just a 32-bit version of VBoxC.  It might be desirable to
+  # split up VBoxC into a simple client and a VM client part later, in which
+  # case this module will be a simple client.
+  #
+  # Note! One important thing is that the typelib for this DLL must be build
+  #       with the /env win32 switch and the VBoxC typelib with /env amd64, if
+  #       not they will overwrite each others typelib module entry.
+  #
+  DLLS += VBoxClient-x86
+  VBoxClient-x86_TEMPLATE = VBoxMainComp-x86
+  VBoxClient-x86_EXTENDS = VBoxC
+  if defined(VBOX_WITH_PRECOMPILED_HEADERS) && "$(KBUILD_TARGET)" == "win" ## @todo fix inheritance (fixed in r3253)
+   VBoxClient-x86_USES   = vccprecomp
+   VBoxClient-x86_PCH_HDR := $(PATH_SUB_CURRENT)/src-client/win/precomp_vcc.h
+  endif
+  VBoxClient-x86_SDKS = $(filter-out VBoxLibVpx,$(VBoxC_SDKS))
+  VBoxClient-x86_DEFS = VBOX_COM_INPROC_API_CLIENT \
+  	$(filter-out VBOX_WITH_RECORDING VBOX_WITH_AUDIO_RECORDING \
+  	VBOX_WITH_LIBVPX,$(VBoxC_DEFS))
+  VBoxClient-x86_INCS.win = \
+  	$(VBoxClient-x86_0_OUTDIR) \
+  	$(VBoxCOM-x86_0_OUTDIR) \
+  	$(VBoxC_INCS.win)
+  VBoxClient-x86_SOURCES = \
+  	src-all/EventImpl.cpp \
+  	src-all/Global.cpp \
+  	src-all/GlobalStatusConversion.cpp \
+  	src-all/AutoCaller.cpp \
+  	src-all/ThreadTask.cpp \
+  	src-all/VirtualBoxBase.cpp \
+  	src-all/VirtualBoxErrorInfoImpl.cpp \
+  	src-client/ClientTokenHolder.cpp \
+  	src-client/SessionImpl.cpp \
+  	src-client/VirtualBoxClientImpl.cpp \
+  	$(VBOX_AUTOGEN_EVENT_CPP) \
+  	$(VBOX_AUTOGEN_STRINGIFY_ENUMS_CPP) \
+  	$(VBOX_XML_SCHEMADEFS_CPP)
+  ifdef VBOX_WITH_MAIN_NLS
+   VBoxClient-x86_SOURCES += \
+   	src-all/VirtualBoxTranslator.cpp \
+   	src-all/QMTranslatorImpl.cpp
+  endif
+  VBoxClient-x86_SOURCES.win = \
+  	src-client/win/dllmain.cpp \
+  	src-client/win/VBoxClient-x86.def \
+  	src-client/win/VBoxClient-x86.rc
+  ifdef VBOX_WITH_XPCOM
+   VBoxClient-x86_SOURCES += \
+   	src-client/xpcom/module.cpp
+  endif
+  VBoxClient-x86_LIBS = \
+  	$(PATH_STAGE_LIB)/VBoxAPIWrap-x86$(VBOX_SUFF_LIB)
+  VBoxClient-x86_LIBS.win = $(NO_SUCH_VARIABLE)
+  VBoxClient-x86_LIBS.win.x86 += \
+  	$(PATH_TOOL_$(VBOX_VCC_TOOL_STEM)X86_LIB)/delayimp.lib \
+  	$(PATH_SDK_$(VBOX_WINPSDK)_LIB.x86)/WbemUuid.Lib
+  VBoxClient-x86_CLEAN.win += $(VBoxClient-x86_0_OUTDIR)/VBoxClient-x86.rgs
+  $(call KB_FN_DO_PASS0_ON_TARGET,VBoxClient-x86) # Sets VBoxClient-x86_0_OUTDIR
+
+  src-client/win/VBoxClient-x86.rc_DEPS = \
+  	$(VBoxClient-x86_0_OUTDIR)/VBoxClient-x86.rgs \
+  	$(VBoxCOM-x86_0_OUTDIR)/VirtualBox-x86.tlb
+
+  $(call KB_FN_AUTO_CMD_DEPS,$(VBoxClient-x86_0_OUTDIR)/VBoxClient-x86.rgs)
+  $(VBoxClient-x86_0_OUTDIR)/VBoxClient-x86.rgs: \
+  		$(VBOX_PATH_MAIN_SRC)/src-all/win/VirtualBox_rgs.xsl \
+  		$(VBOX_XIDL_FILE) | $$(dir $$@)
 	$(call KB_FN_AUTO_CMD_DEPS_COMMANDS)
 	$(VBOX_XSLTPROC) \
@@ -1331,32 +1331,32 @@
 		$(VBOX_PATH_MAIN_SRC)/src-all/win/VirtualBox_rgs.xsl \
 		$(VBOX_XIDL_FILE)
-endif
-
-#
-# The VBoxExtPackHelperApp.
-#
-ifdef VBOX_WITH_EXTPACK
- PROGRAMS += VBoxExtPackHelperApp
- VBoxExtPackHelperApp_TEMPLATE = VBoxR3SetUidToRoot
- VBoxExtPackHelperApp_LDFLAGS.darwin = -framework Security
- VBoxExtPackHelperApp_LDFLAGS.win = /SUBSYSTEM:windows
- VBoxExtPackHelperApp_SOURCES = \
-	src-helper-apps/VBoxExtPackHelperApp.cpp \
-	src-all/ExtPackUtil.cpp
- VBoxExtPackHelperApp_SOURCES.win = \
-	src-helper-apps/VBoxExtPackHelperApp.rc
- VBoxExtPackHelperApp_LIBS = \
-	$(LIB_RUNTIME)
-endif # VBOX_WITH_EXTPACK
-
-#
-# VolInfo
-#
-ifdef VBOX_WITH_DEVMAPPER
- PROGRAMS.linux      += VBoxVolInfo
- VBoxVolInfo_TEMPLATE = VBoxR3SetUidToRoot
- VBoxVolInfo_SOURCES  = src-helper-apps/VBoxVolInfo.cpp
- VBoxVolInfo_LIBS     = devmapper
-endif
+ endif
+
+ #
+ # The VBoxExtPackHelperApp.
+ #
+ ifdef VBOX_WITH_EXTPACK
+  PROGRAMS += VBoxExtPackHelperApp
+  VBoxExtPackHelperApp_TEMPLATE = VBoxR3SetUidToRoot
+  VBoxExtPackHelperApp_LDFLAGS.darwin = -framework Security
+  VBoxExtPackHelperApp_LDFLAGS.win = /SUBSYSTEM:windows
+  VBoxExtPackHelperApp_SOURCES = \
+  	src-helper-apps/VBoxExtPackHelperApp.cpp \
+  	src-all/ExtPackUtil.cpp
+  VBoxExtPackHelperApp_SOURCES.win = \
+  	src-helper-apps/VBoxExtPackHelperApp.rc
+  VBoxExtPackHelperApp_LIBS = \
+  	$(LIB_RUNTIME)
+ endif # VBOX_WITH_EXTPACK
+
+ #
+ # VolInfo
+ #
+ ifdef VBOX_WITH_DEVMAPPER
+  PROGRAMS.linux     += VBoxVolInfo
+  VBoxVolInfo_TEMPLATE = VBoxR3SetUidToRoot
+  VBoxVolInfo_SOURCES = src-helper-apps/VBoxVolInfo.cpp
+  VBoxVolInfo_LIBS    = devmapper
+ endif
 
 
@@ -1365,90 +1365,90 @@
 
 
-#
-# VBoxCOM - COM Abstraction Layer library
-#
-LIBRARIES += VBoxCOM
-VBoxCOM_TEMPLATE        = VBoxMainLib
-VBoxCOM_INTERMEDIATES   = $(VBOX_MAIN_PREREQS) \
-                          $(VBOX_MAIN_APIWRAPPER_GEN_HDRS)
-VBoxCOM_SOURCES         = \
-	glue/com.cpp \
-	glue/VBoxLogRelCreate.cpp \
-	glue/GetVBoxUserHomeDirectory.cpp \
-	glue/initterm.cpp \
-	glue/string.cpp \
-	glue/string-base64.cpp \
-	glue/AutoLock.cpp \
-	glue/EventQueue.cpp \
-	glue/NativeEventQueue.cpp \
-	glue/ErrorInfo.cpp \
-	glue/errorprint.cpp
-VBoxCOM_INCS          += $(VBOX_MAIN_APIWRAPPER_INCS) \
-	include
-ifeq ($(KBUILD_TARGET),win)
- ifdef VBOX_WITH_MIDL_PROXY_STUB
-  VBoxCOM_DEFS.win      = VBOX_WITH_AUTO_COM_REG_UPDATE
- endif
- ifdef VBOX_WITH_SDS
-  VBoxCOM_DEFS.win     += VBOX_WITH_SDS
- endif
- VBoxCOM_DEFS.x86       = _WIN32_WINNT=0x0500
- VBoxCOM_DEFS.amd64     = _WIN32_WINNT=0x0510
- VBoxCOM_SOURCES       += \
-	$(VBoxCOM_0_OUTDIR)/VirtualBox_i.c
- VBoxCOM_CLEAN          = \
- 	$(VBoxCOM_0_OUTDIR)/VirtualBox_i.c \
- 	$(VBoxCOM_0_OUTDIR)/VirtualBox_p.c \
- 	$(VBoxCOM_0_OUTDIR)/dlldata.c \
- 	$(VBoxCOM_0_OUTDIR)/VirtualBox.h \
- 	$(VBoxCOM_0_OUTDIR)/VirtualBox.tlb
- VBoxCOM_CLEAN        += \
-	$(VBoxCOM_0_OUTDIR)/legacy/VirtualBox_i.c \
-	$(VBoxCOM_0_OUTDIR)/legacy/VirtualBox_p.c \
-	$(VBoxCOM_0_OUTDIR)/legacy/dlldata.c \
-	$(VBoxCOM_0_OUTDIR)/legacy/VirtualBox.h \
-	$(VBoxCOM_0_OUTDIR)/legacy/VirtualBox.tlb
- VBoxCOM_BLDDIRS      = $(VBoxCOM_0_OUTDIR)/legacy/
-else # !win
- VBoxCOM_SOURCES       += \
-	$(VBoxCOM_0_OUTDIR)/VirtualBox_XPCOM_i.c \
-	glue/xpcom/helpers.cpp
-endif # !win
-
-ifdef VBOX_WITH_AUTOMATIC_DEFS_QUOTING
-glue/VBoxLogRelCreate.cpp_DEFS = KBUILD_TYPE="$(KBUILD_TYPE)"
-else
-glue/VBoxLogRelCreate.cpp_DEFS = KBUILD_TYPE=\"$(KBUILD_TYPE)\"
-endif
-
-# 32-bit version of VBoxCOM.
-if defined(VBOX_WITH_32_ON_64_MAIN_API) && !defined(VBOX_ONLY_EXTPACKS)
- LIBRARIES += VBoxCOM-x86
- VBoxCOM-x86_TEMPLATE = VBoxMainLib-x86
- VBoxCOM-x86_EXTENDS  = VBoxCOM
+ #
+ # VBoxCOM - COM Abstraction Layer library
+ #
+ LIBRARIES += VBoxCOM
+ VBoxCOM_TEMPLATE       = VBoxMainLib
+ VBoxCOM_INTERMEDIATES  = $(VBOX_MAIN_PREREQS) \
+ 	$(VBOX_MAIN_APIWRAPPER_GEN_HDRS)
+ VBoxCOM_SOURCES        = \
+ 	glue/com.cpp \
+ 	glue/VBoxLogRelCreate.cpp \
+ 	glue/GetVBoxUserHomeDirectory.cpp \
+ 	glue/initterm.cpp \
+ 	glue/string.cpp \
+ 	glue/string-base64.cpp \
+ 	glue/AutoLock.cpp \
+ 	glue/EventQueue.cpp \
+ 	glue/NativeEventQueue.cpp \
+ 	glue/ErrorInfo.cpp \
+ 	glue/errorprint.cpp
+ VBoxCOM_INCS         += $(VBOX_MAIN_APIWRAPPER_INCS) \
+ 	include
  ifeq ($(KBUILD_TARGET),win)
-  VBoxCOM-x86_CLEAN   = \
- 	$(VBoxCOM-x86_0_OUTDIR)/VirtualBox_i.c \
- 	$(VBoxCOM-x86_0_OUTDIR)/VirtualBox_p.c \
- 	$(VBoxCOM-x86_0_OUTDIR)/dlldata.c \
- 	$(VBoxCOM-x86_0_OUTDIR)/VirtualBox.h \
- 	$(VBoxCOM-x86_0_OUTDIR)/VirtualBox-x86.tlb
- endif
-endif
-
-# -MD version for the GUI in -MDd builds.
-ifeq ($(KBUILD_TARGET).$(VBOX_VCC_CRT_TYPE),win.d)
- ifndef VBOX_ONLY_EXTPACKS
-  LIBRARIES += VBoxCOM-GUI
+  ifdef VBOX_WITH_MIDL_PROXY_STUB
+   VBoxCOM_DEFS.win     = VBOX_WITH_AUTO_COM_REG_UPDATE
+  endif
+  ifdef VBOX_WITH_SDS
+   VBoxCOM_DEFS.win    += VBOX_WITH_SDS
+  endif
+  VBoxCOM_DEFS.x86      = _WIN32_WINNT=0x0500
+  VBoxCOM_DEFS.amd64    = _WIN32_WINNT=0x0510
+  VBoxCOM_SOURCES      += \
+  	$(VBoxCOM_0_OUTDIR)/VirtualBox_i.c
+  VBoxCOM_CLEAN         = \
+  	$(VBoxCOM_0_OUTDIR)/VirtualBox_i.c \
+  	$(VBoxCOM_0_OUTDIR)/VirtualBox_p.c \
+  	$(VBoxCOM_0_OUTDIR)/dlldata.c \
+  	$(VBoxCOM_0_OUTDIR)/VirtualBox.h \
+  	$(VBoxCOM_0_OUTDIR)/VirtualBox.tlb
+  VBoxCOM_CLEAN       += \
+  	$(VBoxCOM_0_OUTDIR)/legacy/VirtualBox_i.c \
+  	$(VBoxCOM_0_OUTDIR)/legacy/VirtualBox_p.c \
+  	$(VBoxCOM_0_OUTDIR)/legacy/dlldata.c \
+  	$(VBoxCOM_0_OUTDIR)/legacy/VirtualBox.h \
+  	$(VBoxCOM_0_OUTDIR)/legacy/VirtualBox.tlb
+  VBoxCOM_BLDDIRS     = $(VBoxCOM_0_OUTDIR)/legacy/
+ else # !win
+  VBoxCOM_SOURCES      += \
+  	$(VBoxCOM_0_OUTDIR)/VirtualBox_XPCOM_i.c \
+  	glue/xpcom/helpers.cpp
+ endif # !win
+
+ ifdef VBOX_WITH_AUTOMATIC_DEFS_QUOTING
+  glue/VBoxLogRelCreate.cpp_DEFS = KBUILD_TYPE="$(KBUILD_TYPE)"
+ else
+  glue/VBoxLogRelCreate.cpp_DEFS = KBUILD_TYPE=\"$(KBUILD_TYPE)\"
+ endif
+
+ # 32-bit version of VBoxCOM.
+ if defined(VBOX_WITH_32_ON_64_MAIN_API) && !defined(VBOX_ONLY_EXTPACKS)
+  LIBRARIES += VBoxCOM-x86
+  VBoxCOM-x86_TEMPLATE = VBoxMainLib-x86
+  VBoxCOM-x86_EXTENDS = VBoxCOM
+  ifeq ($(KBUILD_TARGET),win)
+   VBoxCOM-x86_CLEAN  = \
+   	$(VBoxCOM-x86_0_OUTDIR)/VirtualBox_i.c \
+   	$(VBoxCOM-x86_0_OUTDIR)/VirtualBox_p.c \
+   	$(VBoxCOM-x86_0_OUTDIR)/dlldata.c \
+   	$(VBoxCOM-x86_0_OUTDIR)/VirtualBox.h \
+   	$(VBoxCOM-x86_0_OUTDIR)/VirtualBox-x86.tlb
+  endif
+ endif
+
+ # -MD version for the GUI in -MDd builds.
+ ifeq ($(KBUILD_TARGET).$(VBOX_VCC_CRT_TYPE),win.d)
+  ifndef VBOX_ONLY_EXTPACKS
+   LIBRARIES += VBoxCOM-GUI
+   USES += qt5
+   VBoxCOM-GUI_TEMPLATE = $(if-expr defined(VBOX_WITH_HARDENING),VBoxQtGuiDll,VBoxQtGuiExe)
+   VBoxCOM-GUI_EXTENDS = VBoxCOM
+  endif
+ endif
+
+ # define qt5 tools for translation even if VBOX_ONLY_EXTPACKS is enabled
+ ifdef VBOX_WITH_NLS
   USES += qt5
-  VBoxCOM-GUI_TEMPLATE = $(if-expr defined(VBOX_WITH_HARDENING),VBoxQtGuiDll,VBoxQtGuiExe)
-  VBoxCOM-GUI_EXTENDS  = VBoxCOM
- endif
-endif
-
-# define qt5 tools for translation even if VBOX_ONLY_EXTPACKS is enabled
-ifdef VBOX_WITH_NLS
- USES += qt5
-endif
+ endif
 
 
@@ -1472,8 +1472,8 @@
  VBoxMain-hardening-inst_INST = $(INST_BIN)components/
  VBoxMain-hardening-inst_SYMLINKS = \
-	VBoxDDU.so=>../VBoxDDU.so \
-	VBoxRT.so=>../VBoxRT.so \
-	VBoxVMM.so=>../VBoxVMM.so \
-	VBoxXPCOM.so=>../VBoxXPCOM.so
+ 	VBoxDDU.so=>../VBoxDDU.so \
+ 	VBoxRT.so=>../VBoxRT.so \
+ 	VBoxVMM.so=>../VBoxVMM.so \
+ 	VBoxXPCOM.so=>../VBoxXPCOM.so
 endif
 
@@ -1499,5 +1499,5 @@
  endif
  ifdef VBOX_WITH_SDS_CLIENT_WATCHER
-  VBoxProxyStub_DEFS   +=  VBOX_WITH_SDS_CLIENT_WATCHER,)
+  VBoxProxyStub_DEFS   += VBOX_WITH_SDS_CLIENT_WATCHER,)
  endif
  VBoxProxyStub_DEFS.win.x86 = WIN32
@@ -1524,5 +1524,5 @@
  	src-all/win/VBoxProxyStub.def \
  	src-all/win/VBoxProxyStubLegacy.rc \
-  	src-all/win/VBoxProxyStub.c
+ 	src-all/win/VBoxProxyStub.c
  src-all/win/VBoxProxyStubLegacy.rc_DEPS = $(VBoxCOM_0_OUTDIR)/legacy/VirtualBox.tlb
 
@@ -1536,7 +1536,7 @@
   	$(VBoxCOM-x86_0_OUTDIR)/VirtualBox_p.c \
   	$(VBoxCOM-x86_0_OUTDIR)/VirtualBox_i.c \
- 	src-all/win/VBoxProxyStub.c \
- 	src-all/win/VBoxProxyStub-x86.rc \
- 	src-all/win/VBoxProxyStub.def
+  	src-all/win/VBoxProxyStub.c \
+  	src-all/win/VBoxProxyStub-x86.rc \
+  	src-all/win/VBoxProxyStub.def
   src-all/win/VBoxProxyStub-x86.rc_DEPS = $(VBoxCOM-x86_0_OUTDIR)/VirtualBox-x86.tlb
  endif
@@ -1545,24 +1545,24 @@
 
 ifdef VBOX_WITH_MAIN_NLS
-#
-# NLS stuff.
-#
-include $(PATH_SUB_CURRENT)/nls/ApprovedLanguages.kmk
-
-PROGRAMS += VirtualBoxAPI
-VirtualBoxAPI_TEMPLATE = VBoxNLS
-VirtualBoxAPI_QT_TRANSLATIONS = $(addsuffix .ts,$(addprefix $(VBOX_PATH_MAIN_SRC)/nls/VirtualBoxAPI_,$(VBOX_APPROVED_MAIN_LANGUAGES)))
-VirtualBoxAPI_VBOX_ALL_NLS_SOURCES = $(wildcard \
-	$(VBOX_PATH_MAIN_SRC)/include/*.h\
-	$(VBOX_PATH_MAIN_SRC)/src-all/*.cpp \
-	$(VBOX_PATH_MAIN_SRC)/src-all/*.h \
-	$(VBOX_PATH_MAIN_SRC)/src-server/*.cpp \
-	$(VBOX_PATH_MAIN_SRC)/src-server/*.h \
-	$(VBOX_PATH_MAIN_SRC)/src-client/*.cpp \
-	$(VBOX_PATH_MAIN_SRC)/src-client/*.h )
-
-updatenls:: makeallnls $(VBOX_PATH_MAIN_SRC)/nls/VirtualBoxAPI_en.ts
-
-makeallnls:: $(VirtualBoxAPI_VBOX_ALL_NLS_SOURCES)
+ #
+ # NLS stuff.
+ #
+ include $(PATH_SUB_CURRENT)/nls/ApprovedLanguages.kmk
+
+ PROGRAMS += VirtualBoxAPI
+ VirtualBoxAPI_TEMPLATE = VBoxNLS
+ VirtualBoxAPI_QT_TRANSLATIONS = $(addsuffix .ts,$(addprefix $(VBOX_PATH_MAIN_SRC)/nls/VirtualBoxAPI_,$(VBOX_APPROVED_MAIN_LANGUAGES)))
+ VirtualBoxAPI_VBOX_ALL_NLS_SOURCES = $(wildcard \
+ 	$(VBOX_PATH_MAIN_SRC)/include/*.h \
+ 	$(VBOX_PATH_MAIN_SRC)/src-all/*.cpp \
+ 	$(VBOX_PATH_MAIN_SRC)/src-all/*.h \
+ 	$(VBOX_PATH_MAIN_SRC)/src-server/*.cpp \
+ 	$(VBOX_PATH_MAIN_SRC)/src-server/*.h \
+ 	$(VBOX_PATH_MAIN_SRC)/src-client/*.cpp \
+ 	$(VBOX_PATH_MAIN_SRC)/src-client/*.h )
+
+ updatenls:: makeallnls $(VBOX_PATH_MAIN_SRC)/nls/VirtualBoxAPI_en.ts
+
+ makeallnls:: $(VirtualBoxAPI_VBOX_ALL_NLS_SOURCES)
 	$(call MSG_L1,lupdate all languages (nls/*.ts))
 	$(QUIET)$(TOOL_QT5_LUPDATE) \
@@ -1572,19 +1572,19 @@
 		$(VBOX_PATH_MAIN_SRC)/nls/VirtualBoxAPI_xx_YY.ts
 
-#fake-main-nls:
-#	$(foreach file, $(VirtualBoxAPI_QT_TRANSLATIONS) \
-#	,$(NLTAB)$(SED) -i \
-#       	-e '/<source>.*<\/source>/h' \
-#       	-e '/<source>.*<\/source>/p' \
-#       	-e '/<translation type="unfinished"><\/translation>/{' \
-#       		-e 'x' \
-#       		-e 's/<source>\(.*\)<\/source>/<translation type="unfinished">$(notdir $(file)): \1<\/translation>/' \
-#       	-e '}' \
-#		$(file) )
-
-
-# Create the English translation file. This is something special cause it will
-# contain the plural forms only.
-$(VBOX_PATH_MAIN_SRC)/nls/VirtualBoxAPI_en.ts: $(VirtualBoxAPI_VBOX_ALL_NLS_SOURCES)
+ #fake-main-nls:
+ #	$(foreach file, $(VirtualBoxAPI_QT_TRANSLATIONS) \
+ #	,$(NLTAB)$(SED) -i \
+ #       	-e '/<source>.*<\/source>/h' \
+ #       	-e '/<source>.*<\/source>/p' \
+ #       	-e '/<translation type="unfinished"><\/translation>/{' \
+ #       		-e 'x' \
+ #       		-e 's/<source>\(.*\)<\/source>/<translation type="unfinished">$(notdir $(file)): \1<\/translation>/' \
+ #       	-e '}' \
+ #		$(file) )
+
+
+ # Create the English translation file. This is something special cause it will
+ # contain the plural forms only.
+ $(VBOX_PATH_MAIN_SRC)/nls/VirtualBoxAPI_en.ts: $(VirtualBoxAPI_VBOX_ALL_NLS_SOURCES)
 	$(call MSG_L1,lupdate $@)
 	$(QUIET)$(TOOL_QT5_LUPDATE) \
@@ -1622,5 +1622,5 @@
 
 $(call KB_FN_AUTO_CMD_DEPS_EX,$(VBOX_IDL_TYPELIB.XPCOM),$(PATH_OUT)/VBOX_IDL_TYPELIB.XPCOM.vbox-dep)
-$(VBOX_IDL_TYPELIB.XPCOM): $(VBOX_IDL_FILE.XPCOM) |  $$(dir $$@) $(VBOX_XPIDL)
+$(VBOX_IDL_TYPELIB.XPCOM): $(VBOX_IDL_FILE.XPCOM) | $$(dir $$@) $(VBOX_XPIDL)
 	$(call KB_FN_AUTO_CMD_DEPS_COMMANDS_EX,$(PATH_OUT)/VBOX_IDL_TYPELIB.XPCOM.vbox-dep)
 	$(call MSG_TOOL,xpidl,VBoxSVC,$(VBOX_IDL_FILE.XPCOM),$@)
@@ -1647,9 +1647,9 @@
 # Aliases for testing purposes.
 ifdef VBOX_WITH_XPCOM
-testidl:    $(VBOX_IDL_FILE.XPCOM) $(VBOX_IDL_TYPELIB.XPCOM) $(VBoxCOM_0_OUTDIR)/VirtualBox_XPCOM_i.c
-testidlhdr: $(VBOX_IDL_HEADER.XPCOM)
+ testidl: $(VBOX_IDL_FILE.XPCOM) $(VBOX_IDL_TYPELIB.XPCOM) $(VBoxCOM_0_OUTDIR)/VirtualBox_XPCOM_i.c
+ testidlhdr: $(VBOX_IDL_HEADER.XPCOM)
 else
-testidl:    $(VBOX_IDL_FILE.MSCOM) $(VBoxCOM_0_OUTDIR)/VirtualBox_i.c \
-	$(if $(VBOX_WITH_32_ON_64_MAIN_API),$(VBoxCOM-x86_0_OUTDIR)/VirtualBox_i.c,)
+ testidl: $(VBOX_IDL_FILE.MSCOM) $(VBoxCOM_0_OUTDIR)/VirtualBox_i.c \
+ 		$(if $(VBOX_WITH_32_ON_64_MAIN_API),$(VBoxCOM-x86_0_OUTDIR)/VirtualBox_i.c,)
 endif
 
@@ -1690,5 +1690,5 @@
   $(call KB_FN_AUTO_CMD_DEPS,$(VBoxCOM_0_OUTDIR)/legacy/VirtualBox_i.c)
   $(VBoxCOM_0_OUTDIR)/legacy/VirtualBox_i.c \
-  + $(VBoxCOM_0_OUTDIR)/legacy/VirtualBox_p.c\
+  + $(VBoxCOM_0_OUTDIR)/legacy/VirtualBox_p.c \
   + $(VBoxCOM_0_OUTDIR)/legacy/dlldata.c \
   + $(VBoxCOM_0_OUTDIR)/legacy/VirtualBox.h \
@@ -1729,5 +1729,5 @@
 	$(call def_VBoxMidlOutputDisableMscWarnings,$(VBoxCOM-x86_0_OUTDIR)/VirtualBox_i.c)
 	$(call def_VBoxMidlOutputDisableMscWarnings,$(VBoxCOM-x86_0_OUTDIR)/VirtualBox_p.c)
-  endif
+ endif
 
 endif # defined(VBOX_ONLY_SDK) || "$(KBUILD_TARGET)" == "win"
@@ -1772,9 +1772,9 @@
  	$(VBOX_JMSCOM_GEN)/jmscomglue.list \
  	$(wildcard \
- 		$(VBOX_JMSCOM_GEN)/java/*.java \
- 		$(VBOX_JMSCOM_JDEST)/*.class \
- 		$(VBOX_JMSCOM_JDEST)/*/*.class \
- 		$(VBOX_JMSCOM_JDEST)/*/*/*.class \
- 		$(VBOX_JMSCOM_JDEST)/*/*/*/*.class \
+ 	$(VBOX_JMSCOM_GEN)/java/*.java \
+ 	$(VBOX_JMSCOM_JDEST)/*.class \
+ 	$(VBOX_JMSCOM_JDEST)/*/*.class \
+ 	$(VBOX_JMSCOM_JDEST)/*/*/*.class \
+ 	$(VBOX_JMSCOM_JDEST)/*/*/*/*.class \
  	)
  VBoxJMscom-inst-jar_BLDDIRS += $(VBOX_JMSCOM_GEN)/java
@@ -1783,8 +1783,8 @@
  $(call KB_FN_AUTO_CMD_DEPS,$(VBOX_JMSCOM_GEN)/jmscomglue.list)
  $(VBOX_JMSCOM_GEN)/jmscomglue.list: \
-		$(VBOX_XIDL_FILE) \
-		$(VBOX_GLUE_XSLT_DIR)/glue-java.xsl \
-		$(VBOX_FILESPLIT) \
-		| $(VBOX_JMSCOM_GEN)/java/
+ 		$(VBOX_XIDL_FILE) \
+ 		$(VBOX_GLUE_XSLT_DIR)/glue-java.xsl \
+ 		$(VBOX_FILESPLIT) \
+ 		| $(VBOX_JMSCOM_GEN)/java/
 	$(call KB_FN_AUTO_CMD_DEPS_COMMANDS)
 	$(call MSG_L1,Generating Java MSCOM glue files from XIDL)
@@ -1850,5 +1850,5 @@
 +| $(VBOX_MAIN_APIWRAPPER_GEN_HDRS): \
 		$(VBOX_XIDL_FILE) \
-               $(VBOX_PATH_MAIN_SRC)/idl/typemap-shared.inc.xsl \
+		$(VBOX_PATH_MAIN_SRC)/idl/typemap-shared.inc.xsl \
 		$(VBoxAPIWrap_VBOX_XSLT) \
 		$(VBOX_FILESPLIT) \
@@ -1867,5 +1867,5 @@
 +| $(VBoxAPIWrap_0_OUTDIR)/VBoxAPI.d: \
 		$(VBOX_XIDL_FILE) \
-               $(VBOX_PATH_MAIN_SRC)/idl/typemap-shared.inc.xsl \
+		$(VBOX_PATH_MAIN_SRC)/idl/typemap-shared.inc.xsl \
 		$(VBoxAPIWrap_VBOX_XSLT) \
 		$(VBOX_FILESPLIT) \
@@ -1889,5 +1889,5 @@
 +| $(VBOX_MAIN_APIWRAPPER_GEN_SRCS_EVEN): \
 		$(VBOX_XIDL_FILE) \
-               $(VBOX_PATH_MAIN_SRC)/idl/typemap-shared.inc.xsl \
+		$(VBOX_PATH_MAIN_SRC)/idl/typemap-shared.inc.xsl \
 		$(VBoxAPIWrap_VBOX_XSLT) \
 		$(VBOX_FILESPLIT) \
@@ -1906,5 +1906,5 @@
 +| $(VBOX_MAIN_APIWRAPPER_GEN_SRCS_ODD): \
 		$(VBOX_XIDL_FILE) \
-               $(VBOX_PATH_MAIN_SRC)/idl/typemap-shared.inc.xsl \
+		$(VBOX_PATH_MAIN_SRC)/idl/typemap-shared.inc.xsl \
 		$(VBoxAPIWrap_VBOX_XSLT) \
 		$(VBOX_FILESPLIT) \
@@ -1920,6 +1920,6 @@
 
 testapiwrappers:: \
-	$(VBoxAPIWrap_0_OUTDIR)/apiwrappers-headers \
-	$(VBoxAPIWrap_0_OUTDIR)/VBoxAPI.d.ts \
-	$(VBoxAPIWrap_0_OUTDIR)/apiwrappers-sources-odd \
-	$(VBoxAPIWrap_0_OUTDIR)/apiwrappers-sources-even
+		$(VBoxAPIWrap_0_OUTDIR)/apiwrappers-headers \
+		$(VBoxAPIWrap_0_OUTDIR)/VBoxAPI.d.ts \
+		$(VBoxAPIWrap_0_OUTDIR)/apiwrappers-sources-odd \
+		$(VBoxAPIWrap_0_OUTDIR)/apiwrappers-sources-even
Index: trunk/src/VBox/Main/UnattendedTemplates/Makefile.kmk
===================================================================
--- trunk/src/VBox/Main/UnattendedTemplates/Makefile.kmk	(revision 98430)
+++ trunk/src/VBox/Main/UnattendedTemplates/Makefile.kmk	(revision 98431)
@@ -65,6 +65,6 @@
  ifndef VBOX_OSE
   VBoxUnattendedTemplates_SOURCES += \
- 	lgw_ks.cfg \
- 	lgw_postinstall.sh
+  	lgw_ks.cfg \
+  	lgw_postinstall.sh
  endif
 
Index: trunk/src/VBox/Main/cbinding/Makefile.kmk
===================================================================
--- trunk/src/VBox/Main/cbinding/Makefile.kmk	(revision 98430)
+++ trunk/src/VBox/Main/cbinding/Makefile.kmk	(revision 98431)
@@ -97,5 +97,5 @@
  	VBoxCAPI.cpp
  VBoxCAPI_SOURCES.win = \
-	VBoxCAPI.rc
+ 	VBoxCAPI.rc
  VBoxCAPI_INCS = \
  	$(CAPIHeaders_0_OUTDIR)
@@ -113,8 +113,8 @@
  ifdef VBOX_WITH_XPCOM
   VBoxCAPIGlue_SOURCES += \
- 	$(VBOX_PATH_SDK)/bindings/xpcom/lib/VirtualBox_i.c
+  	$(VBOX_PATH_SDK)/bindings/xpcom/lib/VirtualBox_i.c
  else
   VBoxCAPIGlue_SOURCES += \
- 	$(VBOX_PATH_SDK)/bindings/mscom/lib/VirtualBox_i.c
+  	$(VBOX_PATH_SDK)/bindings/mscom/lib/VirtualBox_i.c
  endif
  VBoxCAPIGlue_INCS = \
@@ -145,5 +145,5 @@
   	$(VBOX_PATH_SDK)/bindings/c/glue/VBoxCAPIGlue.h \
   	$(VBOX_PATH_SDK)/bindings/c/include/VBoxCAPI_v$(VBOX_API_VERSION).h \
-       $(if-expr !defined(VBOX_WITH_XPCOM),$(VBOX_PATH_SDK)/bindings/mscom/include/VirtualBox.h,)
+  	$(if-expr !defined(VBOX_WITH_XPCOM),$(VBOX_PATH_SDK)/bindings/mscom/include/VirtualBox.h,)
   tstCAPIGlue_SOURCES = \
   	tstCAPIGlue.c
Index: trunk/src/VBox/Main/src-helper-apps/OpenGLTest/Makefile.kmk
===================================================================
--- trunk/src/VBox/Main/src-helper-apps/OpenGLTest/Makefile.kmk	(revision 98430)
+++ trunk/src/VBox/Main/src-helper-apps/OpenGLTest/Makefile.kmk	(revision 98431)
@@ -50,8 +50,8 @@
 # Note! Doesn't link with VBOX_WITH_DEBUG_VCC_CRT defined because it uses Qt.
 #
-if    defined(VBOX_WITH_QTGUI) \
-   && (defined(VBOX_WITH_VMSVGA3D) || defined(VBOX_WITH_VIDEOHWACCEL)) \
-   && !defined(VBOX_WITH_DEBUG_VCC_CRT) \
-   && "$(KBUILD_TARGET)" != "darwin"
+if   defined(VBOX_WITH_QTGUI) \
+  && (defined(VBOX_WITH_VMSVGA3D) || defined(VBOX_WITH_VIDEOHWACCEL)) \
+  && !defined(VBOX_WITH_DEBUG_VCC_CRT) \
+  && "$(KBUILD_TARGET)" != "darwin"
  ifdef VBOX_WITH_VIDEOHWACCEL
   ifndef VBOX_WITH_QT6
Index: trunk/src/VBox/Main/src-helper-apps/os2/Makefile.kmk
===================================================================
--- trunk/src/VBox/Main/src-helper-apps/os2/Makefile.kmk	(revision 98430)
+++ trunk/src/VBox/Main/src-helper-apps/os2/Makefile.kmk	(revision 98431)
@@ -56,6 +56,6 @@
 	SEGMENT IOPL IOPL EXECUTEREAD
 if 0
-os2_util_LDFLAGS       += Debug Watcom All
-os2_util_CFLAGS        += -d2 -hw
+ os2_util_LDFLAGS      += Debug Watcom All
+ os2_util_CFLAGS       += -d2 -hw
 endif
 
Index: trunk/src/VBox/Main/testcase/Makefile.kmk
===================================================================
--- trunk/src/VBox/Main/testcase/Makefile.kmk	(revision 98430)
+++ trunk/src/VBox/Main/testcase/Makefile.kmk	(revision 98431)
@@ -39,5 +39,5 @@
   	tstVBoxAPI \
   	tstVBoxAPIPerf \
-	tstVBoxMultipleVM \
+  	tstVBoxMultipleVM \
   	$(if $(VBOX_OSE),,tstOVF) \
   	$(if $(VBOX_WITH_XPCOM),tstVBoxAPIXPCOM,tstVBoxAPIWin msiDarwinDescriptorDecoder) \
@@ -47,5 +47,5 @@
   	$(if $(VBOX_WITH_GUEST_CONTROL),tstGuestCtrlPaths,) \
   	tstMediumLock \
-	tstBstr \
+  	tstBstr \
   	tstGuid \
   	tstUnattendedScript \
@@ -109,15 +109,15 @@
 
 ifndef VBOX_OSE
-#
-# OVF test data.
-#
-INSTALLS += ovf-testcases
-ovf-testcases_MODE = a+r,u+w
-ovf-testcases_INST = $(INST_TESTCASE)ovf-testcases/
-ovf-testcases_SOURCES = \
-	ovf-dummy.vmdk \
-	ovf-joomla-0.9/joomla-1.1.4-ovf.ovf=>ovf-joomla-0.9/joomla-1.1.4-ovf.ovf \
-	ovf-winhost-audio-nodisks/WinXP.ovf=>ovf-winhost-audio-nodisks/WinXP.ovf \
-	ovf-winxp-vbox-sharedfolders/winxp.ovf=>ovf-winxp-vbox-sharedfolders/winxp.ovf
+ #
+ # OVF test data.
+ #
+ INSTALLS += ovf-testcases
+ ovf-testcases_MODE = a+r,u+w
+ ovf-testcases_INST = $(INST_TESTCASE)ovf-testcases/
+ ovf-testcases_SOURCES = \
+ 	ovf-dummy.vmdk \
+ 	ovf-joomla-0.9/joomla-1.1.4-ovf.ovf=>ovf-joomla-0.9/joomla-1.1.4-ovf.ovf \
+ 	ovf-winhost-audio-nodisks/WinXP.ovf=>ovf-winhost-audio-nodisks/WinXP.ovf \
+ 	ovf-winxp-vbox-sharedfolders/winxp.ovf=>ovf-winxp-vbox-sharedfolders/winxp.ovf
 endif
 
@@ -217,5 +217,5 @@
 	../src-client/GuestCtrlPrivate.cpp
 tstGuestCtrlContextID_INCS     = ../include \
-     $(VBOX_MAIN_APIWRAPPER_INCS)
+	$(VBOX_MAIN_APIWRAPPER_INCS)
 
 
@@ -230,5 +230,5 @@
 	../src-client/GuestCtrlPrivate.cpp
 tstGuestCtrlParseBuffer_INCS     = ../include \
-    $(VBOX_MAIN_APIWRAPPER_INCS)
+	$(VBOX_MAIN_APIWRAPPER_INCS)
 
 
@@ -243,5 +243,5 @@
 	../src-client/GuestCtrlPrivate.cpp
 tstGuestCtrlPaths_INCS           = ../include \
-    $(VBOX_MAIN_APIWRAPPER_INCS)
+	$(VBOX_MAIN_APIWRAPPER_INCS)
 
 if 0 # Enable this if you want automatic runs after compilation.
@@ -308,17 +308,17 @@
 tstUnattendedScript_INTERMEDIATES = \
 	$(VBOX_MAIN_APIWRAPPER_GEN_HDRS) \
-       $(VBOX_XML_SCHEMADEFS_H)
+	$(VBOX_XML_SCHEMADEFS_H)
 tstUnattendedScript_INCS     = \
 	../include \
-     $(VBOX_MAIN_APIWRAPPER_INCS) \
-     $(dir $(VBOX_XML_SCHEMADEFS_H))
+	$(VBOX_MAIN_APIWRAPPER_INCS) \
+	$(dir $(VBOX_XML_SCHEMADEFS_H))
 tstUnattendedScript_SOURCES  = \
 	tstUnattendedScript.cpp \
-       ../src-server/UnattendedScript.cpp \
-       ../src-all/TextScript.cpp \
-       ../src-all/VirtualBoxBase.cpp \
-       ../src-all/VirtualBoxErrorInfoImpl.cpp \
-       ../src-all/AutoCaller.cpp \
-       ../src-all/GlobalStatusConversion.cpp
+	../src-server/UnattendedScript.cpp \
+	../src-all/TextScript.cpp \
+	../src-all/VirtualBoxBase.cpp \
+	../src-all/VirtualBoxErrorInfoImpl.cpp \
+	../src-all/AutoCaller.cpp \
+	../src-all/GlobalStatusConversion.cpp
 tstUnattendedScript_LIBS     = \
 	$(PATH_STAGE_LIB)/VBoxAPIWrap$(VBOX_SUFF_LIB)
Index: trunk/src/VBox/Main/webservice/Makefile.kmk
===================================================================
--- trunk/src/VBox/Main/webservice/Makefile.kmk	(revision 98430)
+++ trunk/src/VBox/Main/webservice/Makefile.kmk	(revision 98431)
@@ -122,5 +122,5 @@
 if "$(VBOX_PATH_GSOAP_BIN)" == ""
  VBOX_PATH_GSOAP_BIN   := $(VBOX_PATH_GSOAP)/bin
- if      "$(KBUILD_HOST)" == "darwin"
+ if "$(KBUILD_HOST)" == "darwin"
   VBOX_PATH_GSOAP_BIN  := $(VBOX_PATH_GSOAP_BIN)/macosx
  else if "$(KBUILD_HOST)" == "win"
@@ -140,7 +140,7 @@
 # the creation of the Python webservice bindings anyway.
 if "$(KBUILD_HOST)" != "win"
-VBOX_WSDL2PY            = $(firstword $(which wsdl2py) wsdl2py_not_found)
+ VBOX_WSDL2PY           = $(firstword $(which wsdl2py) wsdl2py_not_found)
 else
-VBOX_WSDL2PY            = $(firstword $(wildcard C:/Python27/Scripts/wsdl2py.exe) wsdl2py_not_found)
+ VBOX_WSDL2PY           = $(firstword $(wildcard C:/Python27/Scripts/wsdl2py.exe) wsdl2py_not_found)
 endif
 
@@ -224,8 +224,8 @@
 TEMPLATE_VBoxWebR3Exe_EXTENDS = VBoxR3Exe
 TEMPLATE_VBoxWebR3Exe_DEFS.win += WIN32_LEAN_AND_MEAN $(TEMPLATE_VBoxR3Exe_DEFS.win) # Makes the redefinition warnings go away.
-TEMPLATE_VBoxWebR3Exe_CXXFLAGS = $(filter-out $(VBOX_GCC_fvisibility-hidden) $(VBOX_GCC_fvisibility-inlines-hidden),\
-				 $(TEMPLATE_VBoxR3Exe_CXXFLAGS))
+TEMPLATE_VBoxWebR3Exe_CXXFLAGS = $(filter-out $(VBOX_GCC_fvisibility-hidden) $(VBOX_GCC_fvisibility-inlines-hidden), \
+	$(TEMPLATE_VBoxR3Exe_CXXFLAGS))
 ifn1of ($(KBUILD_TARGET), win)
-TEMPLATE_VBoxWebR3Exe_CXXFLAGS += $(VBOX_GCC_Wno-misleading-indentation)
+ TEMPLATE_VBoxWebR3Exe_CXXFLAGS += $(VBOX_GCC_Wno-misleading-indentation)
 endif
 if "$(VBOX_VCC_TOOL_STEM)" >= "VCC140"
@@ -283,33 +283,33 @@
   else
    vboxsoap_SOURCES = \
-	$(VBOXWEB_OUT_DIR)/soapC-1.cpp \
-	$(VBOXWEB_OUT_DIR)/soapC-2.cpp \
-	$(VBOXWEB_OUT_DIR)/soapC-3.cpp \
-	$(VBOXWEB_OUT_DIR)/soapC-4.cpp \
-	$(VBOXWEB_OUT_DIR)/soapC-5.cpp \
-	$(VBOXWEB_OUT_DIR)/soapC-6.cpp \
-	$(VBOXWEB_OUT_DIR)/soapC-7.cpp \
-	$(VBOXWEB_OUT_DIR)/soapC-8.cpp \
-	$(VBOXWEB_OUT_DIR)/soapC-9.cpp \
-	$(VBOXWEB_OUT_DIR)/soapC-10.cpp \
-	$(VBOXWEB_OUT_DIR)/soapC-11.cpp \
-	$(VBOXWEB_OUT_DIR)/soapC-12.cpp \
-	$(VBOXWEB_OUT_DIR)/soapC-13.cpp \
-	$(VBOXWEB_OUT_DIR)/soapC-14.cpp \
-	$(VBOXWEB_OUT_DIR)/soapC-15.cpp \
-	$(VBOXWEB_OUT_DIR)/soapC-16.cpp \
-	$(VBOXWEB_OUT_DIR)/soapC-17.cpp \
-	$(VBOXWEB_OUT_DIR)/soapC-18.cpp \
-	$(VBOXWEB_OUT_DIR)/soapC-19.cpp \
-	$(VBOXWEB_OUT_DIR)/soapC-20.cpp \
-	$(VBOXWEB_OUT_DIR)/soapC-21.cpp \
-	$(VBOXWEB_OUT_DIR)/soapC-22.cpp \
-	$(VBOXWEB_OUT_DIR)/soapC-23.cpp \
-	$(VBOXWEB_OUT_DIR)/soapC-24.cpp \
-	$(VBOXWEB_OUT_DIR)/soapC-25.cpp \
-	$(VBOXWEB_OUT_DIR)/soapC-26.cpp \
-	$(VBOXWEB_OUT_DIR)/soapC-27.cpp \
-	$(VBOXWEB_OUT_DIR)/soapC-28.cpp \
-	$(VBOXWEB_OUT_DIR)/soapC-29.cpp
+   	$(VBOXWEB_OUT_DIR)/soapC-1.cpp \
+   	$(VBOXWEB_OUT_DIR)/soapC-2.cpp \
+   	$(VBOXWEB_OUT_DIR)/soapC-3.cpp \
+   	$(VBOXWEB_OUT_DIR)/soapC-4.cpp \
+   	$(VBOXWEB_OUT_DIR)/soapC-5.cpp \
+   	$(VBOXWEB_OUT_DIR)/soapC-6.cpp \
+   	$(VBOXWEB_OUT_DIR)/soapC-7.cpp \
+   	$(VBOXWEB_OUT_DIR)/soapC-8.cpp \
+   	$(VBOXWEB_OUT_DIR)/soapC-9.cpp \
+   	$(VBOXWEB_OUT_DIR)/soapC-10.cpp \
+   	$(VBOXWEB_OUT_DIR)/soapC-11.cpp \
+   	$(VBOXWEB_OUT_DIR)/soapC-12.cpp \
+   	$(VBOXWEB_OUT_DIR)/soapC-13.cpp \
+   	$(VBOXWEB_OUT_DIR)/soapC-14.cpp \
+   	$(VBOXWEB_OUT_DIR)/soapC-15.cpp \
+   	$(VBOXWEB_OUT_DIR)/soapC-16.cpp \
+   	$(VBOXWEB_OUT_DIR)/soapC-17.cpp \
+   	$(VBOXWEB_OUT_DIR)/soapC-18.cpp \
+   	$(VBOXWEB_OUT_DIR)/soapC-19.cpp \
+   	$(VBOXWEB_OUT_DIR)/soapC-20.cpp \
+   	$(VBOXWEB_OUT_DIR)/soapC-21.cpp \
+   	$(VBOXWEB_OUT_DIR)/soapC-22.cpp \
+   	$(VBOXWEB_OUT_DIR)/soapC-23.cpp \
+   	$(VBOXWEB_OUT_DIR)/soapC-24.cpp \
+   	$(VBOXWEB_OUT_DIR)/soapC-25.cpp \
+   	$(VBOXWEB_OUT_DIR)/soapC-26.cpp \
+   	$(VBOXWEB_OUT_DIR)/soapC-27.cpp \
+   	$(VBOXWEB_OUT_DIR)/soapC-28.cpp \
+   	$(VBOXWEB_OUT_DIR)/soapC-29.cpp
   endif
   ifndef VBOX_WITHOUT_NOINLINE_SOAPH
@@ -336,7 +336,7 @@
   ifn1of ($(KBUILD_TARGET), win)
    $(VBOX_GSOAP_CXX_SOURCES)_CXXFLAGS = \
-	-Wno-format \
-	$(VBOX_GCC_Wno-int-in-bool-context) \
-	$(VBOX_GCC_Wno-logical-op)
+   	-Wno-format \
+   	$(VBOX_GCC_Wno-int-in-bool-context) \
+   	$(VBOX_GCC_Wno-logical-op)
    # currently necessary when compiling against OpenSSL 1.0 due to a missing
    # typecase from 'const v3_ext_method*' to 'aka v3_ext_method*'.
@@ -389,99 +389,99 @@
 
  ifndef VBOX_ONLY_SDK
- #
- # vboxwebsrv - webservice server process
- #
- PROGRAMS += vboxwebsrv
- vboxwebsrv_TEMPLATE = VBoxMainClientExe
- vboxwebsrv_DEFS += SOCKET_CLOSE_ON_EXEC
- vboxwebsrv_DEFS.win += WIN32_LEAN_AND_MEAN
- vboxwebsrv_INCS = \
-	$(VBOX_GSOAP_INCS) \
-	$(VBOXWEB_OUT_DIR) \
-	.
- vboxwebsrv_CXXFLAGS.win += -bigobj
- if "$(VBOX_VCC_TOOL_STEM)" >= "VCC140"
-  vboxwebsrv_CXXFLAGS.win += -wd4774 # string(532): warning C4774: 'sprintf_s' : format string expected in argument 3 is not a string literal
-  vboxwebsrv_CXXFLAGS.win += -wd4458 # stdsoap2.h(2644): warning C4458: declaration of 'type' hides class member
-  vboxwebsrv_CXXFLAGS.win += -wd5039 # x509v3.h(883): warning C5039: 'OPENSSL_sk_set_cmp_func': pointer or reference to potentially throwing function passed to 'extern "C"' function under -EHc. Undefined behavior may occur if this function throws an exception.
- endif
- ifn1of ($(KBUILD_TARGET), win)
-  vboxwebsrv_CXXFLAGS += -Wno-shadow $(VBOX_GCC_Wno-literal-suffix) $(VBOX_GCC_Wno-misleading-indentation)
-  ifn1of ($(KBUILD_TYPE), debug) # Save time+memory by using -O1 instead of -O2.
-   vboxwebsrv_CXXFLAGS += -O0
-  endif
- endif
- vboxwebsrv_LIBS += \
-	$(PATH_STAGE_LIB)/vboxsoap$(VBOX_SUFF_LIB) \
-	$(VBOX_GSOAP_CXX_LIBS) \
-	$(LIB_RUNTIME)
- vboxwebsrv_LIBS.solaris += socket nsl
- ifdef VBOX_WITH_WEBSERVICES_SSL
-  vboxwebsrv_DEFS += WITH_OPENSSL
-  vboxwebsrv_SDKS += VBoxOpenSsl
- endif
- vboxwebsrv_SOURCES = \
-	vboxweb.cpp \
-	$(VBOXWEB_OUT_DIR)/methodmaps.cpp \
-	$(VBOXWEB_OUT_DIR)/soapServer.cpp \
-	$(VBOXWEB_OUT_DIR)/vboxweb-wsdl.c
- vboxwebsrv_SOURCES.win = \
-	VBoxWebSrv.rc
- vboxwebsrv_CLEAN = \
-	$(VBOXWEB_OUT_DIR)/methodmaps.cpp \
-	$(VBOXWEB_OUT_DIR)/soapServer.cpp \
-	$(VBOXWEB_OUT_DIR)/vboxweb-wsdl.c
- vboxwebsrv_ORDERDEPS = $(VBOXWEB_OUT_DIR)/gsoap_copy_all_ts
+  #
+  # vboxwebsrv - webservice server process
+  #
+  PROGRAMS += vboxwebsrv
+  vboxwebsrv_TEMPLATE = VBoxMainClientExe
+  vboxwebsrv_DEFS += SOCKET_CLOSE_ON_EXEC
+  vboxwebsrv_DEFS.win += WIN32_LEAN_AND_MEAN
+  vboxwebsrv_INCS = \
+  	$(VBOX_GSOAP_INCS) \
+  	$(VBOXWEB_OUT_DIR) \
+  	.
+  vboxwebsrv_CXXFLAGS.win += -bigobj
+  if "$(VBOX_VCC_TOOL_STEM)" >= "VCC140"
+   vboxwebsrv_CXXFLAGS.win += -wd4774 # string(532): warning C4774: 'sprintf_s' : format string expected in argument 3 is not a string literal
+   vboxwebsrv_CXXFLAGS.win += -wd4458 # stdsoap2.h(2644): warning C4458: declaration of 'type' hides class member
+   vboxwebsrv_CXXFLAGS.win += -wd5039 # x509v3.h(883): warning C5039: 'OPENSSL_sk_set_cmp_func': pointer or reference to potentially throwing function passed to 'extern "C"' function under -EHc. Undefined behavior may occur if this function throws an exception.
+  endif
+  ifn1of ($(KBUILD_TARGET), win)
+   vboxwebsrv_CXXFLAGS += -Wno-shadow $(VBOX_GCC_Wno-literal-suffix) $(VBOX_GCC_Wno-misleading-indentation)
+   ifn1of ($(KBUILD_TYPE), debug) # Save time+memory by using -O1 instead of -O2.
+    vboxwebsrv_CXXFLAGS += -O0
+   endif
+  endif
+  vboxwebsrv_LIBS += \
+  	$(PATH_STAGE_LIB)/vboxsoap$(VBOX_SUFF_LIB) \
+  	$(VBOX_GSOAP_CXX_LIBS) \
+  	$(LIB_RUNTIME)
+  vboxwebsrv_LIBS.solaris += socket nsl
+  ifdef VBOX_WITH_WEBSERVICES_SSL
+   vboxwebsrv_DEFS += WITH_OPENSSL
+   vboxwebsrv_SDKS += VBoxOpenSsl
+  endif
+  vboxwebsrv_SOURCES = \
+  	vboxweb.cpp \
+  	$(VBOXWEB_OUT_DIR)/methodmaps.cpp \
+  	$(VBOXWEB_OUT_DIR)/soapServer.cpp \
+  	$(VBOXWEB_OUT_DIR)/vboxweb-wsdl.c
+  vboxwebsrv_SOURCES.win = \
+  	VBoxWebSrv.rc
+  vboxwebsrv_CLEAN = \
+  	$(VBOXWEB_OUT_DIR)/methodmaps.cpp \
+  	$(VBOXWEB_OUT_DIR)/soapServer.cpp \
+  	$(VBOXWEB_OUT_DIR)/vboxweb-wsdl.c
+  vboxwebsrv_ORDERDEPS = $(VBOXWEB_OUT_DIR)/gsoap_copy_all_ts
  endif # !VBOX_ONLY_SDK
 
  ifdef VBOX_WITH_JWS
-INSTALLS += VBoxJWs-inst-jar
-
-#
-# Java glue JAR files
-#
-VBOX_JWS_JAR     = $(VBoxJWs-inst-jar_0_OUTDIR)/vboxjws.jar
-VBOX_JWSDOC_JAR  = $(VBoxJWs-inst-jar_0_OUTDIR)/vboxjws-doc.jar
-VBOX_JWSSRC_JAR  = $(VBoxJWs-inst-jar_0_OUTDIR)/vboxjws-src.jar
-VBOX_JWS_TARGET := $(PATH_TARGET)/vboxjws-gen
-VBOX_JWS_GEN     = $(VBOX_JWS_TARGET)/jwsgen
-VBOX_JWS_GEN_RAWSRC = $(VBOX_JWS_GEN)/merged.file
-VBOX_JWS_JDEST  := $(VBOX_JWS_TARGET)/jdest
-VBOX_JWSDOC_JDEST  := $(VBOX_JWS_TARGET)/jdest-doc
-VBOX_GLUE_XSLT_DIR := $(PATH_ROOT)/src/VBox/Main/glue
-VBOX_JAXLIB_DIR    := $(PATH_ROOT)/src/VBox/Main/webservice/jaxlibs
-
-VBoxJWs-inst-jar_INST = $(INST_SDK)bindings/webservice/java/jax-ws/
-VBoxJWs-inst-jar_MODE = a+r,u+w
-VBoxJWs-inst-jar_SOURCES = \
-	$(VBOX_JWS_JAR) \
-	$(VBOX_JWSDOC_JAR) \
-	$(VBOX_JWSSRC_JAR)
-VBoxJWs-inst-jar_CLEAN = \
-	$(VBOX_JWS_JAR) \
-	$(VBOX_JWSDOC_JAR) \
-	$(VBOX_JWSSRC_JAR) \
-	$(VBOX_JWS_GEN)/jwsglue.list \
-	$(VBOX_JWSDOC_JDEST)/package-list \
-	$(wildcard \
-		$(VBOX_JWS_GEN)/java/*/*/*.java \
-		$(VBOX_JWS_GEN)/java/*/*/*/*.java \
-		$(VBOX_JWS_JDEST)/*.class \
-		$(VBOX_JWS_JDEST)/*/*.class \
-		$(VBOX_JWS_JDEST)/*/*/*.class \
-		$(VBOX_JWS_JDEST)/*/*/*/*.class \
-		$(VBOX_JWSDOC_JDEST)/*.html \
-		$(VBOX_JWSDOC_JDEST)/*.css \
-		$(VBOX_JWSDOC_JDEST)/*/*.gif \
-		$(VBOX_JWSDOC_JDEST)/*/*/*.html \
-		$(VBOX_JWSDOC_JDEST)/*/*/*/*.html \
-	)
-VBoxJWs-inst-jar_BLDDIRS += $(VBOX_JWS_GEN)/java
-VBoxJWs-inst-jar_GENERATEDSOURCES = $(addprefix $(VBoxJWs-inst-jar_BLDDIRS)/,$(VBoxJWS_VBOX_JWSGLUEFILES))
-
-VBoxJWSGlue_KMK = $(PATH_OUT)/vboxjwsglue.kmk
-include $(VBoxJWSGlue_KMK)
-
-$(VBoxJWSGlue_KMK).ts +| $(VBoxJWSGlue_KMK): $(VBOXWEB_IDL_SRC_ORIG) $(VBOX_GLUE_XSLT_DIR)/glue-java.xsl $(VBOX_VERSION_STAMP)
+  INSTALLS += VBoxJWs-inst-jar
+
+  #
+  # Java glue JAR files
+  #
+  VBOX_JWS_JAR   = $(VBoxJWs-inst-jar_0_OUTDIR)/vboxjws.jar
+  VBOX_JWSDOC_JAR = $(VBoxJWs-inst-jar_0_OUTDIR)/vboxjws-doc.jar
+  VBOX_JWSSRC_JAR = $(VBoxJWs-inst-jar_0_OUTDIR)/vboxjws-src.jar
+  VBOX_JWS_TARGET := $(PATH_TARGET)/vboxjws-gen
+  VBOX_JWS_GEN   = $(VBOX_JWS_TARGET)/jwsgen
+  VBOX_JWS_GEN_RAWSRC = $(VBOX_JWS_GEN)/merged.file
+  VBOX_JWS_JDEST := $(VBOX_JWS_TARGET)/jdest
+  VBOX_JWSDOC_JDEST := $(VBOX_JWS_TARGET)/jdest-doc
+  VBOX_GLUE_XSLT_DIR := $(PATH_ROOT)/src/VBox/Main/glue
+  VBOX_JAXLIB_DIR  := $(PATH_ROOT)/src/VBox/Main/webservice/jaxlibs
+
+  VBoxJWs-inst-jar_INST = $(INST_SDK)bindings/webservice/java/jax-ws/
+  VBoxJWs-inst-jar_MODE = a+r,u+w
+  VBoxJWs-inst-jar_SOURCES = \
+  	$(VBOX_JWS_JAR) \
+  	$(VBOX_JWSDOC_JAR) \
+  	$(VBOX_JWSSRC_JAR)
+  VBoxJWs-inst-jar_CLEAN = \
+  	$(VBOX_JWS_JAR) \
+  	$(VBOX_JWSDOC_JAR) \
+  	$(VBOX_JWSSRC_JAR) \
+  	$(VBOX_JWS_GEN)/jwsglue.list \
+  	$(VBOX_JWSDOC_JDEST)/package-list \
+  	$(wildcard \
+  	$(VBOX_JWS_GEN)/java/*/*/*.java \
+  	$(VBOX_JWS_GEN)/java/*/*/*/*.java \
+  	$(VBOX_JWS_JDEST)/*.class \
+  	$(VBOX_JWS_JDEST)/*/*.class \
+  	$(VBOX_JWS_JDEST)/*/*/*.class \
+  	$(VBOX_JWS_JDEST)/*/*/*/*.class \
+  	$(VBOX_JWSDOC_JDEST)/*.html \
+  	$(VBOX_JWSDOC_JDEST)/*.css \
+  	$(VBOX_JWSDOC_JDEST)/*/*.gif \
+  	$(VBOX_JWSDOC_JDEST)/*/*/*.html \
+  	$(VBOX_JWSDOC_JDEST)/*/*/*/*.html \
+  	)
+  VBoxJWs-inst-jar_BLDDIRS += $(VBOX_JWS_GEN)/java
+  VBoxJWs-inst-jar_GENERATEDSOURCES = $(addprefix $(VBoxJWs-inst-jar_BLDDIRS)/,$(VBoxJWS_VBOX_JWSGLUEFILES))
+
+  VBoxJWSGlue_KMK = $(PATH_OUT)/vboxjwsglue.kmk
+  include $(VBoxJWSGlue_KMK)
+
+  $(VBoxJWSGlue_KMK).ts +| $(VBoxJWSGlue_KMK): $(VBOXWEB_IDL_SRC_ORIG) $(VBOX_GLUE_XSLT_DIR)/glue-java.xsl $(VBOX_VERSION_STAMP)
 	$(call MSG_GENERATE,,$(VBoxJWSGlue_KMK))
 	$(QUIET)$(RM) -f $@
@@ -495,10 +495,10 @@
 	$(QUIET)$(CP) --changed -fv $@ $(VBoxJWSGlue_KMK)
 
-$(VBOX_JWS_GEN_RAWSRC) \
-+| $(VBoxJWs-inst-jar_GENERATEDSOURCES): \
-		$(VBOXWEB_IDL_SRC_ORIG) \
-		$(VBOX_GLUE_XSLT_DIR)/glue-java.xsl \
-		$(VBOX_FILESPLIT) \
-		$(VBOX_VERSION_STAMP)
+  $(VBOX_JWS_GEN_RAWSRC) \
+  +| $(VBoxJWs-inst-jar_GENERATEDSOURCES): \
+  		$(VBOXWEB_IDL_SRC_ORIG) \
+  		$(VBOX_GLUE_XSLT_DIR)/glue-java.xsl \
+  		$(VBOX_FILESPLIT) \
+  		$(VBOX_VERSION_STAMP)
 	$(call MSG_L1,Generating JAX-WS Java glue files from XIDL)
 	$(QUIET)$(RM) -f $(filter-out $(VBoxJWs-inst-jar_GENERATEDSOURCES),$(wildcard $(VBOX_JWS_GEN)/java/*/*/*.java))
@@ -513,16 +513,16 @@
 	$(QUIET)$(VBOX_FILESPLIT) $(VBOX_JWS_GEN_RAWSRC) $(VBOX_JWS_GEN)/java
 
-## @todo somehow also find out the authoritative list of files generated by
-# wsimport (before running it), then we could rely on proper dependencies
-# instead of creating jwsglue.list. Would allow avoiding a lot of unnecessary
-# compilation with incremental builds, when almost nothing changed in the IDL
-# file. Currently everything is recompiled if only one file is changed.
-$(VBOX_JWS_GEN)/jwsglue.list.ts +| $(VBOX_JWS_GEN)/jwsglue.list: \
-		$(VBOXWEB_IDL_SRC) \
-		$(VBOX_FILESPLIT) \
-		$(VBOXWEBSERVICE_WSDL) \
-		$(VBOXWEB_WSDL) \
-		$(VBoxJWs-inst-jar_GENERATEDSOURCES) \
-		| $(VBOX_JWS_GEN)/java/
+  ## @todo somehow also find out the authoritative list of files generated by
+  # wsimport (before running it), then we could rely on proper dependencies
+  # instead of creating jwsglue.list. Would allow avoiding a lot of unnecessary
+  # compilation with incremental builds, when almost nothing changed in the IDL
+  # file. Currently everything is recompiled if only one file is changed.
+  $(VBOX_JWS_GEN)/jwsglue.list.ts +| $(VBOX_JWS_GEN)/jwsglue.list: \
+  		$(VBOXWEB_IDL_SRC) \
+  		$(VBOX_FILESPLIT) \
+  		$(VBOXWEBSERVICE_WSDL) \
+  		$(VBOXWEB_WSDL) \
+  		$(VBoxJWs-inst-jar_GENERATEDSOURCES) \
+  		| $(VBOX_JWS_GEN)/java/
 	$(QUIET)$(RM) -f -- $(wildcard $(VBOX_JWS_GEN)/java/*/*/*/*.java)
 	$(call MSG_GENERATE,,$(VBOX_JWS_GEN)/jwsglue.list,JAX-WS for Java 1.6 bindings using $(VBOXWEBSERVICE_WSDL))
@@ -532,5 +532,5 @@
 	$(QUIET)$(CP) --changed -fv $@ $(VBOX_JWS_GEN)/jwsglue.list
 
-$$(VBOX_JWS_JAR): $(VBOX_JWS_GEN)/jwsglue.list $(VBOXWEB_WSDL) $(VBOXWEBSERVICE_WSDL) $(VBOX_JWS_GEN)/MANIFEST.MF | $$(dir $$@)
+  $$(VBOX_JWS_JAR): $(VBOX_JWS_GEN)/jwsglue.list $(VBOXWEB_WSDL) $(VBOXWEBSERVICE_WSDL) $(VBOX_JWS_GEN)/MANIFEST.MF | $$(dir $$@)
 	$(call MSG_TOOL,javac,$(notdir $@),jwsgen.list,)
 	$(QUIET)$(RM) -Rf $(VBOX_JWS_JDEST)
@@ -545,5 +545,5 @@
 	$(VBOX_JAR) cfm $@ $(VBOX_JWS_GEN)/MANIFEST.MF -C $(VBOX_JWS_JDEST) .
 
-$(VBOX_JWS_GEN)/MANIFEST.MF: $(VBOX_PATH_WEBSERVICE)/MANIFEST.MF.in
+  $(VBOX_JWS_GEN)/MANIFEST.MF: $(VBOX_PATH_WEBSERVICE)/MANIFEST.MF.in
 	$(QUIET)$(RM) -f -- $@
 	$(QUIET)$(MKDIR) -p $(VBOX_JWS_GEN)
@@ -555,5 +555,5 @@
 		<  $< >  $@
 
-$$(VBOX_JWSDOC_JAR): $(VBOX_JWS_GEN)/jwsglue.list $$(VBoxJWs-inst-jar_GENERATEDSOURCES) $(VBOXWEB_WSDL) $(VBOXWEBSERVICE_WSDL) $$(VBOX_JWS_JAR) | $$(dir $$@)
+  $$(VBOX_JWSDOC_JAR): $(VBOX_JWS_GEN)/jwsglue.list $$(VBoxJWs-inst-jar_GENERATEDSOURCES) $(VBOXWEB_WSDL) $(VBOXWEBSERVICE_WSDL) $$(VBOX_JWS_JAR) | $$(dir $$@)
 	$(call MSG_TOOL,javadoc,$(notdir $@),jwsgen.list,)
 	$(QUIET)$(RM) -Rf $(VBOX_JWSDOC_JDEST)
@@ -566,42 +566,42 @@
 	$(VBOX_JAR) cf $@ -C $(VBOX_JWSDOC_JDEST) .
 
-$$(VBOX_JWSSRC_JAR): $$(VBOX_JWS_JAR) | $$(dir $$@)
+  $$(VBOX_JWSSRC_JAR): $$(VBOX_JWS_JAR) | $$(dir $$@)
 	$(call MSG_LINK,$(notdir $@),$@)
 	$(VBOX_JAR) cf $@ -C $(VBOX_JWS_GEN)/java .
 
-## @todo compile ../glue/tests/TestVBox.java to have sanity checking
+  ## @todo compile ../glue/tests/TestVBox.java to have sanity checking
 
  endif # VBOX_WITH_JWS
 
  ifndef VBOX_ONLY_SDK
- #
- # webtest - webservice sample client in C++
- #
- PROGRAMS += webtest
- webtest_TEMPLATE = VBoxWebR3Exe
- webtest_CXXFLAGS.win += -bigobj
- ifn1of ($(KBUILD_TARGET), win)
-  webtest_CXXFLAGS += -Wno-shadow
- endif
- webtest_INCS := \
-	$(VBOX_GSOAP_INCS) \
-	$(VBOXWEB_OUT_DIR) \
-	.
- webtest_LIBS += \
-	$(PATH_STAGE_LIB)/vboxsoap$(VBOX_SUFF_LIB) \
-	$(VBOX_GSOAP_CXX_LIBS) \
-	$(LIB_RUNTIME)
- webtest_LIBS.solaris += nsl
- ifdef VBOX_WITH_WEBSERVICES_SSL
-  webtest_DEFS += WITH_OPENSSL
-  webtest_SDKS += VBoxOpenSsl
- endif
- webtest_SOURCES = \
-	webtest.cpp \
-	$(VBOXWEB_OUT_DIR)/soapClient.cpp
- webtest_CLEAN = \
-	$(VBOXWEB_OUT_DIR)/soapClient.cpp
-
- webtest_ORDERDEPS = $(VBOXWEB_OUT_DIR)/gsoap_copy_all_ts
+  #
+  # webtest - webservice sample client in C++
+  #
+  PROGRAMS += webtest
+  webtest_TEMPLATE = VBoxWebR3Exe
+  webtest_CXXFLAGS.win += -bigobj
+  ifn1of ($(KBUILD_TARGET), win)
+   webtest_CXXFLAGS += -Wno-shadow
+  endif
+  webtest_INCS := \
+  	$(VBOX_GSOAP_INCS) \
+  	$(VBOXWEB_OUT_DIR) \
+  	.
+  webtest_LIBS += \
+  	$(PATH_STAGE_LIB)/vboxsoap$(VBOX_SUFF_LIB) \
+  	$(VBOX_GSOAP_CXX_LIBS) \
+  	$(LIB_RUNTIME)
+  webtest_LIBS.solaris += nsl
+  ifdef VBOX_WITH_WEBSERVICES_SSL
+   webtest_DEFS += WITH_OPENSSL
+   webtest_SDKS += VBoxOpenSsl
+  endif
+  webtest_SOURCES = \
+  	webtest.cpp \
+  	$(VBOXWEB_OUT_DIR)/soapClient.cpp
+  webtest_CLEAN = \
+  	$(VBOXWEB_OUT_DIR)/soapClient.cpp
+
+  webtest_ORDERDEPS = $(VBOXWEB_OUT_DIR)/gsoap_copy_all_ts
  endif # !VBOX_ONLY_SDK
 
@@ -612,19 +612,19 @@
  ## @todo figure out whether the SDK really needs this or not...
  OTHER_CLEAN += \
-	$(wildcard $(VBOXWEB_OUT_DIR)/soap*.h) \
-	$(wildcard $(VBOXWEB_OUT_DIR)/soap*.cpp) \
-	$(wildcard $(VBOXWEB_OUT_DIR)/*.nsmap) \
-	$(VBOXWEB_GSOAPH_FROM_XSLT) \
-	$(VBOXWEB_GSOAPH_FROM_GSOAP) \
-	$(VBOXWEB_SOAP_CLIENT_H) \
-	$(VBOXWEB_SOAP_SERVER_H) \
-	$(VBOXWEB_OUT_DIR)/gsoap_generate_all_ts \
-	$(VBOXWEB_OUT_DIR)/gsoap_copy_all_ts \
-	$(wildcard $(PATH_TARGET_SOAPDEMOXML)/*) \
-	$(PATH_TARGET_SOAPDEMOXML)/dummy_file \
-	$(wildcard $(PATH_TARGET_SOAPDEMOHEADERS)/*) \
-	$(PATH_TARGET_SOAPDEMOHEADERS)/dummy_file \
-	$(wildcard $(PATH_TARGET_SOAPDEMONSMAPS)/*) \
-	$(PATH_TARGET_SOAPDEMONSMAPS)/dummy_file
+ 	$(wildcard $(VBOXWEB_OUT_DIR)/soap*.h) \
+ 	$(wildcard $(VBOXWEB_OUT_DIR)/soap*.cpp) \
+ 	$(wildcard $(VBOXWEB_OUT_DIR)/*.nsmap) \
+ 	$(VBOXWEB_GSOAPH_FROM_XSLT) \
+ 	$(VBOXWEB_GSOAPH_FROM_GSOAP) \
+ 	$(VBOXWEB_SOAP_CLIENT_H) \
+ 	$(VBOXWEB_SOAP_SERVER_H) \
+ 	$(VBOXWEB_OUT_DIR)/gsoap_generate_all_ts \
+ 	$(VBOXWEB_OUT_DIR)/gsoap_copy_all_ts \
+ 	$(wildcard $(PATH_TARGET_SOAPDEMOXML)/*) \
+ 	$(PATH_TARGET_SOAPDEMOXML)/dummy_file \
+ 	$(wildcard $(PATH_TARGET_SOAPDEMOHEADERS)/*) \
+ 	$(PATH_TARGET_SOAPDEMOHEADERS)/dummy_file \
+ 	$(wildcard $(PATH_TARGET_SOAPDEMONSMAPS)/*) \
+ 	$(PATH_TARGET_SOAPDEMONSMAPS)/dummy_file
 
 endif # VBOX_GSOAP_INSTALLED
@@ -652,10 +652,10 @@
  VBOXWEB_METRICSAMPLE          = $(VBOXWEB_SAMPLES_JAXWS_DIR)/metrictest.java
 
- VBOXWEB_OTHERS               +=  \
-	$(if $(VBOX_WITH_PYTHON),$(VBOXWEB_GLUE_PYTHON),) \
-	$(if $(VBOX_WITH_PYTHON),$(VBOXWEB_WS_PYTHON),) \
-	$(if $(VBOX_WITH_PYTHON),$(VBOXWEB_WS_PYTHON_TYPES),) \
-	$(if $(VBOX_WITH_PERL),$(VBOXWEB_WS_PERL),) \
-	$(if $(VBOX_WITH_PHP),$(VBOXWEB_WS_PHP),)
+ VBOXWEB_OTHERS               += \
+ 	$(if $(VBOX_WITH_PYTHON),$(VBOXWEB_GLUE_PYTHON),) \
+ 	$(if $(VBOX_WITH_PYTHON),$(VBOXWEB_WS_PYTHON),) \
+ 	$(if $(VBOX_WITH_PYTHON),$(VBOXWEB_WS_PYTHON_TYPES),) \
+ 	$(if $(VBOX_WITH_PERL),$(VBOXWEB_WS_PERL),) \
+ 	$(if $(VBOX_WITH_PHP),$(VBOXWEB_WS_PHP),)
 
 
@@ -667,7 +667,7 @@
  vboxwebinst_MODE = a+rx,u+w
  vboxwebinst_SOURCES = \
-	$(if   $(VBOX_WITH_PERL),samples/perl/clienttest.pl=>perl/samples/clienttest.pl,) \
-	$(if    $(VBOX_WITH_PHP),samples/php/clienttest.php=>php/samples/clienttest.php,) \
-	$(if $(VBOX_WITH_PYTHON),samples/python/clienttest.py=>python/samples/clienttest.py,)
+ 	$(if   $(VBOX_WITH_PERL),samples/perl/clienttest.pl=>perl/samples/clienttest.pl,) \
+ 	$(if    $(VBOX_WITH_PHP),samples/php/clienttest.php=>php/samples/clienttest.php,) \
+ 	$(if $(VBOX_WITH_PYTHON),samples/python/clienttest.py=>python/samples/clienttest.py,)
 
  INSTALLS += vboxwebinst_nox
@@ -675,7 +675,7 @@
  vboxwebinst_nox_MODE = a+r,u+w
  vboxwebinst_nox_SOURCES = \
-	$(if $(VBOX_WITH_PYTHON),samples/python/Makefile=>python/samples/Makefile,) \
-	$(if $(VBOX_WITH_PYTHON),samples/python/Makefile.glue=>python/lib/Makefile,) \
-	$(if ($VBOX_WITH_JWS),$(PATH_ROOT)/COPYING.LIB=>java/jax-ws/COPYING.LIB,)
+ 	$(if $(VBOX_WITH_PYTHON),samples/python/Makefile=>python/samples/Makefile,) \
+ 	$(if $(VBOX_WITH_PYTHON),samples/python/Makefile.glue=>python/lib/Makefile,) \
+ 	$(if ($VBOX_WITH_JWS),$(PATH_ROOT)/COPYING.LIB=>java/jax-ws/COPYING.LIB,)
 
  INSTALLS += vboxwebinst_wsdl
@@ -683,6 +683,6 @@
  vboxwebinst_wsdl_MODE = a+r,u+w
  vboxwebinst_wsdl_SOURCES = \
-	$(VBOXWEB_WSDL)=>vboxweb.wsdl \
-	$(VBOXWEBSERVICE_WSDL)=>vboxwebService.wsdl
+ 	$(VBOXWEB_WSDL)=>vboxweb.wsdl \
+ 	$(VBOXWEBSERVICE_WSDL)=>vboxwebService.wsdl
 
  INSTALLS += vboxwebinst_webtest
@@ -690,10 +690,10 @@
  vboxwebinst_webtest_MODE = a+r,u+w
  vboxwebinst_webtest_SOURCES = \
-	$(VBOX_PATH_WEBSERVICE)/websrv-wsdl2gsoapH.xsl=>xsl/websrv-wsdl2gsoapH.xsl \
-	$(VBOX_PATH_WEBSERVICE)/websrv-nsmap.xsl=>xsl/websrv-nsmap.xsl \
-	$(VBOX_PATH_IDL)/typemap-shared.inc.xsl=>idl/typemap-shared.inc.xsl \
-	$(VBOX_PATH_WEBSERVICE)/split-soapC.cpp=>tools/split-soapC.cpp \
-	$(VBOX_PATH_WEBSERVICE)/webtest.cpp=>cpp/samples/webtest/webtest.cpp \
-	$(VBOX_PATH_WEBSERVICE)/Makefile.webtest=>cpp/samples/webtest/Makefile
+ 	$(VBOX_PATH_WEBSERVICE)/websrv-wsdl2gsoapH.xsl=>xsl/websrv-wsdl2gsoapH.xsl \
+ 	$(VBOX_PATH_WEBSERVICE)/websrv-nsmap.xsl=>xsl/websrv-nsmap.xsl \
+ 	$(VBOX_PATH_IDL)/typemap-shared.inc.xsl=>idl/typemap-shared.inc.xsl \
+ 	$(VBOX_PATH_WEBSERVICE)/split-soapC.cpp=>tools/split-soapC.cpp \
+ 	$(VBOX_PATH_WEBSERVICE)/webtest.cpp=>cpp/samples/webtest/webtest.cpp \
+ 	$(VBOX_PATH_WEBSERVICE)/Makefile.webtest=>cpp/samples/webtest/Makefile
 
 endif # VBOX_ONLY_SDK
@@ -708,5 +708,5 @@
 OTHER_CLEAN += \
 	$(VBOXWEB_OTHERS) \
-	$(if $(VBOX_WITH_PYTHON),$(VBOXWEB_WS_PYTHON_SERVER),)  \
+	$(if $(VBOX_WITH_PYTHON),$(VBOXWEB_WS_PYTHON_SERVER),) \
 	$(VBOXWEB_WSDL) \
 	$(VBOXWEBSERVICE_WSDL) \
@@ -733,5 +733,5 @@
 ifdef VBOX_ONLY_SDK
 
-$(VBOXWEB_GLUE_PYTHON): $(VBOXWEB_IDL_SRC) $(VBOXWEB_WSDL) $(VBOXWEBSERVICE_WSDL) $(VBOX_PATH_WEBSERVICE)/websrv-python.xsl
+ $(VBOXWEB_GLUE_PYTHON): $(VBOXWEB_IDL_SRC) $(VBOXWEB_WSDL) $(VBOXWEBSERVICE_WSDL) $(VBOX_PATH_WEBSERVICE)/websrv-python.xsl
 	$(call MSG_GENERATE,,$@,$(VBOXWEB_IDL_SRC) using websrv-python.xsl)
 	$(QUIET)$(RM) -f -- $@
@@ -739,35 +739,35 @@
 	$(QUIET)$(VBOX_XSLTPROC) $(VBOXWEB_XSLTPROC_VERBOSE) -o $@ $(VBOX_PATH_WEBSERVICE)/websrv-python.xsl $<
 
-$(VBOXWEB_WS_PYTHON) \
-+ $(VBOXWEB_WS_PYTHON_TYPES): $(VBOXWEB_WSDL) $(VBOXWEBSERVICE_WSDL)
+ $(VBOXWEB_WS_PYTHON) \
+ + $(VBOXWEB_WS_PYTHON_TYPES): $(VBOXWEB_WSDL) $(VBOXWEBSERVICE_WSDL)
 	$(call MSG_GENERATE,,$@, WS Python bindings)
 	$(QUIET)$(RM) -f -- $@
 	$(QUIET)$(MKDIR) -p $(@D)
-# Change directory to the "source", as otherwise ZSI 2.0 has trouble finding
-# the 2nd WSDL file included in the main one. ZSI 2.1 is smarter, but some
-# versions floating around (especially on Linux) lack the --file option.
-if "$(KBUILD_HOST)" != "win"
+ # Change directory to the "source", as otherwise ZSI 2.0 has trouble finding
+ # the 2nd WSDL file included in the main one. ZSI 2.1 is smarter, but some
+ # versions floating around (especially on Linux) lack the --file option.
+ if "$(KBUILD_HOST)" != "win"
 	$(QUIET)$(REDIRECT) -C $(dir $(VBOXWEBSERVICE_WSDL)) -- $(SHELL) -c "$(VBOX_WSDL2PY) -b --output-dir $(@D) $(VBOXWEBSERVICE_WSDL) || $(VBOX_WSDL2PY) -b --file $(VBOXWEBSERVICE_WSDL) --output-dir $(@D)"
-else
+ else
 	$(QUIET)$(REDIRECT) -C $(dir $(VBOXWEBSERVICE_WSDL)) -- $(VBOX_WSDL2PY) -b --file $(subst /,\\\\,$(VBOXWEBSERVICE_WSDL)) --output-dir $(@D)
-endif
-# Hack: some wsdl2py versions generate VirtualBox_client.py, some generate
-# VirtualBox_services.py. Standardize on the former.
+ endif
+ # Hack: some wsdl2py versions generate VirtualBox_client.py, some generate
+ # VirtualBox_services.py. Standardize on the former.
 	-$(QUIET)$(MV) -f $(VBOXWEB_WS_PYTHON_ALTERNATIVE) $(VBOXWEB_WS_PYTHON)
-# We do not ever need the VirtualBox_server.py file. Delete it immediately
-# so that it will not get packaged in the SDK.
+ # We do not ever need the VirtualBox_server.py file. Delete it immediately
+ # so that it will not get packaged in the SDK.
 	$(QUIET)$(RM) -f -- $(VBOXWEB_WS_PYTHON_SERVER)
 	$(QUIET)$(APPEND) $@ ''
 
-$(VBOXWEB_WS_PERL): $(VBOXWEB_WSDL) $(VBOXWEBSERVICE_WSDL)
+ $(VBOXWEB_WS_PERL): $(VBOXWEB_WSDL) $(VBOXWEBSERVICE_WSDL)
 	$(call MSG_GENERATE,,$@, WS Perl bindings)
 	$(QUIET)$(MKDIR) -p $(@D)
 	$(QUIET)$(REDIRECT) -C $(@D) -- $(VBOX_STUBMAKER) file://$(VBOXWEBSERVICE_WSDL)
-# Ugly, ugly, ugly, make me right once
+ # Ugly, ugly, ugly, make me right once
 	$(QUIET)$(SED) -e "s+http://www.virtualbox.org/Service+http://www.virtualbox.org/+" --output $(VBOXWEB_WS_PERL).tmp $(VBOXWEB_WS_PERL)
 	$(QUIET)$(MV) $(VBOXWEB_WS_PERL).tmp $(VBOXWEB_WS_PERL)
 	$(QUIET)$(APPEND) $@ ''
 
-$(VBOXWEB_WS_PHP): $(VBOXWEB_IDL_SRC) $(VBOX_PATH_WEBSERVICE)/websrv-php.xsl
+ $(VBOXWEB_WS_PHP): $(VBOXWEB_IDL_SRC) $(VBOX_PATH_WEBSERVICE)/websrv-php.xsl
 	$(call MSG_GENERATE,,$@,$(VBOXWEB_IDL_SRC) using websrv-php.xsl)
 	$(QUIET)$(RM) -f -- $@
@@ -796,64 +796,64 @@
 
 ifdef VBOX_GSOAP_INSTALLED
-# ... and once with the gSOAP tool (just for comparison, we don't use it for licensing reasons)
-$(VBOXWEB_GSOAPH_FROM_GSOAP): $(VBOXWEB_WSDL) $(VBOXWEB_TYPEMAP) | $$(dir $$@)
+ # ... and once with the gSOAP tool (just for comparison, we don't use it for licensing reasons)
+ $(VBOXWEB_GSOAPH_FROM_GSOAP): $(VBOXWEB_WSDL) $(VBOXWEB_TYPEMAP) | $$(dir $$@)
 	$(call MSG_GENERATE,,$@,)
 	$(QUIET)$(RM) -f -- $@
 	$(VBOX_WSDL2H) $(VBOXWEB_WSDL_VERBOSE) -t$(VBOXWEB_TYPEMAP) -nvbox -o $@ $<
 
-# this sets the gsoap header that we use for further compilation; if stuff works, then the
-# one we generate via XSLT produces the same end result as the one from the gSOAP tool;
-# with this variable we can swap for testing, but shipped code must use VBOXWEB_GSOAPH_FROM_XSLT
-GSOAPH_RELEVANT = $(VBOXWEB_GSOAPH_FROM_XSLT)
-
-# wsdl2h -v: verbose
-# wsdl2h -e: don't qualify enum names
-# wsdl2h -n<prefix>: namespace header prefix
-
-## @todo change this to state explicitly what will be generated?
-
-#
-# Generate server and client code from gsoap pseudo-C header file.
-#
-# Options for soapcpp2:
-#   -2: generate SOAP 1.2 calls
-#   -L: don't generate soapClientLib/soapServerLib
-#   -w: don't generate WSDL and schema files
-#   -x: don't generate sample XML files (VBOXWEB_SOAPCPP2_SKIP_FILES).
-#
-$(VBOXWEB_OUT_DIR)/gsoap_generate_all_ts \
-+ $(VBOXWEB_OUT_DIR)/soapH.h \
-$(if-expr !defined(VBOX_WITHOUT_NOINLINE_SOAPH),\
-+ $(VBOXWEB_OUT_DIR)/soapH-noinline-1.cpp \
-+ $(VBOXWEB_OUT_DIR)/soapH-noinline-2.cpp \
-+ $(VBOXWEB_OUT_DIR)/soapH-noinline-3.cpp \
-+ $(VBOXWEB_OUT_DIR)/soapH-noinline-4.cpp \
-+ $(VBOXWEB_OUT_DIR)/soapH-noinline-5.cpp \
-+ $(VBOXWEB_OUT_DIR)/soapH-noinline-6.cpp \
-+ $(VBOXWEB_OUT_DIR)/soapH-noinline-7.cpp \
-+ $(VBOXWEB_OUT_DIR)/soapH-noinline-8.cpp \
-+ $(VBOXWEB_OUT_DIR)/soapH-noinline-9.cpp \
-+ $(VBOXWEB_OUT_DIR)/soapH-noinline-10.cpp \
-+ $(VBOXWEB_OUT_DIR)/soapH-noinline-11.cpp \
-+ $(VBOXWEB_OUT_DIR)/soapH-noinline-12.cpp,) \
-+ $(VBOXWEB_SOAP_CLIENT_H) \
-+ $(VBOXWEB_OUT_DIR)/soapC.cpp \
-+ $(VBOXWEB_OUT_DIR)/soapClient.cpp \
-+ $(VBOXWEB_OUT_DIR)/soapServer.cpp \
-: $(VBOXWEB_GSOAPH_FROM_GSOAP) $(VBOXWEB_GSOAPH_FROM_XSLT) $(VBOX_NSMAP) \
-		$(VBOX_PATH_WEBSERVICE)/stdsoap2.sed \
-		$(VBOX_PATH_WEBSERVICE)/soap-header-to-inline-source-file.sed \
-		$(VBOX_PATH_WEBSERVICE)/soap-header-strip-inline.sed \
-		$$(split-soapC_1_TARGET) \
-		$(RECOMPILE_ON_MAKEFILE_CURRENT) | $$(dir $$@)
+ # this sets the gsoap header that we use for further compilation; if stuff works, then the
+ # one we generate via XSLT produces the same end result as the one from the gSOAP tool;
+ # with this variable we can swap for testing, but shipped code must use VBOXWEB_GSOAPH_FROM_XSLT
+ GSOAPH_RELEVANT = $(VBOXWEB_GSOAPH_FROM_XSLT)
+
+ # wsdl2h -v: verbose
+ # wsdl2h -e: don't qualify enum names
+ # wsdl2h -n<prefix>: namespace header prefix
+
+ ## @todo change this to state explicitly what will be generated?
+
+ #
+ # Generate server and client code from gsoap pseudo-C header file.
+ #
+ # Options for soapcpp2:
+ #   -2: generate SOAP 1.2 calls
+ #   -L: don't generate soapClientLib/soapServerLib
+ #   -w: don't generate WSDL and schema files
+ #   -x: don't generate sample XML files (VBOXWEB_SOAPCPP2_SKIP_FILES).
+ #
+ $(VBOXWEB_OUT_DIR)/gsoap_generate_all_ts \
+ + $(VBOXWEB_OUT_DIR)/soapH.h \
+ $(if-expr !defined(VBOX_WITHOUT_NOINLINE_SOAPH), \
+ 	+ $(VBOXWEB_OUT_DIR)/soapH-noinline-1.cpp \
+ 	+ $(VBOXWEB_OUT_DIR)/soapH-noinline-2.cpp \
+ 	+ $(VBOXWEB_OUT_DIR)/soapH-noinline-3.cpp \
+ 	+ $(VBOXWEB_OUT_DIR)/soapH-noinline-4.cpp \
+ 	+ $(VBOXWEB_OUT_DIR)/soapH-noinline-5.cpp \
+ 	+ $(VBOXWEB_OUT_DIR)/soapH-noinline-6.cpp \
+ 	+ $(VBOXWEB_OUT_DIR)/soapH-noinline-7.cpp \
+ 	+ $(VBOXWEB_OUT_DIR)/soapH-noinline-8.cpp \
+ 	+ $(VBOXWEB_OUT_DIR)/soapH-noinline-9.cpp \
+ 	+ $(VBOXWEB_OUT_DIR)/soapH-noinline-10.cpp \
+ 	+ $(VBOXWEB_OUT_DIR)/soapH-noinline-11.cpp \
+ 	+ $(VBOXWEB_OUT_DIR)/soapH-noinline-12.cpp,) \
+ + $(VBOXWEB_SOAP_CLIENT_H) \
+ + $(VBOXWEB_OUT_DIR)/soapC.cpp \
+ + $(VBOXWEB_OUT_DIR)/soapClient.cpp \
+ + $(VBOXWEB_OUT_DIR)/soapServer.cpp: \
+ 		$(VBOXWEB_GSOAPH_FROM_GSOAP) $(VBOXWEB_GSOAPH_FROM_XSLT) $(VBOX_NSMAP) \
+ 		$(VBOX_PATH_WEBSERVICE)/stdsoap2.sed \
+ 		$(VBOX_PATH_WEBSERVICE)/soap-header-to-inline-source-file.sed \
+ 		$(VBOX_PATH_WEBSERVICE)/soap-header-strip-inline.sed \
+ 		$$(split-soapC_1_TARGET) \
+ 		$(RECOMPILE_ON_MAKEFILE_CURRENT) | $$(dir $$@)
 	$(call MSG_GENERATE,,lots of files,$(GSOAPH_RELEVANT))
 	$(RM) -f $@
 	$(REDIRECT) -C $(VBOXWEB_OUT_DIR) -- $(VBOX_SOAPCPP2) $(VBOXWEB_SOAPCPP2_SKIP_FILES) -L -2 -w -I$(VBOX_PATH_GSOAP_IMPORT) $(GSOAPH_RELEVANT)
-ifeq ($(KBUILD_TARGET),win) # MSC -Wall workaround.
+ ifeq ($(KBUILD_TARGET),win) # MSC -Wall workaround.
 	$(CP) -f "$(VBOXWEB_SOAP_CLIENT_H)" "$(VBOXWEB_SOAP_CLIENT_H).tmp"
 	$(SED) -f $(VBOX_PATH_WEBSERVICE)/stdsoap2.sed --output "$(VBOXWEB_SOAP_CLIENT_H)" "$(VBOXWEB_SOAP_CLIENT_H).tmp"
 	$(RM) -f "$(VBOXWEB_SOAP_CLIENT_H).tmp"
-endif
-ifndef VBOX_WITHOUT_NOINLINE_SOAPH
+ endif
+ ifndef VBOX_WITHOUT_NOINLINE_SOAPH
 	$(MV) -f -- "$(VBOXWEB_OUT_DIR)/soapH.h" "$(VBOXWEB_OUT_DIR)/soapH.h.tmp"
 	$(SED) -f $(VBOX_PATH_WEBSERVICE)/soap-header-to-inline-source-file.sed \
@@ -865,66 +865,66 @@
 		"$(VBOXWEB_OUT_DIR)/soapH.h.tmp"
 	$(RM) -f -- "$(VBOXWEB_OUT_DIR)/soapH.h.tmp" "$(VBOXWEB_OUT_DIR)/soapH-noinline.cpp"
-endif
+ endif
 	$(APPEND) $@ done
 
-# Copy the generated headers and stuff.  This was split into a separate rule
-# way back because we thought we could use $(wildcard ) and avoid the shell,
-# however we cannot as it is subject to caching.  Let the shell do the globbing.
-# GSOAP versions 2.8 and later do not generate the unneeded soapvbox*.h files
-# any more. Ignoring the exit code is the simple solution, accepting the error.
-$(VBOXWEB_OUT_DIR)/gsoap_copy_all_ts: $(VBOXWEB_OUT_DIR)/gsoap_generate_all_ts | $$(dir $$@)
+ # Copy the generated headers and stuff.  This was split into a separate rule
+ # way back because we thought we could use $(wildcard ) and avoid the shell,
+ # however we cannot as it is subject to caching.  Let the shell do the globbing.
+ # GSOAP versions 2.8 and later do not generate the unneeded soapvbox*.h files
+ # any more. Ignoring the exit code is the simple solution, accepting the error.
+ $(VBOXWEB_OUT_DIR)/gsoap_copy_all_ts: $(VBOXWEB_OUT_DIR)/gsoap_generate_all_ts | $$(dir $$@)
 	$(RM) -f $@
 	$(MKDIR) -p $(PATH_TARGET_SOAPDEMOXML) $(PATH_TARGET_SOAPDEMOHEADERS) $(PATH_TARGET_SOAPDEMONSMAPS)
-ifdef VBOX_GSOAP_VERBOSE
+ ifdef VBOX_GSOAP_VERBOSE
 	$(MV_EXT) -f -- $(VBOXWEB_OUT_DIR)/*.req.xml $(VBOXWEB_OUT_DIR)/*.res.xml $(PATH_TARGET_SOAPDEMOXML)/
-endif
+ endif
 	-$(MV_EXT) -f -- $(VBOXWEB_OUT_DIR)/soapvbox*.h $(PATH_TARGET_SOAPDEMOHEADERS)/
 	$(MV_EXT) -f -- $(VBOXWEB_OUT_DIR)/vboxBinding.nsmap $(PATH_TARGET_SOAPDEMONSMAPS)/
 	$(APPEND) $@ done
 
-$(PATH_TARGET_SOAPDEMONSMAPS) \
-$(PATH_TARGET_SOAPDEMOHEADERS)/soapvboxBindingProxy.h \
-$(PATH_TARGET_SOAPDEMOHEADERS)/soapvboxBindingObject.h: $(VBOXWEB_OUT_DIR)/gsoap_copy_all_ts
-
-hack: $(VBOXWEB_OUT_DIR)/gsoap_copy_all_ts
-
-ifndef VBOX_WITHOUT_SPLIT_SOAPC
-#
-# Split up the soapC.cpp monster into manageable bits that can be
-# built in parallel and without exhausting all available memory.
-#
-$(VBOXWEB_OUT_DIR)/soapC-1.cpp \
-+ $(VBOXWEB_OUT_DIR)/soapC-2.cpp \
-+ $(VBOXWEB_OUT_DIR)/soapC-3.cpp \
-+ $(VBOXWEB_OUT_DIR)/soapC-4.cpp \
-+ $(VBOXWEB_OUT_DIR)/soapC-5.cpp \
-+ $(VBOXWEB_OUT_DIR)/soapC-6.cpp \
-+ $(VBOXWEB_OUT_DIR)/soapC-7.cpp \
-+ $(VBOXWEB_OUT_DIR)/soapC-8.cpp \
-+ $(VBOXWEB_OUT_DIR)/soapC-9.cpp \
-+ $(VBOXWEB_OUT_DIR)/soapC-10.cpp \
-+ $(VBOXWEB_OUT_DIR)/soapC-11.cpp \
-+ $(VBOXWEB_OUT_DIR)/soapC-12.cpp \
-+ $(VBOXWEB_OUT_DIR)/soapC-13.cpp \
-+ $(VBOXWEB_OUT_DIR)/soapC-14.cpp \
-+ $(VBOXWEB_OUT_DIR)/soapC-15.cpp \
-+ $(VBOXWEB_OUT_DIR)/soapC-16.cpp \
-+ $(VBOXWEB_OUT_DIR)/soapC-17.cpp \
-+ $(VBOXWEB_OUT_DIR)/soapC-18.cpp \
-+ $(VBOXWEB_OUT_DIR)/soapC-19.cpp \
-+ $(VBOXWEB_OUT_DIR)/soapC-20.cpp \
-+ $(VBOXWEB_OUT_DIR)/soapC-21.cpp \
-+ $(VBOXWEB_OUT_DIR)/soapC-22.cpp \
-+ $(VBOXWEB_OUT_DIR)/soapC-23.cpp \
-+ $(VBOXWEB_OUT_DIR)/soapC-24.cpp \
-+ $(VBOXWEB_OUT_DIR)/soapC-25.cpp \
-+ $(VBOXWEB_OUT_DIR)/soapC-26.cpp \
-+ $(VBOXWEB_OUT_DIR)/soapC-27.cpp \
-+ $(VBOXWEB_OUT_DIR)/soapC-28.cpp \
-+ $(VBOXWEB_OUT_DIR)/soapC-29.cpp \
-: $(VBOXWEB_OUT_DIR)/soapC.cpp $$(split-soapC_1_TARGET) | $$(dir $$@)
+ $(PATH_TARGET_SOAPDEMONSMAPS) \
+ $(PATH_TARGET_SOAPDEMOHEADERS)/soapvboxBindingProxy.h \
+ $(PATH_TARGET_SOAPDEMOHEADERS)/soapvboxBindingObject.h: $(VBOXWEB_OUT_DIR)/gsoap_copy_all_ts
+
+ hack: $(VBOXWEB_OUT_DIR)/gsoap_copy_all_ts
+
+ ifndef VBOX_WITHOUT_SPLIT_SOAPC
+  #
+  # Split up the soapC.cpp monster into manageable bits that can be
+  # built in parallel and without exhausting all available memory.
+  #
+  $(VBOXWEB_OUT_DIR)/soapC-1.cpp \
+  + $(VBOXWEB_OUT_DIR)/soapC-2.cpp \
+  + $(VBOXWEB_OUT_DIR)/soapC-3.cpp \
+  + $(VBOXWEB_OUT_DIR)/soapC-4.cpp \
+  + $(VBOXWEB_OUT_DIR)/soapC-5.cpp \
+  + $(VBOXWEB_OUT_DIR)/soapC-6.cpp \
+  + $(VBOXWEB_OUT_DIR)/soapC-7.cpp \
+  + $(VBOXWEB_OUT_DIR)/soapC-8.cpp \
+  + $(VBOXWEB_OUT_DIR)/soapC-9.cpp \
+  + $(VBOXWEB_OUT_DIR)/soapC-10.cpp \
+  + $(VBOXWEB_OUT_DIR)/soapC-11.cpp \
+  + $(VBOXWEB_OUT_DIR)/soapC-12.cpp \
+  + $(VBOXWEB_OUT_DIR)/soapC-13.cpp \
+  + $(VBOXWEB_OUT_DIR)/soapC-14.cpp \
+  + $(VBOXWEB_OUT_DIR)/soapC-15.cpp \
+  + $(VBOXWEB_OUT_DIR)/soapC-16.cpp \
+  + $(VBOXWEB_OUT_DIR)/soapC-17.cpp \
+  + $(VBOXWEB_OUT_DIR)/soapC-18.cpp \
+  + $(VBOXWEB_OUT_DIR)/soapC-19.cpp \
+  + $(VBOXWEB_OUT_DIR)/soapC-20.cpp \
+  + $(VBOXWEB_OUT_DIR)/soapC-21.cpp \
+  + $(VBOXWEB_OUT_DIR)/soapC-22.cpp \
+  + $(VBOXWEB_OUT_DIR)/soapC-23.cpp \
+  + $(VBOXWEB_OUT_DIR)/soapC-24.cpp \
+  + $(VBOXWEB_OUT_DIR)/soapC-25.cpp \
+  + $(VBOXWEB_OUT_DIR)/soapC-26.cpp \
+  + $(VBOXWEB_OUT_DIR)/soapC-27.cpp \
+  + $(VBOXWEB_OUT_DIR)/soapC-28.cpp \
+  + $(VBOXWEB_OUT_DIR)/soapC-29.cpp: \
+  		$(VBOXWEB_OUT_DIR)/soapC.cpp $$(split-soapC_1_TARGET) | $$(dir $$@)
 	$(RM) -f -- $(wildcard $(VBOXWEB_OUT_DIR)/soapC-?.cpp $(VBOXWEB_OUT_DIR)/soapC-??.cpp)
 	$(split-soapC_1_TARGET) $(VBOXWEB_OUT_DIR)/soapC.cpp $(VBOXWEB_OUT_DIR)/soapC- 29
-endif # !VBOX_WITHOUT_SPLIT_SOAPC
+ endif # !VBOX_WITHOUT_SPLIT_SOAPC
 
 endif # VBOX_GSOAP_INSTALLED
@@ -945,10 +945,10 @@
 ifdef VBOX_ONLY_SDK
 
-$(VBOXWEB_JAXWSSAMPLE): $(VBOX_PATH_WEBSERVICE)/samples/java/jax-ws/clienttest.java
+ $(VBOXWEB_JAXWSSAMPLE): $(VBOX_PATH_WEBSERVICE)/samples/java/jax-ws/clienttest.java
 	$(QUIET)$(RM) -f -- $@
 	$(QUIET)$(MKDIR) -p $(VBOXWEB_SAMPLES_JAXWS_DIR)
 	$(QUIET)$(SED) -e 's/{VBOX_API_SUFFIX}/$(VBOX_API_SUFFIX)/' <  $< >  $@
 
-$(VBOXWEB_METRICSAMPLE): $(VBOX_PATH_WEBSERVICE)/samples/java/jax-ws/metrictest.java
+ $(VBOXWEB_METRICSAMPLE): $(VBOX_PATH_WEBSERVICE)/samples/java/jax-ws/metrictest.java
 	$(QUIET)$(RM) -f -- $@
 	$(QUIET)$(MKDIR) -p $(VBOXWEB_SAMPLES_JAXWS_DIR)
