Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 05 May 2010 22:07:47 -0500
From:      "Jeremy Messenger" <mezz7@cox.net>
To:        bf1783@gmail.com, freebsd-gnome@freebsd.org
Subject:   Re: Grandfather dependencies completely out of control
Message-ID:  <op.vb9kbxqg9aq2h7@localhost>
In-Reply-To: <r2vd873d5be1005051503j51789981hbe00a3ca6b6e2f4e@mail.gmail.com>
References:  <r2vd873d5be1005051503j51789981hbe00a3ca6b6e2f4e@mail.gmail.com>

next in thread | previous in thread | raw e-mail | index | archive | help
On Wed, 05 May 2010 17:03:41 -0500, b. f. <bf1783@googlemail.com> wrote:

> Alexander Leidinger wrote:
> ,,,
>> Because of the libtool/pkg-config problem all childs of a
>> "problematic" lib will contain a reference to the lib, even if the
>> particular lib is just a dependency of a lib which the current port
>> uses. To make this description more explicit: if your port uses
>> libGRAPH (I made upt this name) and libGRAPH is linked to libjpeg and
>> libpng via libtool (at least 1.x), but your port is not directly using
>> symbols from libjpeg or libpng, the binaries of your port will have
>> libpng *and* libjpeg hardcoded.
>
> Use of
>
> LDFLAGS+= -Wl,--as-needed
>
> can help with this problem.  But of course a lot of ports don't now

See ltasneededhack in ports/Mk/bsd.gnome.mk (ie:  
USE_GNOME=ltasneededhack), we are using on evolution and a few others to  
help speed up.


The libtool2 was supposed to get rid of *.la files by default, but the  
developers have changed mind. Too bad for all of us.

Cheers,
Mezz

> respect LDFLAGS (many gnome ports offend in this regard).  Because a
> lot of people want to use alternative compilers/toolchains for ports,
> and because of new gcc features like -flto, -fwhopr, and
> -fstack-protector* (the last has been enabled by default in the base
> system for some time now, but still cannot be properly used for a
> large number of ports which don't respect LDFLAGS), there needs to be
> a cleanup to ensure that as many ports as possible respect the
> toolchain (ADDR2LINE, AR, AS, CPPFILT, LD, NM, OBJCOPY, OBJDUMP,
> RANLIB, READELF, SIZE, STRINGS, STRIP) and compiler-related variables
> ( CC, CPP, CXX, CFLAGS, CPPFLAGS, CXXFLAGS, and LDFLAGS).
>
> b.


-- 
mezz7@cox.net  -  mezz@FreeBSD.org
FreeBSD GNOME Team
http://www.FreeBSD.org/gnome/  -  gnome@FreeBSD.org



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?op.vb9kbxqg9aq2h7>