freebsd-ports/multimedia/gxine/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

69 lines
1.8 KiB
Makefile

# Created by: Grigori Goronzy <greg@chown.ath.cx>
# $FreeBSD$
PORTNAME= gxine
PORTVERSION= 0.5.907
PORTREVISION= 7
CATEGORIES= multimedia
MASTER_SITES= SF/xine/${PORTNAME}/${PORTVERSION}
MAINTAINER= ports@FreeBSD.org
COMMENT= Alternative GUI for the Xine media player
LICENSE= GPLv2
LIB_DEPENDS= libnspr4.so:${PORTSDIR}/devel/nspr \
libmozjs185.so:${PORTSDIR}/lang/spidermonkey185 \
libxine.so:${PORTSDIR}/multimedia/libxine
OPTIONS_DEFINE= MOZILLA_PLUGIN GNOME LIRC
MOZILLA_PLUGIN_DESC= Mozilla plugin
USES= gmake libtool:keepla pathfix pkgconfig tar:xz
USE_GNOME= gtk20
GNU_CONFIGURE= yes
CONFIGURE_ARGS= --without-hal --with-libintl-prefix=${LOCALBASE}
INSTALLS_ICONS= yes
CPPFLAGS+= -I${LOCALBASE}/include
LDFLAGS+= -L${LOCALBASE}/lib
.include <bsd.port.options.mk>
.if ${PORT_OPTIONS:MMOZILLA_PLUGIN}
USE_XORG+= xaw
USES+= webplugin:native
WEBPLUGIN_DIR= ${PREFIX}/lib/gxine
WEBPLUGIN_FILES=gxineplugin.so
PLIST_SUB+= MOZILLA_PLUGIN=""
.else
CONFIGURE_ARGS+=--without-browser-plugin
PLIST_SUB+= MOZILLA_PLUGIN="@comment "
.endif
.if ${PORT_OPTIONS:MGNOME}
BUILD_DEPENDS+= gnome-screensaver:${PORTSDIR}/x11/gnome-screensaver
LIB_DEPENDS+= libdbus-glib-1.so:${PORTSDIR}/devel/dbus-glib
RUN_DEPENDS+= gnome-screensaver:${PORTSDIR}/x11/gnome-screensaver
CONFIGURE_ARGS+=--with-dbus
.else
CONFIGURE_ARGS+=--disable-integration-wizard --without-dbus
.endif
.if ${PORT_OPTIONS:MLIRC}
LIB_DEPENDS+= liblirc_client.so:${PORTSDIR}/comms/lirc
CONFIGURE_ARGS+=--enable-lirc
.else
CONFIGURE_ARGS+=--disable-lirc
.endif
post-patch:
@${REINPLACE_CMD} -e \
'/CFLAGS/s|-I/usr/local/include|| ; \
/CFLAGS/s|-L/usr/local/lib|| ; \
/CPPFLAGS/s|-I/usr/local/include|| ; \
s|XINE_LIST=.*|XINE_LIST=|' ${WRKSRC}/configure
@${REINPLACE_CMD} -e \
's|@MAKE_PNG_TRUE@|#|' ${WRKSRC}/pixmaps/Makefile.in
.include <bsd.port.mk>