VirtualBox

Changeset 48164 in vbox for trunk/src/libs


Ignore:
Timestamp:
Aug 29, 2013 4:35:14 PM (11 years ago)
Author:
vboxsync
Message:

Main: phase out the use of the XPCOM glue (wasn't ever used), and rename tstVBoxAPILinux to tstVBoxAPIXPCOM to match the content
libs/xpcom: strip down the standalone XPCOM glue code and disable building it as so far no one uses it

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/libs/xpcom18a4/Makefile.kmk

    r47900 r48164  
    8888        VBox-xpcom-proxy \
    8989        VBoxXPCOMGlue_s \
    90         VBoxXPCOMGlue \
     90        $(if $(VBOX_WITH_XPCOM_GLUE_WHICH_IS_UNUSED),VBoxXPCOMGlue,) \
    9191        VBox-xpcom-ipcutils \
    9292        VBox-xpcom-ipcshared \
     
    888888# The VBoxXPCOM Glue static libraries.
    889889#
    890 # See http://developer.mozilla.org/en/docs/XPCOM_Glue for details about the
    891 # original XPCOM glue library purpose and usage.
    892 #
    893 # We don't really use the glue library in the described way because we don't
    894 # provide frozen APIs (yet), so all VBox XPCOM client applications are
    895 # dependent on the given version of both the VBox XPCOM runtime (binary
    896 # dependency) and VirtualBox component library (COM interface dependency). For
    897 # this reason, VBox client applications link to the VBox XPCOM shared library
    898 # directly (instead of linking to the standalone XPCOM glue library that would
    899 # dynamically search for and load the installed XPCOM runtime). For the same
    900 # reason, we link all parts of XPCOM into a single shared XPCOM library below
    901 # (as opposed to the original XPCOM where e.g. NSPR lives in a separate DLL).
     890# This isn't the normal XPCOM glue (see the places in XPCOM where XPCOM_GLUE is
     891# checked), VirtualBox has its own glue library and this means this isn't used
     892# much (one reason is that we don't provide frozen APIs yet). All VBox XPCOM
     893# client applications are dependent on the given version of both the VBox XPCOM
     894# runtime (binary dependency) and VirtualBox component library (COM interface
     895# dependency). For this reason, VBox client applications link to the VBox XPCOM
     896# shared library directly (instead of linking to the standalone XPCOM glue
     897# library that would dynamically search for and load the installed XPCOM
     898# runtime). For the same reason, we link all parts of XPCOM into a single
     899# shared XPCOM library below (as opposed to the original XPCOM where e.g. NSPR
     900# lives in a separate DLL). Additionally there is VBox specific glue code to
     901# make both the client and server side code build with both XPCOM and COM,
     902# which should be made part of the SDK eventually, but this is a higher level
     903# of abstraction than this XPCOM specific glue code.
    902904#
    903905VBoxXPCOMGlue_COMMON_SOURCES = \
     
    917919VBoxXPCOMGlue_s_SOURCES  = $(VBoxXPCOMGlue_COMMON_SOURCES)
    918920
    919 # standalone glue library which all third-party client apps (if any) will link with
    920 # (currently not used anywhere (see above) but still built to make sure
    921 # the code inside #ifdef XPCOM_GLUE compiles)
     921# standalone glue library which all third-party client apps (if any) will
     922# link with (currently completely unused and nit built, to be part of the SDK)
    922923VBoxXPCOMGlue_TEMPLATE = XPCOM
    923 VBoxXPCOMGlue_DEFS     = XPCOM_GLUE
    924 if defined(VBOX_WITH_HARDENING) && defined(VBOX_PATH_APP_PRIVATE_ARCH)
    925  VBoxXPCOMGlue_DEFS    += MOZ_DEFAULT_VBOX_XPCOM_HOME=\"$(VBOX_PATH_APP_PRIVATE_ARCH)\"
    926 endif
    927 VBoxXPCOMGlue_SOURCES  = $(VBoxXPCOMGlue_COMMON_SOURCES) \
    928                          xpcom/glue/standalone/nsXPCOMGlue.cpp \
    929                          xpcom/glue/standalone/nsGREDirServiceProvider.cpp
    930 VBoxXPCOMGlue_SOURCES += \
    931         $(VBox-xpcom-string_1_TARGET)
     924VBoxXPCOMGlue_SOURCES  = $(VBoxXPCOMGlue_COMMON_SOURCES)
    932925#VBoxXPCOMGlue_INST     = lib/ $(INST_SDK)lib/
    933926
Note: See TracChangeset for help on using the changeset viewer.

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