pkgsrc-WIP-changes archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

Copy over devel/glib2 for update.



Module Name:	pkgsrc-wip
Committed By:	Benny Siegert <bsiegert%gmail.com@localhost>
Pushed By:	bsiegert
Date:		Sun Jan 20 16:55:36 2019 +0000
Changeset:	afd5fadf2a117d40b7cb393a1dd32d7211d90bf5

Added Files:
	glib2/DEINSTALL
	glib2/DESCR
	glib2/INSTALL
	glib2/Makefile
	glib2/Makefile.common
	glib2/PLIST
	glib2/buildlink3.mk
	glib2/distinfo
	glib2/files/modules.tmpl
	glib2/files/schemas.tmpl
	glib2/hacks.mk
	glib2/modules.mk
	glib2/patches/patch-Makefile.in
	glib2/patches/patch-aa
	glib2/patches/patch-af
	glib2/patches/patch-ah
	glib2/patches/patch-aha
	glib2/patches/patch-ak
	glib2/patches/patch-al
	glib2/patches/patch-am
	glib2/patches/patch-an
	glib2/patches/patch-cb
	glib2/patches/patch-cd
	glib2/patches/patch-cl
	glib2/patches/patch-cm
	glib2/patches/patch-gio_gcredentialsprivate.h
	glib2/patches/patch-gio_gdbus-2.0_codegen_gdbus-codegen.in
	glib2/patches/patch-gio_giomodule.c
	glib2/patches/patch-gio_glocalfileinfo.c
	glib2/patches/patch-gio_gresource-tool.c
	glib2/patches/patch-gio_gunixcredentialsmessage.c
	glib2/patches/patch-gio_inotify_inotify-kernel.c
	glib2/patches/patch-glib_gmain.c
	glib2/patches/patch-glib_gthread-posix.c
	glib2/patches/patch-glib_gtimezone.c
	glib2/patches/patch-gmodule_gmodule-ar.c
	glib2/patches/patch-gmodule_gmodule-dl.c
	glib2/patches/patch-gmodule_gmodule-dyld.c
	glib2/patches/patch-gmodule_gmodule-win32.c
	glib2/patches/patch-gmodule_gmodule.c
	glib2/patches/patch-gobject_Makefile.am
	glib2/patches/patch-gobject_Makefile.in
	glib2/patches/patch-gobject_glib-genmarshal.in
	glib2/patches/patch-gobject_glib-mkenums.in
	glib2/schemas.mk

Log Message:
Copy over devel/glib2 for update.

To see a diff of this commit:
https://wip.pkgsrc.org/cgi-bin/gitweb.cgi?p=pkgsrc-wip.git;a=commitdiff;h=afd5fadf2a117d40b7cb393a1dd32d7211d90bf5

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.

diffstat:
 glib2/DEINSTALL                                    |  19 +
 glib2/DESCR                                        |   6 +
 glib2/INSTALL                                      |  19 +
 glib2/Makefile                                     |  68 ++
 glib2/Makefile.common                              |  93 +++
 glib2/PLIST                                        | 812 +++++++++++++++++++++
 glib2/buildlink3.mk                                |  27 +
 glib2/distinfo                                     |  38 +
 glib2/files/modules.tmpl                           |  18 +
 glib2/files/schemas.tmpl                           |  18 +
 glib2/hacks.mk                                     |  44 ++
 glib2/modules.mk                                   |  23 +
 glib2/patches/patch-Makefile.in                    |  16 +
 glib2/patches/patch-aa                             | 182 +++++
 glib2/patches/patch-af                             |  23 +
 glib2/patches/patch-ah                             |  24 +
 glib2/patches/patch-aha                            |  13 +
 glib2/patches/patch-ak                             |  80 ++
 glib2/patches/patch-al                             |  22 +
 glib2/patches/patch-am                             |  14 +
 glib2/patches/patch-an                             | 188 +++++
 glib2/patches/patch-cb                             |  13 +
 glib2/patches/patch-cd                             |  41 ++
 glib2/patches/patch-cl                             |  74 ++
 glib2/patches/patch-cm                             |  32 +
 glib2/patches/patch-gio_gcredentialsprivate.h      |  15 +
 .../patch-gio_gdbus-2.0_codegen_gdbus-codegen.in   |  13 +
 glib2/patches/patch-gio_giomodule.c                |  37 +
 glib2/patches/patch-gio_glocalfileinfo.c           |  15 +
 glib2/patches/patch-gio_gresource-tool.c           |  16 +
 glib2/patches/patch-gio_gunixcredentialsmessage.c  |  18 +
 glib2/patches/patch-gio_inotify_inotify-kernel.c   |  16 +
 glib2/patches/patch-glib_gmain.c                   |  81 ++
 glib2/patches/patch-glib_gthread-posix.c           |  36 +
 glib2/patches/patch-glib_gtimezone.c               |  21 +
 glib2/patches/patch-gmodule_gmodule-ar.c           |  29 +
 glib2/patches/patch-gmodule_gmodule-dl.c           |  57 ++
 glib2/patches/patch-gmodule_gmodule-dyld.c         |  32 +
 glib2/patches/patch-gmodule_gmodule-win32.c        |  16 +
 glib2/patches/patch-gmodule_gmodule.c              |  57 ++
 glib2/patches/patch-gobject_Makefile.am            |  14 +
 glib2/patches/patch-gobject_Makefile.in            |  14 +
 glib2/patches/patch-gobject_glib-genmarshal.in     |  13 +
 glib2/patches/patch-gobject_glib-mkenums.in        |  26 +
 glib2/schemas.mk                                   |  29 +
 45 files changed, 2462 insertions(+)

