[Libreoffice] [Proof-of-concept] Drastically speedup the offapi (and oovbaapi) build

Jan Holesovsky kendy at suse.cz
Thu Sep 1 01:25:20 PDT 2011


Hi Matúš, Bjoern,

I've found a way how to speedup the build of offapi (which is a major
problem on windows - on my box it takes about 10% of the entire build
time).  The trick is simple - instead of generating the files one by
one, several .idl's are treated during one idlc call; something that has
been there before gbuildization of the module.  Of course, it also
handles the case when everything is built, and just 1 .idl changes - in
that case, only that one is rebuilt.

Unfortunately I am heading for vacation, and cannot finish it before I
go - do you think anybody of you could have a look, please?

With the attached patch, the offapi/UnoApi_offapi.mk (and oovbaapi) has
to change to something like the following; this is of course only part
of that, the other rules have to be adapted the same way, but that
should be ~trivial.  Second part of the problem is that idlc have to be
patched to bail out with != 0 exit value, according to the comments it
is not the case right now.

Enjoy :-)

----- 8< offapi/UnoApi_offapi.mk 8< -----
$(eval $(call gb_UnoApiTarget_add_idlfiles_noheader,offapi,offapi/com/sun/star/accessibility,\
    AccessBridge \
    Accessible \
    AccessibleContext \
))

$(eval $(call gb_UnoApiTarget_add_idlfiles_noheader,offapi,offapi/com/sun/star/auth,\
    SSOExceptions \
    SSOManagerFactory \
    SSOPasswordCache \
))

$(eval $(call gb_UnoApiTarget_add_idlfiles_noheader,offapi,offapi/com/sun/star/awt,\
    AccessibleButton \
    AccessibleCheckBox \
    AccessibleComboBox \
    AccessibleDropDownComboBox \
    AccessibleDropDownListBox \
    AccessibleEdit \
    AccessibleFixedText \
    AccessibleIconChoiceControl \
    AccessibleIconChoiceControlEntry \
    AccessibleList \
    AccessibleListBox \
[...more here...]
))
[...etc.]
----- 8< -----

Thank you,
Kendy
-------------- next part --------------
A non-text attachment was scrubbed...
Name: gbuild-speedup-offapi.diff
Type: text/x-patch
Size: 1944 bytes
Desc: not available
URL: <http://lists.freedesktop.org/archives/libreoffice/attachments/20110901/830d7cbb/attachment.bin>


More information about the LibreOffice mailing list