PORTNAME?= libpurple PORTVERSION= 2.14.13 PORTREVISION?= 1 CATEGORIES?= net-im MASTER_SITES= SF/pidgin/Pidgin/${PORTVERSION} DISTNAME= pidgin-${PORTVERSION} MAINTAINER?= marcus@FreeBSD.org COMMENT?= Backend library for the Pidgin multi-protocol messaging client WWW= https://www.pidgin.im/ LICENSE= GPLv3 USES+= cpe gettext gmake gnome libtool localbase pathfix pkgconfig \ tar:bzip2 USE_GNOME?= gnomeprefix intltool glib20 libxml2 GNU_CONFIGURE= yes CONFIGURE_ARGS?=--disable-gtkui \ --disable-consoleui \ --with-dynamic-prpls=${PRPL_MODULES:S/,$//} \ --enable-static \ --disable-nm \ --with-system-ssl-certs=/usr/share/certs/trusted \ --disable-schemas-install INSTALL_TARGET= install-strip .if !defined(PIDGIN_SLAVE) # Pidgin slave ports that require the following functionality, must explicitly # set these macros themselves. USES+= iconv shebangfix USE_LDCONFIG= yes SHEBANG_FILES= libpurple/purple-remote \ libpurple/purple-url-handler .if defined(PACKAGE_BUILDING) WITH_GNOME= yes .endif .endif PRPL_MODULES= CPE_VENDOR= pidgin OPTIONS_DEFINE= DBUS SASL GSTREAMER VV IDN PERL TCLTK OPTIONS_GROUP= PROTOCOLS OPTIONS_RADIO= TLS OPTIONS_RADIO_TLS= NSS GNUTLS OPTIONS_GROUP_PROTOCOLS=BONJOUR GG SAMETIME SILC IRC JABBER \ NOVELL QQ SIMPLE ZEPHYR OPTIONS_DEFAULT= BONJOUR DBUS NSS GSTREAMER VV IDN GG IRC JABBER \ NOVELL QQ SASL SIMPLE ZEPHYR BONJOUR_DESC= mDNS support and Bonjour protocol GNUTLS_DESC= Use GNUTLS for encryption support NSS_DESC= Use Mozilla NSS for encryption support SASL_DESC= Cyrus SASL support (for jabberd) GSTREAMER_DESC= Use GStreamer for playing sounds VV_DESC= Video and voice support SAMETIME_DESC= The Lotus Sametime chat protocol SILC_DESC= The Secure Internet Live Conferencing protocol GG_DESC= The Gadu-Gadu chat protocol IRC_DESC= The Internet Relay Chat protocol JABBER_DESC= The Jabber/XMPP/Google Talk protocol NOVELL_DESC= The Novell GroupWise chat protocol QQ_DESC= The Tencent QQ chat protocol SIMPLE_DESC= The SIMPLE chat protocol ZEPHYR_DESC= The Zephyr chat protocol PLIST_SUB+= SHLIB_VERSION=${PORTVERSION:R:E}.${PORTVERSION:E} .if defined(WITH_GTKUI) OPTIONS_DEFINE+= GTKSPELL CAP OPTIONS_DEFAULT+= GTKSPELL CAP GTKSPELL_DESC= Spell checking support CAP_DESC= Contact Availability Prediction plugin PLIST_SUB+= GTKUI="" .else PLIST_SUB+= GTKUI="@comment not installed: " .endif .if defined(WITH_CONSOLEUI) USES+= ncurses CONFIGURE_ARGS+=--with-ncurses-headers=${NCURSESINC} PLIST_SUB+= CONSOLEUI="" .else PLIST_SUB+= CONSOLEUI="@comment not installed: " .endif CONFIGURE_ARGS+=--disable-doxygen .include .if ${OPSYS} == FreeBSD CFLAGS+= -Wno-error=incompatible-function-pointer-types .endif .if ${PORT_OPTIONS:MTCLTK} USES+= tk CFLAGS+= -I${TK_INCLUDEDIR} -I${TCL_INCLUDEDIR} CONFIGURE_ARGS+= --with-tclconfig=${TCL_LIBDIR} \ --with-tkconfig=${TK_LIBDIR} PLIST_SUB+= TCL:="" .else CONFIGURE_ARGS+= --disable-tcl PLIST_SUB+= TCL:="@comment not installed: " .endif .if ${PORT_OPTIONS:MPERL} USES+= perl5 CONFIGURE_ARGS+= --with-perl-lib=site PLIST_SUB+= PERL:="" .if !defined(PIDGIN_SLAVE) || defined(WITH_GTKUI) PLIST_SUB+= PERLMAN:="" .else PLIST_SUB+= PERLMAN:="@comment not installed: " .endif .else CONFIGURE_ARGS+= --disable-perl PLIST_SUB+= PERL:="@comment not installed: " \ PERLMAN:="@comment not installed: " .endif .if defined(WITH_GTKUI) USE_GNOME+= evolutiondataserver3 PLIST_SUB+= EVO="" CONFIGURE_ARGS+= --enable-gevolution .else CONFIGURE_ARGS+= --disable-gevolution PLIST_SUB+= EVO="@comment not installed: " .endif .if ${PORT_OPTIONS:MGSTREAMER} USES+= gstreamer USE_GSTREAMER+=core good .else CONFIGURE_ARGS+=--disable-gstreamer .endif .if ${PORT_OPTIONS:MVV} && ${PORT_OPTIONS:MGSTREAMER} LIB_DEPENDS+= libfarstream-0.2.so:net-im/farstream USE_GSTREAMER+=v4l2 PLIST_SUB+= VV="" .else CONFIGURE_ARGS+=--disable-vv PLIST_SUB+= VV="@comment " .endif .if ${PORT_OPTIONS:MIDN} LIB_DEPENDS+= libidn.so:dns/libidn .else CONFIGURE_ARGS+=--disable-idn .endif .if ${PORT_OPTIONS:MCAP} LIB_DEPENDS+= libsqlite3.so:databases/sqlite3 CONFIGURE_ARGS+=--enable-cap PLIST_SUB+= CAP="" .else CONFIGURE_ARGS+=--disable-cap PLIST_SUB+= CAP="@comment not installed: " .endif .if ${PORT_OPTIONS:MGNUTLS} LIB_DEPENDS+= libgnutls.so:security/gnutls CONFIGURE_ARGS+= --enable-gnutls=yes PLIST_SUB+= GNUTLS="" .else CONFIGURE_ARGS+= --enable-gnutls=no PLIST_SUB+= GNUTLS="@comment " .endif .if ${PORT_OPTIONS:MNSS} LIB_DEPENDS+= libnss3.so:security/nss CONFIGURE_ARGS+= --enable-nss=yes \ --with-nspr-includes=${LOCALBASE}/include/nspr \ --with-nspr-libs=${LOCALBASE}/lib \ --with-nss-includes=${LOCALBASE}/include/nss \ --with-nss-libs=${LOCALBASE}/lib PLIST_SUB+= NSS="" .else CONFIGURE_ARGS+= --enable-nss=no PLIST_SUB+= NSS="@comment " .endif .if ${PORT_OPTIONS:MSASL} LIB_DEPENDS+= libsasl2.so:security/cyrus-sasl2 CONFIGURE_ARGS+= --enable-cyrus-sasl .else CONFIGURE_ARGS+= --disable-cyrus-sasl .endif .if ${PORT_OPTIONS:MBONJOUR} LIB_DEPENDS+= libavahi-client.so:net/avahi-app PLIST_SUB+= BONJOUR="" PRPL_MODULES:= bonjour,${PRPL_MODULES} .else CONFIGURE_ARGS+=--disable-avahi PLIST_SUB+= BONJOUR="@comment not installed: " .endif .if ${PORT_OPTIONS:MGTKSPELL} LIB_DEPENDS+= libgtkspell.so:textproc/gtkspell .else CONFIGURE_ARGS+= --disable-gtkspell .endif .if ${PORT_OPTIONS:MDBUS} USES+= python LIB_DEPENDS+= libdbus-glib-1.so:devel/dbus-glib .if !defined(PIDGIN_SLAVE) RUN_DEPENDS+= ${PYTHON_PKGNAMEPREFIX}dbus>=0:devel/py-dbus@${PY_FLAVOR} .endif CONFIGURE_ARGS+= --enable-dbus --with-python3=${PYTHON_CMD} PLIST_SUB+= DBUS="" .else CONFIGURE_ARGS+= --disable-dbus PLIST_SUB+= DBUS="@comment not installed: " .endif .if ${PORT_OPTIONS:MSAMETIME} LIB_DEPENDS+= libmeanwhile.so:net-im/meanwhile PLIST_SUB+= SAMETIME="" PRPL_MODULES:= sametime,${PRPL_MODULES} .else PLIST_SUB+= SAMETIME="@comment not installed: " CONFIGURE_ARGS+=--disable-meanwhile .endif .if ${PORT_OPTIONS:MSILC} LIB_DEPENDS+= libsilcclient.so:devel/silc-toolkit CONFIGURE_ARGS+= --with-silc-includes=${LOCALBASE}/include/silc \ --with-silc-libs=${LOCALBASE}/lib PLIST_SUB+= SILC="" PRPL_MODULES:= silc,${PRPL_MODULES} .else PLIST_SUB+= SILC="@comment not installed: " .endif .if ${PORT_OPTIONS:MGG} PLIST_SUB+= GG="" PRPL_MODULES:= gg,${PRPL_MODULES} .else PLIST_SUB+= GG="@comment not installed: " .endif .if ${PORT_OPTIONS:MIRC} PLIST_SUB+= IRC="" PRPL_MODULES:= irc,${PRPL_MODULES} .else PLIST_SUB+= IRC="@comment not installed: " .endif .if ${PORT_OPTIONS:MJABBER} PLIST_SUB+= JABBER="" PRPL_MODULES:= jabber,${PRPL_MODULES} .else PLIST_SUB+= JABBER="@comment not installed: " .endif .if ${PORT_OPTIONS:MNOVELL} PLIST_SUB+= NOVELL="" PRPL_MODULES:= novell,${PRPL_MODULES} .else PLIST_SUB+= NOVELL="@comment not installed: " .endif #.if ${PORT_OPTIONS:MQQ} #PLIST_SUB+= QQ="" #PRPL_MODULES:= qq,${PRPL_MODULES} #.else #PLIST_SUB+= QQ="@comment not installed: " #.endif .if ${PORT_OPTIONS:MSIMPLE} PLIST_SUB+= SIMPLE="" PRPL_MODULES:= simple,${PRPL_MODULES} .else PLIST_SUB+= SIMPLE="@comment not installed: " .endif .if ${PORT_OPTIONS:MZEPHYR} PLIST_SUB+= ZEPHYR="" PRPL_MODULES:= zephyr,${PRPL_MODULES} .else PLIST_SUB+= ZEPHYR="@comment not installed: " .endif pre-everything:: .if ! ${PORT_OPTIONS:MGNUTLS} && ! ${PORT_OPTIONS:MNSS} @${ECHO_MSG} "WARNING: In order to use MSN, you must enable the GNUTLS and/or NSS options." .endif post-patch: @${REINPLACE_CMD} \ -e 's|-lpthread $$LIBDL|-lpthread ${ICONV_LIB}|' \ ${WRKSRC}/configure .if defined(PIDGIN_SLAVE) @${FIND} ${BUILD_WRKSRC} -name Makefile.in | ${XARGS} ${REINPLACE_CMD} -e \ 's|$$(top_builddir)/libpurple/libpurple.la|-lpurple|' .endif .if !defined(PIDGIN_SLAVE) && ${PORT_OPTIONS:MPERL} post-install: @${SED} -i '' -e 's|^${STAGEDIR}||g' \ ${STAGEDIR}${PREFIX}/lib/purple-2/perl/auto/Purple/.packlist .endif .include