From aad09bc5e23eb75a7a865a8b0002fbc6e13d4659 Mon Sep 17 00:00:00 2001 From: Tijl Coosemans Date: Wed, 23 Apr 2014 13:25:16 +0000 Subject: When linking a library libA with a library libB using libtool, if libB.la exists, libtool will add all libraries libB.la refers to (dependency_libs field) to the linker command line and store them in the dependency_libs field of libA.la. So everything that subsequently links with libA will also link to these extra libraries. This causes too much overlinking. This commit modifies Mk/Uses/libtool.mk so it empties the dependency_libs field in .la libraries during staging. However, because .la libraries have very limited use when dependency_libs is empty it makes sense to completely remove them during staging. So with this commit USES=libtool is modified to remove .la libraries and a new form (USES=libtool:keepla) is introduced in case they need to be kept (dependency_libs is still emptied). PORTREVISION is bumped on all ports with USES=libtool that install .la libraries. Most ports are also changed to add :keepla because .la libraries have to be kept around as long as there are dependent ports with .la libraries that refer to them in their dependency_libs field. In most cases :keepla can be removed again as soon as all dependent ports that install .la libraries have some form of USES=libtool added to their Makefile. PR: ports/188759 Exp-run: bdrewery Approved by: portmgr (bdrewery) --- graphics/cairo/Makefile | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'graphics/cairo') diff --git a/graphics/cairo/Makefile b/graphics/cairo/Makefile index accb3e472c1d..bdf8205ee34d 100644 --- a/graphics/cairo/Makefile +++ b/graphics/cairo/Makefile @@ -4,7 +4,7 @@ PORTNAME= cairo PORTVERSION= 1.10.2 -PORTREVISION= 9 +PORTREVISION= 10 PORTEPOCH?= 2 CATEGORIES= graphics MASTER_SITES= http://cairographics.org/releases/ @@ -22,7 +22,7 @@ GNU_CONFIGURE= yes CONFIGURE_ARGS= --with-html-dir=${DOCSDIR} \ --disable-directfb \ --enable-tee -USES= libtool pathfix pkgconfig +USES= libtool:keepla pathfix pkgconfig USE_XORG= pixman USE_GNOME= referencehack USE_LDCONFIG= yes -- cgit v1.2.3