diffs:
diff --git a/glib2/DEINSTALL b/glib2/DEINSTALL
new file mode 100644
index 0000000000..976d643c21
--- /dev/null
+++ b/glib2/DEINSTALL
@@ -0,0 +1,19 @@
+#!/bin/sh
+#
+# $NetBSD: DEINSTALL,v 1.1 2011/02/20 17:40:54 jmmv Exp $
+#
+# Forcibly remove any auto-generated caches.  The cache-regeneration tools
+# should be doing this automatically when there are no more files in the
+# directories they scan, but they don't.  And, anyway, we need to do this
+# if we want in-place updates of glib2 to work correctly.
+#
+
+GIO_MODULES_DIR="@GIO_MODULES_DIR@"
+GLIB_SCHEMAS_DIR="@GLIB_SCHEMAS_DIR@"
+
+case ${STAGE} in
+DEINSTALL)
+	${RM} -f "${GIO_MODULES_DIR}/giomodule.cache"
+	${RM} -f "${GLIB_SCHEMAS_DIR}/gschemas.compiled"
+	;;
+esac
diff --git a/glib2/DESCR b/glib2/DESCR
new file mode 100644
index 0000000000..0b160c0cbb
--- /dev/null
+++ b/glib2/DESCR
@@ -0,0 +1,6 @@
+GLib provides the core application building blocks for libraries
+and applications written in C.  It provides the core object system
+used in GNOME, the main loop implementation, and a large set of
+utility functions for strings and common data structures.
+
+This package contains GLib version 2.
diff --git a/glib2/INSTALL b/glib2/INSTALL
new file mode 100644
index 0000000000..c068471e20
--- /dev/null
+++ b/glib2/INSTALL
@@ -0,0 +1,19 @@
+#!/bin/sh
+#
+# $NetBSD: INSTALL,v 1.1 2011/02/20 17:40:54 jmmv Exp $
+#
+# Generate caches after installing the glib2 package.  This is theorically
+# not needed for a fresh install but is required for in-place updates to
+# work correctly.
+
+GIO_MODULES_DIR="@GIO_MODULES_DIR@"
+GIO_QUERYMODULES="@GIO_QUERYMODULES@"
+GLIB_COMPILE_SCHEMAS="@GLIB_COMPILE_SCHEMAS@"
+GLIB_SCHEMAS_DIR="@GLIB_SCHEMAS_DIR@"
+
+case ${STAGE} in
+POST-INSTALL)
+	"${GIO_QUERYMODULES}" "${GIO_MODULES_DIR}"
+	XDG_DATA_DIRS= "${GLIB_COMPILE_SCHEMAS}" "${GLIB_SCHEMAS_DIR}"
+	;;
+esac
diff --git a/glib2/Makefile b/glib2/Makefile
new file mode 100644
index 0000000000..602184c990
--- /dev/null
+++ b/glib2/Makefile
@@ -0,0 +1,68 @@
+# $NetBSD: Makefile,v 1.244 2018/10/19 16:44:15 leot Exp $
+
+.include "Makefile.common"
+
+CATEGORIES=		devel gnome
+
+COMMENT=		Some useful routines for C programming (glib2)
+
+USE_TOOLS+=		msgfmt perl:run readlink
+
+PKGCONFIG_OVERRIDE+=	glib-2.0.pc.in
+PKGCONFIG_OVERRIDE+=	gmodule-2.0.pc.in
+PKGCONFIG_OVERRIDE+=	gmodule-export-2.0.pc.in
+PKGCONFIG_OVERRIDE+=	gmodule-no-export-2.0.pc.in
+PKGCONFIG_OVERRIDE+=	gobject-2.0.pc.in
+PKGCONFIG_OVERRIDE+=	gthread-2.0.pc.in
+PKGCONFIG_OVERRIDE+=	gio-2.0.pc.in
+PKGCONFIG_OVERRIDE+=	gio-unix-2.0.pc.in
+PKGCONFIG_OVERRIDE+=	gio-windows-2.0.pc.in
+
+FILES_SUBST+=		GIO_MODULES_DIR=${PREFIX}/lib/gio/modules
+FILES_SUBST+=		GIO_QUERYMODULES=${PREFIX}/bin/gio-querymodules
+FILES_SUBST+=		GLIB_COMPILE_SCHEMAS=${PREFIX}/bin/glib-compile-schemas
+FILES_SUBST+=		GLIB_SCHEMAS_DIR=${PREFIX}/share/glib-2.0/schemas
+
+# gtester is the glib unit testing and reporting framework
+# agc doesn't want glib2 to depend on python so we install it
+# in a broken and useless state.
+CHECK_INTERPRETER_SKIP+=	bin/gtester-report
+CHECK_WRKREF_SKIP+=		bin/gtester-report
+
+# need pcre utf8 + unicode-properties
+BUILDLINK_API_DEPENDS.pcre+=	pcre>=8.31
+# to avoid pkg-config dependency, explicitly specify pcre location
+CONFIGURE_ARGS+=	PCRE_CFLAGS=-I${BUILDLINK_PREFIX.pcre}/include
+CONFIGURE_ARGS+=	PCRE_LIBS="${COMPILER_RPATH_FLAG}${BUILDLINK_PREFIX.pcre}/lib -L${BUILDLINK_PREFIX.pcre}/lib -lpcre"
+
+# needs gz_header structure
+BUILDLINK_API_DEPENDS.zlib+=	zlib>=1.2.2.1
+
+LIBS.SunOS+=		-lnsl -lsocket
+CPPFLAGS.SunOS+=	-DBSD_COMP
+
+.if ${OBJECT_FMT} == "ELF"
+.  if ${OPSYS} == "SunOS"
+.    if empty(ABI:U:M64)
+# Solaris libelf in 32-bit mode does not support largefile.  We patch files
+# individually to force _FILE_OFFSET_BITS=32 but need to turn back on -lelf
+# after configure disabled it.
+CONFIGURE_ENV+=		LIBELF_LIBS='-lelf'
+.    endif
+.  else
+.    include "../../devel/libelf/buildlink3.mk"
+.  endif
+.endif
+
+
+# to run gdbus-codegen to generate gdbus-daemon-generated.{h,c}
+TOOL_DEPENDS+=		${PYPKGPREFIX}-expat-[0-9]*:../../textproc/py-expat
+PYTHON_FOR_BUILD_ONLY?=	yes
+.include "../../lang/python/pyversion.mk"
+
+.include "../../converters/libiconv/buildlink3.mk"
+.include "../../devel/gettext-lib/buildlink3.mk"
+.include "../../devel/pcre/buildlink3.mk"
+.include "../../devel/zlib/buildlink3.mk"
+.include "../../devel/libffi/buildlink3.mk"
+.include "../../mk/bsd.pkg.mk"
diff --git a/glib2/Makefile.common b/glib2/Makefile.common
new file mode 100644
index 0000000000..cc3e9ecd3a
--- /dev/null
+++ b/glib2/Makefile.common
@@ -0,0 +1,93 @@
+# $NetBSD: Makefile.common,v 1.66 2018/08/19 18:32:27 wiz Exp $
+#
+# used by devel/glib2/Makefile
+# used by devel/gdbus-codegen/Makefile
+# used by devel/glib2-tools/Makefile
+# used by sysutils/gio-fam/Makefile
+
+# When updating this package, please apply patch-ak to configure.in and
+# then run a matching version of autoconf to regen patch-aa.
+DISTNAME=	glib-2.58.2
+PKGNAME=	${DISTNAME:S/glib/glib2/}
+CATEGORIES=	# empty; redefined in Makefile
+MASTER_SITES=	${MASTER_SITE_GNOME:=sources/glib/${PKGVERSION_NOREV:R}/}
+EXTRACT_SUFX=	.tar.xz
+
+MAINTAINER=	prlw1%cam.ac.uk@localhost
+HOMEPAGE=	https://developer.gnome.org/glib/
+COMMENT=	# empty; redefined in Makefile
+LICENSE=	gnu-lgpl-v2.1
+
+USE_PKGLOCALEDIR=	yes
+USE_TOOLS+=		gmake pkg-config
+USE_LANGUAGES=		c c++ c99
+USE_LIBTOOL=		yes
+TEST_TARGET=		check
+
+DISTINFO_FILE=		${.CURDIR}/../../devel/glib2/distinfo
+PATCHDIR=		${.CURDIR}/../../devel/glib2/patches
+
+GNU_CONFIGURE=		yes
+CONFIGURE_ENV+=		PKGLOCALEDIR=${PKGLOCALEDIR}
+CONFIGURE_ARGS+=	--disable-fam	# See sysutils/gio-fam.
+CONFIGURE_ARGS+=	--includedir=${PREFIX}/include/glib
+CONFIGURE_ARGS+=	${CONFIGURE_ARGS.${ICONV_TYPE}-iconv}
+CONFIGURE_ARGS+=	--with-pcre=system
+CONFIGURE_ARGS+=	--disable-dtrace
+CONFIGURE_ARGS+=	--disable-man  # Requires xsltproc and Docbook.
+# Avoid unnecessary autotools invocation.
+CONFIGURE_ARGS+=	--disable-maintainer-mode
+# Avoid linux dependency on libmount-dev
+CONFIGURE_ARGS.Linux+=	--disable-libmount
+
+# When ICONV_TYPE=gnu ensure we explicitly use the GNU version, to avoid
+# conflicts between iconv.h from converters/libiconv and builtin libiconv
+# which may be non-GNU.
+CONFIGURE_ARGS.gnu-iconv=	--with-libiconv=gnu
+
+CONFIGURE_ENV+=		PERL_PATH=${PERL5:Q}
+
+.include "../../mk/bsd.prefs.mk"
+
+CPPFLAGS+=		-DPREFIX="\"${PREFIX}\""
+CPPFLAGS+=		-DPKGLOCALEDIR="\"${PKGLOCALEDIR}\""
+CPPFLAGS+=		-DPKG_SYSCONFDIR="\"${PKG_SYSCONFDIR}\""
+
+.if ${OPSYS} == "FreeBSD"
+SUBST_CLASSES+=		thr
+SUBST_STAGE.thr=	pre-configure
+SUBST_FILES.thr=	gthread/Makefile.in
+.  if ${OS_VERSION:R} >= 5
+SUBST_SED.thr+=		-e "s|@G_THREAD_LIBS_FOR_GTHREAD@|-lpthread|g"
+.  else
+SUBST_SED.thr+=		-e "s|@G_THREAD_LIBS_FOR_GTHREAD@|-Wc,-lc_r|g"
+.  endif
+SUBST_MESSAGE.thr=	Fixing libgthread.
+.endif
+
+.if !empty(MACHINE_PLATFORM:MDarwin-[56].*-*)
+CONFIGURE_ENV+=		gt_cv_c_wchar_t=no
+.endif
+
+BUILDLINK_TRANSFORM.Darwin+=	rm:-Werror=missing-prototypes
+BUILDLINK_TRANSFORM.SunOS+=	rm:-Werror=format=2
+
+CONFIGURE_ENV.HPUX+=		ac_cv_func_mmap_fixed_mapped=yes
+
+.include "../../mk/dlopen.buildlink3.mk"
+
+.if !empty(MACHINE_PLATFORM:MIRIX-5*)
+CONFIGURE_ARGS+=	--disable-threads
+.else
+.include "../../mk/pthread.buildlink3.mk"
+.endif
+
+BUILD_DEFS+=		VARBASE
+SUBST_CLASSES+=		dbusdb
+SUBST_MESSAGE.dbusdb=	Adjust dbus machine uuid path to dbus package
+SUBST_STAGE.dbusdb=	pre-configure
+SUBST_FILES.dbusdb=	gio/gdbusconnection.c
+SUBST_FILES.dbusdb+=	gio/gdbusprivate.c
+SUBST_FILES.dbusdb+=	po/glib20.pot
+SUBST_FILES.dbusdb+=	po/*.po
+SUBST_SED.dbusdb=	-e 's,/var/lib/dbus,${VARBASE}/db/dbus,g'
diff --git a/glib2/PLIST b/glib2/PLIST
new file mode 100644
index 0000000000..f990e56988
--- /dev/null
+++ b/glib2/PLIST
@@ -0,0 +1,812 @@
+@comment $NetBSD: PLIST,v 1.101 2018/08/19 18:32:27 wiz Exp $
+bin/gapplication
+bin/gdbus
+bin/gio
+bin/gio-querymodules
+bin/glib-compile-resources
+bin/glib-compile-schemas
+bin/glib-gettextize
+bin/gobject-query
+bin/gresource
+bin/gsettings
+bin/gtester
+bin/gtester-report
+include/glib/gio-unix-2.0/gio/gdesktopappinfo.h
+include/glib/gio-unix-2.0/gio/gfiledescriptorbased.h
+include/glib/gio-unix-2.0/gio/gunixconnection.h
+include/glib/gio-unix-2.0/gio/gunixcredentialsmessage.h
+include/glib/gio-unix-2.0/gio/gunixfdlist.h
+include/glib/gio-unix-2.0/gio/gunixfdmessage.h
+include/glib/gio-unix-2.0/gio/gunixinputstream.h
+include/glib/gio-unix-2.0/gio/gunixmounts.h
+include/glib/gio-unix-2.0/gio/gunixoutputstream.h
+include/glib/gio-unix-2.0/gio/gunixsocketaddress.h
+include/glib/glib-2.0/gio/gaction.h
+include/glib/glib-2.0/gio/gactiongroup.h
+include/glib/glib-2.0/gio/gactiongroupexporter.h
+include/glib/glib-2.0/gio/gactionmap.h
+include/glib/glib-2.0/gio/gappinfo.h
+include/glib/glib-2.0/gio/gapplication.h
+include/glib/glib-2.0/gio/gapplicationcommandline.h
+include/glib/glib-2.0/gio/gasyncinitable.h
+include/glib/glib-2.0/gio/gasyncresult.h
+include/glib/glib-2.0/gio/gbufferedinputstream.h
+include/glib/glib-2.0/gio/gbufferedoutputstream.h
+include/glib/glib-2.0/gio/gbytesicon.h
+include/glib/glib-2.0/gio/gcancellable.h
+include/glib/glib-2.0/gio/gcharsetconverter.h
+include/glib/glib-2.0/gio/gcontenttype.h
+include/glib/glib-2.0/gio/gconverter.h
+include/glib/glib-2.0/gio/gconverterinputstream.h
+include/glib/glib-2.0/gio/gconverteroutputstream.h
+include/glib/glib-2.0/gio/gcredentials.h
+include/glib/glib-2.0/gio/gdatagrambased.h
+include/glib/glib-2.0/gio/gdatainputstream.h
+include/glib/glib-2.0/gio/gdataoutputstream.h
+include/glib/glib-2.0/gio/gdbusactiongroup.h
+include/glib/glib-2.0/gio/gdbusaddress.h
+include/glib/glib-2.0/gio/gdbusauthobserver.h
+include/glib/glib-2.0/gio/gdbusconnection.h
+include/glib/glib-2.0/gio/gdbuserror.h
+include/glib/glib-2.0/gio/gdbusinterface.h
+include/glib/glib-2.0/gio/gdbusinterfaceskeleton.h
+include/glib/glib-2.0/gio/gdbusintrospection.h
+include/glib/glib-2.0/gio/gdbusmenumodel.h
+include/glib/glib-2.0/gio/gdbusmessage.h
+include/glib/glib-2.0/gio/gdbusmethodinvocation.h
+include/glib/glib-2.0/gio/gdbusnameowning.h
+include/glib/glib-2.0/gio/gdbusnamewatching.h
+include/glib/glib-2.0/gio/gdbusobject.h
+include/glib/glib-2.0/gio/gdbusobjectmanager.h
+include/glib/glib-2.0/gio/gdbusobjectmanagerclient.h
+include/glib/glib-2.0/gio/gdbusobjectmanagerserver.h
+include/glib/glib-2.0/gio/gdbusobjectproxy.h
+include/glib/glib-2.0/gio/gdbusobjectskeleton.h
+include/glib/glib-2.0/gio/gdbusproxy.h
+include/glib/glib-2.0/gio/gdbusserver.h
+include/glib/glib-2.0/gio/gdbusutils.h
+include/glib/glib-2.0/gio/gdrive.h
+include/glib/glib-2.0/gio/gdtlsclientconnection.h
+include/glib/glib-2.0/gio/gdtlsconnection.h
+include/glib/glib-2.0/gio/gdtlsserverconnection.h
+include/glib/glib-2.0/gio/gemblem.h
+include/glib/glib-2.0/gio/gemblemedicon.h
+include/glib/glib-2.0/gio/gfile.h
+include/glib/glib-2.0/gio/gfileattribute.h
+include/glib/glib-2.0/gio/gfileenumerator.h
+include/glib/glib-2.0/gio/gfileicon.h
+include/glib/glib-2.0/gio/gfileinfo.h
+include/glib/glib-2.0/gio/gfileinputstream.h
+include/glib/glib-2.0/gio/gfileiostream.h
+include/glib/glib-2.0/gio/gfilemonitor.h
+include/glib/glib-2.0/gio/gfilenamecompleter.h
+include/glib/glib-2.0/gio/gfileoutputstream.h
+include/glib/glib-2.0/gio/gfilterinputstream.h
+include/glib/glib-2.0/gio/gfilteroutputstream.h
+include/glib/glib-2.0/gio/gicon.h
+include/glib/glib-2.0/gio/ginetaddress.h
+include/glib/glib-2.0/gio/ginetaddressmask.h
+include/glib/glib-2.0/gio/ginetsocketaddress.h
+include/glib/glib-2.0/gio/ginitable.h
+include/glib/glib-2.0/gio/ginputstream.h
+include/glib/glib-2.0/gio/gio-autocleanups.h
+include/glib/glib-2.0/gio/gio.h
+include/glib/glib-2.0/gio/gioenums.h
+include/glib/glib-2.0/gio/gioenumtypes.h
+include/glib/glib-2.0/gio/gioerror.h
+include/glib/glib-2.0/gio/giomodule.h
+include/glib/glib-2.0/gio/gioscheduler.h
+include/glib/glib-2.0/gio/giostream.h
+include/glib/glib-2.0/gio/giotypes.h
+include/glib/glib-2.0/gio/glistmodel.h
+include/glib/glib-2.0/gio/gliststore.h
+include/glib/glib-2.0/gio/gloadableicon.h
+include/glib/glib-2.0/gio/gmemoryinputstream.h
+include/glib/glib-2.0/gio/gmemoryoutputstream.h
+include/glib/glib-2.0/gio/gmenu.h
+include/glib/glib-2.0/gio/gmenuexporter.h
+include/glib/glib-2.0/gio/gmenumodel.h
+include/glib/glib-2.0/gio/gmount.h
+include/glib/glib-2.0/gio/gmountoperation.h
+include/glib/glib-2.0/gio/gnativevolumemonitor.h
+include/glib/glib-2.0/gio/gnetworkaddress.h
+include/glib/glib-2.0/gio/gnetworking.h
+include/glib/glib-2.0/gio/gnetworkmonitor.h
+include/glib/glib-2.0/gio/gnetworkservice.h
+include/glib/glib-2.0/gio/gnotification.h
+include/glib/glib-2.0/gio/goutputstream.h
+include/glib/glib-2.0/gio/gpermission.h
+include/glib/glib-2.0/gio/gpollableinputstream.h
+include/glib/glib-2.0/gio/gpollableoutputstream.h
+include/glib/glib-2.0/gio/gpollableutils.h
+include/glib/glib-2.0/gio/gpropertyaction.h
+include/glib/glib-2.0/gio/gproxy.h
+include/glib/glib-2.0/gio/gproxyaddress.h
+include/glib/glib-2.0/gio/gproxyaddressenumerator.h
+include/glib/glib-2.0/gio/gproxyresolver.h
+include/glib/glib-2.0/gio/gremoteactiongroup.h
+include/glib/glib-2.0/gio/gresolver.h
+include/glib/glib-2.0/gio/gresource.h
+include/glib/glib-2.0/gio/gseekable.h
+include/glib/glib-2.0/gio/gsettings.h
+include/glib/glib-2.0/gio/gsettingsbackend.h
+include/glib/glib-2.0/gio/gsettingsschema.h
+include/glib/glib-2.0/gio/gsimpleaction.h
+include/glib/glib-2.0/gio/gsimpleactiongroup.h
+include/glib/glib-2.0/gio/gsimpleasyncresult.h
+include/glib/glib-2.0/gio/gsimpleiostream.h
+include/glib/glib-2.0/gio/gsimplepermission.h
+include/glib/glib-2.0/gio/gsimpleproxyresolver.h
+include/glib/glib-2.0/gio/gsocket.h
+include/glib/glib-2.0/gio/gsocketaddress.h
+include/glib/glib-2.0/gio/gsocketaddressenumerator.h
+include/glib/glib-2.0/gio/gsocketclient.h
+include/glib/glib-2.0/gio/gsocketconnectable.h
+include/glib/glib-2.0/gio/gsocketconnection.h
+include/glib/glib-2.0/gio/gsocketcontrolmessage.h
+include/glib/glib-2.0/gio/gsocketlistener.h
+include/glib/glib-2.0/gio/gsocketservice.h
+include/glib/glib-2.0/gio/gsrvtarget.h
+include/glib/glib-2.0/gio/gsubprocess.h
+include/glib/glib-2.0/gio/gsubprocesslauncher.h
+include/glib/glib-2.0/gio/gtask.h
+include/glib/glib-2.0/gio/gtcpconnection.h
+include/glib/glib-2.0/gio/gtcpwrapperconnection.h
+include/glib/glib-2.0/gio/gtestdbus.h
+include/glib/glib-2.0/gio/gthemedicon.h
+include/glib/glib-2.0/gio/gthreadedsocketservice.h
+include/glib/glib-2.0/gio/gtlsbackend.h
+include/glib/glib-2.0/gio/gtlscertificate.h
+include/glib/glib-2.0/gio/gtlsclientconnection.h
+include/glib/glib-2.0/gio/gtlsconnection.h
+include/glib/glib-2.0/gio/gtlsdatabase.h
+include/glib/glib-2.0/gio/gtlsfiledatabase.h
+include/glib/glib-2.0/gio/gtlsinteraction.h
+include/glib/glib-2.0/gio/gtlspassword.h
+include/glib/glib-2.0/gio/gtlsserverconnection.h
+include/glib/glib-2.0/gio/gvfs.h
+include/glib/glib-2.0/gio/gvolume.h
+include/glib/glib-2.0/gio/gvolumemonitor.h
+include/glib/glib-2.0/gio/gzlibcompressor.h
+include/glib/glib-2.0/gio/gzlibdecompressor.h
+include/glib/glib-2.0/glib-object.h
+include/glib/glib-2.0/glib-unix.h
+include/glib/glib-2.0/glib.h
+include/glib/glib-2.0/glib/deprecated/gallocator.h
+include/glib/glib-2.0/glib/deprecated/gcache.h
+include/glib/glib-2.0/glib/deprecated/gcompletion.h
+include/glib/glib-2.0/glib/deprecated/gmain.h
+include/glib/glib-2.0/glib/deprecated/grel.h
+include/glib/glib-2.0/glib/deprecated/gthread.h
+include/glib/glib-2.0/glib/galloca.h
+include/glib/glib-2.0/glib/garray.h
+include/glib/glib-2.0/glib/gasyncqueue.h
+include/glib/glib-2.0/glib/gatomic.h
+include/glib/glib-2.0/glib/gbacktrace.h
+include/glib/glib-2.0/glib/gbase64.h
+include/glib/glib-2.0/glib/gbitlock.h
+include/glib/glib-2.0/glib/gbookmarkfile.h
+include/glib/glib-2.0/glib/gbytes.h
+include/glib/glib-2.0/glib/gcharset.h
+include/glib/glib-2.0/glib/gchecksum.h
+include/glib/glib-2.0/glib/gconvert.h
+include/glib/glib-2.0/glib/gdataset.h
+include/glib/glib-2.0/glib/gdate.h
+include/glib/glib-2.0/glib/gdatetime.h
+include/glib/glib-2.0/glib/gdir.h
+include/glib/glib-2.0/glib/genviron.h
+include/glib/glib-2.0/glib/gerror.h
+include/glib/glib-2.0/glib/gfileutils.h
+include/glib/glib-2.0/glib/ggettext.h
+include/glib/glib-2.0/glib/ghash.h
+include/glib/glib-2.0/glib/ghmac.h
+include/glib/glib-2.0/glib/ghook.h
+include/glib/glib-2.0/glib/ghostutils.h
+include/glib/glib-2.0/glib/gi18n-lib.h
+include/glib/glib-2.0/glib/gi18n.h
+include/glib/glib-2.0/glib/giochannel.h
+include/glib/glib-2.0/glib/gkeyfile.h
+include/glib/glib-2.0/glib/glib-autocleanups.h
+include/glib/glib-2.0/glib/glist.h
+include/glib/glib-2.0/glib/gmacros.h
+include/glib/glib-2.0/glib/gmain.h
+include/glib/glib-2.0/glib/gmappedfile.h
+include/glib/glib-2.0/glib/gmarkup.h
+include/glib/glib-2.0/glib/gmem.h
+include/glib/glib-2.0/glib/gmessages.h
+include/glib/glib-2.0/glib/gnode.h
+include/glib/glib-2.0/glib/goption.h
+include/glib/glib-2.0/glib/gpattern.h
+include/glib/glib-2.0/glib/gpoll.h
+include/glib/glib-2.0/glib/gprimes.h
+include/glib/glib-2.0/glib/gprintf.h
+include/glib/glib-2.0/glib/gqsort.h
+include/glib/glib-2.0/glib/gquark.h
+include/glib/glib-2.0/glib/gqueue.h
+include/glib/glib-2.0/glib/grand.h
+include/glib/glib-2.0/glib/gregex.h
+include/glib/glib-2.0/glib/gscanner.h
+include/glib/glib-2.0/glib/gsequence.h
+include/glib/glib-2.0/glib/gshell.h
+include/glib/glib-2.0/glib/gslice.h
+include/glib/glib-2.0/glib/gslist.h
+include/glib/glib-2.0/glib/gspawn.h
+include/glib/glib-2.0/glib/gstdio.h
+include/glib/glib-2.0/glib/gstrfuncs.h
+include/glib/glib-2.0/glib/gstring.h
+include/glib/glib-2.0/glib/gstringchunk.h
+include/glib/glib-2.0/glib/gtestutils.h
+include/glib/glib-2.0/glib/gthread.h
+include/glib/glib-2.0/glib/gthreadpool.h
+include/glib/glib-2.0/glib/gtimer.h
+include/glib/glib-2.0/glib/gtimezone.h
+include/glib/glib-2.0/glib/gtrashstack.h
+include/glib/glib-2.0/glib/gtree.h
+include/glib/glib-2.0/glib/gtypes.h
+include/glib/glib-2.0/glib/gunicode.h
+include/glib/glib-2.0/glib/gurifuncs.h
+include/glib/glib-2.0/glib/gutils.h
+include/glib/glib-2.0/glib/guuid.h
+include/glib/glib-2.0/glib/gvariant.h
+include/glib/glib-2.0/glib/gvarianttype.h
+include/glib/glib-2.0/glib/gversion.h
+include/glib/glib-2.0/glib/gversionmacros.h
+include/glib/glib-2.0/glib/gwin32.h
+include/glib/glib-2.0/gmodule.h
+include/glib/glib-2.0/gobject/gbinding.h
+include/glib/glib-2.0/gobject/gboxed.h
+include/glib/glib-2.0/gobject/gclosure.h
+include/glib/glib-2.0/gobject/genums.h
+include/glib/glib-2.0/gobject/glib-types.h
+include/glib/glib-2.0/gobject/gmarshal.h
+include/glib/glib-2.0/gobject/gobject-autocleanups.h
+include/glib/glib-2.0/gobject/gobject.h
+include/glib/glib-2.0/gobject/gobjectnotifyqueue.c
+include/glib/glib-2.0/gobject/gparam.h
+include/glib/glib-2.0/gobject/gparamspecs.h
+include/glib/glib-2.0/gobject/gsignal.h
+include/glib/glib-2.0/gobject/gsourceclosure.h
+include/glib/glib-2.0/gobject/gtype.h
+include/glib/glib-2.0/gobject/gtypemodule.h
+include/glib/glib-2.0/gobject/gtypeplugin.h
+include/glib/glib-2.0/gobject/gvalue.h
+include/glib/glib-2.0/gobject/gvaluearray.h
+include/glib/glib-2.0/gobject/gvaluecollector.h
+include/glib/glib-2.0/gobject/gvaluetypes.h
+lib/glib-2.0/include/glibconfig.h
+lib/libgio-2.0.la
+lib/libglib-2.0.la
+lib/libgmodule-2.0.la
+lib/libgobject-2.0.la
+lib/libgthread-2.0.la
+lib/pkgconfig/gio-2.0.pc
+lib/pkgconfig/gio-unix-2.0.pc
+lib/pkgconfig/glib-2.0.pc
+lib/pkgconfig/gmodule-2.0.pc
+lib/pkgconfig/gmodule-export-2.0.pc
+lib/pkgconfig/gmodule-no-export-2.0.pc
+lib/pkgconfig/gobject-2.0.pc
+lib/pkgconfig/gthread-2.0.pc
+share/aclocal/glib-2.0.m4
+share/aclocal/glib-gettext.m4
+share/aclocal/gsettings.m4
+share/bash-completion/completions/gapplication
+share/bash-completion/completions/gdbus
+share/bash-completion/completions/gresource
+share/bash-completion/completions/gsettings
+share/gdb/auto-load${LOCALBASE}/lib/libglib-2.0.so.0.5600.2-gdb.py
+share/gdb/auto-load${LOCALBASE}/lib/libgobject-2.0.so.0.5600.2-gdb.py
+share/gettext/its/gschema.its
+share/gettext/its/gschema.loc
+share/glib-2.0/gdb/glib_gdb.py
+share/glib-2.0/gdb/gobject_gdb.py
+share/glib-2.0/gettext/po/Makefile.in.in
+share/glib-2.0/schemas/gschema.dtd
+share/glib-2.0/valgrind/glib.supp
+share/gtk-doc/html/gio/GAction.html
+share/gtk-doc/html/gio/GActionGroup.html
+share/gtk-doc/html/gio/GActionMap.html
+share/gtk-doc/html/gio/GAppInfo.html
+share/gtk-doc/html/gio/GAppInfoMonitor.html
+share/gtk-doc/html/gio/GApplication.html
+share/gtk-doc/html/gio/GApplicationCommandLine.html
+share/gtk-doc/html/gio/GAsyncInitable.html
+share/gtk-doc/html/gio/GAsyncResult.html
+share/gtk-doc/html/gio/GBufferedInputStream.html
+share/gtk-doc/html/gio/GBufferedOutputStream.html
+share/gtk-doc/html/gio/GBytesIcon.html
+share/gtk-doc/html/gio/GCancellable.html
+share/gtk-doc/html/gio/GCharsetConverter.html
+share/gtk-doc/html/gio/GConverter.html
+share/gtk-doc/html/gio/GCredentials.html
+share/gtk-doc/html/gio/GDBusActionGroup.html
+share/gtk-doc/html/gio/GDBusAuthObserver.html
+share/gtk-doc/html/gio/GDBusConnection.html
+share/gtk-doc/html/gio/GDBusInterface.html
+share/gtk-doc/html/gio/GDBusInterfaceSkeleton.html
+share/gtk-doc/html/gio/GDBusMenuModel.html
+share/gtk-doc/html/gio/GDBusMessage.html
+share/gtk-doc/html/gio/GDBusMethodInvocation.html
+share/gtk-doc/html/gio/GDBusObject.html
+share/gtk-doc/html/gio/GDBusObjectManager.html
+share/gtk-doc/html/gio/GDBusObjectManagerClient.html
+share/gtk-doc/html/gio/GDBusObjectManagerServer.html
+share/gtk-doc/html/gio/GDBusObjectProxy.html
+share/gtk-doc/html/gio/GDBusObjectSkeleton.html
+share/gtk-doc/html/gio/GDBusProxy.html
+share/gtk-doc/html/gio/GDBusServer.html
+share/gtk-doc/html/gio/GDataInputStream.html
+share/gtk-doc/html/gio/GDataOutputStream.html
+share/gtk-doc/html/gio/GDatagramBased.html
+share/gtk-doc/html/gio/GDrive.html
+share/gtk-doc/html/gio/GDtlsClientConnection.html
+share/gtk-doc/html/gio/GDtlsConnection.html
+share/gtk-doc/html/gio/GDtlsServerConnection.html
+share/gtk-doc/html/gio/GEmblem.html
+share/gtk-doc/html/gio/GEmblemedIcon.html
+share/gtk-doc/html/gio/GFile.html
+share/gtk-doc/html/gio/GFileDescriptorBased.html
+share/gtk-doc/html/gio/GFileEnumerator.html
+share/gtk-doc/html/gio/GFileIOStream.html
+share/gtk-doc/html/gio/GFileIcon.html
+share/gtk-doc/html/gio/GFileInfo.html
+share/gtk-doc/html/gio/GFileInputStream.html
+share/gtk-doc/html/gio/GFileMonitor.html
+share/gtk-doc/html/gio/GFileOutputStream.html
+share/gtk-doc/html/gio/GFilenameCompleter.html
+share/gtk-doc/html/gio/GFilterInputStream.html
+share/gtk-doc/html/gio/GFilterOutputStream.html
+share/gtk-doc/html/gio/GIOModule.html
+share/gtk-doc/html/gio/GIOStream.html
+share/gtk-doc/html/gio/GIcon.html
+share/gtk-doc/html/gio/GInetAddress.html
+share/gtk-doc/html/gio/GInetAddressMask.html
+share/gtk-doc/html/gio/GInetSocketAddress.html
+share/gtk-doc/html/gio/GInitable.html
+share/gtk-doc/html/gio/GInputStream.html
+share/gtk-doc/html/gio/GListModel.html
+share/gtk-doc/html/gio/GListStore.html
+share/gtk-doc/html/gio/GLoadableIcon.html
+share/gtk-doc/html/gio/GMemoryInputStream.html
+share/gtk-doc/html/gio/GMemoryOutputStream.html
+share/gtk-doc/html/gio/GMenu.html
+share/gtk-doc/html/gio/GMenuModel.html
+share/gtk-doc/html/gio/GMount.html
+share/gtk-doc/html/gio/GMountOperation.html
+share/gtk-doc/html/gio/GNetworkAddress.html
+share/gtk-doc/html/gio/GNetworkMonitor.html
+share/gtk-doc/html/gio/GNetworkService.html
+share/gtk-doc/html/gio/GNotification.html
+share/gtk-doc/html/gio/GOutputStream.html
+share/gtk-doc/html/gio/GPermission.html
+share/gtk-doc/html/gio/GPollableInputStream.html
+share/gtk-doc/html/gio/GPollableOutputStream.html
+share/gtk-doc/html/gio/GPropertyAction.html
+share/gtk-doc/html/gio/GProxy.html
+share/gtk-doc/html/gio/GProxyAddress.html
+share/gtk-doc/html/gio/GProxyAddressEnumerator.html
+share/gtk-doc/html/gio/GProxyResolver.html
+share/gtk-doc/html/gio/GRemoteActionGroup.html
+share/gtk-doc/html/gio/GResolver.html
+share/gtk-doc/html/gio/GResource.html
+share/gtk-doc/html/gio/GSeekable.html
+share/gtk-doc/html/gio/GSettings.html
+share/gtk-doc/html/gio/GSettingsBackend.html
+share/gtk-doc/html/gio/GSimpleAction.html
+share/gtk-doc/html/gio/GSimpleActionGroup.html
+share/gtk-doc/html/gio/GSimpleAsyncResult.html
+share/gtk-doc/html/gio/GSimpleIOStream.html
+share/gtk-doc/html/gio/GSimplePermission.html
+share/gtk-doc/html/gio/GSimpleProxyResolver.html
+share/gtk-doc/html/gio/GSocket.html
+share/gtk-doc/html/gio/GSocketAddress.html
+share/gtk-doc/html/gio/GSocketAddressEnumerator.html
+share/gtk-doc/html/gio/GSocketClient.html
+share/gtk-doc/html/gio/GSocketConnectable.html
+share/gtk-doc/html/gio/GSocketConnection.html
+share/gtk-doc/html/gio/GSocketControlMessage.html
+share/gtk-doc/html/gio/GSocketListener.html
+share/gtk-doc/html/gio/GSocketService.html
+share/gtk-doc/html/gio/GSrvTarget.html
+share/gtk-doc/html/gio/GSubprocess.html
+share/gtk-doc/html/gio/GSubprocessLauncher.html
+share/gtk-doc/html/gio/GTask.html
+share/gtk-doc/html/gio/GTcpConnection.html
+share/gtk-doc/html/gio/GTcpWrapperConnection.html
+share/gtk-doc/html/gio/GTestDBus.html
+share/gtk-doc/html/gio/GThemedIcon.html
+share/gtk-doc/html/gio/GThreadedSocketService.html
+share/gtk-doc/html/gio/GTlsBackend.html
+share/gtk-doc/html/gio/GTlsCertificate.html
+share/gtk-doc/html/gio/GTlsClientConnection.html
+share/gtk-doc/html/gio/GTlsConnection.html
+share/gtk-doc/html/gio/GTlsDatabase.html
+share/gtk-doc/html/gio/GTlsFileDatabase.html
+share/gtk-doc/html/gio/GTlsInteraction.html
+share/gtk-doc/html/gio/GTlsPassword.html
+share/gtk-doc/html/gio/GTlsServerConnection.html
+share/gtk-doc/html/gio/GUnixConnection.html
+share/gtk-doc/html/gio/GUnixCredentialsMessage.html
+share/gtk-doc/html/gio/GUnixFDList.html
+share/gtk-doc/html/gio/GUnixFDMessage.html
+share/gtk-doc/html/gio/GUnixInputStream.html
+share/gtk-doc/html/gio/GUnixOutputStream.html
+share/gtk-doc/html/gio/GUnixSocketAddress.html
+share/gtk-doc/html/gio/GVfs.html
+share/gtk-doc/html/gio/GVolume.html
+share/gtk-doc/html/gio/GVolumeMonitor.html
+share/gtk-doc/html/gio/GZlibCompressor.html
+share/gtk-doc/html/gio/GZlibDecompressor.html
+share/gtk-doc/html/gio/annotation-glossary.html
+share/gtk-doc/html/gio/api-index-full.html
+share/gtk-doc/html/gio/application.html
+share/gtk-doc/html/gio/async.html
+share/gtk-doc/html/gio/ch01.html
+share/gtk-doc/html/gio/ch02.html
+share/gtk-doc/html/gio/ch03.html
+share/gtk-doc/html/gio/ch32.html
+share/gtk-doc/html/gio/ch33.html
+share/gtk-doc/html/gio/ch33s02.html
+share/gtk-doc/html/gio/ch33s03.html
+share/gtk-doc/html/gio/ch34.html
+share/gtk-doc/html/gio/ch34s02.html
+share/gtk-doc/html/gio/ch34s03.html
+share/gtk-doc/html/gio/ch34s04.html
+share/gtk-doc/html/gio/ch34s05.html
+share/gtk-doc/html/gio/ch34s06.html
+share/gtk-doc/html/gio/ch34s07.html
+share/gtk-doc/html/gio/ch35.html
+share/gtk-doc/html/gio/ch35s02.html
+share/gtk-doc/html/gio/ch35s03.html
+share/gtk-doc/html/gio/ch35s04.html
+share/gtk-doc/html/gio/conversion.html
+share/gtk-doc/html/gio/data-models.html
+share/gtk-doc/html/gio/extending-gio.html
+share/gtk-doc/html/gio/extending.html
+share/gtk-doc/html/gio/failable_initialization.html
+share/gtk-doc/html/gio/file_mon.html
+share/gtk-doc/html/gio/file_ops.html
+share/gtk-doc/html/gio/gapplication-tool.html
+share/gtk-doc/html/gio/gdbus-codegen.html
+share/gtk-doc/html/gio/gdbus-convenience.html
+share/gtk-doc/html/gio/gdbus-example-gdbus-codegen.html
+share/gtk-doc/html/gio/gdbus-lowlevel.html
+share/gtk-doc/html/gio/gdbus.html
+share/gtk-doc/html/gio/gio-D-Bus-Addresses.html
+share/gtk-doc/html/gio/gio-D-Bus-Introspection-Data.html
+share/gtk-doc/html/gio/gio-D-Bus-Utilities.html
+share/gtk-doc/html/gio/gio-Desktop-file-based-GAppInfo.html
+share/gtk-doc/html/gio/gio-Extension-Points.html
+share/gtk-doc/html/gio/gio-GActionGroup-exporter.html
+share/gtk-doc/html/gio/gio-GContentType.html
+share/gtk-doc/html/gio/gio-GConverterInputstream.html
+share/gtk-doc/html/gio/gio-GConverterOutputstream.html
+share/gtk-doc/html/gio/gio-GDBusError.html
+share/gtk-doc/html/gio/gio-GFileAttribute.html
+share/gtk-doc/html/gio/gio-GIOError.html
+share/gtk-doc/html/gio/gio-GIOScheduler.html
+share/gtk-doc/html/gio/gio-GMenuModel-exporter.html
+share/gtk-doc/html/gio/gio-GSettingsSchema-GSettingsSchemaSource.html
+share/gtk-doc/html/gio/gio-GWin32InputStream.html
+share/gtk-doc/html/gio/gio-GWin32OutputStream.html
+share/gtk-doc/html/gio/gio-GWin32RegistryKey.html
+share/gtk-doc/html/gio/gio-Owning-Bus-Names.html
+share/gtk-doc/html/gio/gio-TLS-Overview.html
+share/gtk-doc/html/gio/gio-Unix-Mounts.html
+share/gtk-doc/html/gio/gio-Watching-Bus-Names.html
+share/gtk-doc/html/gio/gio-gnetworking.h.html
+share/gtk-doc/html/gio/gio-gpollableutils.html
+share/gtk-doc/html/gio/gio-hierarchy.html
+share/gtk-doc/html/gio/gio-querymodules.html
+share/gtk-doc/html/gio/gio.devhelp2
+share/gtk-doc/html/gio/gio.html
+share/gtk-doc/html/gio/glib-compile-resources.html
+share/gtk-doc/html/gio/glib-compile-schemas.html
+share/gtk-doc/html/gio/gresource-tool.html
+share/gtk-doc/html/gio/gsettings-tool.html
+share/gtk-doc/html/gio/gvfs-overview.png
+share/gtk-doc/html/gio/highlevel-socket.html
+share/gtk-doc/html/gio/home.png
+share/gtk-doc/html/gio/icons.html
+share/gtk-doc/html/gio/index.html
+share/gtk-doc/html/gio/left-insensitive.png
+share/gtk-doc/html/gio/left.png
+share/gtk-doc/html/gio/menu-example.png
+share/gtk-doc/html/gio/menu-model.png
+share/gtk-doc/html/gio/migrating.html
+share/gtk-doc/html/gio/networking.html
+share/gtk-doc/html/gio/permissions.html
+share/gtk-doc/html/gio/pt01.html
+share/gtk-doc/html/gio/pt02.html
+share/gtk-doc/html/gio/registry.html
+share/gtk-doc/html/gio/resolver.html
+share/gtk-doc/html/gio/resources.html
+share/gtk-doc/html/gio/right-insensitive.png
+share/gtk-doc/html/gio/right.png
+share/gtk-doc/html/gio/running-gio-apps.html
+share/gtk-doc/html/gio/settings.html
+share/gtk-doc/html/gio/streaming.html
+share/gtk-doc/html/gio/style.css
+share/gtk-doc/html/gio/subprocesses.html
+share/gtk-doc/html/gio/testing.html
+share/gtk-doc/html/gio/tls.html
+share/gtk-doc/html/gio/tools.html
+share/gtk-doc/html/gio/types.html
+share/gtk-doc/html/gio/up-insensitive.png
+share/gtk-doc/html/gio/up.png
+share/gtk-doc/html/gio/utils.html
+share/gtk-doc/html/gio/volume_mon.html
+share/gtk-doc/html/glib/Sorted_binary_tree_breadth-first_traversal.svg
+share/gtk-doc/html/glib/Sorted_binary_tree_inorder.svg
+share/gtk-doc/html/glib/Sorted_binary_tree_postorder.svg
+share/gtk-doc/html/glib/Sorted_binary_tree_preorder.svg
+share/gtk-doc/html/glib/annotation-glossary.html
+share/gtk-doc/html/glib/api-index-full.html
+share/gtk-doc/html/glib/deprecated.html
+share/gtk-doc/html/glib/file-name-encodings.png
+share/gtk-doc/html/glib/glib-Arrays.html
+share/gtk-doc/html/glib/glib-Asynchronous-Queues.html
+share/gtk-doc/html/glib/glib-Atomic-Operations.html
+share/gtk-doc/html/glib/glib-Automatic-String-Completion.html
+share/gtk-doc/html/glib/glib-Balanced-Binary-Trees.html
+share/gtk-doc/html/glib/glib-Base64-Encoding.html
+share/gtk-doc/html/glib/glib-Basic-Types.html
+share/gtk-doc/html/glib/glib-Bookmark-file-parser.html
+share/gtk-doc/html/glib/glib-Bounds-checked-integer-arithmetic.html
+share/gtk-doc/html/glib/glib-Byte-Arrays.html
+share/gtk-doc/html/glib/glib-Byte-Order-Macros.html
+share/gtk-doc/html/glib/glib-Caches.html
+share/gtk-doc/html/glib/glib-Character-Set-Conversion.html
+share/gtk-doc/html/glib/glib-Commandline-option-parser.html
+share/gtk-doc/html/glib/glib-Data-Checksums.html
+share/gtk-doc/html/glib/glib-Data-HMACs.html
+share/gtk-doc/html/glib/glib-Datasets.html
+share/gtk-doc/html/glib/glib-Date-and-Time-Functions.html
+share/gtk-doc/html/glib/glib-Deprecated-Thread-APIs.html
+share/gtk-doc/html/glib/glib-Double-ended-Queues.html
+share/gtk-doc/html/glib/glib-Doubly-Linked-Lists.html
+share/gtk-doc/html/glib/glib-Dynamic-Loading-of-Modules.html
+share/gtk-doc/html/glib/glib-Error-Reporting.html
+share/gtk-doc/html/glib/glib-File-Utilities.html
+share/gtk-doc/html/glib/glib-GDateTime.html
+share/gtk-doc/html/glib/glib-GTimeZone.html
+share/gtk-doc/html/glib/glib-GUuid.html
+share/gtk-doc/html/glib/glib-GVariant.html
+share/gtk-doc/html/glib/glib-GVariantType.html
+share/gtk-doc/html/glib/glib-Glob-style-pattern-matching.html
+share/gtk-doc/html/glib/glib-Hash-Tables.html
+share/gtk-doc/html/glib/glib-Hook-Functions.html
+share/gtk-doc/html/glib/glib-Hostname-Utilities.html
+share/gtk-doc/html/glib/glib-I18N.html
+share/gtk-doc/html/glib/glib-IO-Channels.html
+share/gtk-doc/html/glib/glib-Key-value-file-parser.html
+share/gtk-doc/html/glib/glib-Keyed-Data-Lists.html
+share/gtk-doc/html/glib/glib-Lexical-Scanner.html
+share/gtk-doc/html/glib/glib-Memory-Allocation.html
+share/gtk-doc/html/glib/glib-Memory-Slices.html
+share/gtk-doc/html/glib/glib-Message-Logging.html
+share/gtk-doc/html/glib/glib-Miscellaneous-Macros.html
+share/gtk-doc/html/glib/glib-Miscellaneous-Utility-Functions.html
+share/gtk-doc/html/glib/glib-N-ary-Trees.html
+share/gtk-doc/html/glib/glib-Numerical-Definitions.html
+share/gtk-doc/html/glib/glib-Perl-compatible-regular-expressions.html
+share/gtk-doc/html/glib/glib-Pointer-Arrays.html
+share/gtk-doc/html/glib/glib-Quarks.html
+share/gtk-doc/html/glib/glib-Random-Numbers.html
+share/gtk-doc/html/glib/glib-Relations-and-Tuples.html
+share/gtk-doc/html/glib/glib-Sequences.html
+share/gtk-doc/html/glib/glib-Shell-related-Utilities.html
+share/gtk-doc/html/glib/glib-Simple-XML-Subset-Parser.html
+share/gtk-doc/html/glib/glib-Singly-Linked-Lists.html
+share/gtk-doc/html/glib/glib-Spawning-Processes.html
+share/gtk-doc/html/glib/glib-Standard-Macros.html
+share/gtk-doc/html/glib/glib-String-Chunks.html
+share/gtk-doc/html/glib/glib-String-Utility-Functions.html
+share/gtk-doc/html/glib/glib-Strings.html
+share/gtk-doc/html/glib/glib-Testing.html
+share/gtk-doc/html/glib/glib-The-Main-Event-Loop.html
+share/gtk-doc/html/glib/glib-Thread-Pools.html
+share/gtk-doc/html/glib/glib-Threads.html
+share/gtk-doc/html/glib/glib-Timers.html
+share/gtk-doc/html/glib/glib-Trash-Stacks.html
+share/gtk-doc/html/glib/glib-Type-Conversion-Macros.html
+share/gtk-doc/html/glib/glib-UNIX-specific-utilities-and-integration.html
+share/gtk-doc/html/glib/glib-URI-Functions.html
+share/gtk-doc/html/glib/glib-Unicode-Manipulation.html
+share/gtk-doc/html/glib/glib-Version-Information.html
+share/gtk-doc/html/glib/glib-Warnings-and-Assertions.html
+share/gtk-doc/html/glib/glib-Windows-Compatibility-Functions.html
+share/gtk-doc/html/glib/glib-building.html
+share/gtk-doc/html/glib/glib-changes.html
+share/gtk-doc/html/glib/glib-compiling.html
+share/gtk-doc/html/glib/glib-core.html
+share/gtk-doc/html/glib/glib-cross-compiling.html
+share/gtk-doc/html/glib/glib-data-types.html
+share/gtk-doc/html/glib/glib-fundamentals.html
+share/gtk-doc/html/glib/glib-gettextize.html
+share/gtk-doc/html/glib/glib-programming.html
+share/gtk-doc/html/glib/glib-regex-syntax.html
+share/gtk-doc/html/glib/glib-resources.html
+share/gtk-doc/html/glib/glib-running.html
+share/gtk-doc/html/glib/glib-utilities.html
+share/gtk-doc/html/glib/glib.devhelp2
+share/gtk-doc/html/glib/glib.html
+share/gtk-doc/html/glib/gtester-report.html
+share/gtk-doc/html/glib/gtester.html
+share/gtk-doc/html/glib/gvariant-format-strings.html
+share/gtk-doc/html/glib/gvariant-text.html
+share/gtk-doc/html/glib/home.png
+share/gtk-doc/html/glib/index.html
+share/gtk-doc/html/glib/left-insensitive.png
+share/gtk-doc/html/glib/left.png
+share/gtk-doc/html/glib/mainloop-states.gif
+share/gtk-doc/html/glib/right-insensitive.png
+share/gtk-doc/html/glib/right.png
+share/gtk-doc/html/glib/style.css
+share/gtk-doc/html/glib/tools.html
+share/gtk-doc/html/glib/up-insensitive.png
+share/gtk-doc/html/glib/up.png
+share/gtk-doc/html/gobject/GBinding.html
+share/gtk-doc/html/gobject/GTypeModule.html
+share/gtk-doc/html/gobject/GTypePlugin.html
+share/gtk-doc/html/gobject/annotation-glossary.html
+share/gtk-doc/html/gobject/api-index-full.html
+share/gtk-doc/html/gobject/ch01s02.html
+share/gtk-doc/html/gobject/chapter-gobject.html
+share/gtk-doc/html/gobject/chapter-gtype.html
+share/gtk-doc/html/gobject/chapter-intro.html
+share/gtk-doc/html/gobject/chapter-signal.html
+share/gtk-doc/html/gobject/glib-genmarshal.html
+share/gtk-doc/html/gobject/glib-mkenums.html
+share/gtk-doc/html/gobject/glue.png
+share/gtk-doc/html/gobject/gobject-Boxed-Types.html
+share/gtk-doc/html/gobject/gobject-Closures.html
+share/gtk-doc/html/gobject/gobject-Enumeration-and-Flag-Types.html
+share/gtk-doc/html/gobject/gobject-GParamSpec.html
+share/gtk-doc/html/gobject/gobject-Generic-values.html
+share/gtk-doc/html/gobject/gobject-Signals.html
+share/gtk-doc/html/gobject/gobject-Standard-Parameter-and-Value-Types.html
+share/gtk-doc/html/gobject/gobject-The-Base-Object-Type.html
+share/gtk-doc/html/gobject/gobject-Type-Information.html
+share/gtk-doc/html/gobject/gobject-Value-arrays.html
+share/gtk-doc/html/gobject/gobject-Varargs-Value-Collection.html
+share/gtk-doc/html/gobject/gobject-memory.html
+share/gtk-doc/html/gobject/gobject-properties.html
+share/gtk-doc/html/gobject/gobject-query.html
+share/gtk-doc/html/gobject/gobject.devhelp2
+share/gtk-doc/html/gobject/gtype-conventions.html
+share/gtk-doc/html/gobject/gtype-instantiable-classed.html
+share/gtk-doc/html/gobject/gtype-non-instantiable-classed.html
+share/gtk-doc/html/gobject/gtype-non-instantiable.html
+share/gtk-doc/html/gobject/home.png
+share/gtk-doc/html/gobject/howto-gobject-chainup.html
+share/gtk-doc/html/gobject/howto-gobject-code.html
+share/gtk-doc/html/gobject/howto-gobject-construction.html
+share/gtk-doc/html/gobject/howto-gobject-destruction.html
+share/gtk-doc/html/gobject/howto-gobject-methods.html
+share/gtk-doc/html/gobject/howto-gobject.html
+share/gtk-doc/html/gobject/howto-interface-implement.html
+share/gtk-doc/html/gobject/howto-interface-override.html
+share/gtk-doc/html/gobject/howto-interface-prerequisite.html
+share/gtk-doc/html/gobject/howto-interface-properties.html
+share/gtk-doc/html/gobject/howto-interface.html
+share/gtk-doc/html/gobject/howto-signals.html
+share/gtk-doc/html/gobject/index.html
+share/gtk-doc/html/gobject/left-insensitive.png
+share/gtk-doc/html/gobject/left.png
+share/gtk-doc/html/gobject/pr01.html
+share/gtk-doc/html/gobject/pt01.html
+share/gtk-doc/html/gobject/pt02.html
+share/gtk-doc/html/gobject/pt03.html
+share/gtk-doc/html/gobject/right-insensitive.png
+share/gtk-doc/html/gobject/right.png
+share/gtk-doc/html/gobject/rn01.html
+share/gtk-doc/html/gobject/rn02.html
+share/gtk-doc/html/gobject/signal.html
+share/gtk-doc/html/gobject/style.css
+share/gtk-doc/html/gobject/tools-ginspector.html
+share/gtk-doc/html/gobject/tools-gob.html
+share/gtk-doc/html/gobject/tools-gtkdoc.html
+share/gtk-doc/html/gobject/tools-refdb.html
+share/gtk-doc/html/gobject/tools-vala.html
+share/gtk-doc/html/gobject/up-insensitive.png
+share/gtk-doc/html/gobject/up.png
+share/locale/af/LC_MESSAGES/glib20.mo
+share/locale/am/LC_MESSAGES/glib20.mo
+share/locale/an/LC_MESSAGES/glib20.mo
+share/locale/ar/LC_MESSAGES/glib20.mo
+share/locale/as/LC_MESSAGES/glib20.mo
+share/locale/ast/LC_MESSAGES/glib20.mo
+share/locale/az/LC_MESSAGES/glib20.mo
+share/locale/be/LC_MESSAGES/glib20.mo
+share/locale/be@latin/LC_MESSAGES/glib20.mo
+share/locale/bg/LC_MESSAGES/glib20.mo
+share/locale/bn/LC_MESSAGES/glib20.mo
+share/locale/bn_IN/LC_MESSAGES/glib20.mo
+share/locale/bs/LC_MESSAGES/glib20.mo
+share/locale/ca/LC_MESSAGES/glib20.mo
+share/locale/ca@valencia/LC_MESSAGES/glib20.mo
+share/locale/cs/LC_MESSAGES/glib20.mo
+share/locale/cy/LC_MESSAGES/glib20.mo
+share/locale/da/LC_MESSAGES/glib20.mo
+share/locale/de/LC_MESSAGES/glib20.mo
+share/locale/dz/LC_MESSAGES/glib20.mo
+share/locale/el/LC_MESSAGES/glib20.mo
+share/locale/en@shaw/LC_MESSAGES/glib20.mo
+share/locale/en_CA/LC_MESSAGES/glib20.mo
+share/locale/en_GB/LC_MESSAGES/glib20.mo
+share/locale/eo/LC_MESSAGES/glib20.mo
+share/locale/es/LC_MESSAGES/glib20.mo
+share/locale/et/LC_MESSAGES/glib20.mo
+share/locale/eu/LC_MESSAGES/glib20.mo
+share/locale/fa/LC_MESSAGES/glib20.mo
+share/locale/fi/LC_MESSAGES/glib20.mo
+share/locale/fr/LC_MESSAGES/glib20.mo
+share/locale/fur/LC_MESSAGES/glib20.mo
+share/locale/ga/LC_MESSAGES/glib20.mo
+share/locale/gd/LC_MESSAGES/glib20.mo
+share/locale/gl/LC_MESSAGES/glib20.mo
+share/locale/gu/LC_MESSAGES/glib20.mo
+share/locale/he/LC_MESSAGES/glib20.mo
+share/locale/hi/LC_MESSAGES/glib20.mo
+share/locale/hr/LC_MESSAGES/glib20.mo
+share/locale/hu/LC_MESSAGES/glib20.mo
+share/locale/hy/LC_MESSAGES/glib20.mo
+share/locale/id/LC_MESSAGES/glib20.mo
+share/locale/is/LC_MESSAGES/glib20.mo
+share/locale/it/LC_MESSAGES/glib20.mo
+share/locale/ja/LC_MESSAGES/glib20.mo
+share/locale/ka/LC_MESSAGES/glib20.mo
+share/locale/kk/LC_MESSAGES/glib20.mo
+share/locale/kn/LC_MESSAGES/glib20.mo
+share/locale/ko/LC_MESSAGES/glib20.mo
+share/locale/ku/LC_MESSAGES/glib20.mo
+share/locale/lt/LC_MESSAGES/glib20.mo
+share/locale/lv/LC_MESSAGES/glib20.mo
+share/locale/mai/LC_MESSAGES/glib20.mo
+share/locale/mg/LC_MESSAGES/glib20.mo
+share/locale/mk/LC_MESSAGES/glib20.mo
+share/locale/ml/LC_MESSAGES/glib20.mo
+share/locale/mn/LC_MESSAGES/glib20.mo
+share/locale/mr/LC_MESSAGES/glib20.mo
+share/locale/ms/LC_MESSAGES/glib20.mo
+share/locale/nb/LC_MESSAGES/glib20.mo
+share/locale/nds/LC_MESSAGES/glib20.mo
+share/locale/ne/LC_MESSAGES/glib20.mo
+share/locale/nl/LC_MESSAGES/glib20.mo
+share/locale/nn/LC_MESSAGES/glib20.mo
+share/locale/oc/LC_MESSAGES/glib20.mo
+share/locale/or/LC_MESSAGES/glib20.mo
+share/locale/pa/LC_MESSAGES/glib20.mo
+share/locale/pl/LC_MESSAGES/glib20.mo
+share/locale/ps/LC_MESSAGES/glib20.mo
+share/locale/pt/LC_MESSAGES/glib20.mo
+share/locale/pt_BR/LC_MESSAGES/glib20.mo
+share/locale/ro/LC_MESSAGES/glib20.mo
+share/locale/ru/LC_MESSAGES/glib20.mo
+share/locale/rw/LC_MESSAGES/glib20.mo
+share/locale/si/LC_MESSAGES/glib20.mo
+share/locale/sk/LC_MESSAGES/glib20.mo
+share/locale/sl/LC_MESSAGES/glib20.mo
+share/locale/sq/LC_MESSAGES/glib20.mo
+share/locale/sr/LC_MESSAGES/glib20.mo
+share/locale/sr@ije/LC_MESSAGES/glib20.mo
+share/locale/sr@latin/LC_MESSAGES/glib20.mo
+share/locale/sv/LC_MESSAGES/glib20.mo
+share/locale/ta/LC_MESSAGES/glib20.mo
+share/locale/te/LC_MESSAGES/glib20.mo
+share/locale/tg/LC_MESSAGES/glib20.mo
+share/locale/th/LC_MESSAGES/glib20.mo
+share/locale/tl/LC_MESSAGES/glib20.mo
+share/locale/tr/LC_MESSAGES/glib20.mo
+share/locale/tt/LC_MESSAGES/glib20.mo
+share/locale/ug/LC_MESSAGES/glib20.mo
+share/locale/uk/LC_MESSAGES/glib20.mo
+share/locale/vi/LC_MESSAGES/glib20.mo
+share/locale/wa/LC_MESSAGES/glib20.mo
+share/locale/xh/LC_MESSAGES/glib20.mo
+share/locale/yi/LC_MESSAGES/glib20.mo
+share/locale/zh_CN/LC_MESSAGES/glib20.mo
+share/locale/zh_HK/LC_MESSAGES/glib20.mo
+share/locale/zh_TW/LC_MESSAGES/glib20.mo
+@pkgdir lib/gio/modules
diff --git a/glib2/buildlink3.mk b/glib2/buildlink3.mk
new file mode 100644
index 0000000000..844c61924e
--- /dev/null
+++ b/glib2/buildlink3.mk
@@ -0,0 +1,27 @@
+# $NetBSD: buildlink3.mk,v 1.29 2018/04/23 08:26:50 adam Exp $
+
+BUILDLINK_TREE+=	glib2
+
+.if !defined(GLIB2_BUILDLINK3_MK)
+GLIB2_BUILDLINK3_MK:=
+
+BUILDLINK_API_DEPENDS.glib2+=	glib2>=2.4.0
+BUILDLINK_ABI_DEPENDS.glib2+=	glib2>=2.34.0
+BUILDLINK_PKGSRCDIR.glib2?=	../../devel/glib2
+BUILDLINK_INCDIRS.glib2+=	include/glib/glib-2.0
+BUILDLINK_INCDIRS.glib2+=	include/glib/gio-unix-2.0
+BUILDLINK_INCDIRS.glib2+=	lib/glib-2.0/include
+
+TOOL_DEPENDS+=	glib2-tools-[0-9]*:../../devel/glib2-tools
+
+.include "../../converters/libiconv/buildlink3.mk"
+.include "../../devel/gettext-lib/buildlink3.mk"
+.include "../../devel/pcre/buildlink3.mk"
+.include "../../devel/zlib/buildlink3.mk"
+.include "../../devel/libffi/buildlink3.mk"
+.if empty(MACHINE_PLATFORM:MIRIX-5*)
+.include "../../mk/pthread.buildlink3.mk"
+.endif
+.endif # GLIB2_BUILDLINK3_MK
+
+BUILDLINK_TREE+=	-glib2
diff --git a/glib2/distinfo b/glib2/distinfo
new file mode 100644
index 0000000000..e6b75f2eb1
--- /dev/null
+++ b/glib2/distinfo
@@ -0,0 +1,38 @@
+$NetBSD: distinfo,v 1.237 2018/10/19 16:44:15 leot Exp $
+
+SHA1 (glib-2.58.2.tar.xz) = 9831bbdca749a42526d0afc4b31799e8be22037c
+RMD160 (glib-2.58.2.tar.xz) = 29102e684ab62a69cf4aad980f687c47f6356b42
+SHA512 (glib-2.58.2.tar.xz) = 4017ae308f2ef6313abbff2eb9b21ec6f8fa38935007491ca0cb4d1ffac6fedab6f50e911ac088995d6212323ba1767399f18529a2620d60378ecade193b4b1a
+Size (glib-2.58.2.tar.xz) = 4862612 bytes
+SHA1 (patch-Makefile.in) = 4d587eb9ff27ff2b3489c59388319142e2fb6ced
+SHA1 (patch-aa) = 01bdbcb6e49e440eefba966471a986215daec2e9
+SHA1 (patch-af) = f21f5c5f799189885a3826fde8ad079f599ae26b
+SHA1 (patch-ah) = d523967c88fc06f46de1d7f2eb04be65db04ada2
+SHA1 (patch-aha) = ade66edd87a5e76a1256bd8bcdc9bc3dd614885c
+SHA1 (patch-ak) = 040c679220988b31bd9d3e5c80a4fc6c2551e067
+SHA1 (patch-al) = af8428eeb6ce5e4dd70ddf972693df18d6c26d50
+SHA1 (patch-am) = 99f54927d76580dfeda2a6b1909e1bea5dbdc293
+SHA1 (patch-an) = 47986cfa2374ad4a89887bee5896d477a31f651f
+SHA1 (patch-cb) = 56e2a9b2de04c8e528faf7ce778503fa55dcc3ac
+SHA1 (patch-cd) = a8a90eca84a687400a92b0e26fafe4b9b6014ec3
+SHA1 (patch-cl) = 58e5b4a3e8cf0750ceadba30e379954d800f77f7
+SHA1 (patch-cm) = 534af37ae8f2bd667f630142058d4de5ea91be93
+SHA1 (patch-gio_gcredentialsprivate.h) = dab92e07f8357a7dc1a569e37f65f9b199aee281
+SHA1 (patch-gio_gdbus-2.0_codegen_gdbus-codegen.in) = ccbb10335fb477e347993444d68d5e88d9e93050
+SHA1 (patch-gio_giomodule.c) = 08181ad8d46dde1a028faa246a4852e474610eaa
+SHA1 (patch-gio_glocalfileinfo.c) = 8e0b7e9543ce3c702c468f56e7ecf418d70b049f
+SHA1 (patch-gio_gresource-tool.c) = 4eb7c9df25e9ac3e977edf3be8fb977a6fb39182
+SHA1 (patch-gio_gunixcredentialsmessage.c) = c13119ddd6262db7c03e53857e987f0c495d3312
+SHA1 (patch-gio_inotify_inotify-kernel.c) = 18fc55be06dfa4ebf7128b8d1888aaff3b2b95c0
+SHA1 (patch-glib_gmain.c) = d09ff66e475ee52d37ac0dcb463110f690ce6511
+SHA1 (patch-glib_gthread-posix.c) = ca93c8dc358453eb79b518c884464c90d7628888
+SHA1 (patch-glib_gtimezone.c) = 3f72bc2ed4447d60871e66984a5e3a80ca8c75f4
+SHA1 (patch-gmodule_gmodule-ar.c) = e382a0ada232e083d51cbede7f689a50ebeff4d8
+SHA1 (patch-gmodule_gmodule-dl.c) = b678a04debbc79ebb67d91db7716990658e76da4
+SHA1 (patch-gmodule_gmodule-dyld.c) = 5adf62970d9cff22d451307aaa0b00d975dab138
+SHA1 (patch-gmodule_gmodule-win32.c) = 477a861f8590a62c3dbc0aa4ad728cc86ebb34dd
+SHA1 (patch-gmodule_gmodule.c) = 55c5f9d16e3517f3fdc04d40922f50d9c66b0b9a
+SHA1 (patch-gobject_Makefile.am) = 6eed6b57f5ff0aa0dfb623110b23a3ff78aa4e75
+SHA1 (patch-gobject_Makefile.in) = a4768ff7b0607a8a4dfbb2cff087a987b451fd18
+SHA1 (patch-gobject_glib-genmarshal.in) = f21ca416d4eb4ad5a8ce3ffa053f8bcd2be8953a
+SHA1 (patch-gobject_glib-mkenums.in) = 651713a9c1fd83aea5060f996b58b35fbe3a43c7
diff --git a/glib2/files/modules.tmpl b/glib2/files/modules.tmpl
new file mode 100644
index 0000000000..f909ce496e
--- /dev/null
+++ b/glib2/files/modules.tmpl
@@ -0,0 +1,18 @@
+# $NetBSD: modules.tmpl,v 1.1 2010/11/17 14:09:55 drochner Exp $
+#
+# Rebuild the GIO modules database.
+#
+
+GIO_MODULES_DIR="@GIO_MODULES_DIR@"
+GIO_QUERYMODULES="@GIO_QUERYMODULES@"
+
+case ${STAGE} in
+POST-INSTALL)
+	${GIO_QUERYMODULES} ${GIO_MODULES_DIR}
+	;;
+POST-DEINSTALL)
+	${GIO_QUERYMODULES} ${GIO_MODULES_DIR}
+	;;
+*)
+	;;
+esac
diff --git a/glib2/files/schemas.tmpl b/glib2/files/schemas.tmpl
new file mode 100644
index 0000000000..33313ea4ce
--- /dev/null
+++ b/glib2/files/schemas.tmpl
@@ -0,0 +1,18 @@
+# $NetBSD: schemas.tmpl,v 1.1 2011/01/18 10:03:59 jmmv Exp $
+#
+# Recompile the GSettings schemas.
+#
+
+GLIB_SCHEMAS_DIR="@GLIB_SCHEMAS_DIR@"
+GLIB_COMPILE_SCHEMAS="@GLIB_COMPILE_SCHEMAS@"
+
+case "${STAGE}" in
+POST-INSTALL)
+	XDG_DATA_DIRS= "${GLIB_COMPILE_SCHEMAS}" "${GLIB_SCHEMAS_DIR}"
+	;;
+POST-DEINSTALL)
+	XDG_DATA_DIRS= "${GLIB_COMPILE_SCHEMAS}" "${GLIB_SCHEMAS_DIR}"
+	;;
+*)
+	;;
+esac
diff --git a/glib2/hacks.mk b/glib2/hacks.mk
new file mode 100644
index 0000000000..173b8d8079
--- /dev/null
+++ b/glib2/hacks.mk
@@ -0,0 +1,44 @@
+# $NetBSD: hacks.mk,v 1.10 2013/04/20 09:17:32 obache Exp $
+
+.if !defined(GLIB2_HACKS_MK)
+GLIB2_HACKS_MK=	# defined
+
+# Build without optimization. Avoids crash in libgobject on gtk2
+# initialization. Bug is triggered regardless of whether we're using gcc or
+# aCC.
+.if !empty(MACHINE_PLATFORM:MHPUX-*-hppa)
+PKG_HACKS+=	hppa-codegen
+CFLAGS:=	-O0 ${CFLAGS:C/[+,-]O[0-9]?//g}
+.endif
+
+.if ${OPSYS} == "Darwin"
+CHECK_BUILTIN.libiconv:=	yes
+.  include "../../converters/libiconv/builtin.mk"
+CHECK_BUILTIN.libiconv:=	no
+.  if !empty(USE_BUILTIN.iconv:M[Yy][Ee][Ss])
+PKG_HACKS+=		darwin-iconv
+SUBST_CLASSES+=		iconv
+SUBST_STAGE.iconv=	pre-configure
+SUBST_MESSAGE.iconv=	Changing libiconv_open to iconv_open.
+SUBST_FILES.iconv=	configure
+SUBST_SED.iconv=	-e 's,libiconv_open,iconv_open,g'
+.  endif
+.endif
+
+# Work around unresolved symbol g_test_config_vars during build
+.include "../../mk/compiler.mk"
+.if !empty(PKGSRC_COMPILER:Msunpro)
+PKG_HACKS+=		sunpro-visibility
+CONFIGURE_ARGS+=	--disable-visibility
+.endif
+
+#
+# GLib2>=2.36 depends on builtin functions which enabled with i486 and
+# later with GCC.
+#
+.if !empty(MACHINE_PLATFORM:MNetBSD-[0-5]*-i386)
+GNU_ARCH.i386=		i486
+CFLAGS+=		-march=i486
+.endif
+
+.endif
diff --git a/glib2/modules.mk b/glib2/modules.mk
new file mode 100644
index 0000000000..e563a7c701
--- /dev/null
+++ b/glib2/modules.mk
@@ -0,0 +1,23 @@
+# $NetBSD: modules.mk,v 1.1 2010/11/17 14:09:55 drochner Exp $
+#
+# This Makefile fragment is intended to be included by packages that install
+# GIO modules.  It takes care of rebuilding the corresponding databases at
+# (de)installation time.
+#
+
+.if !defined(GIO_MODULES_MK)
+GIO_MODULES_MK=	# defined
+
+GIO_QUERYMODULES=	${BUILDLINK_PREFIX.glib2}/bin/gio-querymodules
+
+FILES_SUBST+=		GIO_MODULES_DIR=${GIO_MODULES_DIR:Q}
+FILES_SUBST+=		GIO_QUERYMODULES=${GIO_QUERYMODULES:Q}
+GIO_MODULES_DIR=${BUILDLINK_PREFIX.glib2}/lib/gio/modules
+INSTALL_TEMPLATES+=	../../devel/glib2/files/modules.tmpl
+DEINSTALL_TEMPLATES+=	../../devel/glib2/files/modules.tmpl
+
+TOOLS_NOOP+=	gio-querymodules
+
+.include "../../devel/glib2/buildlink3.mk"
+
+.endif			# GIO_MODULES_MK
diff --git a/glib2/patches/patch-Makefile.in b/glib2/patches/patch-Makefile.in
new file mode 100644
index 0000000000..b838766d24
--- /dev/null
+++ b/glib2/patches/patch-Makefile.in
@@ -0,0 +1,16 @@
+$NetBSD: patch-Makefile.in,v 1.1 2017/10/13 15:35:10 prlw1 Exp $
+
+tests/gobject requires python to generate testmarshal.h so avoid
+tests directory.
+
+--- Makefile.in.orig	2017-10-13 13:38:33.856486834 +0000
++++ Makefile.in
+@@ -835,7 +835,7 @@ all_test_ltlibs = $(test_ltlibraries) $(
+ 
+ @ENABLE_INSTALLED_TESTS_TRUE@installed_test_meta_DATA = $(installed_testcases:=.test)
+ ACLOCAL_AMFLAGS = -I m4macros ${ACLOCAL_FLAGS}
+-SUBDIRS = . m4macros glib gmodule gthread gobject gio po docs tests
++SUBDIRS = . m4macros glib gmodule gthread gobject gio po docs
+ DIST_SUBDIRS = $(SUBDIRS) build win32
+ bin_SCRIPTS = glib-gettextize
+ AM_CPPFLAGS = \
diff --git a/glib2/patches/patch-aa b/glib2/patches/patch-aa
new file mode 100644
index 0000000000..bf8774c61d
--- /dev/null
+++ b/glib2/patches/patch-aa
@@ -0,0 +1,182 @@
+$NetBSD: patch-aa,v 1.62 2018/10/08 10:12:06 prlw1 Exp $
+
+- solaris sun studio check and fix
+- use pkgsrc libtool
+
+--- configure.orig	2018-04-07 02:37:11.000000000 +0000
++++ configure
+@@ -5512,6 +5513,9 @@ $as_echo_n "checking for Mac OS X Carbon
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+ /* end confdefs.h.  */
+ 
++#if MAC_OS_X_VERSION_MIN_REQUIRED < 1090
++#error too old
++#endif
+ #include <Carbon/Carbon.h>
+ #include <CoreServices/CoreServices.h>
+ 
+@@ -5530,6 +5534,9 @@ $as_echo_n "checking for Mac OS X Cocoa 
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+ /* end confdefs.h.  */
+ 
++#if MAC_OS_X_VERSION_MIN_REQUIRED < 1090
++#error too old
++#endif
+ #include <Cocoa/Cocoa.h>
+ #ifdef GNUSTEP_BASE_VERSION
+ #error "Detected GNUstep, not Cocoa"
+@@ -21597,6 +21604,8 @@ else
+ # ifdef _MSC_VER
+ #  include <malloc.h>
+ #  define alloca _alloca
++# elif defined(__NetBSD__) || defined(__FreeBSD__) || defined(__DragonFly__) || defined(__OpenBSD__)
++#   include <stdlib.h>
+ # else
+ #  ifdef HAVE_ALLOCA_H
+ #   include <alloca.h>
+@@ -22524,8 +22533,8 @@ else
+ fi
+ 
+ 
+-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether using Sun Studio C compiler" >&5
+-$as_echo_n "checking whether using Sun Studio C compiler... " >&6; }
++{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether using Sun Studio C compiler visibility" >&5
++$as_echo_n "checking whether using Sun Studio C compiler visibility... " >&6; }
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+ /* end confdefs.h.  */
+ #if defined(__SUNPRO_C) || (__SUNPRO_C >= 0x550)
+@@ -24521,16 +24530,48 @@ fi
+ 
+ case $host in
+   *-*-solaris* )
++    { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether using Sun Studio C compiler with C99" >&5
++$as_echo_n "checking whether using Sun Studio C compiler with C99... " >&6; }
++    cat confdefs.h - <<_ACEOF >conftest.$ac_ext
++/* end confdefs.h.  */
++#if defined(__STDC_VERSION__) || (__STDC_VERSION__ - 0 >= 199901L)
++#else
++# include "error: this is STD C99."
++#endif
++
++int
++main ()
++{
++
++  ;
++  return 0;
++}
++_ACEOF
++if ac_fn_c_try_compile "$LINENO"; then :
++   g_have_sunstudio_c99=yes
++else
++   g_have_sunstudio_c99=no
++fi
++rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
++    { $as_echo "$as_me:${as_lineno-$LINENO}: result: $g_have_sunstudio_c99" >&5
++$as_echo "$g_have_sunstudio_c99" >&6; }
++    if test $g_have_sunstudio_c99 = yes; then
++
++$as_echo "#define _XOPEN_SOURCE 600" >>confdefs.h
++
++    else
+ 
+ $as_echo "#define _XOPEN_SOURCE_EXTENDED 1" >>confdefs.h
+ 
+ 
+ $as_echo "#define _XOPEN_SOURCE 2" >>confdefs.h
+ 
++    fi
++
+ 
+ $as_echo "#define __EXTENSIONS__ 1" >>confdefs.h
+ 
+-     ;;
++    ;;
+ esac
+ 
+ if test "$ac_cv_func_statfs" = yes; then :
+@@ -25817,9 +25859,9 @@ if  test "$G_MODULE_IMPL" = "G_MODULE_IM
+ 	LIBS="$G_MODULE_LIBS $LIBS"
+ 	LDFLAGS="$LDFLAGS $G_MODULE_LDFLAGS"
+ 	echo "void glib_plugin_test(void) { }" > plugin.c
+-	${SHELL} ./libtool --mode=compile --tag=CC ${CC} ${CFLAGS} \
++	${SHELL} libtool --mode=compile --tag=CC ${CC} ${CFLAGS} \
+ 		${CPPFLAGS} -c -o plugin.lo plugin.c >/dev/null 2>&1
+-	${SHELL} ./libtool --mode=link --tag=CC ${CC} ${CFLAGS} \
++	${SHELL} libtool --mode=link --tag=CC ${CC} ${CFLAGS} \
+ 		${LDFLAGS} -module -o plugin.la -export-dynamic \
+ 		-shrext ".o" -avoid-version plugin.lo \
+ 		-rpath /dont/care >/dev/null 2>&1
+@@ -25989,6 +26081,7 @@ fi
+ 
+ 
+ 
++
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking for gspawn implementation" >&5
+ $as_echo_n "checking for gspawn implementation... " >&6; }
+ case "$host" in
+@@ -27039,62 +27132,8 @@ if  test x"$have_threads" = xposix; then
+       G_THREAD_LIBS="-lpthread -lthread"
+       ;;
+     *)
+-      for flag in pthread pthreads mt; do
+-        glib_save_CFLAGS="$CFLAGS"
+-        CFLAGS="$CFLAGS -$flag"
+-        if test "$cross_compiling" = yes; then :
+-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+-/* end confdefs.h.  */
+-
+-#include <pthread.h>
+-int check_me = 0;
+-void* func(void* data) {check_me = 42; return &check_me;}
+-int main()
+- { pthread_t t;
+-   void *ret;
+-   pthread_create (&t, 0, func, 0);
+-   pthread_join (t, &ret);
+-   return (check_me != 42 || ret != &check_me);
+-}
+-_ACEOF
+-if ac_fn_c_try_link "$LINENO"; then :
+-  glib_flag_works=yes
+-else
+-  glib_flag_works=no
+-fi
+-rm -f core conftest.err conftest.$ac_objext \
+-    conftest$ac_exeext conftest.$ac_ext
+-else
+-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+-/* end confdefs.h.  */
+-
+-#include <pthread.h>
+-int check_me = 0;
+-void* func(void* data) {check_me = 42; return &check_me;}
+-int main()
+- { pthread_t t;
+-   void *ret;
+-   pthread_create (&t, 0, func, 0);
+-   pthread_join (t, &ret);
+-   return (check_me != 42 || ret != &check_me);
+-}
+-_ACEOF
+-if ac_fn_c_try_run "$LINENO"; then :
+-  glib_flag_works=yes
+-else
+-  glib_flag_works=no
+-fi
+-rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
+-  conftest.$ac_objext conftest.beam conftest.$ac_ext
+-fi
+-
+-        CFLAGS="$glib_save_CFLAGS"
+-        if test $glib_flag_works = yes ; then
+-           G_THREAD_CFLAGS=-$flag
+-        G_THREAD_LIBS=-$flag
+-        break;
+-        fi
+-      done
++      G_THREAD_LIBS="${PTHREAD_LDFLAGS} ${PTHREAD_LIBS}"
++      G_THREAD_CFLAGS="${PTHREAD_CFLAGS}"
+        ;;
+   esac
+ 
diff --git a/glib2/patches/patch-af b/glib2/patches/patch-af
new file mode 100644
index 0000000000..459a8f5385
--- /dev/null
+++ b/glib2/patches/patch-af
@@ -0,0 +1,23 @@
+$NetBSD: patch-af,v 1.17 2018/04/17 08:03:38 wiz Exp $
+
+--- glib/libcharset/Makefile.in.orig	2018-04-07 02:37:16.000000000 +0000
++++ glib/libcharset/Makefile.in
+@@ -1511,18 +1511,6 @@ check-local: test-nonrecursive
+ @ENABLE_INSTALLED_TESTS_TRUE@	echo 'Exec=$(installed_testdir)/$(notdir $<)' >> $@.tmp; \
+ @ENABLE_INSTALLED_TESTS_TRUE@	mv $@.tmp $@)
+ install-exec-local: all-local
+-	$(mkinstalldirs) $(DESTDIR)$(GLIB_CHARSETALIAS_DIR)
+-	if test -f $(charset_alias); then \
+-	  sed -f ref-add.sed $(charset_alias) > $(charset_tmp) ; \
+-	  $(INSTALL_DATA) $(charset_tmp) $(charset_alias) ; \
+-	  rm -f $(charset_tmp) ; \
+-	else \
+-	  if test @GLIBC21@ = no; then \
+-	    sed -f ref-add.sed charset.alias > $(charset_tmp) ; \
+-	    $(INSTALL_DATA) $(charset_tmp) $(charset_alias) ; \
+-	    rm -f $(charset_tmp) ; \
+-	  fi ; \
+-	fi
+ 
+ uninstall-local: all-local
+ 	if test -f $(charset_alias); then \
diff --git a/glib2/patches/patch-ah b/glib2/patches/patch-ah
new file mode 100644
index 0000000000..9e0248a6f3
--- /dev/null
+++ b/glib2/patches/patch-ah
@@ -0,0 +1,24 @@
+$NetBSD: patch-ah,v 1.13 2017/10/13 15:35:10 prlw1 Exp $
+
+Set default search paths for pkgsrc.
+
+--- glib/gutils.c.orig	2017-08-15 20:27:00.000000000 +0000
++++ glib/gutils.c
+@@ -2017,7 +2017,7 @@ g_get_system_data_dirs (void)
+ 
+ #ifndef G_OS_WIN32
+       if (!data_dirs || !data_dirs[0])
+-          data_dirs = "/usr/local/share/:/usr/share/";
++          data_dirs = PREFIX "/share/";
+ 
+       data_dir_vector = g_strsplit (data_dirs, G_SEARCHPATH_SEPARATOR_S, 0);
+ #else
+@@ -2093,7 +2093,7 @@ g_get_system_config_dirs (void)
+ 	}
+ #else
+       if (!conf_dirs || !conf_dirs[0])
+-          conf_dirs = "/etc/xdg";
++          conf_dirs = PKG_SYSCONFDIR "/xdg";
+ 
+       conf_dir_vector = g_strsplit (conf_dirs, G_SEARCHPATH_SEPARATOR_S, 0);
+ #endif
diff --git a/glib2/patches/patch-aha b/glib2/patches/patch-aha
new file mode 100644
index 0000000000..beb500f9b8
--- /dev/null
+++ b/glib2/patches/patch-aha
@@ -0,0 +1,13 @@
+$NetBSD: patch-aha,v 1.2 2016/05/27 08:19:27 prlw1 Exp $
+
+--- glib/gcharset.c.orig	2016-05-10 08:54:30.000000000 +0000
++++ glib/gcharset.c
+@@ -293,7 +293,7 @@ unalias_lang (char *lang)
+   if (g_once_init_enter (&alias_table))
+     {
+       GHashTable *table = g_hash_table_new (g_str_hash, g_str_equal);
+-      read_aliases ("/usr/share/locale/locale.alias", table);
++      read_aliases (PREFIX "/" PKGLOCALEDIR "/locale/locale.alias", table);
+       g_once_init_leave (&alias_table, table);
+     }
+ 
diff --git a/glib2/patches/patch-ak b/glib2/patches/patch-ak
new file mode 100644
index 0000000000..15f78cc0c4
--- /dev/null
+++ b/glib2/patches/patch-ak
@@ -0,0 +1,80 @@
+$NetBSD: patch-ak,v 1.21 2018/10/08 10:12:06 prlw1 Exp $
+
+- solaris sun studio check and fix
+- use pkgsrc libtool
+
+--- configure.ac.orig	2017-06-22 13:15:19.000000000 +0000
++++ configure.ac
+@@ -687,7 +687,7 @@ int main (void)
+ AC_MSG_RESULT($g_have_gnuc_visibility)
+ AM_CONDITIONAL(HAVE_GNUC_VISIBILITY, [test x$g_have_gnuc_visibility = xyes])
+ 
+-AC_MSG_CHECKING([whether using Sun Studio C compiler])
++AC_MSG_CHECKING([whether using Sun Studio C compiler visibility])
+ AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[#if defined(__SUNPRO_C) || (__SUNPRO_C >= 0x550)
+ #else
+ # include "error: this is not Sun Studio."
+@@ -1040,10 +1040,22 @@ AC_CHECK_TYPE([struct ip_mreqn], [
+ 
+ case $host in
+   *-*-solaris* )
+-     AC_DEFINE(_XOPEN_SOURCE_EXTENDED, 1, Needed to get declarations for msg_control and msg_controllen on Solaris)
+-     AC_DEFINE(_XOPEN_SOURCE,          2, Needed to get declarations for msg_control and msg_controllen on Solaris)
+-     AC_DEFINE(__EXTENSIONS__,         1, Needed to get declarations for msg_control and msg_controllen on Solaris)
+-     ;;
++    AC_MSG_CHECKING([whether using Sun Studio C compiler with C99])
++    AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[#if defined(__STDC_VERSION__) || (__STDC_VERSION__ - 0 >= 199901L)
++#else
++# include "error: this is STD C99."
++#endif
++    ]], [[]])], [ g_have_sunstudio_c99=yes ], [ g_have_sunstudio_c99=no ])
++    AC_MSG_RESULT($g_have_sunstudio_c99)
++    if test $g_have_sunstudio_c99 = yes; then
++      AC_DEFINE(_XOPEN_SOURCE,          600, Needed to get declarations for msg_control and msg_controllen on Solaris)
++    else
++      AC_DEFINE(_XOPEN_SOURCE_EXTENDED, 1, Needed to get declarations for msg_control and msg_controllen on Solaris)
++      AC_DEFINE(_XOPEN_SOURCE,          2, Needed to get declarations for msg_control and msg_controllen on Solaris)
++    fi
++
++    AC_DEFINE(__EXTENSIONS__,         1, Needed to get declarations for msg_control and msg_controllen on Solaris)
++    ;;
+ esac
+ 
+ dnl
+@@ -1427,9 +1440,9 @@ AS_IF([ test "$G_MODULE_IMPL" = "G_MODUL
+ 	LDFLAGS="$LDFLAGS $G_MODULE_LDFLAGS"
+ dnl *** check for OSF1/5.0 RTLD_GLOBAL brokenness
+ 	echo "void glib_plugin_test(void) { }" > plugin.c
+-	${SHELL} ./libtool --mode=compile --tag=CC ${CC} ${CFLAGS} \
++	${SHELL} libtool --mode=compile --tag=CC ${CC} ${CFLAGS} \
+ 		${CPPFLAGS} -c -o plugin.lo plugin.c >/dev/null 2>&1
+-	${SHELL} ./libtool --mode=link --tag=CC ${CC} ${CFLAGS} \
++	${SHELL} libtool --mode=link --tag=CC ${CC} ${CFLAGS} \
+ 		${LDFLAGS} -module -o plugin.la -export-dynamic \
+ 		-shrext ".o" -avoid-version plugin.lo \
+ 		-rpath /dont/care >/dev/null 2>&1
+@@ -1919,22 +1965,8 @@ AS_IF([ test x"$have_threads" = xposix],
+       G_THREAD_LIBS="-lpthread -lthread"
+       ;;
+     *)
+-      for flag in pthread pthreads mt; do
+-        glib_save_CFLAGS="$CFLAGS"
+-        CFLAGS="$CFLAGS -$flag"
+-        AC_TRY_RUN(glib_thread_test(0),
+-                   glib_flag_works=yes,
+-                   glib_flag_works=no,
+-                   [AC_LINK_IFELSE([AC_LANG_SOURCE(glib_thread_test(0))],
+-                                   glib_flag_works=yes,
+-                                   glib_flag_works=no)])
+-        CFLAGS="$glib_save_CFLAGS"
+-        if test $glib_flag_works = yes ; then
+-           G_THREAD_CFLAGS=-$flag
+-        G_THREAD_LIBS=-$flag
+-        break;
+-        fi
+-      done
++      G_THREAD_LIBS="${PTHREAD_LDFLAGS} ${PTHREAD_LIBS}"
++      G_THREAD_CFLAGS="${PTHREAD_CFLAGS}"
+        ;;
+   esac
+ ])
diff --git a/glib2/patches/patch-al b/glib2/patches/patch-al
new file mode 100644
index 0000000000..d7fc5ccb42
--- /dev/null
+++ b/glib2/patches/patch-al
@@ -0,0 +1,22 @@
+$NetBSD: patch-al,v 1.9 2018/04/17 08:03:38 wiz Exp $
+
+https://bugzilla.gnome.org/show_bug.cgi?id=790698
+
+--- glib/tests/convert.c.orig	2018-02-06 15:44:20.000000000 +0000
++++ glib/tests/convert.c
+@@ -65,6 +65,7 @@ test_one_half (void)
+   gsize bytes_read = 0;
+   gsize bytes_written = 0;
+   GError *error = NULL;  
++#if 0 /* these tests depend on GNU iconv specific behaviour */
+ 
+   out = g_convert (in_utf8, -1,
+ 		   "ISO-8859-1", "UTF-8",
+@@ -100,6 +101,7 @@ test_one_half (void)
+   g_assert_cmpint (bytes_written, ==, 1);
+   g_assert_cmpstr (out, ==, "a");
+   g_free (out);
++#endif
+ }
+ 
+ static void
diff --git a/glib2/patches/patch-am b/glib2/patches/patch-am
new file mode 100644
index 0000000000..ae24e2e5b5
--- /dev/null
+++ b/glib2/patches/patch-am
@@ -0,0 +1,14 @@
+$NetBSD: patch-am,v 1.9 2012/11/13 21:23:07 adam Exp $
+
+--- gio/tests/converter-stream.c.orig	2012-09-03 14:24:05.000000000 +0000
++++ gio/tests/converter-stream.c
+@@ -1173,7 +1173,9 @@ main (int   argc,
+   CharsetTest charset_tests[] = {
+     { "/converter-input-stream/charset/utf8->latin1", "UTF-8", "\303\205rr Sant\303\251", "ISO-8859-1", "\305rr Sant\351", 0 },
+     { "/converter-input-stream/charset/latin1->utf8", "ISO-8859-1", "\305rr Sant\351", "UTF-8", "\303\205rr Sant\303\251", 0 },
++#if 0 /* this depends on GNU iconv specific behaviour */
+     { "/converter-input-stream/charset/fallbacks", "UTF-8", "Some characters just don't fit into latin1: πא", "ISO-8859-1", "Some characters just don't fit into latin1: \\CF\\80\\D7\\90", 4 },
++#endif
+   };
+ 
+   gint i;
diff --git a/glib2/patches/patch-an b/glib2/patches/patch-an
new file mode 100644
index 0000000000..26bf7f7233
--- /dev/null
+++ b/glib2/patches/patch-an
@@ -0,0 +1,188 @@
+$NetBSD: patch-an,v 1.19 2018/08/19 18:32:27 wiz Exp $
+
+- Leave gdbus-2.0/codegen sudirectory to devel/gdbus-codegen package.
+- Don't compile tests as they include gdbus-codegen tests.
+- Don't install completion data.
+- Re-enable gdesktopappinfo on Darwin.
+
+--- gio/Makefile.in.orig	2018-08-17 00:27:41.000000000 +0000
++++ gio/Makefile.in
+@@ -175,7 +175,7 @@ TESTS = $(am__EXEEXT_2)
+ @HAVE_FAM_TRUE@am__append_27 = fam
+ @OS_UNIX_TRUE@am__append_28 = xdgmime/libxdgmime.la
+ @OS_UNIX_TRUE@am__append_29 = xdgmime/libxdgmime.la
+-@OS_COCOA_FALSE@@OS_UNIX_TRUE@am__append_30 = gdesktopappinfo.h
++@OS_UNIX_TRUE@am__append_30 = gdesktopappinfo.h
+ @HAVE_NETLINK_TRUE@@OS_UNIX_TRUE@am__append_31 = \
+ @HAVE_NETLINK_TRUE@@OS_UNIX_TRUE@	gnetworkmonitornetlink.c \
+ @HAVE_NETLINK_TRUE@@OS_UNIX_TRUE@	gnetworkmonitornetlink.h \
+@@ -186,8 +186,8 @@ TESTS = $(am__EXEEXT_2)
+ @OS_WIN32_TRUE@am__append_32 = gwin32appinfo.c gwin32appinfo.h
+ @OS_WIN32_TRUE@am__append_33 = gcontenttype-win32.c
+ @OS_WIN32_TRUE@am__append_34 = -lshlwapi -lws2_32 -ldnsapi -liphlpapi
+-@OS_COCOA_FALSE@@OS_UNIX_TRUE@am__append_35 = gcontenttype.c
+-@OS_COCOA_FALSE@@OS_UNIX_TRUE@am__append_36 = gdesktopappinfo.c
++@OS_UNIX_TRUE@am__append_35 = gcontenttype.c
++@OS_UNIX_TRUE@am__append_36 = gdesktopappinfo.c
+ @MAC_OS_X_9_TRUE@@OS_COCOA_TRUE@am__append_37 = \
+ @MAC_OS_X_9_TRUE@@OS_COCOA_TRUE@	gcocoanotificationbackend.c
+ 
+@@ -205,7 +205,7 @@ bin_PROGRAMS = gio-querymodules$(EXEEXT)
+ 
+ # ------------------------------------------------------------------------
+ # gapplication(1) tool
+-@OS_COCOA_FALSE@@OS_UNIX_TRUE@am__append_46 = gapplication
++@OS_UNIX_TRUE@am__append_46 = gapplication
+ subdir = gio
+ ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
+ am__aclocal_m4_deps = $(top_srcdir)/m4macros/attributes.m4 \
+@@ -231,7 +231,7 @@ mkinstalldirs = $(install_sh) -d
+ CONFIG_HEADER = $(top_builddir)/config.h
+ CONFIG_CLEAN_FILES = gnetworking.h gio.rc
+ CONFIG_CLEAN_VPATH_FILES =
+-@OS_COCOA_FALSE@@OS_UNIX_TRUE@am__EXEEXT_1 = gapplication$(EXEEXT)
++@OS_UNIX_TRUE@am__EXEEXT_1 = gapplication$(EXEEXT)
+ am__installdirs = "$(DESTDIR)$(bindir)" \
+ 	"$(DESTDIR)$(installed_testdir)" \
+ 	"$(DESTDIR)$(installed_testdir)" "$(DESTDIR)$(libdir)" \
+@@ -535,11 +535,10 @@ am__objects_5 = libgio_2_0_la-gappinfo.l
+ 	libgio_2_0_la-gliststore.lo $(am__objects_2) $(am__objects_3) \
+ 	$(am__objects_4) $(am__objects_1)
+ @OS_WIN32_TRUE@am__objects_6 = libgio_2_0_la-gwin32appinfo.lo
+-@OS_COCOA_FALSE@@OS_UNIX_TRUE@am__objects_7 = libgio_2_0_la-gdesktopappinfo.lo
++@OS_UNIX_TRUE@am__objects_7 = libgio_2_0_la-gdesktopappinfo.lo
+ am__objects_8 = $(am__objects_6) $(am__objects_7)
+ @OS_WIN32_TRUE@am__objects_9 = libgio_2_0_la-gcontenttype-win32.lo
+-@OS_COCOA_FALSE@@OS_UNIX_TRUE@am__objects_10 =  \
+-@OS_COCOA_FALSE@@OS_UNIX_TRUE@	libgio_2_0_la-gcontenttype.lo
++@OS_UNIX_TRUE@am__objects_10 = libgio_2_0_la-gcontenttype.lo
+ am__objects_11 = $(am__objects_9) $(am__objects_10)
+ am__objects_12 = libgio_2_0_la-xdp-dbus.lo
+ am__objects_13 = libgio_2_0_la-gnetworkmonitorportal.lo \
+@@ -603,13 +602,10 @@ libgio_2_0_la_LINK = $(LIBTOOL) $(AM_V_l
+ 	$(CFLAGS) $(libgio_2_0_la_LDFLAGS) $(LDFLAGS) -o $@
+ libgio_objc_2_0_la_LIBADD =
+ am__libgio_objc_2_0_la_SOURCES_DIST = gnextstepsettingsbackend.c \
+-	gosxcontenttype.c gosxappinfo.c gosxappinfo.h \
+ 	gcocoanotificationbackend.c
+ @MAC_OS_X_9_TRUE@@OS_COCOA_TRUE@am__objects_23 = libgio_objc_2_0_la-gcocoanotificationbackend.lo
+ @OS_COCOA_TRUE@am_libgio_objc_2_0_la_OBJECTS =  \
+ @OS_COCOA_TRUE@	libgio_objc_2_0_la-gnextstepsettingsbackend.lo \
+-@OS_COCOA_TRUE@	libgio_objc_2_0_la-gosxcontenttype.lo \
+-@OS_COCOA_TRUE@	libgio_objc_2_0_la-gosxappinfo.lo \
+ @OS_COCOA_TRUE@	$(am__objects_23)
+ libgio_objc_2_0_la_OBJECTS = $(am_libgio_objc_2_0_la_OBJECTS)
+ libgio_objc_2_0_la_LINK = $(LIBTOOL) $(AM_V_lt) --tag=CC \
+@@ -618,15 +614,15 @@ libgio_objc_2_0_la_LINK = $(LIBTOOL) $(A
+ 	$(libgio_objc_2_0_la_LDFLAGS) $(LDFLAGS) -o $@
+ @OS_COCOA_TRUE@am_libgio_objc_2_0_la_rpath =
+ am__gapplication_SOURCES_DIST = gapplication-tool.c
+-@OS_COCOA_FALSE@@OS_UNIX_TRUE@am_gapplication_OBJECTS =  \
+-@OS_COCOA_FALSE@@OS_UNIX_TRUE@	gapplication-tool.$(OBJEXT)
++@OS_UNIX_TRUE@am_gapplication_OBJECTS =  \
++@OS_UNIX_TRUE@	gapplication-tool.$(OBJEXT)
+ gapplication_OBJECTS = $(am_gapplication_OBJECTS)
+-@OS_COCOA_FALSE@@OS_UNIX_TRUE@gapplication_DEPENDENCIES =  \
+-@OS_COCOA_FALSE@@OS_UNIX_TRUE@	libgio-2.0.la \
+-@OS_COCOA_FALSE@@OS_UNIX_TRUE@	$(top_builddir)/gobject/libgobject-2.0.la \
+-@OS_COCOA_FALSE@@OS_UNIX_TRUE@	$(top_builddir)/gmodule/libgmodule-2.0.la \
+-@OS_COCOA_FALSE@@OS_UNIX_TRUE@	$(top_builddir)/glib/libglib-2.0.la \
+-@OS_COCOA_FALSE@@OS_UNIX_TRUE@	$(am__DEPENDENCIES_1)
++@OS_UNIX_TRUE@gapplication_DEPENDENCIES =  \
++@OS_UNIX_TRUE@	libgio-2.0.la \
++@OS_UNIX_TRUE@	$(top_builddir)/gobject/libgobject-2.0.la \
++@OS_UNIX_TRUE@	$(top_builddir)/gmodule/libgmodule-2.0.la \
++@OS_UNIX_TRUE@	$(top_builddir)/glib/libglib-2.0.la \
++@OS_UNIX_TRUE@	$(am__DEPENDENCIES_1)
+ am_gdbus_OBJECTS = gdbus-tool.$(OBJEXT)
+ gdbus_OBJECTS = $(am_gdbus_OBJECTS)
+ gdbus_DEPENDENCIES = libgio-2.0.la \
+@@ -1189,8 +1185,7 @@ am__set_b = \
+     *) \
+       b='$*';; \
+   esac
+-DIST_SUBDIRS = gdbus-2.0/codegen xdgmime inotify kqueue win32 . tests \
+-	fam
++DIST_SUBDIRS = xdgmime inotify kqueue win32 . fam
+ am__DIST_COMMON = $(srcdir)/Makefile.in $(srcdir)/gio.rc.in \
+ 	$(srcdir)/gnetworking.h.in $(top_srcdir)/depcomp \
+ 	$(top_srcdir)/glib.mk $(top_srcdir)/test-driver \
+@@ -1294,6 +1289,7 @@ GTKDOC_DEPS_LIBS = @GTKDOC_DEPS_LIBS@
+ GTKDOC_MKPDF = @GTKDOC_MKPDF@
+ GTKDOC_REBASE = @GTKDOC_REBASE@
+ G_LIBS_EXTRA = @G_LIBS_EXTRA@
++G_MODULE_BROKEN_DLOPEN_NULL = @G_MODULE_BROKEN_DLOPEN_NULL@
+ G_MODULE_BROKEN_RTLD_GLOBAL = @G_MODULE_BROKEN_RTLD_GLOBAL@
+ G_MODULE_HAVE_DLERROR = @G_MODULE_HAVE_DLERROR@
+ G_MODULE_IMPL = @G_MODULE_IMPL@
+@@ -1571,8 +1567,8 @@ all_test_ltlibs = $(test_ltlibraries) $(
+ @ENABLE_INSTALLED_TESTS_TRUE@                      $(dist_test_scripts) $(dist_installed_test_scripts)
+ 
+ @ENABLE_INSTALLED_TESTS_TRUE@installed_test_meta_DATA = $(installed_testcases:=.test)
+-SUBDIRS = gdbus-2.0/codegen $(am__append_15) $(am__append_18) \
+-	$(am__append_21) $(am__append_24) . tests $(am__append_27)
++SUBDIRS = $(am__append_15) $(am__append_18) $(am__append_21) \
++	$(am__append_24) . $(am__append_27)
+ @MS_LIB_AVAILABLE_TRUE@@OS_WIN32_AND_DLL_COMPILATION_TRUE@install_ms_lib_cmd = $(INSTALL) gio-2.0.lib $(DESTDIR)$(libdir)
+ @MS_LIB_AVAILABLE_TRUE@@OS_WIN32_AND_DLL_COMPILATION_TRUE@uninstall_ms_lib_cmd = -rm $(DESTDIR)$(libdir)/gio-2.0.lib
+ AM_CPPFLAGS = \
+@@ -2036,8 +2032,8 @@ libgio_2_0_la_LDFLAGS = $(GLIB_LINK_FLAG
+ @OS_COCOA_TRUE@libgio_objc_2_0_la_CPPFLAGS = $(libgio_2_0_la_CPPFLAGS)
+ @OS_COCOA_TRUE@libgio_objc_2_0_la_LDFLAGS = $(libgio_2_0_la_LDFLAGS) -Wl,-framework,Foundation -Wl,-framework,AppKit
+ @OS_COCOA_TRUE@libgio_objc_2_0_la_SOURCES =  \
+-@OS_COCOA_TRUE@	gnextstepsettingsbackend.c gosxcontenttype.c \
+-@OS_COCOA_TRUE@	gosxappinfo.c gosxappinfo.h $(am__append_37)
++@OS_COCOA_TRUE@	gnextstepsettingsbackend.c \
++@OS_COCOA_TRUE@	$(am__append_37)
+ EXTRA_libgio_2_0_la_DEPENDENCIES = $(gio_win32_res) $(gio_def) $(platform_deps)
+ gio_headers = \
+ 	gappinfo.h 		\
+@@ -2206,12 +2202,12 @@ gdbus_LDADD = libgio-2.0.la 				\
+ 	$(top_builddir)/glib/libglib-2.0.la		\
+ 	$(NULL)
+ 
+-@OS_COCOA_FALSE@@OS_UNIX_TRUE@gapplication_SOURCES = gapplication-tool.c
+-@OS_COCOA_FALSE@@OS_UNIX_TRUE@gapplication_LDADD = libgio-2.0.la 			\
+-@OS_COCOA_FALSE@@OS_UNIX_TRUE@	$(top_builddir)/gobject/libgobject-2.0.la	\
+-@OS_COCOA_FALSE@@OS_UNIX_TRUE@	$(top_builddir)/gmodule/libgmodule-2.0.la 	\
+-@OS_COCOA_FALSE@@OS_UNIX_TRUE@	$(top_builddir)/glib/libglib-2.0.la		\
+-@OS_COCOA_FALSE@@OS_UNIX_TRUE@	$(NULL)
++@OS_UNIX_TRUE@gapplication_SOURCES = gapplication-tool.c
++@OS_UNIX_TRUE@gapplication_LDADD = libgio-2.0.la 			\
++@OS_UNIX_TRUE@	$(top_builddir)/gobject/libgobject-2.0.la	\
++@OS_UNIX_TRUE@	$(top_builddir)/gmodule/libgmodule-2.0.la 	\
++@OS_UNIX_TRUE@	$(top_builddir)/glib/libglib-2.0.la		\
++@OS_UNIX_TRUE@	$(NULL)
+ 
+ completiondir = $(datadir)/bash-completion/completions
+ completion_DATA = \
+@@ -2877,8 +2873,6 @@ distclean-compile:
+ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libgio_2_0_la-xdp-dbus.Plo@am__quote@ # am--include-marker
+ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libgio_objc_2_0_la-gcocoanotificationbackend.Plo@am__quote@ # am--include-marker
+ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libgio_objc_2_0_la-gnextstepsettingsbackend.Plo@am__quote@ # am--include-marker
+-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libgio_objc_2_0_la-gosxappinfo.Plo@am__quote@ # am--include-marker
+-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libgio_objc_2_0_la-gosxcontenttype.Plo@am__quote@ # am--include-marker
+ @AMDEP_TRUE@@am__include@ @am__quote@gvdb/$(DEPDIR)/gvdb-builder.Po@am__quote@ # am--include-marker
+ @AMDEP_TRUE@@am__include@ @am__quote@gvdb/$(DEPDIR)/libgio_2_0_la-gvdb-reader.Plo@am__quote@ # am--include-marker
+ 
+@@ -4459,20 +4453,6 @@ libgio_objc_2_0_la-gnextstepsettingsback
+ @AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ @am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgio_objc_2_0_la_CPPFLAGS) $(CPPFLAGS) $(libgio_objc_2_0_la_CFLAGS) $(CFLAGS) -c -o libgio_objc_2_0_la-gnextstepsettingsbackend.lo `test -f 'gnextstepsettingsbackend.c' || echo '$(srcdir)/'`gnextstepsettingsbackend.c
+ 
+-libgio_objc_2_0_la-gosxcontenttype.lo: gosxcontenttype.c
+-@am__fastdepCC_TRUE@	$(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgio_objc_2_0_la_CPPFLAGS) $(CPPFLAGS) $(libgio_objc_2_0_la_CFLAGS) $(CFLAGS) -MT libgio_objc_2_0_la-gosxcontenttype.lo -MD -MP -MF $(DEPDIR)/libgio_objc_2_0_la-gosxcontenttype.Tpo -c -o libgio_objc_2_0_la-gosxcontenttype.lo `test -f 'gosxcontenttype.c' || echo '$(srcdir)/'`gosxcontenttype.c
+-@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/libgio_objc_2_0_la-gosxcontenttype.Tpo $(DEPDIR)/libgio_objc_2_0_la-gosxcontenttype.Plo
+-@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='gosxcontenttype.c' object='libgio_objc_2_0_la-gosxcontenttype.lo' libtool=yes @AMDEPBACKSLASH@
+-@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+-@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgio_objc_2_0_la_CPPFLAGS) $(CPPFLAGS) $(libgio_objc_2_0_la_CFLAGS) $(CFLAGS) -c -o libgio_objc_2_0_la-gosxcontenttype.lo `test -f 'gosxcontenttype.c' || echo '$(srcdir)/'`gosxcontenttype.c
+-
+-libgio_objc_2_0_la-gosxappinfo.lo: gosxappinfo.c
+-@am__fastdepCC_TRUE@	$(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgio_objc_2_0_la_CPPFLAGS) $(CPPFLAGS) $(libgio_objc_2_0_la_CFLAGS) $(CFLAGS) -MT libgio_objc_2_0_la-gosxappinfo.lo -MD -MP -MF $(DEPDIR)/libgio_objc_2_0_la-gosxappinfo.Tpo -c -o libgio_objc_2_0_la-gosxappinfo.lo `test -f 'gosxappinfo.c' || echo '$(srcdir)/'`gosxappinfo.c
+-@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/libgio_objc_2_0_la-gosxappinfo.Tpo $(DEPDIR)/libgio_objc_2_0_la-gosxappinfo.Plo
+-@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='gosxappinfo.c' object='libgio_objc_2_0_la-gosxappinfo.lo' libtool=yes @AMDEPBACKSLASH@
+-@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+-@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgio_objc_2_0_la_CPPFLAGS) $(CPPFLAGS) $(libgio_objc_2_0_la_CFLAGS) $(CFLAGS) -c -o libgio_objc_2_0_la-gosxappinfo.lo `test -f 'gosxappinfo.c' || echo '$(srcdir)/'`gosxappinfo.c
+-
+ libgio_objc_2_0_la-gcocoanotificationbackend.lo: gcocoanotificationbackend.c
+ @am__fastdepCC_TRUE@	$(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgio_objc_2_0_la_CPPFLAGS) $(CPPFLAGS) $(libgio_objc_2_0_la_CFLAGS) $(CFLAGS) -MT libgio_objc_2_0_la-gcocoanotificationbackend.lo -MD -MP -MF $(DEPDIR)/libgio_objc_2_0_la-gcocoanotificationbackend.Tpo -c -o libgio_objc_2_0_la-gcocoanotificationbackend.lo `test -f 'gcocoanotificationbackend.c' || echo '$(srcdir)/'`gcocoanotificationbackend.c
+ @am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/libgio_objc_2_0_la-gcocoanotificationbackend.Tpo $(DEPDIR)/libgio_objc_2_0_la-gcocoanotificationbackend.Plo
diff --git a/glib2/patches/patch-cb b/glib2/patches/patch-cb
new file mode 100644
index 0000000000..3b554df0aa
--- /dev/null
+++ b/glib2/patches/patch-cb
@@ -0,0 +1,13 @@
+$NetBSD: patch-cb,v 1.3 2012/05/01 18:45:52 adam Exp $
+
+--- gio/xdgmime/xdgmime.c.orig	2008-09-02 15:09:17.000000000 +0000
++++ gio/xdgmime/xdgmime.c
+@@ -257,7 +257,7 @@ xdg_run_command_on_dirs (XdgDirectoryFun
+ 
+   xdg_data_dirs = getenv ("XDG_DATA_DIRS");
+   if (xdg_data_dirs == NULL)
+-    xdg_data_dirs = "/usr/local/share/:/usr/share/";
++    xdg_data_dirs = PREFIX "/share/";
+ 
+   ptr = xdg_data_dirs;
+ 
diff --git a/glib2/patches/patch-cd b/glib2/patches/patch-cd
new file mode 100644
index 0000000000..68ff3d3306
--- /dev/null
+++ b/glib2/patches/patch-cd
@@ -0,0 +1,41 @@
+$NetBSD: patch-cd,v 1.9 2016/04/07 18:33:05 prlw1 Exp $
+
+sysutils/gio-fam builds the gio/fam backend as a separate module.  Force it
+to link against the installed version of glib2, as it is not rebuilt by the
+package.
+
+--- gio/fam/Makefile.in.orig	2016-02-16 11:35:28.000000000 +0000
++++ gio/fam/Makefile.in
+@@ -183,10 +183,7 @@ am__installdirs = "$(DESTDIR)$(giomodule
+ LTLIBRARIES = $(giomodule_LTLIBRARIES) $(installed_test_LTLIBRARIES) \
+ 	$(noinst_LTLIBRARIES)
+ am__DEPENDENCIES_1 =
+-libgiofam_la_DEPENDENCIES = $(top_builddir)/gio/libgio-2.0.la \
+-	$(top_builddir)/gobject/libgobject-2.0.la \
+-	$(top_builddir)/glib/libglib-2.0.la $(am__DEPENDENCIES_1) \
+-	$(am__DEPENDENCIES_1)
++libgiofam_la_DEPENDENCIES = $(am__DEPENDENCIES_1)
+ am_libgiofam_la_OBJECTS = libgiofam_la-gfamfilemonitor.lo
+ libgiofam_la_OBJECTS = $(am_libgiofam_la_OBJECTS)
+ AM_V_lt = $(am__v_lt_@AM_V@)
+@@ -789,9 +786,7 @@ libgiofam_la_CFLAGS = \
+ 
+ libgiofam_la_LDFLAGS = $(module_flags)
+ libgiofam_la_LIBADD = \
+-		$(top_builddir)/gio/libgio-2.0.la \
+-		$(top_builddir)/gobject/libgobject-2.0.la \
+-		$(top_builddir)/glib/libglib-2.0.la \
++		$$(pkg-config --libs gio-2.0 gobject-2.0 glib-2.0) \
+ 		$(GLIB_LIBS) \
+ 		$(FAM_LIBS) \
+ 		$(NULL)
+@@ -1559,9 +1554,6 @@ check-local: test-nonrecursive
+ @ENABLE_INSTALLED_TESTS_TRUE@	mv $@.tmp $@)
+ 
+ install-data-hook:
+-	if $(RUN_QUERY_MODULES) && test -z "$(DESTDIR)" ; then					\
+-		$(top_builddir)/gio/gio-querymodules$(EXEEXT) $(DESTDIR)$(GIO_MODULE_DIR) ;	\
+-	fi
+ 
+ uninstall-local:
+ 	$(RM) $(DESTDIR)$(GIO_MODULE_DIR)/giomodule.cache
diff --git a/glib2/patches/patch-cl b/glib2/patches/patch-cl
new file mode 100644
index 0000000000..ce22b9a6cc
--- /dev/null
+++ b/glib2/patches/patch-cl
@@ -0,0 +1,74 @@
+$NetBSD: patch-cl,v 1.15 2018/08/19 18:32:27 wiz Exp $
+
+- Leave gdbus-2.0/codegen sudirectory to devel/gdbus-codegen package.
+- Don't compile tests as they include gdbus-codegen tests.
+- Don't install completion data.
+- Re-enable gdesktopappinfo on Darwin.
+
+--- gio/Makefile.am.orig	2018-08-17 00:03:20.000000000 +0000
++++ gio/Makefile.am
+@@ -1,6 +1,6 @@
+ include $(top_srcdir)/glib.mk
+ 
+-SUBDIRS = gdbus-2.0/codegen
++SUBDIRS = 
+ 
+ if OS_UNIX
+ SUBDIRS += xdgmime
+@@ -246,7 +246,7 @@ platform_libadd += win32/libgiowin32.la
+ platform_deps += win32/libgiowin32.la
+ endif
+ 
+-SUBDIRS += . tests
++SUBDIRS += .
+ 
+ if HAVE_FAM
+ SUBDIRS += fam
+@@ -255,9 +255,7 @@ endif
+ if OS_UNIX
+ platform_libadd += xdgmime/libxdgmime.la
+ platform_deps += xdgmime/libxdgmime.la
+-if !OS_COCOA
+ appinfo_headers += gdesktopappinfo.h
+-endif
+ 
+ 
+ unix_sources = \
+@@ -396,11 +394,9 @@ portal_sources = \
+ 	$(NULL)
+ 
+ if OS_UNIX
+-if !OS_COCOA
+ contenttype_sources += gcontenttype.c
+ appinfo_sources += gdesktopappinfo.c
+ endif
+-endif
+ 
+ gio_base_sources =		\
+ 	gappinfo.c 		\
+@@ -610,9 +606,6 @@ libgio_objc_2_0_la_CPPFLAGS = $(libgio_2
+ libgio_objc_2_0_la_LDFLAGS = $(libgio_2_0_la_LDFLAGS) -Wl,-framework,Foundation -Wl,-framework,AppKit
+ libgio_objc_2_0_la_SOURCES = \
+ 	gnextstepsettingsbackend.c \
+-	gosxcontenttype.c \
+-	gosxappinfo.c \
+-	gosxappinfo.h
+ if MAC_OS_X_9
+ libgio_objc_2_0_la_SOURCES += \
+ 	gcocoanotificationbackend.c
+@@ -893,7 +886,6 @@ gdbus_LDADD = libgio-2.0.la 				\
+ 	$(NULL)
+ 
+ if OS_UNIX
+-if !OS_COCOA
+ # ------------------------------------------------------------------------
+ # gapplication(1) tool
+ bin_PROGRAMS += gapplication
+@@ -904,7 +896,6 @@ gapplication_LDADD = libgio-2.0.la 			\
+ 	$(top_builddir)/glib/libglib-2.0.la		\
+ 	$(NULL)
+ endif
+-endif
+ 
+ completiondir = $(datadir)/bash-completion/completions
+ completion_DATA = \
diff --git a/glib2/patches/patch-cm b/glib2/patches/patch-cm
new file mode 100644
index 0000000000..f813946030
--- /dev/null
+++ b/glib2/patches/patch-cm
@@ -0,0 +1,32 @@
+$NetBSD: patch-cm,v 1.3 2013/12/08 13:08:59 prlw1 Exp $
+
+sysutils/gio-fam builds the gio/fam backend as a separate module.  Force it
+to link against the installed version of glib2, as it is not rebuilt by the
+package.
+(patch-cd)
+--- gio/fam/Makefile.am.orig	2012-03-11 23:55:40.000000000 +0000
++++ gio/fam/Makefile.am
+@@ -25,11 +25,9 @@ libgiofam_la_CFLAGS = \
+ 	-DGIO_COMPILATION		\
+ 	-DG_DISABLE_DEPRECATED
+ 
+-libgiofam_la_LDFLAGS = $(module_flags)
++libgiofam_la_LDFLAGS = $(module_flags) \
++		$$(pkg-config --libs gio-2.0 gobject-2.0 glib-2.0)
+ libgiofam_la_LIBADD = \
+-		$(top_builddir)/gio/libgio-2.0.la \
+-		$(top_builddir)/gobject/libgobject-2.0.la \
+-		$(top_builddir)/glib/libglib-2.0.la \
+ 		$(GLIB_LIBS) \
+ 		$(FAM_LIBS) \
+ 		$(NULL)
+@@ -41,9 +39,6 @@ RUN_QUERY_MODULES=true
+ endif
+ 
+ install-data-hook:
+-	if $(RUN_QUERY_MODULES) && test -z "$(DESTDIR)" ; then					\
+-		$(top_builddir)/gio/gio-querymodules$(EXEEXT) $(DESTDIR)$(GIO_MODULE_DIR) ;	\
+-	fi
+ 
+ uninstall-local:
+ 	$(RM) $(DESTDIR)$(GIO_MODULE_DIR)/giomodule.cache
diff --git a/glib2/patches/patch-gio_gcredentialsprivate.h b/glib2/patches/patch-gio_gcredentialsprivate.h
new file mode 100644
index 0000000000..1ef198765f
--- /dev/null
+++ b/glib2/patches/patch-gio_gcredentialsprivate.h
@@ -0,0 +1,15 @@
+$NetBSD: patch-gio_gcredentialsprivate.h,v 1.3 2018/10/19 16:44:15 leot Exp $
+
+NetBSD has G_CREDENTIALS_SOCKET_GET_CREDENTIALS_SUPPORTED.
+
+--- gio/gcredentialsprivate.h.orig	2017-07-13 23:03:38.000000000 +0000
++++ gio/gcredentialsprivate.h
+@@ -47,7 +47,7 @@
+ #define G_CREDENTIALS_USE_NETBSD_UNPCBID 1
+ #define G_CREDENTIALS_NATIVE_TYPE G_CREDENTIALS_TYPE_NETBSD_UNPCBID
+ #define G_CREDENTIALS_NATIVE_SIZE (sizeof (struct unpcbid))
+-/* #undef G_CREDENTIALS_UNIX_CREDENTIALS_MESSAGE_SUPPORTED */
++#define G_CREDENTIALS_SOCKET_GET_CREDENTIALS_SUPPORTED 1
+ #define G_CREDENTIALS_SPOOFING_SUPPORTED 1
+ 
+ #elif defined(__OpenBSD__)
diff --git a/glib2/patches/patch-gio_gdbus-2.0_codegen_gdbus-codegen.in b/glib2/patches/patch-gio_gdbus-2.0_codegen_gdbus-codegen.in
new file mode 100644
index 0000000000..1d58e0f88e
--- /dev/null
+++ b/glib2/patches/patch-gio_gdbus-2.0_codegen_gdbus-codegen.in
@@ -0,0 +1,13 @@
+$NetBSD: patch-gio_gdbus-2.0_codegen_gdbus-codegen.in,v 1.1 2017/10/15 08:23:06 prlw1 Exp $
+
+Revert 683809d5 Use env for gdbus-codegen's script
+https://bugzilla.gnome.org/show_bug.cgi?id=788527
+
+--- gio/gdbus-2.0/codegen/gdbus-codegen.in.orig	2017-07-15 12:05:03.000000000 +0000
++++ gio/gdbus-2.0/codegen/gdbus-codegen.in
+@@ -1,4 +1,4 @@
+-#!/usr/bin/env @PYTHON@
++#!@PYTHON@
+ 
+ # GDBus - GLib D-Bus Library
+ #
diff --git a/glib2/patches/patch-gio_giomodule.c b/glib2/patches/patch-gio_giomodule.c
new file mode 100644
index 0000000000..6b3c3794a7
--- /dev/null
+++ b/glib2/patches/patch-gio_giomodule.c
@@ -0,0 +1,37 @@
+$NetBSD: patch-gio_giomodule.c,v 1.3 2018/05/21 08:39:38 jperkin Exp $
+
+Re-enable gdesktopappinfo on Darwin.
+
+--- gio/giomodule.c.orig	2017-06-22 12:52:49.000000000 +0000
++++ gio/giomodule.c
+@@ -43,12 +43,9 @@
+ #endif
+ #include <glib/gstdio.h>
+ 
+-#if defined(G_OS_UNIX) && !defined(HAVE_COCOA)
++#if defined(G_OS_UNIX)
+ #include "gdesktopappinfo.h"
+ #endif
+-#ifdef HAVE_COCOA
+-#include "gosxappinfo.h"
+-#endif
+ 
+ #ifdef HAVE_COCOA
+ #include <AvailabilityMacros.h>
+@@ -978,7 +975,7 @@ _g_io_modules_ensure_extension_points_re
+     {
+       registered_extensions = TRUE;
+       
+-#if defined(G_OS_UNIX) && !defined(HAVE_COCOA)
++#if defined(G_OS_UNIX)
+ #if !GLIB_CHECK_VERSION (3, 0, 0)
+       ep = g_io_extension_point_register (G_DESKTOP_APP_INFO_LOOKUP_EXTENSION_POINT_NAME);
+       G_GNUC_BEGIN_IGNORE_DEPRECATIONS
+@@ -1119,7 +1116,6 @@ _g_io_modules_ensure_loaded (void)
+ #endif
+ #ifdef HAVE_COCOA
+       g_type_ensure (g_nextstep_settings_backend_get_type ());
+-      g_type_ensure (g_osx_app_info_get_type ());
+ #endif
+ #ifdef G_OS_UNIX
+       g_type_ensure (_g_unix_volume_monitor_get_type ());
diff --git a/glib2/patches/patch-gio_glocalfileinfo.c b/glib2/patches/patch-gio_glocalfileinfo.c
new file mode 100644
index 0000000000..d1f5573a3c
--- /dev/null
+++ b/glib2/patches/patch-gio_glocalfileinfo.c
@@ -0,0 +1,15 @@
+$NetBSD: patch-gio_glocalfileinfo.c,v 1.3 2018/05/21 08:39:38 jperkin Exp $
+
+Re-enable gdesktopappinfo on Darwin.
+
+--- gio/glocalfileinfo.c.orig	2018-01-08 21:34:19.000000000 +0000
++++ gio/glocalfileinfo.c
+@@ -1290,7 +1290,7 @@ get_content_type (const char          *b
+ 
+       content_type = g_content_type_guess (basename, NULL, 0, &result_uncertain);
+       
+-#if !defined(G_OS_WIN32) && !defined(HAVE_COCOA)
++#if !defined(G_OS_WIN32)
+       if (!fast && result_uncertain && path != NULL)
+ 	{
+ 	  guchar sniff_buffer[4096];
diff --git a/glib2/patches/patch-gio_gresource-tool.c b/glib2/patches/patch-gio_gresource-tool.c
new file mode 100644
index 0000000000..79ef4e0220
--- /dev/null
+++ b/glib2/patches/patch-gio_gresource-tool.c
@@ -0,0 +1,16 @@
+$NetBSD: patch-gio_gresource-tool.c,v 1.1 2012/07/12 14:43:26 jperkin Exp $
+
+--- gio/gresource-tool.c.orig	Thu Jul 12 09:13:01 2012
++++ gio/gresource-tool.c	Thu Jul 12 09:13:06 2012
+@@ -31,6 +31,11 @@
+ #include <locale.h>
+ 
+ #ifdef HAVE_LIBELF
++/* Solaris native libelf does not support largefile in 32-bit mode */
++#  if defined(__sun) && defined(__i386)
++#    undef  _FILE_OFFSET_BITS
++#    define _FILE_OFFSET_BITS   32
++#  endif
+ #include <libelf.h>
+ #include <gelf.h>
+ #include <sys/mman.h>
diff --git a/glib2/patches/patch-gio_gunixcredentialsmessage.c b/glib2/patches/patch-gio_gunixcredentialsmessage.c
new file mode 100644
index 0000000000..99b1dc5345
--- /dev/null
+++ b/glib2/patches/patch-gio_gunixcredentialsmessage.c
@@ -0,0 +1,18 @@
+$NetBSD: patch-gio_gunixcredentialsmessage.c,v 1.3 2018/10/19 16:44:15 leot Exp $
+
+Remove unused NetBSD case (G_CREDENTIALS_TYPE_NETBSD_UNPCBID does
+not support that, LOCAL_CREDS should be probably be used instead.
+Please not that before NetBSD 8.0 LOCAL_CREDS did not have an sc_pid
+field making it probably not suitable as GCredentials mechanism).
+
+--- gio/gunixcredentialsmessage.c.orig	2017-07-13 23:03:39.000000000 +0000
++++ gio/gunixcredentialsmessage.c
+@@ -89,8 +89,6 @@ g_unix_credentials_message_get_msg_type 
+   return SCM_CREDENTIALS;
+ #elif G_CREDENTIALS_USE_FREEBSD_CMSGCRED
+   return SCM_CREDS;
+-#elif G_CREDENTIALS_USE_NETBSD_UNPCBID
+-  return SCM_CREDS;
+ #elif G_CREDENTIALS_USE_SOLARIS_UCRED
+   return SCM_UCRED;
+ #elif G_CREDENTIALS_UNIX_CREDENTIALS_MESSAGE_SUPPORTED
diff --git a/glib2/patches/patch-gio_inotify_inotify-kernel.c b/glib2/patches/patch-gio_inotify_inotify-kernel.c
new file mode 100644
index 0000000000..e2ad322877
--- /dev/null
+++ b/glib2/patches/patch-gio_inotify_inotify-kernel.c
@@ -0,0 +1,16 @@
+$NetBSD: patch-gio_inotify_inotify-kernel.c,v 1.1 2016/04/13 10:13:43 jperkin Exp $
+
+Use _XOPEN_NAME_MAX in lieu of NAME_MAX for SunOS.
+
+--- gio/inotify/inotify-kernel.c.orig	2016-02-23 22:25:36.000000000 +0000
++++ gio/inotify/inotify-kernel.c
+@@ -36,6 +36,9 @@
+ #include "glib-private.h"
+ 
+ /* From inotify(7) */
++#if !defined(NAME_MAX) && defined(_XOPEN_NAME_MAX)
++#define NAME_MAX             _XOPEN_NAME_MAX
++#endif
+ #define MAX_EVENT_SIZE       (sizeof(struct inotify_event) + NAME_MAX + 1)
+ 
+ /* Amount of time to sleep on receipt of uninteresting events */
diff --git a/glib2/patches/patch-glib_gmain.c b/glib2/patches/patch-glib_gmain.c
new file mode 100644
index 0000000000..e87a1ab7ca
--- /dev/null
+++ b/glib2/patches/patch-glib_gmain.c
@@ -0,0 +1,81 @@
+$NetBSD: patch-glib_gmain.c,v 1.1 2015/01/25 06:54:28 pho Exp $
+
+Imported patch from the upstream Bugzilla:
+
+  Bug 728123 - glib2 @2.40.0 issues a "Got weird mach timebase info" error (Macports, PPC)
+  https://bugzilla.gnome.org/show_bug.cgi?id=728123
+
+Tested on powerpc-apple-darwin9.
+
+--- glib/gmain.c.orig	2014-11-09 21:54:26.000000000 +0000
++++ glib/gmain.c
+@@ -2694,47 +2694,31 @@ g_get_monotonic_time (void)
+ gint64
+ g_get_monotonic_time (void)
+ {
+-  static mach_timebase_info_data_t timebase_info;
++  mach_timebase_info_data_t timebase_info;
++  guint64 val;
+ 
+-  if (timebase_info.denom == 0)
+-    {
+-      /* This is a fraction that we must use to scale
+-       * mach_absolute_time() by in order to reach nanoseconds.
+-       *
+-       * We've only ever observed this to be 1/1, but maybe it could be
+-       * 1000/1 if mach time is microseconds already, or 1/1000 if
+-       * picoseconds.  Try to deal nicely with that.
+-       */
+-      mach_timebase_info (&timebase_info);
+-
+-      /* We actually want microseconds... */
+-      if (timebase_info.numer % 1000 == 0)
+-        timebase_info.numer /= 1000;
+-      else
+-        timebase_info.denom *= 1000;
+-
+-      /* We want to make the numer 1 to avoid having to multiply... */
+-      if (timebase_info.denom % timebase_info.numer == 0)
+-        {
+-          timebase_info.denom /= timebase_info.numer;
+-          timebase_info.numer = 1;
+-        }
+-      else
+-        {
+-          /* We could just multiply by timebase_info.numer below, but why
+-           * bother for a case that may never actually exist...
+-           *
+-           * Plus -- performing the multiplication would risk integer
+-           * overflow.  If we ever actually end up in this situation, we
+-           * should more carefully evaluate the correct course of action.
+-           */
+-          mach_timebase_info (&timebase_info); /* Get a fresh copy for a better message */
+-          g_error ("Got weird mach timebase info of %d/%d.  Please file a bug against GLib.",
+-                   timebase_info.numer, timebase_info.denom);
+-        }
++  /* we get nanoseconds from mach_absolute_time() using timebase_info */
++  mach_timebase_info (&timebase_info);
++  val = mach_absolute_time();
++
++  if (timebase_info.numer != timebase_info.denom)
++    {
++      guint64 t_high, t_low;
++      guint64 result_high, result_low;
++
++      /* 64 bit x 32 bit / 32 bit with 96-bit intermediate 
++       * algorithm lifted from qemu */
++      t_low = (val & 0xffffffffLL) * (guint64)timebase_info.numer;
++      t_high = (val >> 32) * (guint64)timebase_info.numer;
++      t_high += (t_low >> 32);
++      result_high = t_high / (guint64)timebase_info.denom;
++      result_low = (((t_high % (guint64)timebase_info.denom) << 32) +
++                   (t_low & 0xffffffff)) / (guint64)timebase_info.denom;
++      val = ((result_high << 32) | result_low);
+     }
+ 
+-  return mach_absolute_time () / timebase_info.denom;
++  /* nanoseconds to microseconds */
++  return val / 1000;
+ }
+ #else
+ gint64
diff --git a/glib2/patches/patch-glib_gthread-posix.c b/glib2/patches/patch-glib_gthread-posix.c
new file mode 100644
index 0000000000..ca948280cb
--- /dev/null
+++ b/glib2/patches/patch-glib_gthread-posix.c
@@ -0,0 +1,36 @@
+$NetBSD: patch-glib_gthread-posix.c,v 1.2 2014/09/14 23:35:23 prlw1 Exp $
+
+https://bugzilla.gnome.org/show_bug.cgi?id=736651
+
+--- glib/gthread-posix.c.orig	2014-02-22 15:29:07.000000000 +0000
++++ glib/gthread-posix.c
+@@ -644,6 +644,7 @@ g_cond_impl_new (void)
+ #elif defined (HAVE_PTHREAD_CONDATTR_SETCLOCK) && defined (CLOCK_MONOTONIC)
+   if G_UNLIKELY ((status = pthread_condattr_setclock (&attr, CLOCK_MONOTONIC)) != 0)
+     g_thread_abort (status, "pthread_condattr_setclock");
++#elif defined (CLOCK_MONOTONIC)
+ #else
+ #error Cannot support GCond on your platform.
+ #endif
+@@ -892,6 +893,21 @@ g_cond_wait_until (GCond  *cond,
+     if ((status = pthread_cond_timedwait (g_cond_get_impl (cond), g_mutex_get_impl (mutex), &ts)) == 0)
+       return TRUE;
+   }
++#elif defined (CLOCK_MONOTONIC)
++  {
++    gint64 monotonic_now = g_get_monotonic_time ();
++    gint64 real_end_time;
++
++    if (end_time <= monotonic_now)
++      return FALSE;
++
++    real_end_time = g_get_real_time () + (end_time - monotonic_now);
++
++    ts.tv_sec = real_end_time / 1000000;
++    ts.tv_nsec = (real_end_time % 1000000) * 1000;
++    if ((status = pthread_cond_timedwait (g_cond_get_impl (cond), g_mutex_get_impl (mutex), &ts)) == 0)
++      return TRUE;
++  }
+ #else
+ #error Cannot support GCond on your platform.
+ #endif
diff --git a/glib2/patches/patch-glib_gtimezone.c b/glib2/patches/patch-glib_gtimezone.c
new file mode 100644
index 0000000000..110368511a
--- /dev/null
+++ b/glib2/patches/patch-glib_gtimezone.c
@@ -0,0 +1,21 @@
+$NetBSD: patch-glib_gtimezone.c,v 1.3 2018/04/17 08:03:38 wiz Exp $
+
+Bug 730332 - glib uses wrong timezone transition with zoneinfo 2014c
+https://bugzilla.gnome.org/show_bug.cgi?id=730332
+
+Patch from John Ralls.
+
+--- glib/gtimezone.c.orig	2013-11-07 15:29:13.000000000 +0000
++++ glib/gtimezone.c
+@@ -1558,7 +1558,11 @@ interval_end (GTimeZone *tz,
+               guint      interval)
+ {
+   if (tz->transitions && interval < tz->transitions->len)
++  {
++    if ((TRANSITION(interval)).time == G_MININT64)
++      return G_MININT64;
+     return (TRANSITION(interval)).time - 1;
++  }
+   return G_MAXINT64;
+ }
+ 
diff --git a/glib2/patches/patch-gmodule_gmodule-ar.c b/glib2/patches/patch-gmodule_gmodule-ar.c
new file mode 100644
index 0000000000..820e53fc4b
--- /dev/null
+++ b/glib2/patches/patch-gmodule_gmodule-ar.c
@@ -0,0 +1,29 @@
+$NetBSD: patch-gmodule_gmodule-ar.c,v 1.1 2018/10/08 10:12:06 prlw1 Exp $
+
+https://gitlab.gnome.org/GNOME/glib/issues/19
+
+--- gmodule/gmodule-ar.c.orig	2017-07-13 23:03:39.000000000 +0000
++++ gmodule/gmodule-ar.c
+@@ -141,19 +141,10 @@ _g_module_self (void)
+ }
+ 
+ static void
+-_g_module_close (gpointer handle,
+-		 gboolean is_unref)
++_g_module_close (gpointer handle)
+ {
+-  /* are there any systems out there that have dlopen()/dlclose()
+-   * without a reference count implementation?
+-   */
+-  is_unref |= 1;
+-  
+-  if (is_unref)
+-    {
+-      if (dlclose (handle) != 0)
+-	g_module_set_error (fetch_dlerror (TRUE));
+-    }
++  if (dlclose (handle) != 0)
++    g_module_set_error (fetch_dlerror (TRUE));
+ }
+ 
+ static gpointer
diff --git a/glib2/patches/patch-gmodule_gmodule-dl.c b/glib2/patches/patch-gmodule_gmodule-dl.c
new file mode 100644
index 0000000000..192f373917
--- /dev/null
+++ b/glib2/patches/patch-gmodule_gmodule-dl.c
@@ -0,0 +1,57 @@
+$NetBSD: patch-gmodule_gmodule-dl.c,v 1.1 2018/10/08 10:12:06 prlw1 Exp $
+
+RTLD_GLOBAL is a bug.
+https://gitlab.gnome.org/GNOME/glib/issues/19
+
+--- gmodule/gmodule-dl.c.orig	2018-01-08 21:34:19.000000000 +0000
++++ gmodule/gmodule-dl.c
+@@ -106,46 +106,13 @@ _g_module_open (const gchar *file_name,
+ static gpointer
+ _g_module_self (void)
+ {
+-  gpointer handle;
+-  
+-  /* to query symbols from the program itself, special link options
+-   * are required on some systems.
+-   */
+-
+-  /* On Android 32 bit (i.e. not __LP64__), dlopen(NULL)
+-   * does not work reliable and generally no symbols are found
+-   * at all. RTLD_DEFAULT works though.
+-   * On Android 64 bit, dlopen(NULL) seems to work but dlsym(handle)
+-   * always returns 'undefined symbol'. Only if RTLD_DEFAULT or 
+-   * NULL is given, dlsym returns an appropriate pointer.
+-   */
+-#if defined(__BIONIC__)
+-  handle = RTLD_DEFAULT;
+-#else
+-  handle = dlopen (NULL, RTLD_GLOBAL | RTLD_LAZY);
+-#endif
+-  if (!handle)
+-    g_module_set_error (fetch_dlerror (TRUE));
+-  
+-  return handle;
++  return RTLD_DEFAULT;
+ }
+ 
+ static void
+-_g_module_close (gpointer handle,
+-		 gboolean is_unref)
++_g_module_close (gpointer handle)
+ {
+-  /* are there any systems out there that have dlopen()/dlclose()
+-   * without a reference count implementation?
+-   *
+-   * See above for the Android special case
+-   */
+-#if defined(__BIONIC__)
+-  is_unref = (handle != RTLD_DEFAULT);
+-#else
+-  is_unref |= 1;
+-#endif
+-
+-  if (is_unref)
++  if (handle != RTLD_DEFAULT)
+     {
+       if (dlclose (handle) != 0)
+ 	g_module_set_error (fetch_dlerror (TRUE));
diff --git a/glib2/patches/patch-gmodule_gmodule-dyld.c b/glib2/patches/patch-gmodule_gmodule-dyld.c
new file mode 100644
index 0000000000..d2bc967419
--- /dev/null
+++ b/glib2/patches/patch-gmodule_gmodule-dyld.c
@@ -0,0 +1,32 @@
+$NetBSD: patch-gmodule_gmodule-dyld.c,v 1.1 2018/10/08 10:12:06 prlw1 Exp $
+
+http://bugzilla.gnome.org/show_bug.cgi?id=107626
+https://gitlab.gnome.org/GNOME/glib/issues/19
+
+--- gmodule/gmodule-dyld.c.orig	2018-09-14 11:18:09.527026838 +0000
++++ gmodule/gmodule-dyld.c
+@@ -96,8 +96,7 @@ _g_module_self (void)
+ }
+ 
+ static void
+-_g_module_close (gpointer handle,
+-		 gboolean is_unref)
++_g_module_close (gpointer handle)
+ {
+   if (handle == &self_module)
+     return;
+@@ -118,7 +117,13 @@ _g_module_symbol (gpointer     handle,
+       if (NSIsSymbolNameDefined (symbol_name))
+ 	sym = NSLookupAndBindSymbol (symbol_name);
+       else
+-	sym = NULL;
++	{
++	  GModule *mod;
++	  for (mod = modules, sym = NULL; mod && !sym; mod = mod->next)
++	    {
++	      sym = NSLookupSymbolInModule (mod->handle, symbol_name);
++	    }
++	}
+     }
+   else
+     sym = NSLookupSymbolInModule (handle, symbol_name);
diff --git a/glib2/patches/patch-gmodule_gmodule-win32.c b/glib2/patches/patch-gmodule_gmodule-win32.c
new file mode 100644
index 0000000000..bd3a6c852b
--- /dev/null
+++ b/glib2/patches/patch-gmodule_gmodule-win32.c
@@ -0,0 +1,16 @@
+$NetBSD: patch-gmodule_gmodule-win32.c,v 1.1 2018/10/08 10:12:06 prlw1 Exp $
+
+https://gitlab.gnome.org/GNOME/glib/issues/19
+
+--- gmodule/gmodule-win32.c.orig	2018-01-08 21:34:19.000000000 +0000
++++ gmodule/gmodule-win32.c
+@@ -105,8 +105,7 @@ _g_module_self (void)
+ }
+ 
+ static void
+-_g_module_close (gpointer handle,
+-		 gboolean is_unref)
++_g_module_close (gpointer handle)
+ {
+   if (handle != null_module_handle)
+     if (!FreeLibrary (handle))
diff --git a/glib2/patches/patch-gmodule_gmodule.c b/glib2/patches/patch-gmodule_gmodule.c
new file mode 100644
index 0000000000..67e4a3d85b
--- /dev/null
+++ b/glib2/patches/patch-gmodule_gmodule.c
@@ -0,0 +1,57 @@
+$NetBSD: patch-gmodule_gmodule.c,v 1.1 2018/10/08 10:12:06 prlw1 Exp $
+
+RTLD_GLOBAL is a bug.
+https://gitlab.gnome.org/GNOME/glib/issues/19
+
+--- gmodule/gmodule.c.orig	2018-01-08 21:34:19.000000000 +0000
++++ gmodule/gmodule.c
+@@ -207,8 +207,7 @@ struct _GModule
+ static gpointer		_g_module_open		(const gchar	*file_name,
+ 						 gboolean	 bind_lazy,
+ 						 gboolean	 bind_local);
+-static void		_g_module_close		(gpointer	 handle,
+-						 gboolean	 is_unref);
++static void		_g_module_close		(gpointer	 handle);
+ static gpointer		_g_module_self		(void);
+ static gpointer		_g_module_symbol	(gpointer	 handle,
+ 						 const gchar	*symbol_name);
+@@ -299,8 +298,7 @@ _g_module_open (const gchar	*file_name,
+   return NULL;
+ }
+ static void
+-_g_module_close	(gpointer	 handle,
+-		 gboolean	 is_unref)
++_g_module_close	(gpointer	 handle)
+ {
+ }
+ static gpointer
+@@ -510,9 +508,8 @@ g_module_open (const gchar    *file_name
+       if (!main_module)
+ 	{
+ 	  handle = _g_module_self ();
+-/* On Android 64 bit, RTLD_DEFAULT is (void *)0x0
+- * so it always fails to create main_module if file_name is NULL */
+-#if !defined(__BIONIC__) || !defined(__LP64__)
++/* On Linux, handle == RTLD_DEFAULT is (void *)0x0 */
++#if G_MODULE_IMPL != G_MODULE_IMPL_DL
+ 	  if (handle)
+ #endif
+ 	    {
+@@ -617,7 +614,7 @@ g_module_open (const gchar    *file_name
+       module = g_module_find_by_handle (handle);
+       if (module)
+ 	{
+-	  _g_module_close (module->handle, TRUE);
++	  _g_module_close (module->handle);
+ 	  module->ref_count++;
+ 	  g_module_set_error (NULL);
+ 	  
+@@ -723,7 +720,7 @@ g_module_close (GModule *module)
+ 	}
+       module->next = NULL;
+       
+-      _g_module_close (module->handle, FALSE);
++      _g_module_close (module->handle);
+       g_free (module->file_name);
+       g_free (module);
+     }
diff --git a/glib2/patches/patch-gobject_Makefile.am b/glib2/patches/patch-gobject_Makefile.am
new file mode 100644
index 0000000000..3bdc07a2e5
--- /dev/null
+++ b/glib2/patches/patch-gobject_Makefile.am
@@ -0,0 +1,14 @@
+$NetBSD: patch-gobject_Makefile.am,v 1.1 2017/10/13 15:35:10 prlw1 Exp $
+
+Move python scripts to py-glib2-tools package.
+
+--- gobject/Makefile.am.orig	2017-07-13 23:03:39.000000000 +0000
++++ gobject/Makefile.am
+@@ -187,7 +187,6 @@ libgobject_2_0_la_SOURCES = $(gobject_ta
+ # programs to compile and install
+ #
+ bin_PROGRAMS = gobject-query
+-bin_SCRIPTS = glib-mkenums glib-genmarshal
+ # source files
+ gobject_query_SOURCES = gobject-query.c
+ # link programs against libgobject
diff --git a/glib2/patches/patch-gobject_Makefile.in b/glib2/patches/patch-gobject_Makefile.in
new file mode 100644
index 0000000000..fd214de9a8
--- /dev/null
+++ b/glib2/patches/patch-gobject_Makefile.in
@@ -0,0 +1,14 @@
+$NetBSD: patch-gobject_Makefile.in,v 1.1 2017/10/13 15:35:10 prlw1 Exp $
+
+Move python scripts to py-glib2-tools package.
+
+--- gobject/Makefile.in.orig	2017-10-02 15:02:26.000000000 +0000
++++ gobject/Makefile.in
+@@ -1007,7 +1007,6 @@ gen_sources = xgen-gmh xgen-gmc xgen-gms
+ # target platform:
+ libgobjectinclude_HEADERS = $(gobject_target_headers)
+ libgobject_2_0_la_SOURCES = $(gobject_target_sources)
+-bin_SCRIPTS = glib-mkenums glib-genmarshal
+ # source files
+ gobject_query_SOURCES = gobject-query.c
+ # link programs against libgobject
diff --git a/glib2/patches/patch-gobject_glib-genmarshal.in b/glib2/patches/patch-gobject_glib-genmarshal.in
new file mode 100644
index 0000000000..bb689af617
--- /dev/null
+++ b/glib2/patches/patch-gobject_glib-genmarshal.in
@@ -0,0 +1,13 @@
+$NetBSD: patch-gobject_glib-genmarshal.in,v 1.1 2017/10/15 08:23:06 prlw1 Exp $
+
+Revert 4395a897 Use env to run the Python-based tools
+https://bugzilla.gnome.org/show_bug.cgi?id=788527
+
+--- gobject/glib-genmarshal.in.orig	2017-09-04 12:42:30.000000000 +0000
++++ gobject/glib-genmarshal.in
+@@ -1,4 +1,4 @@
+-#!/usr/bin/env @PYTHON@
++#!@PYTHON@
+ 
+ # pylint: disable=too-many-lines, missing-docstring, invalid-name
+ 
diff --git a/glib2/patches/patch-gobject_glib-mkenums.in b/glib2/patches/patch-gobject_glib-mkenums.in
new file mode 100644
index 0000000000..f9ed3e4f26
--- /dev/null
+++ b/glib2/patches/patch-gobject_glib-mkenums.in
@@ -0,0 +1,26 @@
+$NetBSD: patch-gobject_glib-mkenums.in,v 1.4 2018/04/01 20:26:25 joerg Exp $
+
+- Revert 4395a897 Use env to run the Python-based tools
+  https://bugzilla.gnome.org/show_bug.cgi?id=788527
+- Do not print failing characters that might not be ASCII
+
+--- gobject/glib-mkenums.in.orig	2018-01-08 20:00:49.000000000 +0000
++++ gobject/glib-mkenums.in
+@@ -1,4 +1,4 @@
+-#!/usr/bin/env @PYTHON@
++#!@PYTHON@
+ 
+ # If the code below looks horrible and unpythonic, do not panic.
+ #
+@@ -88,9 +88,8 @@ else:
+ # https://bugzilla.gnome.org/show_bug.cgi?id=785113#c20
+ def replace_and_warn(err):
+     # 7 characters of context either side of the offending character
+-    print_warning('UnicodeWarning: {} at {} ({})'.format(
+-        err.reason, err.start,
+-        err.object[err.start - 7:err.end + 7]))
++    print_warning('UnicodeWarning: {} at {}'.format(
++        err.reason, err.start))
+     return ('?', err.end)
+ 
+ codecs.register_error('replace_and_warn', replace_and_warn)
diff --git a/glib2/schemas.mk b/glib2/schemas.mk
new file mode 100644
index 0000000000..14a916074a
--- /dev/null
+++ b/glib2/schemas.mk
@@ -0,0 +1,29 @@
+# $NetBSD: schemas.mk,v 1.2 2011/02/20 15:07:40 jmmv Exp $
+#
+# This Makefile fragment is intended to be included by packages that install
+# GSettings schemas.  It takes care of rebuilding the corresponding databases
+# at (de)installation time.
+#
+
+.if !defined(GLIB_SCHEMAS_MK)
+GLIB_SCHEMAS_MK=	# defined
+
+GLIB_COMPILE_SCHEMAS=	${BUILDLINK_PREFIX.glib2}/bin/glib-compile-schemas
+
+FILES_SUBST+=		GLIB_SCHEMAS_DIR=${GLIB_SCHEMAS_DIR:Q}
+FILES_SUBST+=		GLIB_COMPILE_SCHEMAS=${GLIB_COMPILE_SCHEMAS:Q}
+GLIB_SCHEMAS_DIR=${BUILDLINK_PREFIX.glib2}/share/glib-2.0/schemas
+INSTALL_TEMPLATES+=	../../devel/glib2/files/schemas.tmpl
+DEINSTALL_TEMPLATES+=	../../devel/glib2/files/schemas.tmpl
+
+TOOLS_NOOP+=		glib-compile-schemas
+# Adding glib-compile-schemas to TOOLS_NOOP is not enough to mock out all
+# calls to this tool.  Some packages do 'pkg-config --variable
+# glib_compile_schemas gio-2.0' to get the path to the binary.  Do a best
+# effort here by overriding the possibly-defined GLIB_COMPILE_SCHEMAS
+# variable in the offending Makefiles.
+MAKE_FLAGS+=		GLIB_COMPILE_SCHEMAS=glib-compile-schemas
+
+.include "../../devel/glib2/buildlink3.mk"
+
+.endif			# GLIB_SCHEMAS_MK


Home | Main Index | Thread Index | Old Index