packages: cairo/cairo-link.patch, cairo/cairo.spec - 1.10.0 - merged from d...

Tomasz Pala gotar at polanet.pl
Sun Sep 19 11:56:28 CEST 2010


On Sat, Sep 18, 2010 at 18:39:40 +0200, Pawel Golaszewski wrote:

>> +1 - this also simplifies builds and releases storage. Do we have any 
>>      FTP stats on *-static downloads? If noone uses them there's no 
>>      point in wasting resources.
> 
> Wrong.
> I've used few times static libs to build some binaries and I'm using it 
> for years...

Libs? Or binaries.

> Some may download it only once to do the build (like I did). FTP stats are 
> not good indicator here...

They are if it happens that noone ever downloaded a file.

It keep popping up that some classification needs to be made. For now we
could safely remove all the .la files, but ONLY IF (libtool) can do static
build without them. So we are exactly where we were week ago:
1. no place for .la in -devel
2. useless -static without .la
3. no place for .la in -static

And we could either:
1. 'fix' libtool to disregard .la for dynamic builds, or
2. improve libtool to link statically without .la files (IMHO
impossible, that's what pkgconfig should be used),
3. BR: *-static for static builds.

Well, we could also do some weird things like separate *-la subpackages
required for building *-static ...but BC for *-devel (means two pass
building). It's insane.

Summarizing:
- we want to package .la files of non-pc libs (to keep their -static usable),
- we don't want .la to be used in building process (i.e. compile&link),
- we do want .la to be used to create successive .la (the one to be packaged).

I can't see any valid and reasonable solution without any loss here.

So my final statement - assuming:
- we can't 'fix' libtool,
- we can't package .la into -devel (as it breaks regular builds, which
  are definitely more important)

if we want to keep -static I'd sacrifice quality of .la files (as it's
nondeterministic now TOO). So going back to the beginning of this
thread (qboosh):

> Too baaad... this causes that *.la of libs/modules using
> libcairo-gobject would have different dependencies (-lcairo-gobject or
> libcairo-gobject.la) depending on presence of cairo-static.
> This is not acceptable.

This is no difference to current situation (see my png12) - so it's not
a bit worse. Usually there's no *-static on builders, so there would be
-lsomelib: wouldn't it be sufficient to do some postprocessing like
s/-l(.*)/\1.la/

> Either move this .la to -devel, or remove at all.

...and move .la to static?

-- 
Tomasz Pala <gotar at pld-linux.org>


More information about the pld-devel-en mailing list