freebsd-ports/devel/libpeas/Makefile
Tijl Coosemans aad09bc5e2 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)
2014-04-23 13:25:16 +00:00

67 lines
1.6 KiB
Makefile

# Created by: Koop Mast <kwm@FreeBSD.org>
# $FreeBSD$
# $MCom: ports/trunk/devel/libpeas/Makefile 19006 2014-02-16 10:03:26Z kwm $
PORTNAME= libpeas
PORTVERSION= 1.8.1
PORTREVISION= 1
CATEGORIES= devel gnome
MASTER_SITES= GNOME
DIST_SUBDIR= gnome3
MAINTAINER= kwm@FreeBSD.org
COMMENT= Next evolution of the Gedit plugins engine
BUILD_DEPENDS= valac:${PORTSDIR}/lang/vala
USE_XZ= yes
USE_PYTHON= 2
USE_LDCONFIG= yes
USES= gettext gmake libtool:keepla pathfix pkgconfig
USE_GNOME= gtk30 introspection:build
INSTALLS_ICONS= yes
GNU_CONFIGURE= yes
CPPFLAGS+= -I${LOCALBASE}/include
LDFLAGS+= -L${LOCALBASE}/lib
INSTALL_TARGET= install-strip
CONFIGURE_ARGS+=--disable-glade-catalog
OPTIONS_DEFINE= PYTHON
OPTIONS_DEFAULT=PYTHON GJS
OPTIONS_MULTI= JS
OPTIONS_MULTI_JS=SEED GJS
JS_DESC=JavaScript plugin support
SEED_DESC= JavaScript support based on webkit-gtk3
GJS_DESC= JavaScript support based on spidermonkey
.include <bsd.port.options.mk>
.if ${PORT_OPTIONS:MSEED}
CONFIGURE_ARGS+=--enable-seed=yes
LIB_DEPENDS= libseed-gtk3.so:${PORTSDIR}/devel/seed3
PLIST_SUB+= SEED=""
.else
CONFIGURE_ARGS+=--enable-seed=no
PLIST_SUB+= SEED="@comment "
.endif
.if ${PORT_OPTIONS:MPYTHON}
CONFIGURE_ARGS+=--enable-python2 --disable-python3
USE_GNOME+= pygobject3
PLIST_SUB+= PYTHONS=""
.else
CONFIGURE_ARGS+=--disable-python2 --disable-python3
PLIST_SUB+= PYTHONS="@comment "
.endif
.if ${PORT_OPTIONS:MGJS}
CONFIGURE_ARGS+=--enable-gjs
BUILD_DEPENDS+= gjs>=1.32.0:${PORTSDIR}/lang/gjs
LIB_DEPENDS+= libgjs.so:${PORTSDIR}/lang/gjs
PLIST_SUB+= GJS=""
.else
CONFIGURE_ARGS+=--enable-gjs=no
PLIST_SUB+= GJS="@comment "
.endif
.include <bsd.port.mk>