building a shadow test lib with all symbols?

Stephan Bergmann sbergman at redhat.com
Wed Jan 20 00:10:19 PST 2016


On 01/19/2016 11:46 PM, Bjoern Michaelsen wrote:
> On Tue, Jan 19, 2016 at 03:38:32PM +0100, Stephan Bergmann wrote:
>> There's two approaches to this ugly problem.  One is as above, with the
>> downside of increasing the number of global symbols.  The other is to link a
>> Library's objects directly into a CppunitTest library via
>> gb_CppunitTest_use_library_objects.  The downside there is that you need
>> typically duplicate all the Library_*.mk's gb_Library_set/use/whatever...
>> calls as gb_CppunitTest_... calls in the CppunitTest_*.mk.
>>
>> Both approaches suck.
>
> True. It was "Good Enough"(tm) for the time being "Back Then"[1], but we have
> much more tests now. I wonder if we should consider something like creating a
> second "shadow" library that exports all symbols, but doesnt get build by
> default. Thus e.g. the stuff in sw/Library_sw.mk would create _two_ targets:
>
>   ./instdir/program/libswlo.so
>   ./workdir/LinkTarget/libswlo_tests.so

There can be cases where both libraries end up in the process (like 
other libraries needing the first one, or the first one being 
dlopen'ed).  That could cause problems with duplicated static data and 
symbols exported multiple times, but both those problems are no 
different with the current second approach above.


More information about the LibreOffice mailing list