[xorg] Re: CMake (was More about x-packages)

Daniel Stone daniel at fooishbar.org
Sun Dec 23 03:38:03 PST 2007


On Sun, Dec 23, 2007 at 11:19:17AM +0000, José Fonseca wrote:
> On 12/23/07, Daniel Stone <daniel at fooishbar.org> wrote:
> > Which .so modules? I'm talking about the convenience libraries within
> > the X server at the moment, which all get linked into the final
> > Xorg/Xephyr/etc binaries (handwaving past the loadable module case).
> > And again, maybe I'm missing something, but it does look vastly like
> > we're missing the point, and reinventing convenience libraries in a
> > pretty stunningly roundabout fashion.
> 
> Daniel, if a library will be linked into an executable, and not a SO,
> then it is not referred as a "convenience library". It is just a
> regular static library, and CMake handles those fine.

Yes, I'm aware.

> "Convinience libraries" are temporary libraries that will be linked
> into SOs and will not be released by themselves. The problems with
> these convenience libraries is that: a) linking a static library into
> a SO is not guaranteed to work, unless the static library was compiled
> with the proper compilation flags, and b) it does not fit into CMake's
> general approach for libraries quite well.

Right.  At the moment, I'm not talking about linking static libraries
into shared objects (Debian people tend to have a better appreciation
than most of the problems inherent here), nor am I talking about
shipping static libraries.  I'm talking about the convenince libraries
(of which there are over 112) in the server, which are compiled once,
never installed, and then linked multiple times into every server[0].

How does CMake solve this problem, apart from 'badly'? Having to hack
CMake internals to support convenience libraries and do things very
non-portably sounds about as good as, well, having to hack automake
internals to get rid of libtool for shared objects.

Cheers,
Daniel

[0]: Yes, some of these are linked into .so's which are later
     dynamically loaded by Xorg.  Imagine Xorg doesn't exist and that
     we're talking about KDrive, and then we'll cross the dynamic bridge
     when we come to it.
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 189 bytes
Desc: Digital signature
URL: <http://lists.x.org/archives/xorg/attachments/20071223/47529c4d/attachment.pgp>


More information about the xorg mailing list