xlib + xcms

Enrico Weigelt weigelt at metux.de
Thu Mar 23 18:25:35 PST 2006


* Bill Crawford <billcrawford1970 at gmail.com> schrieb:

<snip>

> > Does it break the ABI if old programs which would segfault now simply
> > fail to start?
> 
>  If they linked to it, but that code was never actually called .. yes.

hmm, is it usual to link in functions which are never called ?

Could anyone, who has access to a lot of older applications do
an nm over them to see whether anyone links in these functions ?

And is there any other source (yeah, I did not yet read the spec)
where we could find out if anyone could rely on them ?

BTW: we also could make it configurable and provide it as an 
separate library too. I'll do the job porting some libs/apps 
(in fact I only know of cairo) to the new lib. 

Perhaps we could go this way:

#1:  specify a complete new library interface (with slightly 
     non-conflicting symbols, ie. by using some prefix). 
#2a: write a small wrapper which library which provides the new
     interface (at least at source) and sits on top of old xlib
#2b: write an separate, new, implementation outside of xlib

3:   start porting new applications to the new interface.
     they just ask pkg-config where they should link against, etc.
     
Once we're at this point, it's the choice of the distributor /
sysop how to build evryting. I personally would build xlib w/o
xcms, but instead the separate libxcms and link the other packages 
(ie cairo) against this one. Others, requiring to get very old 
binary code running, could compile xlib w/ xcms built-in and use 
the small wrapper for those packages using the new interface.

Okay, we maybe have a little bit of code duplication with that, 
but I'm sure we can handle this. Maybe its a good idea putting 
the core stuff in another separate package which creates a static
library, and this one is linked-in both by xcms'ed xlib and libxcms.


cu
-- 
---------------------------------------------------------------------
 Enrico Weigelt    ==   metux IT service - http://www.metux.de/
---------------------------------------------------------------------
 Please visit the OpenSource QM Taskforce:
 	http://wiki.metux.de/public/OpenSource_QM_Taskforce
 Patches / Fixes for a lot dozens of packages in dozens of versions:
	rsync://sources.metux.de/metux-patches
---------------------------------------------------------------------



More information about the xorg mailing list