summaryrefslogtreecommitdiff
path: root/devel/glib2
diff options
context:
space:
mode:
authorprlw1 <prlw1>2014-09-05 20:49:55 +0000
committerprlw1 <prlw1>2014-09-05 20:49:55 +0000
commit797967791d8646da0dc8160760c4f3dee5cb52fb (patch)
treea23f4a8bcdc3fae7c88baaef1f19de02efc45f32 /devel/glib2
parent361f6a522478af4dc75132df4e41b9f8dfeeb505 (diff)
downloadpkgsrc-797967791d8646da0dc8160760c4f3dee5cb52fb.tar.gz
Update glib2 to 2.40.0
Patches removed: - patch-ai Fixed in e3fa9c9a (Bug 583321) - patch-cj Fixed in c58a7b8c (Bugs 641350 711047) - patch-gio_gdbusmessage.c Fixed in 0167c334 - patch-gio_gfile.c Fixed in 091e4660 (Bug 721034) - patch-gio_glocalfile.c Fixed in 7eb1e5fc (Bug 708860) - patch-ap and - patch-aq Credentials have changed, see below Patches changed: - patch-aa Second chunk fixed in 838b49ea (Bug 711600) - patch-ba Third chunk fixed in 7cf221aa Reworked Bug 583330 Patches added: - patch-glib_gmessages.c Closes PR pkg/48318, fixed in 7328089e (Bug 720708) - patch-gio_gcredentials.c - patch-gio_gcredentialsprivate.h - patch-gio_gioenums.h - patch-gio_gsocket.c - patch-gio_gunixcredentialsmessage.c - patch-gio_tests_credentials.c Attempt at gcredential support for NetBSD (Bug 728256) Highlights from changes: * Disable IPv6 testcases on machines without IPv6 * Document that it is a bad idea to match on generic error codes * This release introduces a hard dependency on present and functioning clock_gettime() and CLOCK_MONOTONIC. It also introduces a dependency on pthread_condattr_setclock() unless your system happens to have pthread_cond_timedwait_relative_np() (as do Mac OS and Android). This release is known to be broken with at least GNU/Hurd, pending addition of working pthread_condattr_setclock(CLOCK_MONOTONIC) there. * New API: g_str_to_ascii() * fix a crasher in code from gdbus-codegen * improvements to gobject gdb helper script * Portability: - fix a deadlock issue with kqueue on FreeBSD - work around a quirk in the sunstudio compiler - rename a variable to avoid clashing with a macro definition of 'environ' on some platforms (like mingw) - use POSIX-specified <poll.h> over <sys/poll.h> - many improvements to Visual Studio projects and and some build fixes for Windows * tests - a very large number of improvements in test coverage - don't report skipped tests as failures - return 77 if we skip all tests in an executable - improve gtest documentation and fix some minor issues - fix g_test_trap_reached_timeout() return value - remove some dead code uncovered during test coverage expansion - Use tap mode for installed tests too, when using tap * fix races in unix signal handling * make our GVariant-based commandline tools (glib-compile-schemas, gdbus, gapplication) print out GVariant parse errors in context * GApplication now has a --gapplication-service command line switch to turn any GApplication into a service * improve compatibility of GApplication and GOptionContext * fix gsettings.m4 wrt. builddir != srcdir with non-recursive make * use a directory monitor in GKeyfileSettingsBackend * improve robustness of some GIcon classes * Portability - Remove alleged support for OS/2 - Remove alleged support for BeOS - Remove alleged support for last-millennium Unixes - Require C90 compliance - Require POSIX.1 (1990) compliance on Unix - Require GNU make * GSettings fixes/improvements - GSettingsSchema API is now more powerful and consistent - new GSettingsSchemaKey API allows accessing metadata for keys: type, default value, range and the long-awaited support for summary and description - GSettingsSchemaSource gains support for listing schemas within a source. Deprecate the global API that did this for the default source. - 'gsettings list-schemas' now works properly with --schemadir - deprecate a bunch of now-redundant functionality on GSettings - add API to GSettings for getting the default value of a key (as set by the sysadmin) - add API to GSettings for determining if the user has assigned a particular value to a key (ie: we are not just reading the default) - ignore qualified tags and attributes appearing in schema files * Applications/Actions - make GSimpleAction a bit more strict with respect to state changes that would violate the interface (ie: by changing the state type after construction) - throw an error when attempting to 'Describe' a non-existent action via D-Bus instead of returning a bogus description - throw an error when attempting to invoke unsupported methods on an Application (eg: 'Open' on an app that doesn't HANDLES_OPEN) instead of emitting a g_critical() in context of the app (which is not itself at fault for the errant call) * Appinfo - substantially rework GDesktopAppInfo to reduce the amount of disk accesses that are performed in common situations - add a new class: GAppInfoMonitor for discovering when applications are installed/removed - add a new g_desktop_app_info_search() API for searching for installed applications by name, keywords, etc. * GMarkup: add new G_MARKUP_IGNORE_QUALIFIED flag for skipping over "qualified" tags and attributes (those with a colon in the name, such as 'my:tag') * GDBus - ignore qualified tags, as above - GTestDBus: unset all D-Bus addresses (such as STARTER) to ensure that test programs don't pick them up - add new session_bus_run() convenience in the tests and use it * GRand: use real random data as a seed on win32 and use the timestamp/pid/uid fallback only on UNIX machines where we can't open '/dev/urandom'. This may cause issues with older mingw32 releases due to a missing prototype for the rand_s() API. * Many win32 (and particularly MSVC) portability fixes. Many additional tests are now runnable when building with MSVC. * Due to early testing of the (soon to land) GCleanup framework, a very large number of memory errors have been found and fixed (mostly in the testcases, but some in glib itself). * GIO: - some more seeking cleanups: particularly on GLocalFileInputStream - don't leave a .trashinfo file around if trashing a file fails - Add a request_certificate virtual method to GTlsInteraction * GNotification - new API for sending persistent notifications via the desktop shell - notifications persist when the application has quit and clicking on them can restart the application with an action (via DBusActivatable) * GSubprocess - new API for launching subprocesses - nice GIO integration like async functions, cancellability, etc. - a convenient communicate() API inspired by the same API in Python - related: the gspawn API now has a CLOEXEC flag for the created pipes for stdin/stdout/stderr * New gapplication(1) commandline tool - intended to be used with DBusActivatable apps - can be used for launching apps, opening files, invoking application actions and listing apps and actions - bash tab completion is supported * GDesktopAppInfo changes: - g_file_get_path() can implicitly cause a FUSE mount so don't call it until we know we need it (for an app that doesn't support URIs) - don't crash when trying to load from a keyfile with DBusActivatable=true - remove some dead code, refactor the search path handling a bit and do a large-scale whitespace cleanup (prep work for the pending desktop file index) * File monitors - fix broken handling of mount point monitoring - remove some strange use of GObject::constructor() from the base class and inotify backend - fix GFileMonitor to work in the non-default main context even when the main context is not running (or is blocked) - add internal private API for easily creating a file monitor in the GLib worker thread * GSettings - g_settings_list_children: only list viable schemas. This fixes a longstanding issue where 'gsettings list-recursively' will crash when there are invalid schemas installed - don't accept invalid paths on g_settings_new_with_path, etc. * GIO - GFile now has a thumbnail::is-valid attribute to check if the thumbnail in thumbnail::path needs to be regenerated - GDBusProxy now has a flag to control autostarting of services at construction time - for GSeekable, properly introduce the concept of "resizable" vs. "fixed-sized" streams in the docs, explaining the expected semantics of the interface in each case - fix some cases in GMemoryOutputStream that were violating the above expectations (which may cause a slight API incompatibility) - clean up GCredentials code and add support for Hurd and Solaris - improve splicing by using different codepaths for the case where we have real _read_async() and _write_async() implementations on the stream vs. the case where they are internally emulated (via dispatching the sync variant of the call in a thread) * GKeyFile - fix a leak in g_key_file_get_(u)int64 when we fail to parse the value as an integer - add long-requested API g_key_file_save_to_file() * Portability improvements - avoid using O_DIRECTORY on platforms that don't have it - be careful about systems that define SOCK_CLOEXEC but don't actually support it (like Hurd) - only use SA_RESTART if it exists * Other small API changes/additions - a pair of functions to support matching strings for the type of search functionality that you'd expect to have with things like GtkSearchBar. This will also be used by the desktop file index. - g_str_is_ascii() with obvious purpose - g_test_expect_message() no longer appears to allow you to catch G_LOG_ERROR messages * GMainContext/GSource - fix handling of overflowing the 'next source id' counter - g_source_remove() will now throw a critical in the case that you try to remove a non-existent source. We expect that there is some code in the wild that will fall afoul of this new critical but considering that we now reuse source IDs, this code is already broken and should probably be fixed. - simplify handling of the 'current dispatching source' to not require use of a linked list * GObject - the long-broken (and leaky) pattern of destroying a just-allocated object from inside of a custom GObject::constructor is now officially completely illegal and will abort the program * Unicode: update to 6.3.0 * Many bug fixes * Many translation updates For full details see: https://git.gnome.org/browse/glib/tree/NEWS?id=2.40.0
Diffstat (limited to 'devel/glib2')
-rw-r--r--devel/glib2/Makefile.common9
-rw-r--r--devel/glib2/PLIST45
-rw-r--r--devel/glib2/distinfo34
-rw-r--r--devel/glib2/patches/patch-aa11
-rw-r--r--devel/glib2/patches/patch-af8
-rw-r--r--devel/glib2/patches/patch-ai18
-rw-r--r--devel/glib2/patches/patch-an17
-rw-r--r--devel/glib2/patches/patch-ap101
-rw-r--r--devel/glib2/patches/patch-aq59
-rw-r--r--devel/glib2/patches/patch-ba160
-rw-r--r--devel/glib2/patches/patch-cj90
-rw-r--r--devel/glib2/patches/patch-cl25
-rw-r--r--devel/glib2/patches/patch-gio_gcredentials.c91
-rw-r--r--devel/glib2/patches/patch-gio_gcredentialsprivate.h22
-rw-r--r--devel/glib2/patches/patch-gio_gdbusmessage.c27
-rw-r--r--devel/glib2/patches/patch-gio_gfile.c21
-rw-r--r--devel/glib2/patches/patch-gio_gioenums.h23
-rw-r--r--devel/glib2/patches/patch-gio_glocalfile.c19
-rw-r--r--devel/glib2/patches/patch-gio_gsocket.c31
-rw-r--r--devel/glib2/patches/patch-gio_gunixcredentialsmessage.c16
-rw-r--r--devel/glib2/patches/patch-gio_tests_credentials.c22
-rw-r--r--devel/glib2/patches/patch-glib_gmessages.c38
-rw-r--r--devel/glib2/patches/patch-glib_gtimezone.c4
23 files changed, 415 insertions, 476 deletions
diff --git a/devel/glib2/Makefile.common b/devel/glib2/Makefile.common
index db66905983f..7ce9b5ffea6 100644
--- a/devel/glib2/Makefile.common
+++ b/devel/glib2/Makefile.common
@@ -1,4 +1,4 @@
-# $NetBSD: Makefile.common,v 1.36 2013/12/28 14:41:55 tron Exp $
+# $NetBSD: Makefile.common,v 1.37 2014/09/05 20:49:55 prlw1 Exp $
#
# used by devel/glib2/Makefile
# used by devel/gdbus-codegen/Makefile
@@ -6,13 +6,13 @@
# 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.38.2
+DISTNAME= glib-2.40.0
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= pkgsrc-users@NetBSD.org
+MAINTAINER= prlw1@cam.ac.uk
HOMEPAGE= http://developer.gnome.org/glib/
COMMENT= # empty; redefined in Makefile
LICENSE= gnu-lgpl-v2
@@ -40,8 +40,6 @@ CONFIGURE_ARGS+= --disable-modular-tests
# Avoid unnecessary autotools invocation.
CONFIGURE_ARGS+= --disable-maintainer-mode
-CONFIGURE_ARGS.gnu-iconv+= --with-libiconv=gnu
-
CONFIGURE_ENV+= PERL_PATH=${PERL5:Q}
.include "../../mk/bsd.prefs.mk"
@@ -88,6 +86,7 @@ CONFIGURE_ARGS+= --disable-threads
.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= post-patch
diff --git a/devel/glib2/PLIST b/devel/glib2/PLIST
index 9105184ecaf..7fc524fc51d 100644
--- a/devel/glib2/PLIST
+++ b/devel/glib2/PLIST
@@ -1,4 +1,5 @@
-@comment $NetBSD: PLIST,v 1.78 2013/12/08 13:08:59 prlw1 Exp $
+@comment $NetBSD: PLIST,v 1.79 2014/09/05 20:49:55 prlw1 Exp $
+bin/gapplication
bin/gdbus
bin/gio-querymodules
bin/glib-compile-resources
@@ -106,6 +107,7 @@ 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
@@ -138,6 +140,8 @@ 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
@@ -276,8 +280,8 @@ lib/pkgconfig/gthread-2.0.pc
share/aclocal/glib-2.0.m4
share/aclocal/glib-gettext.m4
share/aclocal/gsettings.m4
-share/gdb/auto-load/libglib-2.0.so.0.3800.2-gdb.py
-share/gdb/auto-load/libgobject-2.0.so.0.3800.2-gdb.py
+share/gdb/auto-load/libglib-2.0.so.0.4000.0-gdb.py
+share/gdb/auto-load/libgobject-2.0.so.0.4000.0-gdb.py
share/glib-2.0/gdb/glib.py
share/glib-2.0/gdb/gobject.py
share/glib-2.0/gettext/po/Makefile.in.in
@@ -290,6 +294,7 @@ 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
@@ -376,6 +381,7 @@ 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/GTask.html
share/gtk-doc/html/gio/GTcpConnection.html
share/gtk-doc/html/gio/GTcpWrapperConnection.html
@@ -415,6 +421,7 @@ share/gtk-doc/html/gio/api-index-2-32.html
share/gtk-doc/html/gio/api-index-2-34.html
share/gtk-doc/html/gio/api-index-2-36.html
share/gtk-doc/html/gio/api-index-2-38.html
+share/gtk-doc/html/gio/api-index-2-40.html
share/gtk-doc/html/gio/api-index-deprecated.html
share/gtk-doc/html/gio/api-index-full.html
share/gtk-doc/html/gio/application.html
@@ -422,28 +429,29 @@ 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/ch29.html
share/gtk-doc/html/gio/ch30.html
-share/gtk-doc/html/gio/ch30s02.html
-share/gtk-doc/html/gio/ch30s03.html
share/gtk-doc/html/gio/ch31.html
share/gtk-doc/html/gio/ch31s02.html
share/gtk-doc/html/gio/ch31s03.html
-share/gtk-doc/html/gio/ch31s04.html
-share/gtk-doc/html/gio/ch31s05.html
-share/gtk-doc/html/gio/ch31s06.html
-share/gtk-doc/html/gio/ch31s07.html
share/gtk-doc/html/gio/ch32.html
share/gtk-doc/html/gio/ch32s02.html
share/gtk-doc/html/gio/ch32s03.html
share/gtk-doc/html/gio/ch32s04.html
share/gtk-doc/html/gio/ch32s05.html
+share/gtk-doc/html/gio/ch32s06.html
+share/gtk-doc/html/gio/ch32s07.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/ch33s04.html
+share/gtk-doc/html/gio/ch33s05.html
share/gtk-doc/html/gio/conversion.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-lowlevel.html
@@ -466,9 +474,11 @@ share/gtk-doc/html/gio/gio-GIOError.html
share/gtk-doc/html/gio/gio-GIOScheduler.html
share/gtk-doc/html/gio/gio-GInetAddressMask.html
share/gtk-doc/html/gio/gio-GMenuModel-exporter.html
+share/gtk-doc/html/gio/gio-GNotification.html
share/gtk-doc/html/gio/gio-GPropertyAction.html
share/gtk-doc/html/gio/gio-GResource.html
share/gtk-doc/html/gio/gio-GSettingsSchema-GSettingsSchemaSource.html
+share/gtk-doc/html/gio/gio-GSubprocessLauncher.html
share/gtk-doc/html/gio/gio-GWin32InputStream.html
share/gtk-doc/html/gio/gio-GWin32OutputStream.html
share/gtk-doc/html/gio/gio-Owning-Bus-Names.html
@@ -490,6 +500,7 @@ 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/index.sgml
+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
@@ -500,18 +511,25 @@ share/gtk-doc/html/gio/pt01.html
share/gtk-doc/html/gio/pt02.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-2-10.html
share/gtk-doc/html/glib/api-index-2-12.html
@@ -530,6 +548,7 @@ share/gtk-doc/html/glib/api-index-2-34.html
share/gtk-doc/html/glib/api-index-2-36.html
share/gtk-doc/html/glib/api-index-2-38.html
share/gtk-doc/html/glib/api-index-2-4.html
+share/gtk-doc/html/glib/api-index-2-40.html
share/gtk-doc/html/glib/api-index-2-6.html
share/gtk-doc/html/glib/api-index-2-8.html
share/gtk-doc/html/glib/api-index-deprecated.html
@@ -628,11 +647,14 @@ 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/index.sgml
+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
@@ -699,11 +721,13 @@ 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/index.sgml
+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
@@ -714,6 +738,7 @@ 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
diff --git a/devel/glib2/distinfo b/devel/glib2/distinfo
index e10653e3f60..69eb8822050 100644
--- a/devel/glib2/distinfo
+++ b/devel/glib2/distinfo
@@ -1,34 +1,34 @@
-$NetBSD: distinfo,v 1.199 2014/05/26 22:29:23 wiz Exp $
+$NetBSD: distinfo,v 1.200 2014/09/05 20:49:55 prlw1 Exp $
-SHA1 (glib-2.38.2.tar.xz) = 685c5a4215b776b83dd5330ab9084c5dcb0a51b8
-RMD160 (glib-2.38.2.tar.xz) = 1dcc15ce6dac0faafaee448f393284bb038f2a76
-Size (glib-2.38.2.tar.xz) = 6718296 bytes
-SHA1 (patch-aa) = 737581b71133ecbfec0fe8b3e836a2a21b7af84b
+SHA1 (glib-2.40.0.tar.xz) = 44e1442ed4d1bf3fa89138965deb35afc1335a65
+RMD160 (glib-2.40.0.tar.xz) = c50eed34bf8df127b959af27b02d6036934f758e
+Size (glib-2.40.0.tar.xz) = 7016228 bytes
+SHA1 (patch-aa) = 0d30b40995e539f772afedda2724fa3181fe0019
SHA1 (patch-ab) = 04bde955a2a588011a8c77ada4923d5464a0d544
SHA1 (patch-ac) = 96e153339675457356f71e35d20375bed669d337
SHA1 (patch-ae) = 09f16e8e14bdea3ee0e478d335f65cb66939e5f5
-SHA1 (patch-af) = 237b38ac1e273da51fd49e632c96901899494600
+SHA1 (patch-af) = 6da2f31b5052a9b1d02b9a87f47896be238a88bd
SHA1 (patch-ah) = 2e23c228047d07769ef5b03b0ff636daa0435ee5
SHA1 (patch-aha) = 3249929122a567eec3c421a1efa0ac510f1474b7
-SHA1 (patch-ai) = 3264cf22844f7202f1c9dc413c09c8f960de04f6
SHA1 (patch-ak) = f5699914c2fe212316a27c64dd129ea7dde594f0
SHA1 (patch-al) = 4eb4e241488dabe254973f5ada92898af57cd0f5
SHA1 (patch-am) = 99f54927d76580dfeda2a6b1909e1bea5dbdc293
-SHA1 (patch-an) = 6cfb371539dad1fb89b1c1cce03de34556f6e40b
-SHA1 (patch-ap) = 5bc134ebe768c7171f25ce356b40edeae30c5b92
-SHA1 (patch-aq) = 217a8ea4ba7dbdcc315cb16575d55b9949997b64
-SHA1 (patch-ba) = 2080a1240539be7d10777b79adfb3fcf4d2bd44e
+SHA1 (patch-an) = 8dfc12cf0c8f3b8c7948fe3b2543a56e0cacec98
+SHA1 (patch-ba) = 28b2a3341e8a6d5beb023e173c3353d2697ba49b
SHA1 (patch-cb) = 56e2a9b2de04c8e528faf7ce778503fa55dcc3ac
SHA1 (patch-cc) = f3d37cbb483863aab602f9c1209650e3e4795871
SHA1 (patch-cd) = 0d574419257a604ca19e18a43aa42ec6e9a36c78
-SHA1 (patch-cj) = 1098ae4d3936a7fa4e9c39b0dc8734bef34f03b2
SHA1 (patch-ck) = 324116cc6fb8dbce8ce8d20f5b237fc469a55cd2
-SHA1 (patch-cl) = c95e9fbff6ac66d5daedf0358ef3df89986b99ff
+SHA1 (patch-cl) = 871e1ca59f697eddd6692702fc7d63a2df826afc
SHA1 (patch-cm) = 534af37ae8f2bd667f630142058d4de5ea91be93
SHA1 (patch-cn) = 0cb2fa14b2d3f0ff66f5d5f32e79a36c71a99b78
+SHA1 (patch-gio_gcredentials.c) = 67aade3aafa64827c4075c9cc487dc20ebbd1cab
+SHA1 (patch-gio_gcredentialsprivate.h) = d2e47198728b328b18131e9806815153a95a89b1
SHA1 (patch-gio_gdbusauthmechanismsha1.c) = dfbd4a85ea842f11e4bb76d39c5509fb8b0d5baa
-SHA1 (patch-gio_gdbusmessage.c) = 63030dac620e2e098acf079e5288e356f1f44504
-SHA1 (patch-gio_gfile.c) = 6ad65bb17e6afe7bb9bca552ae1b1a7d8b7b2ee0
-SHA1 (patch-gio_glocalfile.c) = b09c78199ef2696905ce8a49e0c3590d243a83c8
+SHA1 (patch-gio_gioenums.h) = 4c3c8b11af2da6202b0b81e2430e2eaaaa5d2d54
SHA1 (patch-gio_gresource-tool.c) = 4eb7c9df25e9ac3e977edf3be8fb977a6fb39182
-SHA1 (patch-glib_gtimezone.c) = 36f74724347f2947c71839bda4784b81e8b94a47
+SHA1 (patch-gio_gsocket.c) = 64479463d8dd48f707adaef29af0e48f4143c266
+SHA1 (patch-gio_gunixcredentialsmessage.c) = ad4d56ac750e1822324c58c5e34e8f46ea1b58ac
+SHA1 (patch-gio_tests_credentials.c) = b26089f372d4fe3903e536867caacf52b1aa45d5
+SHA1 (patch-glib_gmessages.c) = 623ee56d9a11e4d97981ee3011f8717c5a2a9403
+SHA1 (patch-glib_gtimezone.c) = d9686da52f171a073d80cfd9f80aa490088a00a3
diff --git a/devel/glib2/patches/patch-aa b/devel/glib2/patches/patch-aa
index d448995ea32..24ad6dbeee5 100644
--- a/devel/glib2/patches/patch-aa
+++ b/devel/glib2/patches/patch-aa
@@ -1,4 +1,4 @@
-$NetBSD: patch-aa,v 1.56 2013/12/08 13:08:59 prlw1 Exp $
+$NetBSD: patch-aa,v 1.57 2014/09/05 20:49:55 prlw1 Exp $
--- configure.orig 2013-10-15 19:14:48.000000000 +0000
+++ configure
@@ -10,15 +10,6 @@ $NetBSD: patch-aa,v 1.56 2013/12/08 13:08:59 prlw1 Exp $
G_MODULE_BROKEN_RTLD_GLOBAL
G_MODULE_HAVE_DLERROR
G_MODULE_LDFLAGS
-@@ -5929,7 +5930,7 @@ else
- ENABLE_ALWAYS_BUILD_TESTS_FALSE=
- fi
-
-- if test "$ENABLE_INSTALLED_TESTS" == "1"; then
-+ if test "$ENABLE_INSTALLED_TESTS" = "1"; then
- installed_test_metadir=${datadir}/installed-tests/glib
-
- installed_testdir=${libexecdir}/installed-tests/glib
@@ -21145,6 +21146,8 @@ else
# ifdef _MSC_VER
# include <malloc.h>
diff --git a/devel/glib2/patches/patch-af b/devel/glib2/patches/patch-af
index dfd5d03d999..9ae766e8053 100644
--- a/devel/glib2/patches/patch-af
+++ b/devel/glib2/patches/patch-af
@@ -1,9 +1,9 @@
-$NetBSD: patch-af,v 1.15 2013/12/08 13:08:59 prlw1 Exp $
+$NetBSD: patch-af,v 1.16 2014/09/05 20:49:55 prlw1 Exp $
---- glib/libcharset/Makefile.in.orig 2013-10-15 19:14:52.000000000 +0000
+--- glib/libcharset/Makefile.in.orig 2014-03-24 18:54:29.000000000 +0000
+++ glib/libcharset/Makefile.in
-@@ -1549,18 +1549,6 @@ check-local: test-nonrecursive
- @ENABLE_INSTALLED_TESTS_TRUE@ echo 'Exec=$(installed_testdir)/$<' >> $@.tmp; \
+@@ -1496,18 +1496,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)$(libdir)
diff --git a/devel/glib2/patches/patch-ai b/devel/glib2/patches/patch-ai
deleted file mode 100644
index ee9520588db..00000000000
--- a/devel/glib2/patches/patch-ai
+++ /dev/null
@@ -1,18 +0,0 @@
-$NetBSD: patch-ai,v 1.22 2013/12/08 13:08:59 prlw1 Exp $
-
-http://bugzilla.gnome.org/show_bug.cgi?id=583321
-
---- glib/gmain.c.orig 2013-10-15 19:07:46.000000000 +0000
-+++ glib/gmain.c
-@@ -4963,7 +4963,11 @@ ref_unix_signal_handler_unlocked (int si
- struct sigaction action;
- action.sa_handler = g_unix_signal_handler;
- sigemptyset (&action.sa_mask);
-+#ifdef SA_RESTART
- action.sa_flags = SA_RESTART | SA_NOCLDSTOP;
-+#else
-+ action.sa_flags = SA_NOCLDSTOP;
-+#endif
- sigaction (signum, &action, NULL);
- }
- }
diff --git a/devel/glib2/patches/patch-an b/devel/glib2/patches/patch-an
index fd434db4c5b..2eb038e9ed5 100644
--- a/devel/glib2/patches/patch-an
+++ b/devel/glib2/patches/patch-an
@@ -1,20 +1,23 @@
-$NetBSD: patch-an,v 1.11 2013/12/08 13:08:59 prlw1 Exp $
+$NetBSD: patch-an,v 1.12 2014/09/05 20:49:55 prlw1 Exp $
-Leave gdbus-2.0/codegen sudirectory to devel/gdbus-codegen package.
-Don't install completion data.
+- 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.
---- gio/Makefile.in.orig 2013-10-15 19:14:51.000000000 +0000
+--- gio/Makefile.in.orig 2014-03-24 18:54:27.000000000 +0000
+++ gio/Makefile.in
-@@ -1173,7 +1173,7 @@ all_test_ltlibs = $(test_ltlibraries) $(
+@@ -1198,8 +1198,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_19) \
+- $(am__append_22) $(am__append_26) $(am__append_29) . tests \
+SUBDIRS = $(am__append_15) $(am__append_19) \
- $(am__append_22) $(am__append_26) $(am__append_29) . tests \
++ $(am__append_22) $(am__append_26) $(am__append_29) . \
$(am__append_32)
@MS_LIB_AVAILABLE_TRUE@@OS_WIN32_AND_DLL_COMPILATION_TRUE@install_ms_lib_cmd = $(INSTALL) gio-2.0.lib $(DESTDIR)$(libdir)
-@@ -4200,7 +4200,7 @@ info: info-recursive
+ @MS_LIB_AVAILABLE_TRUE@@OS_WIN32_AND_DLL_COMPILATION_TRUE@uninstall_ms_lib_cmd = -rm $(DESTDIR)$(libdir)/gio-2.0.lib
+@@ -4311,7 +4311,7 @@ info: info-recursive
info-am:
diff --git a/devel/glib2/patches/patch-ap b/devel/glib2/patches/patch-ap
deleted file mode 100644
index 78895e390be..00000000000
--- a/devel/glib2/patches/patch-ap
+++ /dev/null
@@ -1,101 +0,0 @@
-$NetBSD: patch-ap,v 1.5 2013/04/19 22:21:41 prlw1 Exp $
-
---- gio/gcredentials.c.orig 2013-03-13 13:39:09.000000000 +0000
-+++ gio/gcredentials.c
-@@ -81,8 +81,14 @@ struct _GCredentials
- struct ucred native;
- #elif defined(__FreeBSD__) || defined(__FreeBSD_kernel__)
- struct cmsgcred native;
--#elif defined(__OpenBSD__)
-+#elif defined(__OpenBSD__) && !defined(__MirBSD__)
- struct sockpeercred native;
-+#elif defined(__NetBSD__) || defined(__MirBSD__)
-+ struct {
-+ pid_t pid;
-+ uid_t uid;
-+ gid_t gid;
-+ } native;
- #else
- #ifdef __GNUC__
- #warning Please add GCredentials support for your OS
-@@ -127,7 +133,7 @@ g_credentials_class_init (GCredentialsCl
- static void
- g_credentials_init (GCredentials *credentials)
- {
--#ifdef __linux__
-+#if defined(__linux__) || defined(__NetBSD__) || defined(__MirBSD__)
- credentials->native.pid = getpid ();
- credentials->native.uid = geteuid ();
- credentials->native.gid = getegid ();
-@@ -183,7 +189,7 @@ g_credentials_to_string (GCredentials *c
- g_return_val_if_fail (G_IS_CREDENTIALS (credentials), NULL);
-
- ret = g_string_new ("GCredentials:");
--#ifdef __linux__
-+#if defined(__linux__) || defined(__NetBSD__) || defined(__MirBSD__)
- g_string_append (ret, "linux-ucred:");
- if (credentials->native.pid != -1)
- g_string_append_printf (ret, "pid=%" G_GINT64_FORMAT ",", (gint64) credentials->native.pid);
-@@ -248,7 +254,7 @@ g_credentials_is_same_user (GCredentials
- g_return_val_if_fail (error == NULL || *error == NULL, FALSE);
-
- ret = FALSE;
--#ifdef __linux__
-+#if defined(__linux__) || defined(__NetBSD__) || defined(__MirBSD__)
- if (credentials->native.uid == other_credentials->native.uid)
- ret = TRUE;
- #elif defined(__FreeBSD__) || defined(__FreeBSD_kernel__)
-@@ -296,7 +302,7 @@ g_credentials_get_native (GCredentials
-
- ret = NULL;
-
--#ifdef __linux__
-+#if defined(__linux__) || defined(__NetBSD__) || defined(__MirBSD__)
- if (native_type != G_CREDENTIALS_TYPE_LINUX_UCRED)
- {
- g_warning ("g_credentials_get_native: Trying to get credentials of type %d but only "
-@@ -357,7 +363,7 @@ g_credentials_set_native (GCredentials
- GCredentialsType native_type,
- gpointer native)
- {
--#ifdef __linux__
-+#if defined(__linux__) || defined(__NetBSD__) || defined(__MirBSD__)
- if (native_type != G_CREDENTIALS_TYPE_LINUX_UCRED)
- {
- g_warning ("g_credentials_set_native: Trying to set credentials of type %d "
-@@ -366,7 +372,7 @@ g_credentials_set_native (GCredentials
- }
- else
- {
-- memcpy (&credentials->native, native, sizeof (struct ucred));
-+ memcpy (&credentials->native, native, sizeof (credentials->native));
- }
- #elif defined(__FreeBSD__) || defined(__FreeBSD_kernel__)
- if (native_type != G_CREDENTIALS_TYPE_FREEBSD_CMSGCRED)
-@@ -424,7 +430,7 @@ g_credentials_get_unix_user (GCredential
- g_return_val_if_fail (G_IS_CREDENTIALS (credentials), -1);
- g_return_val_if_fail (error == NULL || *error == NULL, -1);
-
--#ifdef __linux__
-+#if defined(__linux__) || defined(__NetBSD__) || defined(__MirBSD__)
- ret = credentials->native.uid;
- #elif defined(__FreeBSD__) || defined(__FreeBSD_kernel__)
- ret = credentials->native.cmcred_euid;
-@@ -470,7 +476,7 @@ g_credentials_get_unix_pid (GCredentials
- ret = credentials->native.pid;
- #elif defined(__FreeBSD__) || defined(__FreeBSD_kernel__)
- ret = credentials->native.cmcred_pid;
--#elif defined(__OpenBSD__)
-+#elif defined(__NetBSD__) || defined(__OpenBSD__)
- ret = credentials->native.pid;
- #else
- ret = -1;
-@@ -512,7 +518,7 @@ g_credentials_set_unix_user (GCredential
- g_return_val_if_fail (error == NULL || *error == NULL, FALSE);
-
- ret = FALSE;
--#ifdef __linux__
-+#if defined(__linux__) || defined(__NetBSD__) || defined(__MirBSD__)
- credentials->native.uid = uid;
- ret = TRUE;
- #elif defined(__FreeBSD__) || defined(__FreeBSD_kernel__)
diff --git a/devel/glib2/patches/patch-aq b/devel/glib2/patches/patch-aq
deleted file mode 100644
index dff928bc6fb..00000000000
--- a/devel/glib2/patches/patch-aq
+++ /dev/null
@@ -1,59 +0,0 @@
-$NetBSD: patch-aq,v 1.6 2013/04/19 22:21:41 prlw1 Exp $
-
---- gio/gsocket.c.orig 2013-03-13 13:39:09.000000000 +0000
-+++ gio/gsocket.c
-@@ -37,6 +37,9 @@
- #include <signal.h>
- #include <string.h>
- #include <stdlib.h>
-+#ifdef __NetBSD__
-+#include <sys/un.h>
-+#endif
-
- #ifndef G_OS_WIN32
- # include <fcntl.h>
-@@ -4349,7 +4352,7 @@ g_socket_get_credentials (GSocket *soc
-
- ret = NULL;
-
--#if defined(__linux__) || defined(__OpenBSD__)
-+#if defined(__linux__) || (defined(__OpenBSD__) && !defined(__MirBSD__))
- {
- socklen_t optlen;
- #if defined(__linux__)
-@@ -4384,6 +4387,35 @@ g_socket_get_credentials (GSocket *soc
- &native_creds);
- }
- }
-+#elif defined(__NetBSD__) && defined(LOCAL_PEEREID)
-+ {
-+ struct unpcbid cred;
-+ socklen_t len = sizeof(cred);
-+ if (getsockopt(socket->priv->fd, 0, LOCAL_PEEREID, &cred, &len) < 0)
-+ {
-+ int errsv = get_socket_errno ();
-+ g_set_error (error,
-+ G_IO_ERROR,
-+ socket_io_error_from_errno (errsv),
-+ _("Unable to get pending error: %s"),
-+ socket_strerror (errsv));
-+ }
-+ else
-+ {
-+ struct {
-+ pid_t pid;
-+ uid_t uid;
-+ gid_t gid;
-+ } native_creds;
-+ native_creds.uid = cred.unp_euid;
-+ native_creds.gid = cred.unp_egid;
-+ native_creds.pid = cred.unp_pid;
-+ ret = g_credentials_new ();
-+ g_credentials_set_native (ret,
-+ G_CREDENTIALS_TYPE_LINUX_UCRED,
-+ &native_creds);
-+ }
-+ }
- #else
- g_set_error_literal (error,
- G_IO_ERROR,
diff --git a/devel/glib2/patches/patch-ba b/devel/glib2/patches/patch-ba
index e91f54bd53c..7daff1270b2 100644
--- a/devel/glib2/patches/patch-ba
+++ b/devel/glib2/patches/patch-ba
@@ -1,20 +1,19 @@
-$NetBSD: patch-ba,v 1.13 2013/12/08 13:08:59 prlw1 Exp $
+$NetBSD: patch-ba,v 1.14 2014/09/05 20:49:55 prlw1 Exp $
-http://bugzilla.gnome.org/show_bug.cgi?id=583330
+https://bugzilla.gnome.org/show_bug.cgi?id=583330
---- gio/gunixmounts.c.orig 2013-08-07 14:34:32.000000000 +0000
+--- gio/gunixmounts.c.orig 2014-02-12 20:08:36.000000000 +0000
+++ gio/gunixmounts.c
-@@ -155,6 +155,9 @@ struct _GUnixMountMonitor {
+@@ -150,6 +150,8 @@ struct _GUnixMountMonitor {
GFileMonitor *fstab_monitor;
GFileMonitor *mtab_monitor;
-+ guint mount_poller_source;
+ GList *mount_poller_mounts;
+
GSource *proc_mounts_watch_source;
};
-@@ -167,6 +170,8 @@ static GUnixMountMonitor *the_mount_moni
+@@ -162,6 +164,8 @@ static GUnixMountMonitor *the_mount_moni
static GList *_g_get_unix_mounts (void);
static GList *_g_get_unix_mount_points (void);
@@ -23,7 +22,7 @@ http://bugzilla.gnome.org/show_bug.cgi?id=583330
G_DEFINE_TYPE (GUnixMountMonitor, g_unix_mount_monitor, G_TYPE_OBJECT);
#define MOUNT_POLL_INTERVAL 4000
-@@ -193,6 +198,7 @@ G_DEFINE_TYPE (GUnixMountMonitor, g_unix
+@@ -188,6 +192,7 @@ G_DEFINE_TYPE (GUnixMountMonitor, g_unix
#endif
#if (defined(HAVE_GETVFSSTAT) || defined(HAVE_GETFSSTAT)) && defined(HAVE_FSTAB_H) && defined(HAVE_SYS_MOUNT_H)
@@ -31,38 +30,25 @@ http://bugzilla.gnome.org/show_bug.cgi?id=583330
#include <sys/ucred.h>
#include <sys/mount.h>
#include <fstab.h>
-@@ -243,22 +249,30 @@ g_unix_is_mount_path_system_internal (co
- "/", /* we already have "Filesystem root" in Nautilus */
- "/bin",
- "/boot",
-+ "/compat/linux/proc",
-+ "/compat/linux/sys",
- "/dev",
- "/etc",
- "/home",
- "/lib",
- "/lib64",
-+ "/libexec",
- "/live/cow",
- "/live/image",
- "/media",
- "/mnt",
- "/opt",
-+ "/rescue",
- "/root",
- "/sbin",
- "/srv",
- "/tmp",
- "/usr",
-+ "/usr/X11R6",
- "/usr/local",
-+ "/usr/obj",
-+ "/usr/ports",
-+ "/usr/src",
- "/var",
- "/var/crash",
- "/var/local",
-@@ -602,9 +616,9 @@ get_mtab_monitor_file (void)
+@@ -353,7 +358,7 @@ get_mtab_read_file (void)
+ # else
+ return _PATH_MOUNTED;
+ # endif
+-#else
++#else
+ return "/etc/mtab";
+ #endif
+ }
+@@ -367,7 +372,7 @@ get_mtab_monitor_file (void)
+ # else
+ return _PATH_MOUNTED;
+ # endif
+-#else
++#else
+ return "/etc/mtab";
+ #endif
+ }
+@@ -608,9 +613,9 @@ get_mtab_monitor_file (void)
static GList *
_g_get_unix_mounts (void)
{
@@ -74,7 +60,7 @@ http://bugzilla.gnome.org/show_bug.cgi?id=583330
struct statfs *mntent = NULL;
#else
#error statfs juggling failed
-@@ -615,9 +629,9 @@ _g_get_unix_mounts (void)
+@@ -621,9 +626,9 @@ _g_get_unix_mounts (void)
GList *return_list;
/* Pass NOWAIT to avoid blocking trying to update NFS mounts. */
@@ -86,7 +72,7 @@ http://bugzilla.gnome.org/show_bug.cgi?id=583330
num_mounts = getfsstat (NULL, 0, MNT_NOWAIT);
#endif
if (num_mounts == -1)
-@@ -625,9 +639,9 @@ _g_get_unix_mounts (void)
+@@ -631,9 +636,9 @@ _g_get_unix_mounts (void)
bufsize = num_mounts * sizeof (*mntent);
mntent = g_malloc (bufsize);
@@ -98,7 +84,7 @@ http://bugzilla.gnome.org/show_bug.cgi?id=583330
num_mounts = getfsstat (mntent, bufsize, MNT_NOWAIT);
#endif
if (num_mounts == -1)
-@@ -642,10 +656,13 @@ _g_get_unix_mounts (void)
+@@ -648,10 +653,13 @@ _g_get_unix_mounts (void)
mount_entry->mount_path = g_strdup (mntent[i].f_mntonname);
mount_entry->device_path = g_strdup (mntent[i].f_mntfromname);
mount_entry->filesystem_type = g_strdup (mntent[i].f_fstypename);
@@ -114,32 +100,50 @@ http://bugzilla.gnome.org/show_bug.cgi?id=583330
#endif
mount_entry->is_read_only = TRUE;
-@@ -1126,6 +1145,10 @@ get_mounts_timestamp (void)
+@@ -1132,7 +1140,11 @@ get_mounts_timestamp (void)
+ if (monitor_file)
+ {
if (stat (monitor_file, &buf) == 0)
- return (guint64)buf.st_mtime;
- }
+- return (guint64)buf.st_mtime;
++ return (guint64)buf.st_mtime;
++ }
+ else
+ {
+ return mount_poller_time;
-+ }
+ }
return 0;
}
+@@ -1147,7 +1159,7 @@ get_mount_points_timestamp (void)
+ if (monitor_file)
+ {
+ if (stat (monitor_file, &buf) == 0)
+- return (guint64)buf.st_mtime;
++ return (guint64)buf.st_mtime;
+ }
+ return 0;
+ }
+@@ -1199,9 +1211,9 @@ g_unix_mount_at (const char *mount_path,
+ mount_entry = l->data;
+
+ if (!found && strcmp (mount_path, mount_entry->mount_path) == 0)
+- found = mount_entry;
++ found = mount_entry;
+ else
+- g_unix_mount_free (mount_entry);
++ g_unix_mount_free (mount_entry);
+ }
+ g_list_free (mounts);
-@@ -1271,6 +1294,13 @@ g_unix_mount_monitor_finalize (GObject *
+@@ -1279,6 +1291,8 @@ g_unix_mount_monitor_finalize (GObject *
g_object_unref (monitor->mtab_monitor);
}
-+ if (monitor->mount_poller_source > 0)
-+ {
-+ g_source_remove (monitor->mount_poller_source);
-+ g_list_foreach (monitor->mount_poller_mounts, (GFunc)g_unix_mount_free, NULL);
-+ g_list_free (monitor->mount_poller_mounts);
-+ }
++ g_list_free_full (monitor->mount_poller_mounts, (GDestroyNotify)g_unix_mount_free);
+
the_mount_monitor = NULL;
G_OBJECT_CLASS (g_unix_mount_monitor_parent_class)->finalize (object);
-@@ -1362,6 +1392,51 @@ proc_mounts_changed (GIOChannel *chann
+@@ -1370,6 +1384,43 @@ proc_mounts_changed (GIOChannel *chann
return TRUE;
}
@@ -147,41 +151,33 @@ http://bugzilla.gnome.org/show_bug.cgi?id=583330
+mount_change_poller (gpointer user_data)
+{
+ GUnixMountMonitor *mount_monitor;
-+ GList *current_mounts;
++ GList *current_mounts, *new_it, *old_it;
+ gboolean has_changed = FALSE;
+
+ mount_monitor = user_data;
+ current_mounts = _g_get_unix_mounts ();
+
-+ if (g_list_length (current_mounts) != g_list_length (mount_monitor->mount_poller_mounts))
-+ {
-+ g_list_foreach (mount_monitor->mount_poller_mounts, (GFunc)g_unix_mount_free, NULL);
-+ has_changed = TRUE;
-+ }
-+ else
++ for ( new_it = current_mounts, old_it = mount_monitor->mount_poller_mounts;
++ new_it != NULL && old_it != NULL;
++ new_it = g_list_next (new_it), old_it = g_list_next (old_it) )
+ {
-+ int i;
-+
-+ for (i = 0; i < g_list_length (current_mounts); i++)
++ if (g_unix_mount_compare (new_it->data, old_it->data) != 0)
+ {
-+ GUnixMountEntry *m1;
-+ GUnixMountEntry *m2;
-+
-+ m1 = (GUnixMountEntry *)g_list_nth_data (current_mounts, i);
-+ m2 = (GUnixMountEntry *)g_list_nth_data (mount_monitor->mount_poller_mounts, i);
-+ if (! has_changed && g_unix_mount_compare (m1, m2) != 0)
-+ has_changed = TRUE;
-+
-+ g_unix_mount_free (m2);
-+ }
++ has_changed = TRUE;
++ break;
++ }
+ }
++ if (!(new_it == NULL && old_it == NULL))
++ has_changed = TRUE;
++
++ g_list_free_full (mount_monitor->mount_poller_mounts,
++ (GDestroyNotify)g_unix_mount_free);
+
-+ g_list_free (mount_monitor->mount_poller_mounts);
+ mount_monitor->mount_poller_mounts = current_mounts;
+
+ if (has_changed)
+ {
-+ mount_poller_time = (guint64)time (NULL);
++ mount_poller_time = (guint64)g_get_monotonic_time ();
+ g_signal_emit (mount_monitor, signals[MOUNTS_CHANGED], 0);
+ }
+
@@ -191,15 +187,21 @@ http://bugzilla.gnome.org/show_bug.cgi?id=583330
static void
g_unix_mount_monitor_init (GUnixMountMonitor *monitor)
{
-@@ -1416,6 +1491,12 @@ g_unix_mount_monitor_init (GUnixMountMon
+@@ -1424,6 +1475,18 @@ g_unix_mount_monitor_init (GUnixMountMon
g_signal_connect (monitor->mtab_monitor, "changed", (GCallback)mtab_file_changed, monitor);
}
}
+ else
+ {
++ monitor->proc_mounts_watch_source = g_timeout_source_new_seconds (3);
+ monitor->mount_poller_mounts = _g_get_unix_mounts ();
-+ mount_poller_time = (guint64)time (NULL);
-+ monitor->mount_poller_source = g_timeout_add_seconds (3, (GSourceFunc)mount_change_poller, monitor);
++ mount_poller_time = (guint64)g_get_monotonic_time ();
++ g_source_set_callback (monitor->proc_mounts_watch_source,
++ (GSourceFunc)mount_change_poller,
++ monitor, NULL);
++ g_source_attach (monitor->proc_mounts_watch_source,
++ g_main_context_get_thread_default ());
++ g_source_unref (monitor->proc_mounts_watch_source);
+ }
}
diff --git a/devel/glib2/patches/patch-cj b/devel/glib2/patches/patch-cj
deleted file mode 100644
index 4e1a350a106..00000000000
--- a/devel/glib2/patches/patch-cj
+++ /dev/null
@@ -1,90 +0,0 @@
-$NetBSD: patch-cj,v 1.11 2013/12/08 13:08:59 prlw1 Exp $
-
-The mem-overflow test contains a declaration of an empty struct, which breaks
-on at least SunPro cc, and presumably some other non-gcc compilers. Skip this
-test for now, pending a better fix.
-
-https://bugzilla.gnome.org/show_bug.cgi?id=641350
-
---- glib/tests/Makefile.in.orig 2013-10-15 19:14:53.000000000 +0000
-+++ glib/tests/Makefile.in
-@@ -194,7 +194,7 @@ am__EXEEXT_3 = array-test$(EXEEXT) async
- keyfile$(EXEEXT) list$(EXEEXT) logging$(EXEEXT) \
- mainloop$(EXEEXT) mappedfile$(EXEEXT) markup-parse$(EXEEXT) \
- markup-collect$(EXEEXT) markup-escape$(EXEEXT) \
-- markup-subparser$(EXEEXT) mem-overflow$(EXEEXT) mutex$(EXEEXT) \
-+ markup-subparser$(EXEEXT) mutex$(EXEEXT) \
- node$(EXEEXT) once$(EXEEXT) option-context$(EXEEXT) \
- option-argv0$(EXEEXT) pattern$(EXEEXT) private$(EXEEXT) \
- protocol$(EXEEXT) queue$(EXEEXT) rand$(EXEEXT) \
-@@ -399,10 +399,6 @@ markup_subparser_SOURCES = markup-subpar
- markup_subparser_OBJECTS = markup-subparser.$(OBJEXT)
- markup_subparser_LDADD = $(LDADD)
- markup_subparser_DEPENDENCIES = $(top_builddir)/glib/libglib-2.0.la
--mem_overflow_SOURCES = mem-overflow.c
--mem_overflow_OBJECTS = mem-overflow.$(OBJEXT)
--mem_overflow_LDADD = $(LDADD)
--mem_overflow_DEPENDENCIES = $(top_builddir)/glib/libglib-2.0.la
- mutex_SOURCES = mutex.c
- mutex_OBJECTS = mutex.$(OBJEXT)
- mutex_LDADD = $(LDADD)
-@@ -606,7 +602,7 @@ SOURCES = $(1bit_emufutex_SOURCES) 1bit-
- $(gwakeup_SOURCES) $(gwakeup_fallback_SOURCES) hash.c hmac.c \
- hook.c hostutils.c include.c keyfile.c list.c logging.c \
- mainloop.c mappedfile.c markup-collect.c markup-escape.c \
-- markup-parse.c markup-subparser.c mem-overflow.c mutex.c \
-+ markup-parse.c markup-subparser.c mutex.c \
- node.c once.c option-argv0.c option-context.c pattern.c \
- private.c protocol.c queue.c rand.c rec-mutex.c regex.c \
- rwlock.c scannerapi.c sequence.c shell.c slice.c slist.c \
-@@ -622,7 +618,7 @@ DIST_SOURCES = $(1bit_emufutex_SOURCES)
- $(gwakeup_SOURCES) $(am__gwakeup_fallback_SOURCES_DIST) hash.c \
- hmac.c hook.c hostutils.c include.c keyfile.c list.c logging.c \
- mainloop.c mappedfile.c markup-collect.c markup-escape.c \
-- markup-parse.c markup-subparser.c mem-overflow.c mutex.c \
-+ markup-parse.c markup-subparser.c mutex.c \
- node.c once.c option-argv0.c option-context.c pattern.c \
- private.c protocol.c queue.c rand.c rec-mutex.c regex.c \
- rwlock.c scannerapi.c sequence.c shell.c slice.c slist.c \
-@@ -1166,7 +1162,7 @@ test_programs = array-test asyncqueue ba
- environment error fileutils gdatetime gvariant hash hmac hook \
- hostutils keyfile list logging mainloop mappedfile \
- markup-parse markup-collect markup-escape markup-subparser \
-- mem-overflow mutex node once option-context option-argv0 \
-+ mutex node once option-context option-argv0 \
- pattern private protocol queue rand rec-mutex regex rwlock \
- scannerapi sequence shell slice slist sort spawn-multithreaded \
- spawn-singlethread strfuncs string testing test-printf thread \
-@@ -1526,9 +1522,7 @@ markup-subparser$(EXEEXT): $(markup_subp
- @rm -f markup-subparser$(EXEEXT)
- $(AM_V_CCLD)$(LINK) $(markup_subparser_OBJECTS) $(markup_subparser_LDADD) $(LIBS)
-
--mem-overflow$(EXEEXT): $(mem_overflow_OBJECTS) $(mem_overflow_DEPENDENCIES) $(EXTRA_mem_overflow_DEPENDENCIES)
-- @rm -f mem-overflow$(EXEEXT)
-- $(AM_V_CCLD)$(LINK) $(mem_overflow_OBJECTS) $(mem_overflow_LDADD) $(LIBS)
-+
-
- mutex$(EXEEXT): $(mutex_OBJECTS) $(mutex_DEPENDENCIES) $(EXTRA_mutex_DEPENDENCIES)
- @rm -f mutex$(EXEEXT)
-@@ -1761,7 +1755,6 @@ distclean-compile:
- @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/markup-escape.Po@am__quote@
- @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/markup-parse.Po@am__quote@
- @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/markup-subparser.Po@am__quote@
--@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/mem-overflow.Po@am__quote@
- @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/mutex.Po@am__quote@
- @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/node.Po@am__quote@
- @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/once.Po@am__quote@
-@@ -2373,13 +2366,6 @@ markup-subparser.log: markup-subparser$(
- --log-file $$b.log --trs-file $$b.trs \
- $(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \
- "$$tst" $(AM_TESTS_FD_REDIRECT)
--mem-overflow.log: mem-overflow$(EXEEXT)
-- @p='mem-overflow$(EXEEXT)'; \
-- b='mem-overflow'; \
-- $(am__check_pre) $(LOG_DRIVER) --test-name "$$f" \
-- --log-file $$b.log --trs-file $$b.trs \
-- $(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \
-- "$$tst" $(AM_TESTS_FD_REDIRECT)
- mutex.log: mutex$(EXEEXT)
- @p='mutex$(EXEEXT)'; \
- b='mutex'; \
diff --git a/devel/glib2/patches/patch-cl b/devel/glib2/patches/patch-cl
index aaf7a82a1cb..16672888e4b 100644
--- a/devel/glib2/patches/patch-cl
+++ b/devel/glib2/patches/patch-cl
@@ -1,9 +1,10 @@
-$NetBSD: patch-cl,v 1.10 2013/12/08 13:08:59 prlw1 Exp $
+$NetBSD: patch-cl,v 1.11 2014/09/05 20:49:55 prlw1 Exp $
-Leave gdbus-2.0/codegen sudirectory to devel/gdbus-codegen package.
-Don't install completion data.
+- 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.
(patch-an)
---- gio/Makefile.am.orig 2013-10-15 19:07:46.000000000 +0000
+--- gio/Makefile.am.orig 2014-02-17 18:06:20.000000000 +0000
+++ gio/Makefile.am
@@ -1,6 +1,6 @@
include $(top_srcdir)/glib.mk
@@ -13,12 +14,22 @@ Don't install completion data.
if OS_UNIX
SUBDIRS += xdgmime
-@@ -718,13 +718,6 @@ gdbus_LDADD = libgio-2.0.la \
- $(top_builddir)/glib/libglib-2.0.la \
- $(top_builddir)/gobject/libgobject-2.0.la
+@@ -240,7 +240,7 @@ platform_libadd += win32/libgiowin32.la
+ platform_deps += win32/libgiowin32.la
+ endif
+
+-SUBDIRS += . tests
++SUBDIRS += .
+
+ if HAVE_FAM
+ SUBDIRS += fam
+@@ -750,14 +750,6 @@ gapplication_LDADD = libgio-2.0.la \
+ $(NULL)
+ endif
-completiondir = $(datadir)/bash-completion/completions
-completion_DATA = \
+- completion/gapplication \
- completion/gdbus \
- completion/gsettings \
- completion/gresource
diff --git a/devel/glib2/patches/patch-gio_gcredentials.c b/devel/glib2/patches/patch-gio_gcredentials.c
new file mode 100644
index 00000000000..7197080b9d4
--- /dev/null
+++ b/devel/glib2/patches/patch-gio_gcredentials.c
@@ -0,0 +1,91 @@
+$NetBSD: patch-gio_gcredentials.c,v 1.1 2014/09/05 20:49:55 prlw1 Exp $
+
+gcredentials: add NetBSD support
+https://bugzilla.gnome.org/show_bug.cgi?id=728256
+
+--- gio/gcredentials.c.orig 2014-02-03 17:40:41.000000000 +0000
++++ gio/gcredentials.c
+@@ -59,6 +59,9 @@
+ * credential type is a struct cmsgcred. This corresponds
+ * to %G_CREDENTIALS_TYPE_FREEBSD_CMSGCRED.
+ *
++ * On NetBSD, the native credential type is a struct unpcbid.
++ * This corresponds to %G_CREDENTIALS_TYPE_NETBSD_UNPCBID.
++ *
+ * On OpenBSD, the native credential type is a struct sockpeercred.
+ * This corresponds to %G_CREDENTIALS_TYPE_OPENBSD_SOCKPEERCRED.
+ *
+@@ -84,6 +87,8 @@ struct _GCredentials
+ struct ucred native;
+ #elif G_CREDENTIALS_USE_FREEBSD_CMSGCRED
+ struct cmsgcred native;
++#elif G_CREDENTIALS_USE_NETBSD_UNPCBID
++ struct unpcbid native;
+ #elif G_CREDENTIALS_USE_OPENBSD_SOCKPEERCRED
+ struct sockpeercred native;
+ #elif G_CREDENTIALS_USE_SOLARIS_UCRED
+@@ -145,6 +150,10 @@ g_credentials_init (GCredentials *creden
+ credentials->native.cmcred_pid = getpid ();
+ credentials->native.cmcred_euid = geteuid ();
+ credentials->native.cmcred_gid = getegid ();
++#elif G_CREDENTIALS_USE_NETBSD_UNPCBID
++ credentials->native.unp_pid = getpid ();
++ credentials->native.unp_euid = geteuid ();
++ credentials->native.unp_egid = getegid ();
+ #elif G_CREDENTIALS_USE_OPENBSD_SOCKPEERCRED
+ credentials->native.pid = getpid ();
+ credentials->native.uid = geteuid ();
+@@ -212,6 +221,15 @@ g_credentials_to_string (GCredentials *c
+ g_string_append_printf (ret, "uid=%" G_GINT64_FORMAT ",", (gint64) credentials->native.cmcred_euid);
+ if (credentials->native.cmcred_gid != -1)
+ g_string_append_printf (ret, "gid=%" G_GINT64_FORMAT ",", (gint64) credentials->native.cmcred_gid);
++#elif G_CREDENTIALS_USE_NETBSD_UNPCBID
++ g_string_append (ret, "netbsd-unpcbid:");
++ if (credentials->native.unp_pid != -1)
++ g_string_append_printf (ret, "pid=%" G_GINT64_FORMAT ",", (gint64) credentials->native.unp_pid);
++ if (credentials->native.unp_euid != -1)
++ g_string_append_printf (ret, "uid=%" G_GINT64_FORMAT ",", (gint64) credentials->native.unp_euid);
++ if (credentials->native.unp_egid != -1)
++ g_string_append_printf (ret, "gid=%" G_GINT64_FORMAT ",", (gint64) credentials->native.unp_egid);
++ ret->str[ret->len - 1] = '\0';
+ #elif G_CREDENTIALS_USE_OPENBSD_SOCKPEERCRED
+ g_string_append (ret, "openbsd-sockpeercred:");
+ if (credentials->native.pid != -1)
+@@ -278,6 +296,9 @@ g_credentials_is_same_user (GCredentials
+ #elif G_CREDENTIALS_USE_FREEBSD_CMSGCRED
+ if (credentials->native.cmcred_euid == other_credentials->native.cmcred_euid)
+ ret = TRUE;
++#elif G_CREDENTIALS_USE_NETBSD_UNPCBID
++ if (credentials->native.unp_euid == other_credentials->native.unp_euid)
++ ret = TRUE;
+ #elif G_CREDENTIALS_USE_OPENBSD_SOCKPEERCRED
+ if (credentials->native.uid == other_credentials->native.uid)
+ ret = TRUE;
+@@ -431,6 +452,8 @@ g_credentials_get_unix_user (GCredential
+ ret = credentials->native.uid;
+ #elif G_CREDENTIALS_USE_FREEBSD_CMSGCRED
+ ret = credentials->native.cmcred_euid;
++#elif G_CREDENTIALS_USE_NETBSD_UNPCBID
++ ret = credentials->native.unp_euid;
+ #elif G_CREDENTIALS_USE_OPENBSD_SOCKPEERCRED
+ ret = credentials->native.uid;
+ #elif G_CREDENTIALS_USE_SOLARIS_UCRED
+@@ -475,6 +498,8 @@ g_credentials_get_unix_pid (GCredentials
+ ret = credentials->native.pid;
+ #elif G_CREDENTIALS_USE_FREEBSD_CMSGCRED
+ ret = credentials->native.cmcred_pid;
++#elif G_CREDENTIALS_USE_NETBSD_UNPCBID
++ ret = credentials->native.unp_pid;
+ #elif G_CREDENTIALS_USE_OPENBSD_SOCKPEERCRED
+ ret = credentials->native.pid;
+ #elif G_CREDENTIALS_USE_SOLARIS_UCRED
+@@ -526,6 +551,9 @@ g_credentials_set_unix_user (GCredential
+ #elif G_CREDENTIALS_USE_FREEBSD_CMSGCRED
+ credentials->native.cmcred_euid = uid;
+ ret = TRUE;
++#elif G_CREDENTIALS_USE_NETBSD_UNPCBID
++ credentials->native.unp_euid = uid;
++ ret = TRUE;
+ #elif G_CREDENTIALS_USE_OPENBSD_SOCKPEERCRED
+ credentials->native.uid = uid;
+ ret = TRUE;
diff --git a/devel/glib2/patches/patch-gio_gcredentialsprivate.h b/devel/glib2/patches/patch-gio_gcredentialsprivate.h
new file mode 100644
index 00000000000..5feffdc32aa
--- /dev/null
+++ b/devel/glib2/patches/patch-gio_gcredentialsprivate.h
@@ -0,0 +1,22 @@
+$NetBSD: patch-gio_gcredentialsprivate.h,v 1.1 2014/09/05 20:49:55 prlw1 Exp $
+
+gcredentials: add NetBSD support
+https://bugzilla.gnome.org/show_bug.cgi?id=728256
+
+--- gio/gcredentialsprivate.h.orig 2014-02-03 17:40:41.000000000 +0000
++++ gio/gcredentialsprivate.h
+@@ -39,6 +39,14 @@
+ #define G_CREDENTIALS_UNIX_CREDENTIALS_MESSAGE_SUPPORTED 1
+ #define G_CREDENTIALS_SPOOFING_SUPPORTED 1
+
++#elif defined(__NetBSD__)
++#define G_CREDENTIALS_SUPPORTED 1
++#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_SPOOFING_SUPPORTED 1
++
+ #elif defined(__OpenBSD__)
+ #define G_CREDENTIALS_SUPPORTED 1
+ #define G_CREDENTIALS_USE_OPENBSD_SOCKPEERCRED 1
diff --git a/devel/glib2/patches/patch-gio_gdbusmessage.c b/devel/glib2/patches/patch-gio_gdbusmessage.c
deleted file mode 100644
index 67fbabb581a..00000000000
--- a/devel/glib2/patches/patch-gio_gdbusmessage.c
+++ /dev/null
@@ -1,27 +0,0 @@
-$NetBSD: patch-gio_gdbusmessage.c,v 1.1 2013/08/25 08:39:12 richard Exp $
-
-* suppress format warnings that are converted to errors with gcc 4.8
-*
---- gio/gdbusmessage.c.orig 2013-08-07 14:36:32.000000000 +0000
-+++ gio/gdbusmessage.c
-@@ -3463,9 +3463,9 @@ g_dbus_message_print (GDBusMessage *mess
- if (fstat (fds[n], &statbuf) == 0)
- {
- g_string_append_printf (fs, "%s" "dev=%d:%d", fs->len > 0 ? "," : "",
-- major (statbuf.st_dev), minor (statbuf.st_dev));
-+ (int)major (statbuf.st_dev), (int)minor (statbuf.st_dev));
- g_string_append_printf (fs, "%s" "mode=0%o", fs->len > 0 ? "," : "",
-- statbuf.st_mode);
-+ (guint)statbuf.st_mode);
- g_string_append_printf (fs, "%s" "ino=%" G_GUINT64_FORMAT, fs->len > 0 ? "," : "",
- (guint64) statbuf.st_ino);
- g_string_append_printf (fs, "%s" "uid=%d", fs->len > 0 ? "," : "",
-@@ -3473,7 +3473,7 @@ g_dbus_message_print (GDBusMessage *mess
- g_string_append_printf (fs, "%s" "gid=%d", fs->len > 0 ? "," : "",
- statbuf.st_gid);
- g_string_append_printf (fs, "%s" "rdev=%d:%d", fs->len > 0 ? "," : "",
-- major (statbuf.st_rdev), minor (statbuf.st_rdev));
-+ (int)major (statbuf.st_rdev), (int)minor (statbuf.st_rdev));
- g_string_append_printf (fs, "%s" "size=%" G_GUINT64_FORMAT, fs->len > 0 ? "," : "",
- (guint64) statbuf.st_size);
- g_string_append_printf (fs, "%s" "atime=%" G_GUINT64_FORMAT, fs->len > 0 ? "," : "",
diff --git a/devel/glib2/patches/patch-gio_gfile.c b/devel/glib2/patches/patch-gio_gfile.c
deleted file mode 100644
index 13d309c7b80..00000000000
--- a/devel/glib2/patches/patch-gio_gfile.c
+++ /dev/null
@@ -1,21 +0,0 @@
-$NetBSD: patch-gio_gfile.c,v 1.2 2013/12/25 11:47:09 tron Exp $
-
-GNOME bug report: https://bugzilla.gnome.org/show_bug.cgi?id=721034
-
-Fix build with SunStudio compiler: void function cannot return value
-
---- gio/gfile.c.orig 2013-11-12 05:30:27.000000000 +0000
-+++ gio/gfile.c 2013-12-25 09:58:51.000000000 +0000
-@@ -7627,9 +7627,9 @@
- g_return_if_fail (G_IS_FILE (file));
- g_return_if_fail (cancellable == NULL || G_IS_CANCELLABLE (cancellable));
-
-- return G_FILE_GET_IFACE (file)->measure_disk_usage_async (file, flags, io_priority, cancellable,
-- progress_callback, progress_data,
-- callback, user_data);
-+ G_FILE_GET_IFACE (file)->measure_disk_usage_async (file, flags, io_priority, cancellable,
-+ progress_callback, progress_data,
-+ callback, user_data);
- }
-
- /**
diff --git a/devel/glib2/patches/patch-gio_gioenums.h b/devel/glib2/patches/patch-gio_gioenums.h
new file mode 100644
index 00000000000..1698f96340b
--- /dev/null
+++ b/devel/glib2/patches/patch-gio_gioenums.h
@@ -0,0 +1,23 @@
+$NetBSD: patch-gio_gioenums.h,v 1.1 2014/09/05 20:49:55 prlw1 Exp $
+
+gcredentials: add NetBSD support
+https://bugzilla.gnome.org/show_bug.cgi?id=728256
+
+--- gio/gioenums.h.orig 2014-03-24 18:50:42.000000000 +0000
++++ gio/gioenums.h
+@@ -1352,6 +1352,7 @@ typedef enum
+ * @G_CREDENTIALS_TYPE_INVALID: Indicates an invalid native credential type.
+ * @G_CREDENTIALS_TYPE_LINUX_UCRED: The native credentials type is a <type>struct ucred</type>.
+ * @G_CREDENTIALS_TYPE_FREEBSD_CMSGCRED: The native credentials type is a <type>struct cmsgcred</type>.
++ * @G_CREDENTIALS_TYPE_NETBSD_UNPCBID: The native credentials type is a <type>struct unpcbid</type>.
+ * @G_CREDENTIALS_TYPE_OPENBSD_SOCKPEERCRED: The native credentials type is a <type>struct sockpeercred</type>. Added in 2.30.
+ * @G_CREDENTIALS_TYPE_SOLARIS_UCRED: The native credentials type is a <type>ucred_t</type>. Added in 2.40.
+ *
+@@ -1364,6 +1365,7 @@ typedef enum
+ G_CREDENTIALS_TYPE_INVALID,
+ G_CREDENTIALS_TYPE_LINUX_UCRED,
+ G_CREDENTIALS_TYPE_FREEBSD_CMSGCRED,
++ G_CREDENTIALS_TYPE_NETBSD_UNPCBID,
+ G_CREDENTIALS_TYPE_OPENBSD_SOCKPEERCRED,
+ G_CREDENTIALS_TYPE_SOLARIS_UCRED
+ } GCredentialsType;
diff --git a/devel/glib2/patches/patch-gio_glocalfile.c b/devel/glib2/patches/patch-gio_glocalfile.c
deleted file mode 100644
index e51c3355e08..00000000000
--- a/devel/glib2/patches/patch-gio_glocalfile.c
+++ /dev/null
@@ -1,19 +0,0 @@
-$NetBSD: patch-gio_glocalfile.c,v 1.3 2013/12/09 14:46:19 wiz Exp $
-
-Fix compilation on Solaris where O_DIRECTORY does not exist.
-PR pkg/48435.
-
---- gio/glocalfile.c.orig 2013-11-12 05:30:22.000000000 +0000
-+++ gio/glocalfile.c
-@@ -2699,7 +2699,11 @@ g_local_file_measure_size_of_file (gint
- return FALSE;
-
- #ifdef AT_FDCWD
-+#ifdef O_DIRECTORY
- dir_fd = openat (parent_fd, name->data, O_RDONLY | O_DIRECTORY);
-+#else
-+ dir_fd = openat (parent_fd, name->data, O_RDONLY);
-+#endif
- if (dir_fd < 0)
- return g_local_file_measure_size_error (state->flags, errno, name, error);
- #endif
diff --git a/devel/glib2/patches/patch-gio_gsocket.c b/devel/glib2/patches/patch-gio_gsocket.c
new file mode 100644
index 00000000000..9d158134ff0
--- /dev/null
+++ b/devel/glib2/patches/patch-gio_gsocket.c
@@ -0,0 +1,31 @@
+$NetBSD: patch-gio_gsocket.c,v 1.1 2014/09/05 20:49:55 prlw1 Exp $
+
+gcredentials: add NetBSD support
+https://bugzilla.gnome.org/show_bug.cgi?id=728256
+
+--- gio/gsocket.c.orig 2014-02-23 05:47:05.000000000 +0000
++++ gio/gsocket.c
+@@ -4458,6 +4458,23 @@ g_socket_get_credentials (GSocket *soc
+ native_creds_buf);
+ }
+ }
++#elif G_CREDENTIALS_USE_NETBSD_UNPCBID
++ {
++ struct unpcbid cred;
++ socklen_t optlen = sizeof (cred);
++
++ if (getsockopt (socket->priv->fd,
++ 0,
++ LOCAL_PEEREID,
++ &cred,
++ &optlen) == 0)
++ {
++ ret = g_credentials_new ();
++ g_credentials_set_native (ret,
++ G_CREDENTIALS_NATIVE_TYPE,
++ &cred);
++ }
++ }
+ #elif G_CREDENTIALS_USE_SOLARIS_UCRED
+ {
+ ucred_t *ucred = NULL;
diff --git a/devel/glib2/patches/patch-gio_gunixcredentialsmessage.c b/devel/glib2/patches/patch-gio_gunixcredentialsmessage.c
new file mode 100644
index 00000000000..6c054640940
--- /dev/null
+++ b/devel/glib2/patches/patch-gio_gunixcredentialsmessage.c
@@ -0,0 +1,16 @@
+$NetBSD: patch-gio_gunixcredentialsmessage.c,v 1.1 2014/09/05 20:49:55 prlw1 Exp $
+
+gcredentials: add NetBSD support
+https://bugzilla.gnome.org/show_bug.cgi?id=728256
+
+--- gio/gunixcredentialsmessage.c.orig 2014-01-06 19:02:48.000000000 +0000
++++ gio/gunixcredentialsmessage.c
+@@ -89,6 +89,8 @@ 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/devel/glib2/patches/patch-gio_tests_credentials.c b/devel/glib2/patches/patch-gio_tests_credentials.c
new file mode 100644
index 00000000000..ee0bfb51b08
--- /dev/null
+++ b/devel/glib2/patches/patch-gio_tests_credentials.c
@@ -0,0 +1,22 @@
+$NetBSD: patch-gio_tests_credentials.c,v 1.1 2014/09/05 20:49:55 prlw1 Exp $
+
+gcredentials: add NetBSD support
+https://bugzilla.gnome.org/show_bug.cgi?id=728256
+
+--- gio/tests/credentials.c.orig 2014-01-06 19:02:48.000000000 +0000
++++ gio/tests/credentials.c
+@@ -100,6 +100,14 @@ test_basic (void)
+ g_assert_cmpuint (native->cmcred_euid, ==, geteuid ());
+ g_assert_cmpuint (native->cmcred_pid, ==, getpid ());
+ }
++#elif G_CREDENTIALS_USE_NETBSD_UNPCBID
++ {
++ struct unpcbid *native = g_credentials_get_native (creds,
++ G_CREDENTIALS_TYPE_NETBSD_UNPCBID);
++
++ g_assert_cmpuint (native->unp_euid, ==, geteuid ());
++ g_assert_cmpuint (native->unp_pid, ==, getpid ());
++ }
+ #elif G_CREDENTIALS_USE_OPENBSD_SOCKPEERCRED
+ {
+ struct sockpeercred *native = g_credentials_get_native (creds,
diff --git a/devel/glib2/patches/patch-glib_gmessages.c b/devel/glib2/patches/patch-glib_gmessages.c
new file mode 100644
index 00000000000..3e1735485f8
--- /dev/null
+++ b/devel/glib2/patches/patch-glib_gmessages.c
@@ -0,0 +1,38 @@
+$NetBSD: patch-glib_gmessages.c,v 1.1 2014/09/05 20:49:55 prlw1 Exp $
+
+PR pkg/48318
+https://bugzilla.gnome.org/show_bug.cgi?id=720708
+
+--- glib/gmessages.c.orig 2014-02-15 15:31:32.000000000 +0000
++++ glib/gmessages.c
+@@ -1112,15 +1112,21 @@ g_assert_warning (const char *log_domain
+ const char *pretty_function,
+ const char *expression)
+ {
+- g_log (log_domain,
+- G_LOG_LEVEL_ERROR,
+- expression
+- ? "file %s: line %d (%s): assertion failed: (%s)"
+- : "file %s: line %d (%s): should not be reached",
+- file,
+- line,
+- pretty_function,
+- expression);
++ if (expression)
++ g_log (log_domain,
++ G_LOG_LEVEL_ERROR,
++ "file %s: line %d (%s): assertion failed: (%s)",
++ file,
++ line,
++ pretty_function,
++ expression);
++ else
++ g_log (log_domain,
++ G_LOG_LEVEL_ERROR,
++ "file %s: line %d (%s): should not be reached",
++ file,
++ line,
++ pretty_function);
+ _g_log_abort (FALSE);
+ abort ();
+ }
diff --git a/devel/glib2/patches/patch-glib_gtimezone.c b/devel/glib2/patches/patch-glib_gtimezone.c
index 5550ddffb8b..fde3356efb2 100644
--- a/devel/glib2/patches/patch-glib_gtimezone.c
+++ b/devel/glib2/patches/patch-glib_gtimezone.c
@@ -1,6 +1,6 @@
-$NetBSD: patch-glib_gtimezone.c,v 1.1 2014/05/26 22:29:23 wiz Exp $
+$NetBSD: patch-glib_gtimezone.c,v 1.2 2014/09/05 20:49:55 prlw1 Exp $
-Bug 730332 - glib uses wrong timezone transition with zoneinfo 2014c and up
+Bug 730332 - glib uses wrong timezone transition with zoneinfo 2014c
Patch from John Ralls.