From owner-svn-ports-head@FreeBSD.ORG Sun Feb 16 15:40:35 2014 Return-Path: Delivered-To: svn-ports-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 4E6B6F5A; Sun, 16 Feb 2014 15:40:35 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id 38C76174E; Sun, 16 Feb 2014 15:40:35 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.8/8.14.8) with ESMTP id s1GFeZxP099264; Sun, 16 Feb 2014 15:40:35 GMT (envelope-from kwm@svn.freebsd.org) Received: (from kwm@localhost) by svn.freebsd.org (8.14.8/8.14.8/Submit) id s1GFeYxs099262; Sun, 16 Feb 2014 15:40:34 GMT (envelope-from kwm@svn.freebsd.org) Message-Id: <201402161540.s1GFeYxs099262@svn.freebsd.org> From: Koop Mast Date: Sun, 16 Feb 2014 15:40:34 +0000 (UTC) To: ports-committers@freebsd.org, svn-ports-all@freebsd.org, svn-ports-head@freebsd.org Subject: svn commit: r344586 - in head/devel/glib20: . files X-SVN-Group: ports-head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-ports-head@freebsd.org X-Mailman-Version: 2.1.17 Precedence: list List-Id: SVN commit messages for the ports tree for head List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 16 Feb 2014 15:40:35 -0000 Author: kwm Date: Sun Feb 16 15:40:34 2014 New Revision: 344586 URL: http://svnweb.freebsd.org/changeset/ports/344586 QAT: https://qat.redports.org/buildarchive/r344586/ Log: Add patch from upstream to fix crasher in open-vm-tools [1] Add back depend on libiconv. This is needed because our base iconv doesn't do utf-8 -> wchar_t apparently. [2] wchar_t is used by glibmm. While here: Use new lib_depend syntax, strip libraries, stagify [3] Submitted by: swills@ [1] mandree@ [2] Discussion at: http://lists.freebsd.org/pipermail/freebsd-ports/2014-February/089603.html [2] Obtained from: gnome devel-repo [3] Added: head/devel/glib20/files/patch-glib_gmain.c (contents, props changed) Modified: head/devel/glib20/Makefile Modified: head/devel/glib20/Makefile ============================================================================== --- head/devel/glib20/Makefile Sun Feb 16 15:25:59 2014 (r344585) +++ head/devel/glib20/Makefile Sun Feb 16 15:40:34 2014 (r344586) @@ -4,7 +4,7 @@ PORTNAME= glib PORTVERSION= 2.36.3 -PORTREVISION= 1 +PORTREVISION= 2 CATEGORIES= devel MASTER_SITES= GNOME DIST_SUBDIR= gnome2 @@ -19,12 +19,14 @@ PORTSCOUT= limitw:1,even .if !defined(REFERENCE_PORT) -LIB_DEPENDS+= pcre:${PORTSDIR}/devel/pcre \ - ffi:${PORTSDIR}/devel/libffi +LIB_DEPENDS+= libpcre.so:${PORTSDIR}/devel/pcre \ + libffi.so:${PORTSDIR}/devel/libffi USE_AUTOTOOLS= libtool USE_LDCONFIG= yes -USES= gettext gmake iconv pathfix pkgconfig shebangfix perl5 +# iconv:wchar_t - our iconv in base doesn't support utf-8 -> wchar_t (boooo) +# (wchar_t is used by glibmm, rawtherapee triggered this) +USES= gettext gmake iconv:wchar_t pathfix pkgconfig shebangfix perl5 USE_GNOME= ltverhack USE_PYTHON= yes CONFIGURE_ARGS= --enable-static \ @@ -35,13 +37,13 @@ CONFIGURE_ARGS= --enable-static \ CONFIGURE_ENV= ac_cv_header_sys_inotify_h= CPPFLAGS+= -I${LOCALBASE}/include LDFLAGS+= -L${LOCALBASE}/lib +INSTALL_TARGET= install-strip SHEBANG_FILES= */*.pl glib/gen-iswide-table.py OPTIONS_DEFINE= COLLATION_FIX DEBUG COLLATION_FIX_DESC= fix string collation -NO_STAGE= yes .include # doesn't build yet @@ -74,7 +76,7 @@ GLIB_ARCH= ${ARCH} CONFIGURE_TARGET=${GLIB_ARCH}-portbld-freebsd${OSREL} .if ${PORT_OPTIONS:MCOLLATION_FIX} -LIB_DEPENDS+= icui18n:${PORTSDIR}/devel/icu +LIB_DEPENDS+= libicui18n.so:${PORTSDIR}/devel/icu EXTRA_PATCHES+= ${FILESDIR}/extra-patch-glib_Makefile.in \ ${FILESDIR}/extra-patch-glib_gunicollate.c # Disable it until someone can figure why it causes net-im/pidgin crashed. @@ -101,8 +103,7 @@ post-patch: s|#define HAVE_SYS_INOTIFY_H 1||' ${WRKSRC}/configure post-install: - @${MKDIR} ${PREFIX}/share/GConf/gsettings - -${PREFIX}/bin/gio-querymodules ${PREFIX}/lib/gio/modules + @${MKDIR} ${STAGEDIR}${PREFIX}/share/GConf/gsettings .include Added: head/devel/glib20/files/patch-glib_gmain.c ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/devel/glib20/files/patch-glib_gmain.c Sun Feb 16 15:40:34 2014 (r344586) @@ -0,0 +1,38 @@ +From 0513c855cba69b96e4c9d2200719249a8a0c586e Mon Sep 17 00:00:00 2001 +From: Dan Winship +Date: Wed, 10 Apr 2013 11:39:12 -0400 +Subject: [PATCH] gmain: fix double-unlock in g_main_context_unref() + +When unreffing a context with sources still attached, it would end up +unlocking an already-unlocked context, causing crashes on platforms +that (unlike Linux) actually check for that. + +https://bugzilla.gnome.org/show_bug.cgi?id=697595 +--- + glib/gmain.c | 6 +++++- + 1 file changed, 5 insertions(+), 1 deletion(-) + +diff --git a/glib/gmain.c b/glib/gmain.c +index 68a7f8e..d6037ba 100644 +--- glib/gmain.c ++++ glib/gmain.c +@@ -520,12 +520,16 @@ g_main_context_unref (GMainContext *context) + main_context_list = g_slist_remove (main_context_list, context); + G_UNLOCK (main_context_list); + ++ /* g_source_iter_next() assumes the context is locked. */ ++ LOCK_CONTEXT (context); + g_source_iter_init (&iter, context, TRUE); + while (g_source_iter_next (&iter, &source)) + { + source->context = NULL; +- g_source_destroy_internal (source, context, FALSE); ++ g_source_destroy_internal (source, context, TRUE); + } ++ UNLOCK_CONTEXT (context); ++ + for (sl_iter = context->source_lists; sl_iter; sl_iter = sl_iter->next) + { + list = sl_iter->data; +-- +1.8.1.4