Date: prev next · Thread: first prev next last
2013 Archives by date, by thread · List index


Hi,

On 10 April 2013 15:18, Michael Meeks <michael.meeks@suse.com> wrote:

On Wed, 2013-04-10 at 09:04 +0200, Stephan Bergmann wrote:
An alternative (for other platforms too) might be to have the various
URE interface libraries (sal etc.) be shallow wrappers that link against
libmerged and just re-export their part (depending on how elegantly
different architectures allow such re-exporting).

        Right - that's a good plan indeed; though I suspect that for Mac+Linux
the symlink idea is rather simpler practically [ not certain that it's
easy to safely re-export the same symbol you're implementing under an
ELF model ].

Well, I'm not there yet (and don't want to be if possible ;-))
I've just created another 'merged' library: urelibs, merging only ure
libraries..
and I could leave public ones out - that should work I hope.

For now I merge also sal, salhelper, cppu, cppuhelper because I just
want to see how it helps.
But it's not in libmerged, it's another library, for details see
<http://cgit.freedesktop.org/libreoffice/core/commit/?id=3fdb77f0827d374a7fa2f1e232920b6174d6b44b>
"add new urelibs library merging some libraries from ure/lib/"

What is encouraging, is that just switching to libmerged as it was on
April 9 helps to save ~20% of startup time on Raspbian.
Both when measuring with time and profiling with callgrind.
I am currently profiling build with urelibs - should help a little more.
I will also generate list of 'commonly used for startup' libraries once more.

But still there are libs, which should go into libmerged, it just does not work.
(it was not possible to add them sooner because build tools depend on
them - now we link the object files twice.)
Currently adding comphelper (you need to add tl first but that seems
to be fine) causes:

==5414== Process terminating with default action of signal 11
(SIGSEGV): dumping core
==5414==  Access not within mapped region at address 0x15DA0538
==5414==    at 0x81E3C2B: SvxAutoCorrCfg::~SvxAutoCorrCfg() (in
/home/opensuse/git/libo/solver/unxlngx6.pro/lib/libmergedlo.so)
==5414==    by 0x5D28F60: __run_exit_handlers (in /lib64/libc-2.17.so)
==5414==    by 0x5D28FE4: exit (in /lib64/libc-2.17.so)
==5414==    by 0x5D12A1B: (below main) (in /lib64/libc-2.17.so)

when executing CppunitTest_sw_uwriter - only this single unit test fails :-(
No idea what to do with that.

Thanks,

Matus

Context


Privacy Policy | Impressum (Legal Info) | Copyright information: Unless otherwise specified, all text and images on this website are licensed under the Creative Commons Attribution-Share Alike 3.0 License. This does not include the source code of LibreOffice, which is licensed under the Mozilla Public License (MPLv2). "LibreOffice" and "The Document Foundation" are registered trademarks of their corresponding registered owners or are in actual use as trademarks in one or more countries. Their respective logos and icons are also subject to international copyright laws. Use thereof is explained in our trademark policy.