We last updated net/loudmouth in 2008. Upstream is gone, and the following depend on it:
o net/mcabber o net/irssi-xmpp o net/freetalk o lang/io (strangly) I know that at least two of those are pretty common chat clients. Because loudmouth is a network-exposed XMPP library, this is probably a dangerous situation. The best solution is likely to switch to a (somewhat) maintained fork from the mcabber people: https://github.com/mcabber/loudmouth Below is an initial patch for that. I haven't tested whether it works with its dependencies yet - I thought I'd get a sanity check first. A few things to note: o I have to remove "include $(top_srcdir)/gtk-doc.make" from one of the Makefile.am's or the build fails o Their means of checking for strndup(3) support didn't work, so I just removed their redefinition o I don't entirely know what I'm doing with the autononsense, so there may be an easier way of dealing with it Index: Makefile =================================================================== RCS file: /cvs/ports/net/loudmouth/Makefile,v retrieving revision 1.25 diff -u -p -r1.25 Makefile --- Makefile 21 Apr 2015 18:24:23 -0000 1.25 +++ Makefile 3 Mar 2016 00:09:35 -0000 @@ -2,13 +2,16 @@ COMMENT= lightweight Jabber client library -V= 1.4.3 -DISTNAME= loudmouth-$V -REVISION= 6 +VERSION = 1.5.0 +DISTNAME = loudmouth-${VERSION} + SHARED_LIBS += loudmouth-1 3.0 # .1.0 CATEGORIES= net devel -HOMEPAGE= http://groups.google.com/group/loudmouth-dev/ +GH_ACCOUNT = mcabber +GH_PROJECT = loudmouth + +DISTFILES = ${VERSION}${EXTRACT_SUFX} # LGPLv2.1 PERMIT_PACKAGE_CDROM= Yes @@ -17,18 +20,33 @@ WANTLIB += crypto glib-2.0 idn>=16 pcre MODULES= devel/gettext -MASTER_SITES= ${MASTER_SITE_GNOME:=sources/loudmouth/${V:C/^([0-9]+\.[0-9]+).*/\1/}/} -EXTRACT_SUFX= .tar.bz2 - LIB_DEPENDS= devel/glib2 \ devel/libidn -BUILD_DEPENDS= ${TEST_DEPENDS} -TEST_DEPENDS= devel/check -CONFIGURE_STYLE= gnu +BUILD_DEPENDS = ${TEST_DEPENDS} \ + ${MODGNU_AUTOCONF_DEPENDS} \ + ${MODGNU_AUTOMAKE_DEPENDS} \ + devel/libtool + +TEST_DEPENDS = devel/check + +CONFIGURE_STYLE = autoconf automake gnu +AUTOCONF_VERSION = 2.69 +AUTOMAKE_VERSION = 1.15 +# with-compile-warnings=yes prevents it from using -Werror CONFIGURE_ARGS+= ${CONFIGURE_SHARED} \ --disable-mono \ --with-check=${LOCALBASE} \ + --with-compile-warnings=yes \ --with-ssl=openssl + +AUTO_ENV = AUTOMAKE_VERSION=${AUTOMAKE_VERSION} \ + AUTOCONF_VERSION=${AUTOCONF_VERSION} + +post-patch: + cd ${WRKSRC}; ${AUTO_ENV} aclocal + +pre-configure: + cd ${WRKSRC}; libtoolize && ${AUTO_ENV} automake --add-missing --foreign .include <bsd.port.mk> Index: distinfo =================================================================== RCS file: /cvs/ports/net/loudmouth/distinfo,v retrieving revision 1.6 diff -u -p -r1.6 distinfo --- distinfo 18 Jan 2015 03:14:42 -0000 1.6 +++ distinfo 3 Mar 2016 00:09:35 -0000 @@ -1,2 +1,2 @@ -SHA256 (loudmouth-1.4.3.tar.bz2) = lak/XQCbceqBk9mUqhHzEbwzCj7+G3zXTcSPEcf5KeM= -SIZE (loudmouth-1.4.3.tar.bz2) = 366818 +SHA256 (1.5.0.tar.gz) = UUAxemOEUMl3pynexUW1lTjqSy5Rndcj07/aEsonhmU= +SIZE (1.5.0.tar.gz) = 124001 Index: patches/patch-configure =================================================================== RCS file: patches/patch-configure diff -N patches/patch-configure --- patches/patch-configure 18 Nov 2008 11:41:23 -0000 1.3 +++ /dev/null 1 Jan 1970 00:00:00 -0000 @@ -1,19 +0,0 @@ -$OpenBSD: patch-configure,v 1.3 2008/11/18 11:41:23 jasper Exp $ ---- configure.orig Wed Oct 29 21:25:57 2008 -+++ configure Tue Nov 18 12:33:20 2008 -@@ -21423,6 +21423,7 @@ cat >>conftest.$ac_ext <<_ACEOF - - #include <stdio.h> - #include <stdlib.h> -+#include <string.h> - - #include <check.h> - -@@ -21532,6 +21533,7 @@ cat >>conftest.$ac_ext <<_ACEOF - - #include <stdio.h> - #include <stdlib.h> -+#include <string.h> - - #include <check.h> - Index: patches/patch-docs_reference_Makefile_am =================================================================== RCS file: patches/patch-docs_reference_Makefile_am diff -N patches/patch-docs_reference_Makefile_am --- /dev/null 1 Jan 1970 00:00:00 -0000 +++ patches/patch-docs_reference_Makefile_am 3 Mar 2016 00:09:35 -0000 @@ -0,0 +1,13 @@ +$OpenBSD$ +--- docs/reference/Makefile.am.orig Wed Mar 2 14:22:02 2016 ++++ docs/reference/Makefile.am Wed Mar 2 14:22:25 2016 +@@ -80,9 +80,6 @@ GTKDOC_LIBS= \ + $(top_builddir)/loudmouth/libloudmouth.la + + +-# This includes the standard gtk-doc make rules, copied by gtkdocize. +-include $(top_srcdir)/gtk-doc.make +- + # Other files to distribute + # e.g. EXTRA_DIST += version.xml.in + EXTRA_DIST += Index: patches/patch-loudmouth_Makefile_in =================================================================== RCS file: patches/patch-loudmouth_Makefile_in diff -N patches/patch-loudmouth_Makefile_in --- patches/patch-loudmouth_Makefile_in 20 Aug 2008 16:11:11 -0000 1.1 +++ /dev/null 1 Jan 1970 00:00:00 -0000 @@ -1,13 +0,0 @@ -$OpenBSD: patch-loudmouth_Makefile_in,v 1.1 2008/08/20 16:11:11 jasper Exp $ ---- loudmouth/Makefile.in.orig Mon Aug 4 13:37:02 2008 -+++ loudmouth/Makefile.in Mon Aug 4 13:37:12 2008 -@@ -306,8 +306,7 @@ libloudmouthinclude_HEADERS = \ - - libloudmouth_1_la_LIBADD = \ - $(LOUDMOUTH_LIBS) \ -- $(LIBIDN_LIBS) \ -- -lresolv -+ $(LIBIDN_LIBS) - - libloudmouth_1_la_LDFLAGS = \ - -version-info $(LT_CURRENT):$(LT_REVISION):$(LT_AGE) \ Index: patches/patch-loudmouth_asyncns_c =================================================================== RCS file: patches/patch-loudmouth_asyncns_c diff -N patches/patch-loudmouth_asyncns_c --- /dev/null 1 Jan 1970 00:00:00 -0000 +++ patches/patch-loudmouth_asyncns_c 3 Mar 2016 00:09:35 -0000 @@ -0,0 +1,39 @@ +$OpenBSD$ +--- loudmouth/asyncns.c.orig Mon Mar 9 19:05:59 2009 ++++ loudmouth/asyncns.c Wed Mar 2 14:31:49 2016 +@@ -24,6 +24,7 @@ + + /* #undef HAVE_PTHREAD */ + ++#include <sys/resource.h> + #include <assert.h> + #include <fcntl.h> + #include <signal.h> +@@ -176,27 +177,6 @@ typedef struct res_query_response { + int _errno; + int _h_errno; + } res_response_t; +- +-#ifndef HAVE_STRNDUP +- +-static char *strndup(const char *s, size_t l) { +- size_t a; +- char *n; +- +- a = strlen(s); +- if (a > l) +- a = l; +- +- if (!(n = malloc(a+1))) +- return NULL; +- +- memcpy(n, s, a); +- n[a] = 0; +- +- return n; +-} +- +-#endif + + #ifndef HAVE_PTHREAD + Index: patches/patch-loudmouth_lm-error_c =================================================================== RCS file: /cvs/ports/net/loudmouth/patches/patch-loudmouth_lm-error_c,v retrieving revision 1.1 diff -u -p -r1.1 patch-loudmouth_lm-error_c --- patches/patch-loudmouth_lm-error_c 23 Mar 2012 13:28:25 -0000 1.1 +++ patches/patch-loudmouth_lm-error_c 3 Mar 2016 00:09:35 -0000 @@ -2,9 +2,9 @@ $OpenBSD: patch-loudmouth_lm-error_c,v 1 error: #error "Only <glib.h> can be included directly." ---- loudmouth/lm-error.c.orig Sun Mar 18 07:26:55 2012 -+++ loudmouth/lm-error.c Sun Mar 18 07:27:04 2012 -@@ -19,7 +19,7 @@ +--- loudmouth/lm-error.c.orig Mon Mar 9 19:05:59 2009 ++++ loudmouth/lm-error.c Wed Mar 2 14:21:01 2016 +@@ -25,7 +25,7 @@ */ #include <config.h> @@ -12,4 +12,4 @@ error: #error "Only <glib.h> can be incl +#include <glib.h> #include "lm-error.h" - /** + GQuark Index: patches/patch-loudmouth_lm-resolver_c =================================================================== RCS file: patches/patch-loudmouth_lm-resolver_c diff -N patches/patch-loudmouth_lm-resolver_c --- /dev/null 1 Jan 1970 00:00:00 -0000 +++ patches/patch-loudmouth_lm-resolver_c 3 Mar 2016 00:09:35 -0000 @@ -0,0 +1,11 @@ +$OpenBSD$ +--- loudmouth/lm-resolver.c.orig Wed Mar 2 14:37:08 2016 ++++ loudmouth/lm-resolver.c Wed Mar 2 14:37:26 2016 +@@ -27,6 +27,7 @@ + #include <arpa/nameser_compat.h> + #endif + ++#include <netinet/in.h> + #include <arpa/nameser.h> + #include <resolv.h> + Index: patches/patch-loudmouth_lm-ssl-openssl_c =================================================================== RCS file: patches/patch-loudmouth_lm-ssl-openssl_c diff -N patches/patch-loudmouth_lm-ssl-openssl_c --- patches/patch-loudmouth_lm-ssl-openssl_c 19 Jan 2009 10:54:27 -0000 1.1 +++ /dev/null 1 Jan 1970 00:00:00 -0000 @@ -1,18 +0,0 @@ -$OpenBSD: patch-loudmouth_lm-ssl-openssl_c,v 1.1 2009/01/19 10:54:27 jasper Exp $ ---- loudmouth/lm-ssl-openssl.c.orig Mon Jan 19 11:50:51 2009 -+++ loudmouth/lm-ssl-openssl.c Mon Jan 19 11:51:45 2009 -@@ -305,6 +305,14 @@ _lm_ssl_initialize (LmSSL *ssl) - g_warning ("SSL_CTX_new() == NULL"); - abort(); - } -+ /* Set the NO_TICKET option on the context to allow for talk to Google Talk -+ * which apparently seems to be having a problem handling empty session -+ * tickets due to a bug in Java. -+ * -+ * See http://twistedmatrix.com/trac/ticket/3463 and -+ * Loudmouth [#28]. -+ */ -+ SSL_CTX_set_options (ssl->ssl_ctx, SSL_OP_NO_TICKET); - /*if (access("/etc/ssl/cert.pem", R_OK) == 0) - cert_file = "/etc/ssl/cert.pem"; - if (!SSL_CTX_load_verify_locations(ssl->ssl_ctx, Index: patches/patch-tests-Makefile_in =================================================================== RCS file: patches/patch-tests-Makefile_in diff -N patches/patch-tests-Makefile_in --- patches/patch-tests-Makefile_in 20 Aug 2008 16:11:11 -0000 1.2 +++ /dev/null 1 Jan 1970 00:00:00 -0000 @@ -1,21 +0,0 @@ -$OpenBSD: patch-tests-Makefile_in,v 1.2 2008/08/20 16:11:11 jasper Exp $ ---- tests/Makefile.in.orig Mon Aug 4 13:23:35 2008 -+++ tests/Makefile.in Mon Aug 4 13:24:03 2008 -@@ -52,7 +52,7 @@ test_objects_LDADD = $(LDADD) - am_test_parser_OBJECTS = test-parser.$(OBJEXT) - test_parser_OBJECTS = $(am_test_parser_OBJECTS) - test_parser_LDADD = $(LDADD) --DEFAULT_INCLUDES = -I.@am__isrc@ -I$(top_builddir) -+DEFAULT_INCLUDES = -I.@am__isrc@ -I$(top_builddir) -I${TRUEPREFIX}/include - depcomp = $(SHELL) $(top_srcdir)/depcomp - am__depfiles_maybe = depfiles - COMPILE = $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \ -@@ -127,7 +127,7 @@ INSTALL_DATA = @INSTALL_DATA@ - INSTALL_PROGRAM = @INSTALL_PROGRAM@ - INSTALL_SCRIPT = @INSTALL_SCRIPT@ - INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ --LDFLAGS = @LDFLAGS@ -+LDFLAGS = @LDFLAGS@ -lcheck - LIBGNUTLS_CFLAGS = @LIBGNUTLS_CFLAGS@ - LIBGNUTLS_CONFIG = @LIBGNUTLS_CONFIG@ - LIBGNUTLS_LIBS = @LIBGNUTLS_LIBS@