diff options
author | kwm <kwm@df743ca5-7f9a-e211-a948-0013205c9059> | 2011-01-24 00:32:34 +0800 |
---|---|---|
committer | kwm <kwm@df743ca5-7f9a-e211-a948-0013205c9059> | 2011-01-24 00:32:34 +0800 |
commit | e1be574e3b93d80406c52c2082e5c99ade784f3b (patch) | |
tree | 128d25d444bc0b83fa0f1ad6de028ed1f6d1a322 | |
parent | 9df9980eda027ea4460744fac74177cd606b74fd (diff) | |
download | marcuscom-ports-e1be574e3b93d80406c52c2082e5c99ade784f3b.tar marcuscom-ports-e1be574e3b93d80406c52c2082e5c99ade784f3b.tar.gz marcuscom-ports-e1be574e3b93d80406c52c2082e5c99ade784f3b.tar.bz2 marcuscom-ports-e1be574e3b93d80406c52c2082e5c99ade784f3b.tar.lz marcuscom-ports-e1be574e3b93d80406c52c2082e5c99ade784f3b.tar.xz marcuscom-ports-e1be574e3b93d80406c52c2082e5c99ade784f3b.tar.zst marcuscom-ports-e1be574e3b93d80406c52c2082e5c99ade784f3b.zip |
Update to 0.11.5.
git-svn-id: svn://creme-brulee.marcuscom.com/ports/trunk@15074 df743ca5-7f9a-e211-a948-0013205c9059
-rw-r--r-- | net-im/telepathy-gabble/Makefile | 47 | ||||
-rw-r--r-- | net-im/telepathy-gabble/distinfo | 2 | ||||
-rw-r--r-- | net-im/telepathy-gabble/files/patch-Makefile.in | 11 | ||||
-rw-r--r-- | net-im/telepathy-gabble/files/patch-lib_gibber_gibber-unix-transport.c | 181 | ||||
-rw-r--r-- | net-im/telepathy-gabble/pkg-descr | 9 | ||||
-rw-r--r-- | net-im/telepathy-gabble/pkg-plist | 14 |
6 files changed, 264 insertions, 0 deletions
diff --git a/net-im/telepathy-gabble/Makefile b/net-im/telepathy-gabble/Makefile new file mode 100644 index 000000000..22cde10ea --- /dev/null +++ b/net-im/telepathy-gabble/Makefile @@ -0,0 +1,47 @@ +# New ports collection makefile for: telepathy-gabble +# Date created: Apr 19 2007 +# Whom: Florent Thoumie <flz@FreeBSD.org> +# +# $FreeBSD$ +# $MCom: ports/net-im/telepathy-gabble/Makefile,v 1.10 2010/11/14 16:18:09 marcus Exp $ + +PORTNAME= telepathy-gabble +PORTVERSION= 0.11.5 +CATEGORIES= net-im +MASTER_SITES= http://telepathy.freedesktop.org/releases/${PORTNAME}/ + +MAINTAINER= gnome@FreeBSD.org +COMMENT= Jabber Connection Manager for Telepathy Framework + +LIB_PC_DEPENDS= dbus-glib-1.pc:${PORTSDIR}/devel/dbus-glib \ + nice.pc:${PORTSDIR}/net-im/libnice \ + uuid.pc:${PORTSDIR}/misc/e2fsprogs-libuuid \ + telepathy-glib.pc:${PORTSDIR}/net-im/telepathy-glib \ + loudmouth-1.0.pc:${PORTSDIR}/net-im/loudmouth + +BUILD_DEPENDS= xsltproc:${PORTSDIR}/textproc/libxslt \ + ${LOCALBASE}/share/certs/ca-root-nss.crt:${PORTSDIR}/security/ca_root_nss + +BUILD_DEPENDS+= ${LIB_PC_DEPENDS:C|^|${LOCALBASE}/libdata/pkgconfig/|g} +LIB_DEPENDS= soup-2.4.1:${PORTSDIR}/devel/libsoup \ + sqlite3.8:${PORTSDIR}/databases/sqlite3 +RUN_DEPENDS+= ${LIB_PC_DEPENDS:C|^|${LOCALBASE}/libdata/pkgconfig/|g} \ + ${LOCALBASE}/share/certs/ca-root-nss.crt:${PORTSDIR}/security/ca_root_nss + +GNU_CONFIGURE= yes +LDFLAGS= ${PTHREAD_LIBS} +USE_GMAKE= yes +USE_GNOME= gnomehack pkgconfig glib20 +USE_OPENSSL= yes +USE_PYTHON_BUILD= yes +CONFIGURE_ARGS= --with-ca-certificates=${LOCALBASE}/share/certs/ca-root-nss.crt + +MAN8= telepathy-gabble.8 + +.include <bsd.port.pre.mk> + +.if defined(WITH_OPENSSL_BASE) +CONFIGURE_ENV+= OPENSSL_LIBS="-L/usr/lib -ssl -crypto" OPENSSL_CFLAGS="-I/usr/include" +.endif + +.include <bsd.port.post.mk> diff --git a/net-im/telepathy-gabble/distinfo b/net-im/telepathy-gabble/distinfo new file mode 100644 index 000000000..16954767e --- /dev/null +++ b/net-im/telepathy-gabble/distinfo @@ -0,0 +1,2 @@ +SHA256 (telepathy-gabble-0.11.5.tar.gz) = 8c9796800c41b569ade84f79cef312e1c4cae654f2318a3b03d733f580b27019 +SIZE (telepathy-gabble-0.11.5.tar.gz) = 3008898 diff --git a/net-im/telepathy-gabble/files/patch-Makefile.in b/net-im/telepathy-gabble/files/patch-Makefile.in new file mode 100644 index 000000000..6e8234229 --- /dev/null +++ b/net-im/telepathy-gabble/files/patch-Makefile.in @@ -0,0 +1,11 @@ +--- Makefile.in.orig 2010-09-18 17:29:38.000000000 +0000 ++++ Makefile.in 2010-09-18 17:29:53.000000000 +0000 +@@ -267,7 +267,7 @@ + top_builddir = @top_builddir@ + top_srcdir = @top_srcdir@ + ACLOCAL_AMFLAGS = -I m4 +-SUBDIRS = docs tools extensions lib src data m4 plugins tests gabble ++SUBDIRS = docs tools extensions lib src data m4 plugins gabble + DISTCHECK_CONFIGURE_FLAGS = --disable-debug --enable-gtk-doc + CLEANFILES = FIXME.out + LCOV_CHECK_ARGS = CHECK_TWISTED_SLEEP=6 diff --git a/net-im/telepathy-gabble/files/patch-lib_gibber_gibber-unix-transport.c b/net-im/telepathy-gabble/files/patch-lib_gibber_gibber-unix-transport.c new file mode 100644 index 000000000..c055de832 --- /dev/null +++ b/net-im/telepathy-gabble/files/patch-lib_gibber_gibber-unix-transport.c @@ -0,0 +1,181 @@ +--- lib/gibber/gibber-unix-transport.c.orig 2010-06-09 16:09:58.000000000 +0000 ++++ lib/gibber/gibber-unix-transport.c 2010-09-18 21:24:44.000000000 +0000 +@@ -375,6 +375,167 @@ gibber_unix_transport_recv_credentials ( + return TRUE; + } + ++/* End Linux part */ ++#elif defined(__FreeBSD__) ++ ++gboolean ++gibber_unix_transport_send_credentials (GibberUnixTransport *transport, ++ const guint8 *data, ++ gsize size) ++{ ++ int fd, ret; ++ struct msghdr msg; ++ struct iovec iov; ++ union { ++ struct cmsghdr hdr; ++ char cred[CMSG_SPACE (sizeof (struct cmsgcred))]; ++ } cmsg; ++ ++ DEBUG ("send credentials"); ++ fd = GIBBER_FD_TRANSPORT (transport)->fd; ++ ++ /* Set the message payload */ ++ memset (&iov, 0, sizeof (iov)); ++ iov.iov_base = (void *) data; ++ iov.iov_len = size; ++ ++ memset (&msg, 0, sizeof (msg)); ++ msg.msg_iov = &iov; ++ msg.msg_iovlen = 1; ++ msg.msg_control = (caddr_t) &cmsg; ++ msg.msg_controllen = CMSG_SPACE (sizeof (struct cmsgcred)); ++ memset (&cmsg, 0, sizeof (cmsg)); ++ cmsg.hdr.cmsg_len = CMSG_LEN (sizeof (struct cmsgcred)); ++ cmsg.hdr.cmsg_level = SOL_SOCKET; ++ cmsg.hdr.cmsg_type = SCM_CREDS; ++ ++ ret = sendmsg (fd, &msg, 0); ++ if (ret == -1) ++ { ++ DEBUG ("sendmsg failed: %s", g_strerror (errno)); ++ return FALSE; ++ } ++ ++ return TRUE; ++} ++ ++gboolean ++gibber_unix_transport_recv_credentials (GibberUnixTransport *self, ++ GibberUnixTransportRecvCredentialsCb callback, ++ gpointer user_data) ++{ ++ GibberUnixTransportPrivate *priv = GIBBER_UNIX_TRANSPORT_GET_PRIVATE (self); ++ ++ if (priv->recv_creds_cb != NULL) ++ { ++ DEBUG ("already waiting for credentials"); ++ return FALSE; ++ } ++ ++ priv->recv_creds_cb = callback; ++ priv->recv_creds_data = user_data; ++ return TRUE; ++} ++ ++gboolean ++gibber_unix_transport_supports_credentials (void) ++{ ++ return TRUE; ++} ++ ++#define BUFSIZE 1024 ++ ++static GibberFdIOResult ++gibber_unix_transport_read (GibberFdTransport *transport, ++ GIOChannel *channel, ++ GError **error) ++{ ++ GibberUnixTransport *self = GIBBER_UNIX_TRANSPORT (transport); ++ GibberUnixTransportPrivate *priv = GIBBER_UNIX_TRANSPORT_GET_PRIVATE (self); ++ int fd; ++ guint8 buffer[BUFSIZE]; ++ ssize_t bytes_read; ++ GibberBuffer buf; ++ struct iovec iov; ++ struct msghdr msg; ++ struct cmsgcred *cred; ++ union { ++ struct cmsghdr hdr; ++ char cred[CMSG_SPACE (sizeof *cred)]; ++ } cmsg; ++ int opt; ++ ++ if (priv->recv_creds_cb == NULL) ++ return gibber_fd_transport_read (transport, channel, error); ++ ++ /* We are waiting for credentials */ ++ fd = transport->fd; ++ ++ memset (buffer, 0, sizeof (buffer)); ++ memset (&iov, 0, sizeof (iov)); ++ iov.iov_base = buffer; ++ iov.iov_len = sizeof (buffer); ++ ++ memset (&msg, 0, sizeof (msg)); ++ msg.msg_iov = &iov; ++ msg.msg_iovlen = 1; ++ msg.msg_control = (caddr_t) &cmsg; ++ msg.msg_controllen = CMSG_SPACE (sizeof *cred); ++ ++ bytes_read = recvmsg (fd, &msg, 0); ++ ++ if (bytes_read == -1) ++ { ++ GError *err = NULL; ++ ++ g_set_error_literal (&err, G_IO_CHANNEL_ERROR, ++ g_io_channel_error_from_errno (errno), "recvmsg failed"); ++ ++ priv->recv_creds_cb (self, NULL, NULL, err, priv->recv_creds_data); ++ g_propagate_error (error, err); ++ ++ priv->recv_creds_cb = NULL; ++ priv->recv_creds_data = NULL; ++ return GIBBER_FD_IO_RESULT_ERROR; ++ } ++ ++ buf.data = buffer; ++ buf.length = bytes_read; ++ ++ /* extract the credentials */ ++ if (cmsg.hdr.cmsg_len < CMSG_LEN (sizeof *cred) || ++ cmsg.hdr.cmsg_type != SCM_CREDS) ++ { ++ GError *err = NULL; ++ ++ DEBUG ("Message doesn't contain credentials"); ++ ++ g_set_error_literal (&err, GIBBER_UNIX_TRANSPORT_ERROR, ++ GIBBER_UNIX_TRANSPORT_ERROR_NO_CREDENTIALS, ++ "no credentials received"); ++ ++ priv->recv_creds_cb (self, &buf, NULL, err, priv->recv_creds_data); ++ g_error_free (err); ++ } ++ else ++ { ++ GibberCredentials credentials; ++ ++ cred = (struct cmsgcred *) CMSG_DATA (&cmsg.hdr); ++ credentials.pid = cred->cmcred_pid; ++ credentials.uid = cred->cmcred_uid; ++ credentials.gid = cred->cmcred_gid; ++ ++ priv->recv_creds_cb (self, &buf, &credentials, NULL, ++ priv->recv_creds_data); ++ } ++ ++ priv->recv_creds_cb = NULL; ++ priv->recv_creds_data = NULL; ++ return GIBBER_FD_IO_RESULT_SUCCESS; ++} ++ ++/* End FreeBSD part */ + #else /* OSs where we have no implementation */ + + gboolean +@@ -393,9 +554,7 @@ gibber_unix_transport_recv_credentials ( + } + + gboolean +-gibber_unix_transport_send_credentials (GibberUnixTransport *transport, +- const guint8 *data, +- gsize size) ++gibber_unix_transport_send_credentials (void) + { + DEBUG ("stub implementation, failing"); + return FALSE; diff --git a/net-im/telepathy-gabble/pkg-descr b/net-im/telepathy-gabble/pkg-descr new file mode 100644 index 000000000..730ea4f1c --- /dev/null +++ b/net-im/telepathy-gabble/pkg-descr @@ -0,0 +1,9 @@ +Gabble is a Jabber/XMPP connection manager for the Telepathy framework, +currently supporting single user chats, multi user chats and voice/video +calls. Install this package to use Telepathy instant messaging clients +with Jabber/XMPP servers, including Google Talk. + +WWW: http://telepathy.freedesktop.org/ + +- Florent Thoumie +flz@FreeBSD.org diff --git a/net-im/telepathy-gabble/pkg-plist b/net-im/telepathy-gabble/pkg-plist new file mode 100644 index 000000000..2bd653be6 --- /dev/null +++ b/net-im/telepathy-gabble/pkg-plist @@ -0,0 +1,14 @@ +libexec/telepathy-gabble +lib/telepathy/gabble-0/gateways.la +lib/telepathy/gabble-0/gateways.so +share/dbus-1/services/org.freedesktop.Telepathy.ConnectionManager.gabble.service +%%DOCSDIR%%/muc-bytestream.html +%%DOCSDIR%%/olpc.html +%%DOCSDIR%%/si-multiple.html +%%DOCSDIR%%/tubes.html +share/telepathy/managers/gabble.manager +@dirrmtry share/telepathy/managers +@dirrmtry share/telepathy +@dirrm %%DOCSDIR%% +@dirrm lib/telepathy/gabble-0 +@dirrmtry lib/telepathy |