VirtualBox

Changeset 49908 in vbox for trunk/src/VBox


Ignore:
Timestamp:
Dec 15, 2013 3:59:38 AM (11 years ago)
Author:
vboxsync
svn:sync-xref-src-repo-rev:
91290
Message:

Quick midl proxy dll experiment.

Location:
trunk/src/VBox/Main
Files:
2 edited
1 copied

Legend:

Unmodified
Added
Removed
  • trunk/src/VBox/Main/Makefile.kmk

    r49906 r49908  
    908908
    909909
     910if defined(VBOX_WITH_MIDL_PROXY_STUB) && "$(KBUILD_TARGET)" == "win"
     911 #
     912 # Experimental COM proxy + stub DLL.
     913 #
     914 DLLS += VBoxProxyStub
     915 VBoxProxyStub_TEMPLATE = VBOXMAINCOMP
     916 VBoxProxyStub_DEFS     = REGISTER_PROXY_DLL
     917 VBoxProxyStub_SOURCES  = \
     918        $(VBoxCOM_0_OUTDIR)/dlldata.c \
     919        $(VBoxCOM_0_OUTDIR)/VirtualBox_p.c \
     920        $(VBoxCOM_0_OUTDIR)/VirtualBox_i.c \
     921       src-all/win/VBoxProxyStub.def
     922endif
     923
     924
     925
    910926# generate rules
    911927include $(FILE_KBUILD_SUB_FOOTER)
     
    950966$(VBoxCOM_0_OUTDIR)/VirtualBox_i.c \
    951967+ $(VBoxCOM_0_OUTDIR)/VirtualBox.h \
     968$(if $(VBOX_WITH_MIDL_PROXY_STUB),+ $(VBoxCOM_0_OUTDIR)/VirtualBox_p.c + $(VBoxCOM_0_OUTDIR)/dlldata.c,) \
    952969+ $(VBoxCOM_0_OUTDIR)/VirtualBox.tlb: $(VBOX_IDL_FILE.MSCOM) | $$(dir $$@)
    953970        $(VBOX_WIN_MIDL) /nologo \
     
    961978$(VBoxCOM-x86_0_OUTDIR)/VirtualBox_i.c \
    962979+ $(VBoxCOM-x86_0_OUTDIR)/VirtualBox.h \
     980$(if $(VBOX_WITH_MIDL_PROXY_STUB),+ $(VBoxCOM-x86_0_OUTDIR)/VirtualBox_p.c + $(VBoxCOM-x86_0_OUTDIR)/dlldata.c,) \
    963981+ $(VBoxCOM-x86_0_OUTDIR)/VirtualBox-x86.tlb: $(VBOX_IDL_FILE.MSCOM) | $$(dir $$@)
    964982        $(VBOX_WIN_MIDL) /nologo /env win32 /target NT51 \
  • trunk/src/VBox/Main/idl/midl.xsl

    r49906 r49908  
    158158    <!-- all enums go first -->
    159159    <xsl:apply-templates select="enum | if/enum"/>
    160     <!-- everything else but result codes and enums -->
    161     <xsl:apply-templates select="*[not(self::result or self::enum) and
    162                                    not(self::if[result] or self::if[enum])]"/>
     160    <!-- declare the interfaces -->
     161    <xsl:apply-templates select="if | interface"/>
    163162  </xsl:if>
    164163
     
    177176  </xsl:for-each>
    178177  <xsl:text>&#x0A;</xsl:text>
    179   <!-- forward declarations -->
    180   <xsl:apply-templates select="if | interface" mode="forward"/>
    181178  <xsl:text>&#x0A;</xsl:text>
    182179  <xsl:choose>
    183180    <xsl:when test="$g_fGenProxy = 'yes'">
    184       <!-- all enums go first -->
     181      <!-- reference enums and interfaces -->
     182      <xsl:apply-templates select="if | interface" mode="forward"/>
    185183      <xsl:apply-templates select="enum | if/enum" mode="forward"/>
     184      <!-- the modules (i.e. everything else) -->
     185      <xsl:apply-templates select="module | if/module"/>
    186186    </xsl:when>
    187187    <xsl:otherwise>
     188      <!-- forward declarations -->
     189      <xsl:apply-templates select="if | interface" mode="forward"/>
    188190      <!-- all enums go first -->
    189191      <xsl:apply-templates select="enum | if/enum"/>
  • trunk/src/VBox/Main/src-all/win/VBoxProxyStub.def

    r49900 r49908  
     1; $Id$
    12;; @file
    2 ;
    33; VBoxC DLL Definition File.
    44;
    55
    6 ; Copyright (C) 2006-2010 Oracle Corporation
     6;
     7; Copyright (C) 2006-2013 Oracle Corporation
    78;
    89; This file is part of VirtualBox Open Source Edition (OSE), as
     
    1516;
    1617
    17 LIBRARY VBoxC.dll
     18LIBRARY VBoxProxyStub.dll
    1819
    1920EXPORTS
    20     ; COM entry points
    2121    DllGetClassObject   PRIVATE
    2222    DllCanUnloadNow     PRIVATE
    2323    DllRegisterServer   PRIVATE
    2424    DllUnregisterServer PRIVATE
    25     ; private entry points
    26     VBoxDriversRegister PRIVATE
     25
Note: See TracChangeset for help on using the changeset viewer.

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