• Stephan Bergmann's avatar
    Directly build UNOIDL .rdb files from .idl files · 6db34b6b
    Stephan Bergmann yazdı
    ...via unoidl-write and the new source-format registry provicers, instead of
    using idlc to produce .urd files, regmerge to merge them into legacy .rdb files,
    and unoidl-write to translate those to new UNOIDL .rdb files.
    
    gb_UnoApi and gb_InternalUnoApi ctors take an additional argument now that is
    the path (below $(SRCDIR)) of the source-format registry from which to obtain
    UNOIDL entity definitions.  It can either be an .idl file (in which case no
    *_add_idlfiles calls should be used and the resulting .rdb will contain all the
    entities from that one .idl file; used in some tests to conveniently define all
    test-specific entities in a single file) or a directory denoting the root of an
    .idl file tree (in which case *_add_idlfiles calls specify the entites to
    include in the resulting .idl file).  (In the first case, the generated .rdb
    file needs to depend on that single .idl file, so the gb_UnoApiTarget ctor
    contains a dependency on that additional argument, which happens, as a side
    effect, to trigger rebuilds in the second, tree-based case when addition/removal
    of .idl files in the tree causes updates of directory time-stamps.)
    
    UnoApiPartTarget and all the dependency-tracking logic based on .urd files in
    solenv/gbuild/UnoApiTarget.mk is gone.  Generation of an .rdb file now depends
    on its source registry (see previous paragraph) and all the .idl files specified
    with *_add_idlfiles (in the second, tree-based case above).
    
    A consequence of that is that gb_UnoApi_add_idlfile, -_nohdl, and -_noheader all
    do the same now.  I left them in for now anyway, maybe they become relevant
    again when the use of cppumaker is changed to read directly from a source-format
    registry instead of going via a .rdb registry.
    
    The legacy tools idlc, regcompare, regmerge, and regview are still contained in
    the URE or SDK for now.
    
    cb344cd5 "Revert 'Looks like idlc resolved
    typedefs inside sequence<...>'" is re-reverted as now "the current offapi.rdb is
    generated via unoidl-write instead of idlc."
    
    Change-Id: I3d9d92f17326bc9f49dd934c85aab6a17951d06d
    6db34b6b
InternalUnoApi_scaddins.mk 841 Bytes