Index: /trunk/src/VBox/Main/Makefile.kmk
===================================================================
--- /trunk/src/VBox/Main/Makefile.kmk	(revision 29769)
+++ /trunk/src/VBox/Main/Makefile.kmk	(revision 29770)
@@ -77,16 +77,16 @@
 if defined(VBOX_ONLY_SDK) || "$(KBUILD_TARGET)" == "win"
  OTHERS         += \
- 	$(VBOX_IDL_FILE.MSCOM) \
- 	$(VBOX_PATH_SDK)/bindings/mscom/include/VirtualBox.h \
- 	$(VBOX_PATH_SDK)/bindings/mscom/lib/VirtualBox.tlb \
- 	$(VBOX_PATH_SDK)/bindings/mscom/lib/VirtualBox_i.c
+	$(VBOX_IDL_FILE.MSCOM) \
+	$(VBOX_PATH_SDK)/bindings/mscom/include/VirtualBox.h \
+	$(VBOX_PATH_SDK)/bindings/mscom/lib/VirtualBox.tlb \
+	$(VBOX_PATH_SDK)/bindings/mscom/lib/VirtualBox_i.c
  OTHER_CLEAN    += \
- 	$(VBOX_IDL_FILE.MSCOM) \
- 	$(VBOX_PATH_SDK)/bindings/mscom/include/VirtualBox.h \
- 	$(VBOX_PATH_SDK)/bindings/mscom/lib/VirtualBox.tlb \
- 	$(VBOX_PATH_SDK)/bindings/mscom/lib/VirtualBox_i.c \
- 	$(PATH_VBoxCOM)/VirtualBox.h   \
- 	$(PATH_VBoxCOM)/VirtualBox_i.c \
- 	$(PATH_VBoxCOM)/VirtualBox.tlb
+	$(VBOX_IDL_FILE.MSCOM) \
+	$(VBOX_PATH_SDK)/bindings/mscom/include/VirtualBox.h \
+	$(VBOX_PATH_SDK)/bindings/mscom/lib/VirtualBox.tlb \
+	$(VBOX_PATH_SDK)/bindings/mscom/lib/VirtualBox_i.c \
+	$(PATH_VBoxCOM)/VirtualBox.h   \
+	$(PATH_VBoxCOM)/VirtualBox_i.c \
+	$(PATH_VBoxCOM)/VirtualBox.tlb
 
  VBOX_MAIN_PREREQS += $(PATH_VBoxCOM)/VirtualBox_i.c
@@ -225,8 +225,8 @@
 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,) \
- 	$(if $(VBOX_WITH_NEW_USB_CODE_ON_SOLARIS),VBOX_WITH_NEW_USB_CODE_ON_SOLARIS,)
+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,) \
+	$(if $(VBOX_WITH_NEW_USB_CODE_ON_SOLARIS),VBOX_WITH_NEW_USB_CODE_ON_SOLARIS,)
 endif
 VBoxSVC_DEFS.win += VBOX_COM_OUTOFPROC_MODULE
@@ -354,7 +354,7 @@
  endif
  VBoxSVC_SOURCES  += \
- 	USBDeviceFilterImpl.cpp \
- 	USBProxyService.cpp \
- 	HostUSBDeviceImpl.cpp
+	USBDeviceFilterImpl.cpp \
+	USBProxyService.cpp \
+	HostUSBDeviceImpl.cpp
  VBoxSVC_SOURCES.darwin  +=  darwin/USBProxyServiceDarwin.cpp
  VBoxSVC_SOURCES.linux   +=   linux/USBProxyServiceLinux.cpp
@@ -392,6 +392,6 @@
 ifdef VBOX_WITH_RESOURCE_USAGE_API
  VBoxSVC_SOURCES += \
- 	PerformanceImpl.cpp \
- 	Performance.cpp
+	PerformanceImpl.cpp \
+	Performance.cpp
  VBoxSVC_SOURCES.darwin  +=  darwin/PerformanceDarwin.cpp
  VBoxSVC_SOURCES.freebsd += freebsd/PerformanceFreeBSD.cpp
@@ -480,6 +480,6 @@
   VBoxTestOGL_LIBS = \
 	$(if $(VBOX_WITH_CROGL), \
-  	  $(PATH_LIB)/VBoxOGLhostspuload$(VBOX_SUFF_LIB) \
-  	  $(VBOX_LIB_OGL_HOSTCRUTIL),) \
+	  $(PATH_LIB)/VBoxOGLhostspuload$(VBOX_SUFF_LIB) \
+	  $(VBOX_LIB_OGL_HOSTCRUTIL),) \
 	$(if $(VBOX_WITH_VIDEOHWACCEL), $(PATH_LIB)/VBoxOGL2D$(VBOX_SUFF_LIB),) \
 	$(LIB_RUNTIME)
@@ -610,5 +610,5 @@
 ifdef VBOX_WITH_NETFLT
  VBoxC_LIBS.win += $(PATH_LIB)/WinNetConfig.lib \
- 	$(PATH_TOOL_$(VBOX_VCC_TOOL)_LIB)/comsupp.lib \
+	$(PATH_TOOL_$(VBOX_VCC_TOOL)_LIB)/comsupp.lib \
 	$(PATH_SDK_WINPSDK_LIB)/WbemUuid.Lib
 endif
