Re: Dependency libraries and ABI



James Henstridge wrote:
Is it possible to build Xft2 outside of the X source tree? If so, then maybe it would be okay to tell people that they needed to update their Xft in order to get AA text. Telling everyone to upgrade their X libs (which may involve building the whole X tree) sounds less likely to happen.
Yes, it is possible with relatively minor pain.  I would suggest that if 
people here are really worried about Xft2 portability because it's not 
going to be on systems for a while, ship Xft2 with Gtk2.  It doesn't 
require any server side changes and is relatively self contained.  It's 
a relatively simple solution that's going to make life for Gtk2 users 
much easier in the future.
It solves the pkg-config problems, because we don't have to include it 
in the link line (it's already in the library) and when it does make it 
onto the system, pkg-config can just start spitting out the dependency 
for developers.  Current apps won't be affected either since the gtk2 
library can pull in the dependency directly.  It's a real win-win there.
There are the usual problems, though.  It means more code duplication as 
time goes on because more and more systems will include Xft2.  However, 
I think this is a relatively minor issue since system distributors will 
be able to keep full control over the Xft2/Gtk2 relationship and as long 
as you can build Gtk2 both with and without the local Xft2 copy, things 
should be OK.  We can punt problem to distributors in a way that app 
developers won't suffer and in the long run, I think that it actually 
makes life easier for the distributors as well since it makes app 
compatibility easier.
All you need to add to get Xft working is:

Xrender
Xft
fontconfig
expat
freetype

and you've solved your compatibility problems for your users and made life easier both in the long and short term for distributors. Those aren't small but they aren't huge, either.
FYI, this is what I've been working on for Mozilla.  As a side note I 
would _strongly_ recommend that you guys consider doing this for Gtk2 
for completely selfish reasons.  One of the big problems that I'm about 
to run into is that Mozilla needs Xft2 and if Gtk2 uses Xft1 then you 
will have AA fonts in Mozilla with Gtk1.2 but not with Gtk2.  Ironic, eh?
--Chris

--
------------
Christopher Blizzard
http://people.redhat.com/blizzard/
------------




[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]