[Mesa-dev] [PATCH 1/2] build libgallium shared by default.

Johannes Obermayr johannesobermayr at gmx.de
Tue Mar 19 12:30:10 PDT 2013


Am Montag, 18. März 2013, 15:38:31 schrieb Maarten Lankhorst:
> This is one of the 2 patches used in ubuntu for decreasing size of mesa build.
> 
> The other one is more hacky, and links libmesagallium into libgallium,
> and then links libgallium against libdricore too for minimal duplication.
> 

I am against both patches:

1. libgallium shared in this version causes duplicate symbols for depending targets if using static LLVM libs and generally links to much LLVM components/libs

2. libmesagallium shared in a right implementation unconditionally depends on shared libglapi and shared libgallium to avoid duplicate symbol for depending targets

3. It is not "-no-undefined" but "-Wl,--no-undefined" to show missing symbols (and currently there are a lot of them in Mesa) ...

4. I have worked to target issues of 1. to 3. in a bottom-up series since December while splitting mesa into libmesacore, libmesadri and libmesagallium to reduce binary sizes as much as possible for distributions

If 4. will be finished right this patch should become obsolete:
http://cgit.freedesktop.org/mesa/mesa/commit/?id=cf69a591e1ad16b590c9ae2eba0da6fa6c4fc741

And also most of the C++ linker forces will become obsolete.

But pushing things like
http://cgit.freedesktop.org/mesa/mesa/commit/?id=2506b035031d6022fec0465bffac8eedd43de0f9
without saying in which cases it is required (e. g. not for me) doesn't make it easier to fulfill less memory consumption ...


Johannes


More information about the mesa-dev mailing list