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

Re: Release goal: Getting rid of unneeded *.la / emptying dependency_libs



Steve Langasek wrote:

> On Wed, Aug 26, 2009 at 02:08:40AM -0400, Felipe Sateler wrote:
>> But this will cause trouble anyway. Imagine this case: glib changes
>> SONAME, both app and library depend on glib. app is recompiled, gtk isn't
>> yet.So then app NEEDED libglib-2.0.so.1, gtk NEEDED libglib-2.0.so.0.
>> Kaboom! The only real solution is to make gtk's SONAME dependent on
>> glib's, eg libgtk- x11-2.0.so.0-glib-1 (a la boost upstream with gcc
>> versions).

I think I should have added that the app does not have to link directly with 
glib.

> 
> That's what symbol versioning is for.

>From /u/i/g/g/gtktextchild.h:

struct _GtkTextChildAnchor
{
  GObject parent_instance;

  gpointer GSEAL (segment);
};

You lost anyway. If GObject or gpointer changes, symbol versioning doesn't 
save you because _GtkTextChildAnchor is a public type (granted, GObject or 
gpointer aren't likely to change incompatibly, but I'm sure you can find 
other examples where changes are more likely).

Saludos,
Felipe Sateler


Reply to: