freebsd-ports/science/gchemutils/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

70 lines
2.2 KiB
Makefile

# Created by: Pav Lucistnik <pav@oook.cz>
# $FreeBSD$
PORTNAME= gchemutils
PORTVERSION= 0.14.7
PORTREVISION= 2
CATEGORIES= science
MASTER_SITES= ${MASTER_SITE_SAVANNAH}
MASTER_SITE_SUBDIR= ${PORTNAME}/${PORTVERSION:R}
DISTNAME= gnome-chemistry-utils-${PORTVERSION}
MAINTAINER= kwm@FreeBSD.org
COMMENT= C++ classes and Gtk3 widgets related to chemistry
BUILD_DEPENDS= ${LOCALBASE}/libdata/pkgconfig/bodr.pc:${PORTSDIR}/science/bodr \
${LOCALBASE}/libdata/pkgconfig/chemical-mime-data.pc:${PORTSDIR}/science/chemical-mime-data
LIB_DEPENDS= libgtkglext-x11-1.0.so:${PORTSDIR}/x11-toolkits/gtkglext \
libopenbabel.so:${PORTSDIR}/science/openbabel \
libgoffice-0.10.so:${PORTSDIR}/devel/goffice010
RUN_DEPENDS= ${LOCALBASE}/libdata/pkgconfig/bodr.pc:${PORTSDIR}/science/bodr \
${LOCALBASE}/libdata/pkgconfig/chemical-mime-data.pc:${PORTSDIR}/science/chemical-mime-data
PORTSCOUT= limitw:1,even
USE_XORG= x11
USE_GNOME= gnomedocutils gtk30 intlhack libgsf libxml2
USES= desktop-file-utils gettext gmake libtool:keepla pathfix \
pkgconfig shared-mime-info tar:xz
USE_LDCONFIG= yes
GNU_CONFIGURE= yes
CPPFLAGS+= -I${LOCALBASE}/include
LDFLAGS+= -L${LOCALBASE}/lib
CONFIGURE_ARGS= --with-omf-dir=${PREFIX}/share/omf
INSTALLS_ICONS= yes
INSTALLS_OMF= yes
GLIB_SCHEMAS= org.gnome.gchemutils.crystal.gschema.xml \
org.gnome.gchemutils.gschema.xml \
org.gnome.gchemutils.paint.gschema.xml \
org.gnome.gchemutils.paint.plugins.arrows.gschema.xml
VER= ${PORTVERSION:R}
PLIST_SUB= VER=${VER} GOFFICE=0.10 VERSION=${PORTVERSION}
OPTIONS_DEFINE= GNUMERIC XUL
OPTIONS_SUB= yes
GNUMERIC_DESC= Build gnumeric plugin
XUL_DESC= Build browser plugin (requires libxul)
XUL_USES= gecko
XUL_CONFIGURE_ON=--enable-mozilla-plugin \
--with-mozilla-libdir=${PREFIX}/lib/xulrunner
XUL_CONFIGURE_OFF=--disable-mozilla-plugin
.include <bsd.port.options.mk>
.if ${PORT_OPTIONS:MGNUMERIC} || exists(${LOCALBASE}/lib/libspreadsheet.so)
LIB_DEPENDS+= libspreadsheet.so:${PORTSDIR}/math/gnumeric
PLIST_SUB+= GNUMERIC=""
.else
PLIST_SUB+= GNUMERIC="@comment "
.endif
post-patch:
@${REINPLACE_CMD} -e 's|-ldl||g' ${WRKSRC}/libs/gcp/Makefile.in
post-install:
@${STRIP_CMD} ${STAGEDIR}${PREFIX}/lib/*.so.*
@${STRIP_CMD} ${STAGEDIR}${PREFIX}/lib/*/*/*/*/*.so
.include <bsd.port.mk>