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) --- misc/libisocodes/Makefile | 7 +++---- misc/xdelta/Makefile | 4 ++-- 2 files changed, 5 insertions(+), 6 deletions(-) (limited to 'misc') diff --git a/misc/libisocodes/Makefile b/misc/libisocodes/Makefile index e9c8bbe347ec..df79f6dfc9c7 100644 --- a/misc/libisocodes/Makefile +++ b/misc/libisocodes/Makefile @@ -3,7 +3,7 @@ PORTNAME= libisocodes PORTVERSION= 1.0 -PORTREVISION= 1 +PORTREVISION= 2 CATEGORIES= misc MASTER_SITES= http://pkg-isocodes.alioth.debian.org/downloads/ @@ -16,10 +16,9 @@ BUILD_DEPENDS= valac:${PORTSDIR}/lang/vala LIB_DEPENDS= libgee.so:${PORTSDIR}/devel/libgee06 RUN_DEPENDS= iso-codes>=0:${PORTSDIR}/misc/iso-codes -USE_XZ= yes -USES= gettext gmake libtool pathfix pkgconfig -USE_GNOME= glib20 gnomehier introspection:build libxml2 GNU_CONFIGURE= yes +USES= gettext gmake libtool:keepla pathfix pkgconfig tar:xz +USE_GNOME= glib20 gnomehier introspection:build libxml2 post-patch: @${REINPLACE_CMD} -e 's|/usr/share/xml/|${LOCALBASE}/share/xml/|g' \ diff --git a/misc/xdelta/Makefile b/misc/xdelta/Makefile index c6f8b503dd00..444d5449c456 100644 --- a/misc/xdelta/Makefile +++ b/misc/xdelta/Makefile @@ -3,14 +3,14 @@ PORTNAME= xdelta PORTVERSION= 1.1.4 -PORTREVISION= 2 +PORTREVISION= 3 CATEGORIES= misc devel MASTER_SITES= ${MASTER_SITE_GOOGLE_CODE} MAINTAINER= eadler@FreeBSD.org COMMENT= Diff/patch utility for binary files -USES= pkgconfig libtool +USES= libtool:keepla pkgconfig USE_GNOME= glib20 GNU_CONFIGURE= yes USE_LDCONFIG= yes -- cgit v1.2.3