@@ -735,9 +735,9 @@
  VBoxMain-hardening-inst_INST = $(INST_BIN)components/
  VBoxMain-hardening-inst_SYMLINKS = \
- 	VBoxDDU.so=>../VBoxDDU.so \
- 	VBoxREM.so=>../VBoxREM.so \
- 	VBoxRT.so=>../VBoxRT.so \
- 	VBoxVMM.so=>../VBoxVMM.so \
- 	VBoxXPCOM.so=>../VBoxXPCOM.so
+	VBoxDDU.so=>../VBoxDDU.so \
+	VBoxREM.so=>../VBoxREM.so \
+	VBoxRT.so=>../VBoxRT.so \
+	VBoxVMM.so=>../VBoxVMM.so \
+	VBoxXPCOM.so=>../VBoxXPCOM.so
 endif
 
@@ -830,4 +830,59 @@
 	nls/VBoxC_de.ts
 
+ifdef VBOX_WITH_JMSCOM
+ INSTALLS += VBoxJMscom-inst-jar
+endif
+
+#
+# Java glue JAR files
+#
+VBOX_JMSCOM_JAR     = $(VBoxJMscom-inst-jar_0_OUTDIR)/vboxjmscom.jar
+VBOX_JMSCOM_TARGET := $(PATH_TARGET)/vboxjmscom-gen
+VBOX_JMSCOM_GEN     = $(VBOX_JMSCOM_TARGET)/jmscomgen
+VBOX_JMSCOM_JDEST  := $(VBOX_JMSCOM_TARGET)/jdest
+VBOX_GLUE_XSLT_DIR := $(PATH_ROOT)/src/VBox/Main/glue
+VBOX_JACOB_DIR     := $(PATH_ROOT)/src/libs/jacob-1.15-M3
+
+VBoxJMscom-inst-jar_INST = $(INST_SDK)bindings/mscom/java/
+VBoxJMscom-inst-jar_SOURCES = \
+	$(VBOX_JMSCOM_JAR)
+VBoxJMscom-inst-jar_CLEAN = \
+	$(VBOX_JMSCOM_JAR) \
+	$(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 \
+	)
+VBoxJMscom-inst-jar_BLDDIRS += $(VBOX_JMSCOM_GEN)/java
+
+$(VBOX_JMSCOM_GEN)/jmscomglue.list:  \
+		$(VBOX_XIDL_FILE)    \
+                $(VBOX_GLUE_XSLT_DIR)/glue-java.xsl \
+                $(VBOX_FILESPLIT)    \
+		| $(VBOX_JMSCOM_GEN)/java/
+	$(call MSG_L1,Generating Java glue files from XIDL)
+	$(QUIET)$(RM) -f $(wildcard $(VBOX_JMSCOM_GEN)/java/*.java)
+	$(QUIET)$(VBOX_XSLTPROC) \
+              --stringparam G_vboxApiSuffix $(VBOX_API_SUFFIX) \
+              --stringparam G_vboxGlueStyle mscom              \
+              -o $(VBOX_JMSCOM_GEN)/java/merged.file $(VBOX_GLUE_XSLT_DIR)/glue-java.xsl $<
+	$(QUIET)$(VBOX_FILESPLIT) $(VBOX_JMSCOM_GEN)/java/merged.file $(VBOX_JMSCOM_GEN)/java/
+	$(QUIET)echo $(VBOX_JMSCOM_GEN)/java/*.java > $@
+
+CP_SEP=:
+$$(VBOX_JMSCOM_JAR): $(VBOX_JMSCOM_GEN)/jmscomglue.list | $$(dir $$@)
+	$(call MSG_TOOL,javac,$(notdir $@),jmscomgen.list,)
+	$(QUIET)$(RM) -Rf $(VBOX_JMSCOM_JDEST)
+	$(QUIET)$(MKDIR) -p $(VBOX_JMSCOM_JDEST)
+	$(call MSG_TOOL,javac,$(notdir $@),...,)
+	$(VBOX_JAVAC) $(VBOX_JAVAC_OPTS) \
+                @$(VBOX_JMSCOM_GEN)/jmscomglue.list \
+		-d $(VBOX_JMSCOM_JDEST) -classpath $(VBOX_JMSCOM_JDEST)$(CP_SEP)$(VBOX_JACOB_DIR)/jacob.jar
+	$(call MSG_LINK,$(notdir $@),$@)
+	$(VBOX_JAR) cf $@ -C $(VBOX_JMSCOM_JDEST) .
+
 updatenls::
 	$(VBOX_LUPDATE) $(VBoxSVC_SOURCES) $(VBoxSVC_VBOX_HEADERS) -ts $(VBoxSVC_VBOX_TRANSLATIONS)
Index: /trunk/src/libs/xpcom18a4/java/Makefile.kmk
===================================================================
--- /trunk/src/libs/xpcom18a4/java/Makefile.kmk	(revision 29769)
+++ /trunk/src/libs/xpcom18a4/java/Makefile.kmk	(revision 29770)
@@ -213,5 +213,5 @@
 		$(VBOX_XIDL_FILE)    \
                 $(VBOX_GLUE_XSLT_DIR)/glue-java.xsl \
-                $$(TARGET_filesplitter) \
+                $(VBOX_FILESPLIT)    \
 		| $(VBOX_JXPCOM_GEN)/java/glue/
 	$(call MSG_L1,Generating Java glue files from XIDL)
