VirtualBox

Changeset 16676 in vbox for trunk


Ignore:
Timestamp:
Feb 11, 2009 4:16:56 PM (16 years ago)
Author:
vboxsync
Message:

Makefiles: insert an additional step between VirtualBox.xidl and its users (Main, webservice, Qt, Runtime) so that no recompiles occur if only <desc> tags are changed. In other words, updating the API documentation no longer causes full recompiles

Location:
trunk
Files:
6 edited

Legend:

Unmodified
Added
Removed
  • trunk/Config.kmk

    r16670 r16676  
    36153615endif
    36163616
     3617#
     3618# Shared definitions of the XIDL file to use as a source for
     3619# generating various other files (VBoxSVC, webservice, docs, front-ends, ...)
     3620#
     3621
     3622# Real XIDL source file; from this we strip the <desc> elements to generate
     3623# a second XIDL file, from which the COM/XPCOM IDL files are then generated:
     3624VBOX_XIDL_FILE_SRC     = $(VBOX_PATH_MAIN_SRC)/idl/VirtualBox.xidl
     3625# second XIDL file to use as source for COM/XPCOM IDL (with stripped docs):
     3626VBOX_XIDL_FILE         = $(PATH_OUT)/obj/VirtualBox_stripped.xidl
     3627
    36173628
    36183629#
  • trunk/src/VBox/Frontends/VirtualBox/Makefile.kmk

    r16617 r16676  
    441441
    442442$$(PATH_VirtualBox)/include/COMWrappers.h: \
    443                 $(PATH_ROOT)/src/VBox/Main/idl/VirtualBox.xidl \
     443                $(VBOX_XIDL_FILE) \
    444444                $(VBOX_VIRTUALBOX4_SRC)/include/COMWrappers.xsl \
    445445                | $$(dir $$@)
  • trunk/src/VBox/Main/Makefile.kmk

    r16648 r16676  
    118118endif # xpcom
    119119
     120#
     121# Strip documentation from source XIDL so that we don't get a full
     122#       recompile every time a comma in the documentation is changed.
     123#
     124$(VBOX_XIDL_FILE): $(VBOX_XIDL_FILE_SRC) $(VBOX_PATH_MAIN_SRC)/idl/docstrip.xsl
     125#       $(CP) -fv $< $(VBOX_XIDL_FILE).tmp
     126        $(VBOX_XSLTPROC) -o $(VBOX_XIDL_FILE).tmp $(VBOX_PATH_MAIN_SRC)/idl/docstrip.xsl $<
     127        $(CP) --changed -fv $(VBOX_XIDL_FILE).tmp $@
    120128
    121129#
     
    128136                $(VBOX_PATH_MAIN_SRC)/Doxyfile.Main \
    129137                $(VBOX_PATH_MAIN_SRC)/idl/doxygen.xsl \
    130                 $(VBOX_PATH_MAIN_SRC)/idl/VirtualBox.xidl \
     138                $(VBOX_XIDL_FILE_SRC) \
    131139                | $(PATH_TARGET)/ \
    132140                $(VBOX_MAIN_DOC_DIR)/
    133141        $(RM) -f $(wildcard $(VBOX_MAIN_DOC_DIR)/html/*) $(PATH_TARGET)/docs.Main
    134         $(VBOX_XSLTPROC) -o $(PATH_TARGET)/VirtualBox.idl $(VBOX_PATH_MAIN_SRC)/idl/doxygen.xsl $(VBOX_PATH_MAIN_SRC)/idl/VirtualBox.xidl
     142        $(VBOX_XSLTPROC) -o $(PATH_TARGET)/VirtualBox.idl $(VBOX_PATH_MAIN_SRC)/idl/doxygen.xsl $(VBOX_XIDL_FILE_SRC)
    135143        $(REDIRECT) -E 'DOCDIR=$(VBOX_MAIN_DOC_DIR)' -E 'PATH_TARGET=$(PATH_TARGET)' -E 'PATH_CHM=$(subst /,\,$(VBOX_MAIN_DOC_DIR)/VirtualBoxAPI.chm)' \
    136144                -- doxygen $(VBOX_PATH_MAIN_SRC)/Doxyfile.Main
     
    149157INSTALLS += VBox-main-xidl
    150158VBox-main-xidl_INST = $(INST_SDK)bindings/
    151 VBox-main-xidl_SOURCES = idl/VirtualBox.xidl
     159VBox-main-xidl_SOURCES = $(VBOX_XIDL_FILE_SRC)
    152160
    153161
     
    625633#
    626634
    627 VBOX_XIDL_FILE = $(VBOX_PATH_MAIN_SRC)/idl/VirtualBox.xidl
    628 
    629635## @todo this hack ain't cutting it any longer. (the file name is abspath'ed since ages now.)
    630636xpcom/helpers.cpp: $(VBOX_IDL_TYPELIB.XPCOM)
  • trunk/src/VBox/Main/cbinding/Makefile.kmk

    r16547 r16676  
    4545$$(XpComCHeaders_0_OUTDIR)/VirtualBox_CXPCOM.h: \
    4646                $(PATH_SUB_CURRENT)/xpcidl.xsl \
    47                 $(PATH_SUB_CURRENT)/../idl/VirtualBox.xidl \
     47                $(VBOX_XIDL_FILE) \
    4848                | $$(dir $$@)
    4949        $(VBOX_XSLTPROC) -o $@ $^
  • trunk/src/VBox/Main/webservice/Makefile.kmk

    r16122 r16676  
    111111PATH_TARGET_WEBTEST           := $(VBOXWEB_OUT_DIR)/webtest
    112112
    113 VBOXWEB_IDL_SRC_ORIG          := $(VBOX_PATH_WEBSERVICE)/../idl/VirtualBox.xidl
     113VBOXWEB_IDL_SRC_ORIG          := $(VBOX_XIDL_FILE)
    114114VBOXWEB_IDL_SRC               := $(VBOXWEB_OUT_DIR)/VirtualBox.xidl
    115115
  • trunk/src/VBox/Runtime/Makefile.kmk

    r16650 r16676  
    14841484$(IPRT_OUT_DIR)/errmsgvboxcomdata.h: \
    14851485                $(VBOX_PATH_RUNTIME_SRC)/VBox/errmsgvboxcom.xsl \
    1486                 $(VBOX_PATH_RUNTIME_SRC)/../Main/idl/VirtualBox.xidl \
     1486                $(VBOX_XIDL_FILE) \
    14871487                | $$(dir $$@)
    14881488        $(call MSG_GENERATE,,$@,$(filter %.xidl,$^))
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