summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--Mk/bsd.gnome.mk12
-rw-r--r--RMPORTS1
-rw-r--r--devel/glib20/Makefile106
-rw-r--r--devel/glib20/distinfo2
-rw-r--r--devel/glib20/files/extra-arch-powerpc6423
-rw-r--r--devel/glib20/files/extra-patch-glib_Makefile.in11
-rw-r--r--devel/glib20/files/extra-patch-glib_gunicollate.c124
-rw-r--r--devel/glib20/files/patch-ae43
-rw-r--r--devel/glib20/files/patch-ah11
-rw-r--r--devel/glib20/files/patch-config.h.in12
-rw-r--r--devel/glib20/files/patch-gio_fam_Makefile.in35
-rw-r--r--devel/glib20/files/patch-gio_glib-compile-schemas.c16
-rw-r--r--devel/glib20/files/patch-gio_gunixmount.c21
-rw-r--r--devel/glib20/files/patch-gio_gunixmounts.c158
-rw-r--r--devel/glib20/files/patch-gio_gunixvolume.c17
-rw-r--r--devel/glib20/files/patch-gio_tests_gdbus-peer.c11
-rw-r--r--devel/glib20/files/patch-gio_tests_include.c10
-rw-r--r--devel/glib20/files/patch-gio_xdgmime_xdgmime.c11
-rw-r--r--devel/glib20/files/patch-gio_xdgmime_xdgmimecache.h12
-rw-r--r--devel/glib20/files/patch-glib-2.0.pc.in8
-rw-r--r--devel/glib20/files/patch-glib::libcharset::Makefile.in11
-rw-r--r--devel/glib20/files/patch-glib_Makefile.in31
-rw-r--r--devel/glib20/files/patch-glib_deprecated_gthread.h10
-rw-r--r--devel/glib20/files/patch-glib_fix_hidden10
-rw-r--r--devel/glib20/files/patch-glib_gthread-posix.c20
-rw-r--r--devel/glib20/files/patch-glib_gutils.c20
-rw-r--r--devel/glib20/files/patch-glib_tests_gdatetime.c20
-rw-r--r--devel/glib20/files/patch-glib_tests_utils.c11
-rw-r--r--devel/glib20/files/patch-gmodule::gmodule-dl.c20
-rw-r--r--devel/glib20/files/patch-gobject_Makefile.in22
-rw-r--r--devel/glib20/pkg-descr5
-rw-r--r--devel/glib20/pkg-plist494
32 files changed, 1310 insertions, 8 deletions
diff --git a/Mk/bsd.gnome.mk b/Mk/bsd.gnome.mk
index c1aa21597..5680f6682 100644
--- a/Mk/bsd.gnome.mk
+++ b/Mk/bsd.gnome.mk
@@ -3,7 +3,7 @@
#
# $FreeBSD$
# $NetBSD: $
-# $MCom: ports/Mk/bsd.gnome.mk,v 1.575 2012/12/18 13:59:14 kwm Exp $
+# $MCom: ports/Mk/bsd.gnome.mk,v 1.576 2013/03/21 07:24:56 kwm Exp $
#
# Please view me with 4 column tabs!
@@ -79,7 +79,7 @@ _USE_GNOME_ALL+= bonobo gconf gdkpixbuf glib12 \
# GNOME 2 components
_USE_GNOME_ALL+= atk atspi cairo desktopfileutils eel2 evolutiondataserver gal2 \
- gdkpixbuf2 gconf2 _glib20 glib20 gnomecontrolcenter2 gnomedesktop \
+ gdkpixbuf2 gconf2 glib20 gnomecontrolcenter2 gnomedesktop \
gnomedesktopsharp20 gnomedocutils gnomemenus gnomepanel gnomesharp20 \
gnomespeech gnomevfs2 gtk-update-icon-cache gtk20 gtkhtml3 gtksharp10 \
gtksharp20 gtksourceview gtksourceview2 gvfs libartlgpl2 libbonobo \
@@ -323,13 +323,9 @@ libglade_MAKE_ENV= LIBGLADE_CONFIG="${LIBGLADE_CONFIG}"
libglade_DETECT= ${LIBGLADE_CONFIG}
libglade_USE_GNOME_IMPL=gnomedb
-_glib20_LIB_DEPENDS= glib-2.0:${PORTSDIR}/devel/glib20 \
+glib20_LIB_DEPENDS= glib-2.0:${PORTSDIR}/devel/glib20 \
pcre:${PORTSDIR}/devel/pcre
-_glib20_DETECT= ${LOCALBASE}/libdata/pkgconfig/glib-2.0.pc
-
-glib20_RUN_DEPENDS= ${LOCALBASE}/lib/gio/modules/libgiofam.so:${PORTSDIR}/devel/gio-fam-backend
-glib20_DETECT= ${LOCALBASE}/lib/gio/modules/libgiofam.so
-glib20_USE_GNOME_IMPL= _glib20
+glib20_DETECT= ${LOCALBASE}/libdata/pkgconfig/glib-2.0.pc
atk_LIB_DEPENDS= atk-1.0.0:${PORTSDIR}/accessibility/atk
atk_DETECT= ${LOCALBASE}/libdata/pkgconfig/atk.pc
diff --git a/RMPORTS b/RMPORTS
index 0ba521119..028e2932e 100644
--- a/RMPORTS
+++ b/RMPORTS
@@ -1,2 +1,3 @@
x11/yelp-xsl|textproc/yelp-xsl|%DATE%|moved to beter location
devel/libgdata08|devel/libgdata|%DATE%|libgdata shuffle
+devel/gio-fam-backend|devel/glib20|%DATE%|gio fam module by kqueue support in glib20
diff --git a/devel/glib20/Makefile b/devel/glib20/Makefile
new file mode 100644
index 000000000..4a022e472
--- /dev/null
+++ b/devel/glib20/Makefile
@@ -0,0 +1,106 @@
+# Created by: Vanilla I. Shu <vanilla@FreeBSD.org>
+# $FreeBSD: head/devel/glib20/Makefile 313633 2013-03-08 10:51:34Z kwm $
+# $MCom: ports/devel/glib20/Makefile,v 1.229 2012/12/09 20:42:55 kwm Exp $
+
+PORTNAME= glib
+PORTVERSION= 2.36.0
+PORTREVISION= 0
+CATEGORIES= devel
+MASTER_SITES= GNOME
+DIST_SUBDIR= gnome2
+
+MAINTAINER= gnome@FreeBSD.org
+COMMENT= Some useful routines of C programming (current stable version)
+
+LICENSE= LGPL20
+
+LATEST_LINK= glib20
+USE_XZ= yes
+PORTSCOUT= limitw:1,even
+
+.if !defined(REFERENCE_PORT)
+
+LIB_DEPENDS+= pcre:${PORTSDIR}/devel/pcre \
+ ffi:${PORTSDIR}/devel/libffi
+
+USE_GETTEXT= yes
+USE_ICONV= yes
+USE_AUTOTOOLS= libtool
+USE_LDCONFIG= yes
+USE_PKGCONFIG= build
+USES= pathfix
+USE_GNOME= ltverhack
+USE_GMAKE= yes
+MAKE_JOBS_SAFE= yes
+USE_PYTHON= 2.5+
+USE_PERL5= yes
+CONFIGURE_ARGS= --enable-static --with-libiconv=gnu \
+ --disable-gtk-doc --with-html-dir=${PREFIX}/share/doc \
+ --disable-man --without-xml-catalog \
+ --with-pcre=system \
+ --disable-fam
+CONFIGURE_ENV= ac_cv_header_sys_inotify_h=
+CPPFLAGS+= -I${LOCALBASE}/include
+LDFLAGS+= -L${LOCALBASE}/lib -lintl
+
+OPTIONS_DEFINE= COLLATION_FIX DEBUG
+COLLATION_FIX_DESC= fix string collation
+
+.include <bsd.port.pre.mk>
+
+# doesn't build yet
+#.if (${OSVERSION} < 800000) \
+# || (${OSVERSION} >= 800000 && ${OSVERSION} < 802000)
+# || (${OSVERSION} >= 900000 && ${OSVERSION} < 900021)
+CONFIGURE_ARGS+=--disable-dtrace
+#.else
+#CONFIGURE_ARGS+=--enable-dtrace
+#.endif
+
+.if ${ARCH} == powerpc64
+EXTRA_PATCHES= ${FILESDIR}/extra-arch-powerpc64
+.endif
+
+# Let glib use asm code for implementing atomic ops on i386 and amd64.
+.if ${ARCH} == "i386"
+GLIB_ARCH= i486
+.elif ${ARCH} == "amd64"
+GLIB_ARCH= x86_64
+.else
+GLIB_ARCH= ${ARCH}
+.endif
+CONFIGURE_TARGET=${GLIB_ARCH}-portbld-freebsd${OSREL}
+
+.if ${PORT_OPTIONS:MCOLLATION_FIX}
+LIB_DEPENDS+= icui18n:${PORTSDIR}/devel/icu
+EXTRA_PATCHES+= ${FILESDIR}/extra-patch-glib_Makefile.in \
+ ${FILESDIR}/extra-patch-glib_gunicollate.c
+# Disable it until someone can figure why it causes net-im/pidgin crashed.
+#CONFIGURE_ENV+= CFLAGS="-D__STDC_ISO_10646__"
+.endif
+
+.if ${PORT_OPTIONS:MDEBUG}
+CONFIGURE_ARGS+= --enable-debug=yes \
+ --disable-silent-rules
+.else
+CONFIGURE_ARGS+= --disable-modular-tests
+.endif
+
+post-patch:
+ @${REINPLACE_CMD} -e 's|/usr/local|${LOCALBASE}|g ; \
+ s|/usr/share/locale/locale|${LOCALBASE}/share/locale/locale|g' \
+ ${WRKSRC}/glib/gutils.c
+ @${REINPLACE_CMD} -e 's|/lib/dbus/machine-id|/db/dbus/machine-id|g' \
+ ${WRKSRC}/gio/gdbusaddress.c ${WRKSRC}/gio/gdbusprivate.c \
+ ${WRKSRC}/po/*.po
+ @${REINPLACE_CMD} -e 's|inotify_support=yes|inotify_support=no| ; \
+ s|-Werror|| ; \
+ s|#define HAVE_SYS_INOTIFY_H 1||' ${WRKSRC}/configure
+
+post-install:
+ @${MKDIR} ${PREFIX}/share/GConf/gsettings
+ -${PREFIX}/bin/gio-querymodules ${PREFIX}/lib/gio/modules
+
+.include <bsd.port.post.mk>
+
+.endif
diff --git a/devel/glib20/distinfo b/devel/glib20/distinfo
new file mode 100644
index 000000000..a1297ec21
--- /dev/null
+++ b/devel/glib20/distinfo
@@ -0,0 +1,2 @@
+SHA256 (gnome2/glib-2.36.0.tar.xz) = 455a8abe8692c5174bcc7ffa15b96a7521a2f2f9fb47594405927c35cb9bb227
+SIZE (gnome2/glib-2.36.0.tar.xz) = 6508276
diff --git a/devel/glib20/files/extra-arch-powerpc64 b/devel/glib20/files/extra-arch-powerpc64
new file mode 100644
index 000000000..d774ebd6b
--- /dev/null
+++ b/devel/glib20/files/extra-arch-powerpc64
@@ -0,0 +1,23 @@
+
+--- gio/glib-compile-schemas.c.orig 2010-11-24 21:32:15.000000000 +0100
++++ gio/glib-compile-schemas.c 2010-11-24 21:33:42.000000000 +0100
+@@ -1458,7 +1458,7 @@
+ }
+ /* Text {{{2 */
+ static void
+-text (GMarkupParseContext *context,
++XXXtext (GMarkupParseContext *context,
+ const gchar *text,
+ gsize text_len,
+ gpointer user_data,
+@@ -1590,7 +1590,7 @@
+ parse_gschema_files (gchar **files,
+ gboolean strict)
+ {
+- GMarkupParser parser = { start_element, end_element, text };
++ GMarkupParser parser = { start_element, end_element, XXXtext };
+ ParseState state = { 0, };
+ const gchar *filename;
+ GError *error = NULL;
+
+
diff --git a/devel/glib20/files/extra-patch-glib_Makefile.in b/devel/glib20/files/extra-patch-glib_Makefile.in
new file mode 100644
index 000000000..04e45460c
--- /dev/null
+++ b/devel/glib20/files/extra-patch-glib_Makefile.in
@@ -0,0 +1,11 @@
+--- glib/Makefile.in.orig 2012-09-27 15:07:28.000000000 +0000
++++ glib/Makefile.in 2012-09-27 15:08:02.000000000 +0000
+@@ -415,7 +415,7 @@
+ INSTOBJEXT = @INSTOBJEXT@
+ INTLLIBS = @INTLLIBS@
+ LD = @LD@
+-LDFLAGS = @LDFLAGS@
++LDFLAGS = @LDFLAGS@ -licui18n
+ LIBELF_CFLAGS = @LIBELF_CFLAGS@
+ LIBELF_LIBS = @LIBELF_LIBS@
+ LIBFFI_CFLAGS = @LIBFFI_CFLAGS@
diff --git a/devel/glib20/files/extra-patch-glib_gunicollate.c b/devel/glib20/files/extra-patch-glib_gunicollate.c
new file mode 100644
index 000000000..1d9af5fa7
--- /dev/null
+++ b/devel/glib20/files/extra-patch-glib_gunicollate.c
@@ -0,0 +1,124 @@
+--- glib/gunicollate.c.orig 2012-11-24 20:50:39.000000000 +0000
++++ glib/gunicollate.c 2013-03-08 12:16:59.000000000 +0000
+@@ -26,6 +26,10 @@
+ #include <wchar.h>
+ #endif
+
++#include <unicode/umachine.h>
++#include <unicode/ustring.h>
++#include <unicode/ucol.h>
++
+ #ifdef HAVE_CARBON
+ #include <CoreServices/CoreServices.h>
+ #endif
+@@ -36,11 +40,54 @@
+ #include "gstring.h"
+ #include "gstrfuncs.h"
+ #include "gtestutils.h"
++#include "gthread.h"
+ #include "gcharset.h"
+ #ifndef __STDC_ISO_10646__
+ #include "gconvert.h"
+ #endif
+
++static gboolean icu_collator_initialized = FALSE;
++static UCollator *icu_collator = NULL;
++G_LOCK_DEFINE_STATIC(icu_collator);
++
++static void
++init_icu_collator (void)
++{
++ G_LOCK(icu_collator);
++ if (! icu_collator_initialized)
++ {
++ UErrorCode error = U_ZERO_ERROR;
++
++ icu_collator = ucol_open(NULL, &error);
++ if (icu_collator == NULL)
++ g_warning("unable to initialize the ICU collator (%s), FreeBSD collation routines will be used", u_errorName(error));
++
++ icu_collator_initialized = TRUE;
++ }
++ G_UNLOCK(icu_collator);
++}
++
++static UChar *
++utf8_to_uchar (const char *str, int32_t len, int32_t *result_len)
++{
++ UErrorCode error = U_ZERO_ERROR;
++ UChar *result = NULL;
++
++ u_strFromUTF8(NULL, 0, result_len, str, len, &error);
++ if (error <= U_ZERO_ERROR || error == U_BUFFER_OVERFLOW_ERROR)
++ {
++ error = U_ZERO_ERROR;
++ result = g_new(UChar, *result_len);
++ u_strFromUTF8(result, *result_len, NULL, str, len, &error);
++ if (error > U_ZERO_ERROR)
++ {
++ g_free(result);
++ result = NULL;
++ }
++ }
++
++ return result;
++}
+
+ #ifdef _MSC_VER
+ /* Workaround for bug in MSVCR80.DLL */
+@@ -128,6 +175,28 @@
+ g_return_val_if_fail (str1 != NULL, 0);
+ g_return_val_if_fail (str2 != NULL, 0);
+
++ init_icu_collator();
++ if (icu_collator != NULL)
++ {
++ int32_t wstr1_len;
++ UChar *wstr1 = utf8_to_uchar(str1, -1, &wstr1_len);
++ if (wstr1 != NULL)
++ {
++ int32_t wstr2_len;
++ UChar *wstr2 = utf8_to_uchar(str2, -1, &wstr2_len);
++ if (wstr2 != NULL)
++ {
++ result = ucol_strcoll(icu_collator, wstr1, wstr1_len, wstr2, wstr2_len);
++
++ g_free(wstr1);
++ g_free(wstr2);
++
++ return result;
++ }
++ g_free(wstr1);
++ }
++ }
++
+ str1_norm = g_utf8_normalize (str1, -1, G_NORMALIZE_ALL_COMPOSE);
+ str2_norm = g_utf8_normalize (str2, -1, G_NORMALIZE_ALL_COMPOSE);
+
+@@ -419,6 +488,26 @@
+
+ g_return_val_if_fail (str != NULL, NULL);
+
++ init_icu_collator();
++ if (icu_collator != NULL)
++ {
++ int32_t wstr_len;
++ UChar *wstr = utf8_to_uchar(str, len, &wstr_len);
++ if (wstr != NULL)
++ {
++ int32_t result_len;
++
++ /* get size of result */
++ result_len = ucol_getSortKey(icu_collator, wstr, wstr_len, NULL, 0);
++
++ result = g_new(char, result_len);
++ ucol_getSortKey(icu_collator, wstr, wstr_len, result, result_len);
++ g_free(wstr);
++
++ return result;
++ }
++ }
++
+ str_norm = g_utf8_normalize (str, len, G_NORMALIZE_ALL_COMPOSE);
+
+ result = NULL;
diff --git a/devel/glib20/files/patch-ae b/devel/glib20/files/patch-ae
new file mode 100644
index 000000000..e62156bf5
--- /dev/null
+++ b/devel/glib20/files/patch-ae
@@ -0,0 +1,43 @@
+--- configure.orig 2013-03-28 02:59:16.000000000 +0000
++++ configure 2013-03-28 03:00:20.000000000 +0000
+@@ -603,6 +603,9 @@
+ #ifdef HAVE_SYS_TYPES_H
+ # include <sys/types.h>
+ #endif
++#ifdef HAVE_SYS_PARAM_H
++# include <sys/param.h>
++#endif
+ #ifdef HAVE_SYS_STAT_H
+ # include <sys/stat.h>
+ #endif
+@@ -5699,7 +5702,7 @@
+ fi
+
+ GLIB_RUNTIME_LIBDIR="$with_runtime_libdir"
+-ABS_GLIB_RUNTIME_LIBDIR="`readlink -f $libdir/$with_runtime_libdir`"
++ABS_GLIB_RUNTIME_LIBDIR="`readlink $libdir/$with_runtime_libdir`"
+
+
+ if test "x$with_runtime_libdir" != "x"; then
+@@ -23089,7 +23092,7 @@
+ fi
+ done
+
+-for ac_func in chown lchmod lchown fchmod fchown link utimes getgrgid getpwuid getresuid
++for ac_func in chown lchmod lchown fchmod fchown link utimes getgrgid getpwuid getresuid sysctlbyname
+ do :
+ as_ac_var=`$as_echo "ac_cv_func_$ac_func" | $as_tr_sh`
+ ac_fn_c_check_func "$LINENO" "$ac_func" "$as_ac_var"
+@@ -26629,10 +26632,10 @@
+ # b) FreeBSD doesn't do this either.
+ #
+ case $host in
+- *-*-freebsd*|*-*-linux*)
++ *-*-linux*)
+ G_THREAD_LIBS_FOR_GTHREAD="`echo $G_THREAD_LIBS | sed s/-pthread/-lpthread/`"
+ ;;
+- *-*-openbsd*)
++ *-*-openbsd*|*-*-freebsd*)
+ LDFLAGS="$LDFLAGS -pthread"
+ ;;
+ *)
diff --git a/devel/glib20/files/patch-ah b/devel/glib20/files/patch-ah
new file mode 100644
index 000000000..3784d16b8
--- /dev/null
+++ b/devel/glib20/files/patch-ah
@@ -0,0 +1,11 @@
+--- docs/reference/Makefile.in.orig 2007-12-21 16:54:10.000000000 -0500
++++ docs/reference/Makefile.in 2007-12-21 16:54:40.000000000 -0500
+@@ -268,7 +268,7 @@ GTESTER_REPORT = $(top_builddir)/glib/gt
+ # initialize variables for unconditional += appending
+ EXTRA_DIST =
+ TEST_PROGS =
+-SUBDIRS = glib gobject gio
++SUBDIRS = #glib gobject gio
+ all: all-recursive
+
+ .SUFFIXES:
diff --git a/devel/glib20/files/patch-config.h.in b/devel/glib20/files/patch-config.h.in
new file mode 100644
index 000000000..3c2bc5d26
--- /dev/null
+++ b/devel/glib20/files/patch-config.h.in
@@ -0,0 +1,12 @@
+--- config.h.in.orig 2008-03-18 18:24:24.000000000 -0400
++++ config.h.in 2008-03-18 18:24:59.000000000 -0400
+@@ -197,6 +197,9 @@
+ /* Define to 1 if you have the `getpwuid' function. */
+ #undef HAVE_GETPWUID
+
++/* Define to 1 if you have the `sysctlbyname' function. */
++#undef HAVE_SYSCTLBYNAME
++
+ /* Define if the GNU gettext() function is already present or preinstalled. */
+ #undef HAVE_GETTEXT
+
diff --git a/devel/glib20/files/patch-gio_fam_Makefile.in b/devel/glib20/files/patch-gio_fam_Makefile.in
new file mode 100644
index 000000000..033ff3f5d
--- /dev/null
+++ b/devel/glib20/files/patch-gio_fam_Makefile.in
@@ -0,0 +1,35 @@
+--- gio/fam/Makefile.in.orig 2012-03-07 21:07:42.000000000 +0100
++++ gio/fam/Makefile.in 2012-03-07 21:08:30.000000000 +0100
+@@ -87,9 +87,7 @@
+ am__installdirs = "$(DESTDIR)$(giomoduledir)"
+ LTLIBRARIES = $(giomodule_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) \
++libgiofam_la_DEPENDENCIES = \
+ $(am__DEPENDENCIES_1)
+ am__objects_1 =
+ am_libgiofam_la_OBJECTS = libgiofam_la-fam-helper.lo \
+@@ -402,9 +400,9 @@
+
+ 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 \
++ -lgio-2.0 \
++ -lgobject-2.0 \
++ -lglib-2.0 \
+ $(GLIB_LIBS) \
+ $(FAM_LIBS) \
+ $(NULL)
+@@ -843,7 +841,7 @@
+
+ install-data-hook:
+ if $(RUN_QUERY_MODULES) && test -z "$(DESTDIR)" ; then \
+- $(top_builddir)/gio/gio-querymodules$(EXEEXT) $(DESTDIR)$(GIO_MODULE_DIR) ; \
++ gio-querymodules$(EXEEXT) $(DESTDIR)$(GIO_MODULE_DIR) ; \
+ fi
+
+ uninstall-local:
diff --git a/devel/glib20/files/patch-gio_glib-compile-schemas.c b/devel/glib20/files/patch-gio_glib-compile-schemas.c
new file mode 100644
index 000000000..e92fac5ba
--- /dev/null
+++ b/devel/glib20/files/patch-gio_glib-compile-schemas.c
@@ -0,0 +1,16 @@
+--- gio/glib-compile-schemas.c.orig 2012-06-14 16:39:22.000000000 +0200
++++ gio/glib-compile-schemas.c 2012-06-14 16:39:55.000000000 +0200
+@@ -1204,11 +1204,13 @@
+ return;
+ }
+
++#if 0
+ if (path && (g_str_has_prefix (path, "/apps/") ||
+ g_str_has_prefix (path, "/desktop/") ||
+ g_str_has_prefix (path, "/system/")))
+ g_printerr ("warning: Schema '%s' has path '%s'. Paths starting with "
+ "'/apps/', '/desktop/' or '/system/' are deprecated.\n", id, path);
++#endif
+
+ state->schema_state = schema_state_new (path, gettext_domain,
+ extends, extends_name, list_of);
diff --git a/devel/glib20/files/patch-gio_gunixmount.c b/devel/glib20/files/patch-gio_gunixmount.c
new file mode 100644
index 000000000..e0b3caa37
--- /dev/null
+++ b/devel/glib20/files/patch-gio_gunixmount.c
@@ -0,0 +1,21 @@
+--- gio/gunixmount.c.orig 2011-08-31 19:47:35.000000000 +0200
++++ gio/gunixmount.c 2011-09-15 17:50:24.000000000 +0200
+@@ -449,12 +449,18 @@ g_unix_mount_eject (GMount *
+ gpointer user_data)
+ {
+ GUnixMount *unix_mount = G_UNIX_MOUNT (mount);
++#ifndef __FreeBSD__
+ char *argv[] = {"eject", NULL, NULL};
+
+ if (unix_mount->mount_path != NULL)
+ argv[1] = unix_mount->mount_path;
+ else
+ argv[1] = unix_mount->device_path;
++#else
++ char *argv[] = {"cdcontrol", "-f", NULL, "eject", NULL};
++
++ argv[2] = unix_mount->device_path;
++#endif
+
+ eject_unmount_do (mount, cancellable, callback, user_data, argv);
+ }
diff --git a/devel/glib20/files/patch-gio_gunixmounts.c b/devel/glib20/files/patch-gio_gunixmounts.c
new file mode 100644
index 000000000..608bd95a3
--- /dev/null
+++ b/devel/glib20/files/patch-gio_gunixmounts.c
@@ -0,0 +1,158 @@
+--- gio/gunixmounts.c.orig 2012-05-02 22:02:54.000000000 -0500
++++ gio/gunixmounts.c 2012-05-02 22:15:35.000000000 -0500
+@@ -155,6 +155,9 @@
+ GFileMonitor *fstab_monitor;
+ GFileMonitor *mtab_monitor;
+
++ guint mount_poller_source;
++ GList *mount_poller_mounts;
++
+ GSource *proc_mounts_watch_source;
+ };
+
+@@ -167,6 +170,8 @@
+ static GList *_g_get_unix_mounts (void);
+ static GList *_g_get_unix_mount_points (void);
+
++static guint64 mount_poller_time = 0;
++
+ G_DEFINE_TYPE (GUnixMountMonitor, g_unix_mount_monitor, G_TYPE_OBJECT);
+
+ #define MOUNT_POLL_INTERVAL 4000
+@@ -193,6 +198,7 @@
+ #endif
+
+ #if (defined(HAVE_GETVFSSTAT) || defined(HAVE_GETFSSTAT)) && defined(HAVE_FSTAB_H) && defined(HAVE_SYS_MOUNT_H)
++#include <sys/param.h>
+ #include <sys/ucred.h>
+ #include <sys/mount.h>
+ #include <fstab.h>
+@@ -243,22 +249,29 @@
+ "/", /* 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/local",
++ "/usr/obj",
++ "/usr/ports",
++ "/usr/src",
+ "/var",
+ "/var/crash",
+ "/var/local",
+@@ -299,6 +312,7 @@
+ "devfs",
+ "devpts",
+ "ecryptfs",
++ "fdescfs",
+ "kernfs",
+ "linprocfs",
+ "proc",
+@@ -1122,6 +1136,10 @@
+ if (stat (monitor_file, &buf) == 0)
+ return (guint64)buf.st_mtime;
+ }
++ else
++ {
++ return mount_poller_time;
++ }
+ return 0;
+ }
+
+@@ -1267,6 +1285,13 @@
+ 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);
++ }
++
+ the_mount_monitor = NULL;
+
+ G_OBJECT_CLASS (g_unix_mount_monitor_parent_class)->finalize (object);
+@@ -1348,6 +1373,52 @@
+ }
+
+ static gboolean
++mount_change_poller (gpointer user_data)
++{
++ GUnixMountMonitor *mount_monitor;
++ GList *current_mounts;
++ 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
++ {
++ int i;
++
++ for (i = 0; i < g_list_length (current_mounts); i++)
++ {
++ 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);
++ }
++ }
++
++ g_list_free (mount_monitor->mount_poller_mounts);
++ mount_monitor->mount_poller_mounts = current_mounts;
++
++ if (has_changed)
++ {
++ mount_poller_time = (guint64)time (NULL);
++ g_signal_emit (mount_monitor, signals[MOUNTS_CHANGED], 0);
++ }
++
++ return TRUE;
++}
++
++
++static gboolean
+ proc_mounts_changed (GIOChannel *channel,
+ GIOCondition cond,
+ gpointer user_data)
+@@ -1412,6 +1483,12 @@
+ g_signal_connect (monitor->mtab_monitor, "changed", (GCallback)mtab_file_changed, monitor);
+ }
+ }
++ else
++ {
++ 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);
++ }
+ }
+
+ /**
diff --git a/devel/glib20/files/patch-gio_gunixvolume.c b/devel/glib20/files/patch-gio_gunixvolume.c
new file mode 100644
index 000000000..b22563047
--- /dev/null
+++ b/devel/glib20/files/patch-gio_gunixvolume.c
@@ -0,0 +1,17 @@
+--- gio/gunixvolume.c.orig 2009-11-30 04:35:27.000000000 +0100
++++ gio/gunixvolume.c 2009-12-08 19:32:03.000000000 +0100
+@@ -465,9 +465,14 @@ g_unix_volume_eject (GVolume
+ gpointer user_data)
+ {
+ GUnixVolume *unix_volume = G_UNIX_VOLUME (volume);
++#ifdef __FreeBSD__
++ char *argv[] = {"cdcontrol", "-f", NULL, "eject", NULL};
++ argv[2] = unix_volume->device_path;
++#else
+ char *argv[] = { "eject", NULL, NULL };
+
+ argv[1] = unix_volume->device_path;
++#endif
+
+ eject_mount_do (volume, cancellable, callback, user_data, argv);
+ }
diff --git a/devel/glib20/files/patch-gio_tests_gdbus-peer.c b/devel/glib20/files/patch-gio_tests_gdbus-peer.c
new file mode 100644
index 000000000..1ab76dc8c
--- /dev/null
+++ b/devel/glib20/files/patch-gio_tests_gdbus-peer.c
@@ -0,0 +1,11 @@
+--- gio/tests/gdbus-peer.c.orig 2010-08-16 21:30:03.000000000 +0200
++++ gio/tests/gdbus-peer.c 2010-08-16 23:13:32.000000000 +0200
+@@ -42,6 +42,8 @@
+ #include <sys/socket.h>
+ #endif
+
++#include <sys/socket.h>
++
+ /* used in test_overflow */
+ #ifdef G_OS_UNIX
+ #include <gio/gunixconnection.h>
diff --git a/devel/glib20/files/patch-gio_tests_include.c b/devel/glib20/files/patch-gio_tests_include.c
new file mode 100644
index 000000000..165c97b38
--- /dev/null
+++ b/devel/glib20/files/patch-gio_tests_include.c
@@ -0,0 +1,10 @@
+--- glib/tests/include.c.orig 2012-03-06 12:11:39.000000000 +0100
++++ glib/tests/include.c 2012-03-06 12:13:17.000000000 +0100
+@@ -3,6 +3,7 @@
+ #define _POSIX_C_SOURCE 0
+ #undef _GNU_SOURCE
+ #undef _XOPEN_SOURCE
++#include <sys/types.h>
+ #include <pthread.h>
+ #include <glib.h>
+
diff --git a/devel/glib20/files/patch-gio_xdgmime_xdgmime.c b/devel/glib20/files/patch-gio_xdgmime_xdgmime.c
new file mode 100644
index 000000000..8c36dc5d8
--- /dev/null
+++ b/devel/glib20/files/patch-gio_xdgmime_xdgmime.c
@@ -0,0 +1,11 @@
+--- gio/xdgmime/xdgmime.c.orig Mon Nov 8 22:25:27 2004
++++ gio/xdgmime/xdgmime.c Sat Nov 13 10:27:22 2004
+@@ -204,7 +204,7 @@
+
+ xdg_data_dirs = getenv ("XDG_DATA_DIRS");
+ if (xdg_data_dirs == NULL)
+- xdg_data_dirs = "/usr/local/share/:/usr/share/";
++ xdg_data_dirs = "/usr/local/share/";
+
+ ptr = xdg_data_dirs;
+
diff --git a/devel/glib20/files/patch-gio_xdgmime_xdgmimecache.h b/devel/glib20/files/patch-gio_xdgmime_xdgmimecache.h
new file mode 100644
index 000000000..039571d8b
--- /dev/null
+++ b/devel/glib20/files/patch-gio_xdgmime_xdgmimecache.h
@@ -0,0 +1,12 @@
+--- gio/xdgmime/xdgmimecache.h.orig 2008-06-12 10:25:40.000000000 -0400
++++ gio/xdgmime/xdgmimecache.h 2008-06-14 00:49:59.000000000 -0400
+@@ -46,6 +46,9 @@ typedef struct _XdgMimeCache XdgMimeCach
+ #define _xdg_mime_cache_get_icon XDG_RESERVED_ENTRY(cache_get_icon)
+ #define _xdg_mime_cache_get_generic_icon XDG_RESERVED_ENTRY(cache_get_generic_icon)
+ #define _xdg_mime_cache_glob_dump XDG_RESERVED_ENTRY(cache_glob_dump)
++#define _xdg_mime_cache_is_valid_mime_type XDG_RESERVED_ENTRY(cache_is_valid_mime_type)
++#define _xdg_mime_cache_mime_type_equal XDG_RESERVED_ENTRY(cache_mime_type_equal)
++#define _xdg_mime_cache_media_type_equal XDG_RESERVED_ENTRY(cache_media_type_equal)
+ #endif
+
+ extern XdgMimeCache **_caches;
diff --git a/devel/glib20/files/patch-glib-2.0.pc.in b/devel/glib20/files/patch-glib-2.0.pc.in
new file mode 100644
index 000000000..9bd74ad43
--- /dev/null
+++ b/devel/glib20/files/patch-glib-2.0.pc.in
@@ -0,0 +1,8 @@
+--- glib-2.0.pc.in.orig 2012-01-16 04:12:06.000000000 +0100
++++ glib-2.0.pc.in 2012-03-06 12:30:11.000000000 +0100
+@@ -13,4 +13,4 @@
+ Requires.private: @PCRE_REQUIRES@
+ Libs: -L${libdir} -lglib-2.0 @INTLLIBS@
+ Libs.private: @G_THREAD_LIBS@ @G_LIBS_EXTRA@ @PCRE_LIBS@ @INTLLIBS@ @ICONV_LIBS@
+-Cflags: -I${includedir}/glib-2.0 -I${libdir}/glib-2.0/include @GLIB_EXTRA_CFLAGS@
++Cflags: -I${includedir}/glib-2.0 @GLIB_EXTRA_CFLAGS@
diff --git a/devel/glib20/files/patch-glib::libcharset::Makefile.in b/devel/glib20/files/patch-glib::libcharset::Makefile.in
new file mode 100644
index 000000000..b3589ad59
--- /dev/null
+++ b/devel/glib20/files/patch-glib::libcharset::Makefile.in
@@ -0,0 +1,11 @@
+--- glib/libcharset/Makefile.in.orig 2010-08-08 12:46:01.000000000 +0200
++++ glib/libcharset/Makefile.in 2010-08-08 12:46:01.000000000 +0200
+@@ -566,7 +566,7 @@ install-dvi: install-dvi-am
+
+ install-dvi-am:
+
+-install-exec-am: install-exec-local
++install-exec-am: # install-exec-local
+
+ install-html: install-html-am
+
diff --git a/devel/glib20/files/patch-glib_Makefile.in b/devel/glib20/files/patch-glib_Makefile.in
new file mode 100644
index 000000000..30d6f1be8
--- /dev/null
+++ b/devel/glib20/files/patch-glib_Makefile.in
@@ -0,0 +1,31 @@
+--- glib/Makefile.in.orig 2012-09-24 01:59:13.000000000 +0000
++++ glib/Makefile.in 2012-09-24 02:02:07.000000000 +0000
+@@ -585,7 +585,7 @@
+ #
+ DISTCLEANFILES = glibconfig-stamp glibconfig.h
+ CLEANFILES = libglib-gdb.py glib-public-headers.txt $(am__append_6)
+-configexecincludedir = $(libdir)/glib-2.0/include
++configexecincludedir = $(includedir)/glib-2.0
+ nodist_configexecinclude_HEADERS = glibconfig.h
+ @HAVE_GOOD_PRINTF_FALSE@PRINTF_SUBDIR = gnulib
+ @HAVE_GOOD_PRINTF_FALSE@printf_la = gnulib/libgnulib.la
+@@ -1617,7 +1617,7 @@
+ info-am:
+
+ install-data-am: install-data-local install-deprecatedincludeHEADERS \
+- install-dist_gdbSCRIPTS install-glibincludeHEADERS \
++ install-glibincludeHEADERS \
+ install-glibsubincludeHEADERS install-tapsetDATA
+ @$(NORMAL_INSTALL)
+ $(MAKE) $(AM_MAKEFLAGS) install-data-hook
+@@ -1906,9 +1906,7 @@
+ libglib-gdb.py: libglib-gdb.py.in
+ $(AM_V_GEN) $(SED) -e "s|\@datadir\@|$(datadir)|" $(srcdir)/libglib-gdb.py.in > $(builddir)/libglib-gdb.py
+
+-install-data-hook: libglib-gdb.py
+- mkdir -p $(DESTDIR)$(datadir)/gdb/auto-load$(ABS_GLIB_RUNTIME_LIBDIR)
+- $(INSTALL) $(builddir)/libglib-gdb.py $(DESTDIR)$(datadir)/gdb/auto-load$(ABS_GLIB_RUNTIME_LIBDIR)/libglib-2.0.so.0.$(LT_CURRENT).$(LT_REVISION)-gdb.py
++install-data-hook:
+ @HAVE_GLIB_RUNTIME_LIBDIR_TRUE@ mkdir -p $(DESTDIR)$(libdir)/$(GLIB_RUNTIME_LIBDIR)
+ @HAVE_GLIB_RUNTIME_LIBDIR_TRUE@ mv $(DESTDIR)$(libdir)/libglib-2.0.so.0 $(DESTDIR)$(libdir)/$(GLIB_RUNTIME_LIBDIR)
+ @HAVE_GLIB_RUNTIME_LIBDIR_TRUE@ mv $(DESTDIR)$(libdir)/libglib-2.0.so.0.$(LT_CURRENT).$(LT_REVISION) $(DESTDIR)$(libdir)/$(GLIB_RUNTIME_LIBDIR)
diff --git a/devel/glib20/files/patch-glib_deprecated_gthread.h b/devel/glib20/files/patch-glib_deprecated_gthread.h
new file mode 100644
index 000000000..889976f1f
--- /dev/null
+++ b/devel/glib20/files/patch-glib_deprecated_gthread.h
@@ -0,0 +1,10 @@
+--- ./glib/deprecated/gthread.h.orig 2012-05-27 17:07:04.000000000 +0200
++++ ./glib/deprecated/gthread.h 2012-05-27 17:07:19.000000000 +0200
+@@ -120,6 +120,7 @@
+ gpointer user_data);
+
+ #ifndef G_OS_WIN32
++#include <sys/types.h>
+ #include <pthread.h>
+ #endif
+
diff --git a/devel/glib20/files/patch-glib_fix_hidden b/devel/glib20/files/patch-glib_fix_hidden
new file mode 100644
index 000000000..813c49808
--- /dev/null
+++ b/devel/glib20/files/patch-glib_fix_hidden
@@ -0,0 +1,10 @@
+--- glib/gmem.c.orig 2011-02-10 00:31:42.000000000 +0100
++++ glib/gmem.c 2011-12-07 00:21:38.000000000 +0100
+@@ -39,6 +39,7 @@
+ #include "gbacktrace.h"
+ #include "gtestutils.h"
+ #include "gthread.h"
++#include "gthreadprivate.h"
+ #include "glib_trace.h"
+
+
diff --git a/devel/glib20/files/patch-glib_gthread-posix.c b/devel/glib20/files/patch-glib_gthread-posix.c
new file mode 100644
index 000000000..f19007f8c
--- /dev/null
+++ b/devel/glib20/files/patch-glib_gthread-posix.c
@@ -0,0 +1,20 @@
+--- glib/gthread-posix.c.orig 2012-11-10 03:24:06.000000000 +0000
++++ glib/gthread-posix.c 2012-11-12 18:06:36.000000000 +0000
+@@ -89,7 +89,7 @@
+ if G_UNLIKELY (mutex == NULL)
+ g_thread_abort (errno, "malloc");
+
+-#ifdef PTHREAD_ADAPTIVE_MUTEX_INITIALIZER_NP
++#if defined(PTHREAD_ADAPTIVE_MUTEX_INITIALIZER_NP) && !defined(__FreeBSD__)
+ {
+ pthread_mutexattr_t attr;
+ pthread_mutexattr_init (&attr);
+@@ -101,7 +101,7 @@
+ if G_UNLIKELY ((status = pthread_mutex_init (mutex, pattr)) != 0)
+ g_thread_abort (status, "pthread_mutex_init");
+
+-#ifdef PTHREAD_ADAPTIVE_MUTEX_NP
++#if defined(PTHREAD_ADAPTIVE_MUTEX_NP) && !defined(__FreeBSD__)
+ pthread_mutexattr_destroy (&attr);
+ #endif
+
diff --git a/devel/glib20/files/patch-glib_gutils.c b/devel/glib20/files/patch-glib_gutils.c
new file mode 100644
index 000000000..95a02e475
--- /dev/null
+++ b/devel/glib20/files/patch-glib_gutils.c
@@ -0,0 +1,20 @@
+--- glib/gutils.c.orig Wed Mar 23 09:55:02 2005
++++ glib/gutils.c Thu Apr 7 01:06:16 2005
+@@ -1929,7 +1929,7 @@ g_get_system_data_dirs (void)
+ data_dirs = (gchar *) g_getenv ("XDG_DATA_DIRS");
+
+ if (!data_dirs || !data_dirs[0])
+- data_dirs = "/usr/local/share/:/usr/share/";
++ data_dirs = "/usr/local/share/";
+
+ data_dir_vector = g_strsplit (data_dirs, G_SEARCHPATH_SEPARATOR_S, 0);
+ #endif
+@@ -1983,7 +1983,7 @@ g_get_system_config_dirs (void)
+ conf_dirs = (gchar *) g_getenv ("XDG_CONFIG_DIRS");
+
+ if (!conf_dirs || !conf_dirs[0])
+- conf_dirs = "/etc/xdg";
++ conf_dirs = "/usr/local/etc/xdg:/etc/xdg";
+
+ conf_dir_vector = g_strsplit (conf_dirs, G_SEARCHPATH_SEPARATOR_S, 0);
+ #endif
diff --git a/devel/glib20/files/patch-glib_tests_gdatetime.c b/devel/glib20/files/patch-glib_tests_gdatetime.c
new file mode 100644
index 000000000..e86fb7ffd
--- /dev/null
+++ b/devel/glib20/files/patch-glib_tests_gdatetime.c
@@ -0,0 +1,20 @@
+--- glib/tests/gdatetime.c.orig 2013-03-13 13:39:09.000000000 +0000
++++ glib/tests/gdatetime.c 2013-03-28 10:15:49.000000000 +0000
+@@ -1276,7 +1276,7 @@
+ gint i1, i2;
+
+ #ifdef G_OS_UNIX
+- tz = g_time_zone_new ("Canada/Eastern");
++ tz = g_time_zone_new ("America/Montreal");
+ #elif defined G_OS_WIN32
+ tz = g_time_zone_new ("Eastern Standard Time");
+ #endif
+@@ -1309,7 +1309,7 @@
+ gint i1, i2;
+
+ #ifdef G_OS_UNIX
+- tz = g_time_zone_new ("Canada/Eastern");
++ tz = g_time_zone_new ("America/Montreal");
+ #elif defined G_OS_WIN32
+ tz = g_time_zone_new ("Eastern Standard Time");
+ #endif
diff --git a/devel/glib20/files/patch-glib_tests_utils.c b/devel/glib20/files/patch-glib_tests_utils.c
new file mode 100644
index 000000000..0f7544cc4
--- /dev/null
+++ b/devel/glib20/files/patch-glib_tests_utils.c
@@ -0,0 +1,11 @@
+--- glib/tests/utils.c.orig 2012-09-24 02:19:54.000000000 +0000
++++ glib/tests/utils.c 2012-09-24 02:20:48.000000000 +0000
+@@ -416,7 +416,7 @@
+
+ xdg = (gchar *)g_getenv ("XDG_CONFIG_DIRS");
+ if (!xdg)
+- xdg = "/etc/xdg";
++ xdg = "/usr/local/etc/xdg:/etc/xdg";
+
+ dirs = g_get_system_config_dirs ();
+
diff --git a/devel/glib20/files/patch-gmodule::gmodule-dl.c b/devel/glib20/files/patch-gmodule::gmodule-dl.c
new file mode 100644
index 000000000..586d7f80b
--- /dev/null
+++ b/devel/glib20/files/patch-gmodule::gmodule-dl.c
@@ -0,0 +1,20 @@
+--- gmodule/gmodule-dl.c.orig Sat Feb 17 08:28:07 2001
++++ gmodule/gmodule-dl.c Fri Jan 18 09:48:45 2002
+@@ -104,6 +104,7 @@
+ static gpointer
+ _g_module_self (void)
+ {
++#ifndef __FreeBSD__
+ gpointer handle;
+
+ /* to query symbols from the program itself, special link options
+@@ -115,6 +116,9 @@
+ g_module_set_error (fetch_dlerror (TRUE));
+
+ return handle;
++#else
++ return RTLD_DEFAULT;
++#endif
+ }
+
+ static void
diff --git a/devel/glib20/files/patch-gobject_Makefile.in b/devel/glib20/files/patch-gobject_Makefile.in
new file mode 100644
index 000000000..f99ec4a97
--- /dev/null
+++ b/devel/glib20/files/patch-gobject_Makefile.in
@@ -0,0 +1,22 @@
+--- gobject/Makefile.in.orig 2012-05-03 11:42:11.000000000 +0200
++++ gobject/Makefile.in 2012-05-03 11:42:51.000000000 +0200
+@@ -1381,7 +1381,7 @@
+
+ info-am:
+
+-install-data-am: install-data-local install-dist_gdbSCRIPTS \
++install-data-am: install-data-local \
+ install-libgobjectincludeHEADERS install-tapsetDATA
+ @$(NORMAL_INSTALL)
+ $(MAKE) $(AM_MAKEFLAGS) install-data-hook
+@@ -1649,9 +1649,7 @@
+ uninstall-gdb:
+ -rm -r $(DESTDIR)$(datadir)/gdb
+
+-install-data-hook: libgobject-gdb.py
+- mkdir -p $(DESTDIR)$(datadir)/gdb/auto-load/$(ABS_GLIB_RUNTIME_LIBDIR)
+- $(INSTALL) $(builddir)/libgobject-gdb.py $(DESTDIR)$(datadir)/gdb/auto-load/$(ABS_GLIB_RUNTIME_LIBDIR)/libgobject-2.0.so.0.$(LT_CURRENT).$(LT_REVISION)-gdb.py
++install-data-hook:
+ @HAVE_GLIB_RUNTIME_LIBDIR_TRUE@ mkdir -p $(DESTDIR)$(libdir)/$(GLIB_RUNTIME_LIBDIR)
+ @HAVE_GLIB_RUNTIME_LIBDIR_TRUE@ mv $(DESTDIR)$(libdir)/libgobject-2.0.so.0 $(DESTDIR)$(libdir)/$(GLIB_RUNTIME_LIBDIR)
+ @HAVE_GLIB_RUNTIME_LIBDIR_TRUE@ mv $(DESTDIR)$(libdir)/libgobject-2.0.so.0.$(LT_CURRENT).$(LT_REVISION) $(DESTDIR)$(libdir)/$(GLIB_RUNTIME_LIBDIR)
diff --git a/devel/glib20/pkg-descr b/devel/glib20/pkg-descr
new file mode 100644
index 000000000..3b3059030
--- /dev/null
+++ b/devel/glib20/pkg-descr
@@ -0,0 +1,5 @@
+GLib provides a simple, abstract, and highly portable set of C support
+routines such as lists, trees, hashes, memory allocation, and much, much
+more. It is a foundation for writing portable applications.
+
+WWW: http://www.gtk.org/
diff --git a/devel/glib20/pkg-plist b/devel/glib20/pkg-plist
new file mode 100644
index 000000000..56d4c0752
--- /dev/null
+++ b/devel/glib20/pkg-plist
@@ -0,0 +1,494 @@
+bin/gdbus
+bin/gdbus-codegen
+bin/gio-querymodules
+bin/glib-compile-resources
+bin/glib-compile-schemas
+bin/glib-genmarshal
+bin/glib-gettextize
+bin/glib-mkenums
+bin/gobject-query
+bin/gresource
+bin/gsettings
+bin/gtester
+bin/gtester-report
+share/bash-completion/completions/gdbus
+share/bash-completion/completions/gsettings
+share/bash-completion/completions/gresource
+include/gio-unix-2.0/gio/gdesktopappinfo.h
+include/gio-unix-2.0/gio/gfiledescriptorbased.h
+include/gio-unix-2.0/gio/gunixconnection.h
+include/gio-unix-2.0/gio/gunixcredentialsmessage.h
+include/gio-unix-2.0/gio/gunixfdlist.h
+include/gio-unix-2.0/gio/gunixfdmessage.h
+include/gio-unix-2.0/gio/gunixinputstream.h
+include/gio-unix-2.0/gio/gunixmounts.h
+include/gio-unix-2.0/gio/gunixoutputstream.h
+include/gio-unix-2.0/gio/gunixsocketaddress.h
+include/glib-2.0/gio/gaction.h
+include/glib-2.0/gio/gactiongroup.h
+include/glib-2.0/gio/gactiongroupexporter.h
+include/glib-2.0/gio/gactionmap.h
+include/glib-2.0/gio/gappinfo.h
+include/glib-2.0/gio/gapplication.h
+include/glib-2.0/gio/gapplicationcommandline.h
+include/glib-2.0/gio/gasyncinitable.h
+include/glib-2.0/gio/gasyncresult.h
+include/glib-2.0/gio/gbufferedinputstream.h
+include/glib-2.0/gio/gbufferedoutputstream.h
+include/glib-2.0/gio/gcancellable.h
+include/glib-2.0/gio/gcharsetconverter.h
+include/glib-2.0/gio/gcontenttype.h
+include/glib-2.0/gio/gconverter.h
+include/glib-2.0/gio/gconverterinputstream.h
+include/glib-2.0/gio/gconverteroutputstream.h
+include/glib-2.0/gio/gcredentials.h
+include/glib-2.0/gio/gdatainputstream.h
+include/glib-2.0/gio/gdataoutputstream.h
+include/glib-2.0/gio/gdbusactiongroup.h
+include/glib-2.0/gio/gdbusaddress.h
+include/glib-2.0/gio/gdbusauthobserver.h
+include/glib-2.0/gio/gdbusconnection.h
+include/glib-2.0/gio/gdbuserror.h
+include/glib-2.0/gio/gdbusinterface.h
+include/glib-2.0/gio/gdbusinterfaceskeleton.h
+include/glib-2.0/gio/gdbusintrospection.h
+include/glib-2.0/gio/gdbusmenumodel.h
+include/glib-2.0/gio/gdbusmessage.h
+include/glib-2.0/gio/gdbusmethodinvocation.h
+include/glib-2.0/gio/gdbusnameowning.h
+include/glib-2.0/gio/gdbusnamewatching.h
+include/glib-2.0/gio/gdbusobject.h
+include/glib-2.0/gio/gdbusobjectmanager.h
+include/glib-2.0/gio/gdbusobjectmanagerclient.h
+include/glib-2.0/gio/gdbusobjectmanagerserver.h
+include/glib-2.0/gio/gdbusobjectproxy.h
+include/glib-2.0/gio/gdbusobjectskeleton.h
+include/glib-2.0/gio/gdbusproxy.h
+include/glib-2.0/gio/gdbusserver.h
+include/glib-2.0/gio/gdbusutils.h
+include/glib-2.0/gio/gdrive.h
+include/glib-2.0/gio/gemblem.h
+include/glib-2.0/gio/gemblemedicon.h
+include/glib-2.0/gio/gfile.h
+include/glib-2.0/gio/gfileattribute.h
+include/glib-2.0/gio/gfileenumerator.h
+include/glib-2.0/gio/gfileicon.h
+include/glib-2.0/gio/gfileinfo.h
+include/glib-2.0/gio/gfileinputstream.h
+include/glib-2.0/gio/gfileiostream.h
+include/glib-2.0/gio/gfilemonitor.h
+include/glib-2.0/gio/gfilenamecompleter.h
+include/glib-2.0/gio/gfileoutputstream.h
+include/glib-2.0/gio/gfilterinputstream.h
+include/glib-2.0/gio/gfilteroutputstream.h
+include/glib-2.0/gio/gicon.h
+include/glib-2.0/gio/ginetaddress.h
+include/glib-2.0/gio/ginetaddressmask.h
+include/glib-2.0/gio/ginetsocketaddress.h
+include/glib-2.0/gio/ginitable.h
+include/glib-2.0/gio/ginputstream.h
+include/glib-2.0/gio/gio.h
+include/glib-2.0/gio/gioenums.h
+include/glib-2.0/gio/gioenumtypes.h
+include/glib-2.0/gio/gioerror.h
+include/glib-2.0/gio/giomodule.h
+include/glib-2.0/gio/gioscheduler.h
+include/glib-2.0/gio/giostream.h
+include/glib-2.0/gio/giotypes.h
+include/glib-2.0/gio/gloadableicon.h
+include/glib-2.0/gio/gmemoryinputstream.h
+include/glib-2.0/gio/gmemoryoutputstream.h
+include/glib-2.0/gio/gmenu.h
+include/glib-2.0/gio/gmenuexporter.h
+include/glib-2.0/gio/gmenumodel.h
+include/glib-2.0/gio/gmount.h
+include/glib-2.0/gio/gmountoperation.h
+include/glib-2.0/gio/gnativevolumemonitor.h
+include/glib-2.0/gio/gnetworkaddress.h
+include/glib-2.0/gio/gnetworking.h
+include/glib-2.0/gio/gnetworkmonitor.h
+include/glib-2.0/gio/gnetworkservice.h
+include/glib-2.0/gio/goutputstream.h
+include/glib-2.0/gio/gpermission.h
+include/glib-2.0/gio/gpollableinputstream.h
+include/glib-2.0/gio/gpollableoutputstream.h
+include/glib-2.0/gio/gpollableutils.h
+include/glib-2.0/gio/gproxy.h
+include/glib-2.0/gio/gproxyaddress.h
+include/glib-2.0/gio/gproxyaddressenumerator.h
+include/glib-2.0/gio/gproxyresolver.h
+include/glib-2.0/gio/gremoteactiongroup.h
+include/glib-2.0/gio/gresolver.h
+include/glib-2.0/gio/gresource.h
+include/glib-2.0/gio/gseekable.h
+include/glib-2.0/gio/gsettings.h
+include/glib-2.0/gio/gsettingsbackend.h
+include/glib-2.0/gio/gsettingsschema.h
+include/glib-2.0/gio/gsimpleaction.h
+include/glib-2.0/gio/gsimpleactiongroup.h
+include/glib-2.0/gio/gsimpleproxyresolver.h
+include/glib-2.0/gio/gsimpleasyncresult.h
+include/glib-2.0/gio/gsimplepermission.h
+include/glib-2.0/gio/gsocket.h
+include/glib-2.0/gio/gsocketaddress.h
+include/glib-2.0/gio/gsocketaddressenumerator.h
+include/glib-2.0/gio/gsocketclient.h
+include/glib-2.0/gio/gsocketconnectable.h
+include/glib-2.0/gio/gsocketconnection.h
+include/glib-2.0/gio/gsocketcontrolmessage.h
+include/glib-2.0/gio/gsocketlistener.h
+include/glib-2.0/gio/gsocketservice.h
+include/glib-2.0/gio/gsrvtarget.h
+include/glib-2.0/gio/gtask.h
+include/glib-2.0/gio/gtcpconnection.h
+include/glib-2.0/gio/gtcpwrapperconnection.h
+include/glib-2.0/gio/gtestdbus.h
+include/glib-2.0/gio/gthemedicon.h
+include/glib-2.0/gio/gthreadedsocketservice.h
+include/glib-2.0/gio/gtlsbackend.h
+include/glib-2.0/gio/gtlscertificate.h
+include/glib-2.0/gio/gtlsclientconnection.h
+include/glib-2.0/gio/gtlsconnection.h
+include/glib-2.0/gio/gtlsdatabase.h
+include/glib-2.0/gio/gtlsfiledatabase.h
+include/glib-2.0/gio/gtlsinteraction.h
+include/glib-2.0/gio/gtlspassword.h
+include/glib-2.0/gio/gtlsserverconnection.h
+include/glib-2.0/gio/gvfs.h
+include/glib-2.0/gio/gvolume.h
+include/glib-2.0/gio/gvolumemonitor.h
+include/glib-2.0/gio/gzlibcompressor.h
+include/glib-2.0/gio/gzlibdecompressor.h
+include/glib-2.0/glib-object.h
+include/glib-2.0/glib-unix.h
+include/glib-2.0/glib.h
+include/glib-2.0/glib/deprecated/gallocator.h
+include/glib-2.0/glib/deprecated/gcache.h
+include/glib-2.0/glib/deprecated/gcompletion.h
+include/glib-2.0/glib/deprecated/gmain.h
+include/glib-2.0/glib/deprecated/grel.h
+include/glib-2.0/glib/deprecated/gthread.h
+include/glib-2.0/glib/galloca.h
+include/glib-2.0/glib/garray.h
+include/glib-2.0/glib/gasyncqueue.h
+include/glib-2.0/glib/gatomic.h
+include/glib-2.0/glib/gbacktrace.h
+include/glib-2.0/glib/gbase64.h
+include/glib-2.0/glib/gbitlock.h
+include/glib-2.0/glib/gbookmarkfile.h
+include/glib-2.0/glib/gbytes.h
+include/glib-2.0/glib/gcharset.h
+include/glib-2.0/glib/gchecksum.h
+include/glib-2.0/glib/gconvert.h
+include/glib-2.0/glib/gdataset.h
+include/glib-2.0/glib/gdate.h
+include/glib-2.0/glib/gdatetime.h
+include/glib-2.0/glib/gdir.h
+include/glib-2.0/glib/genviron.h
+include/glib-2.0/glib/gerror.h
+include/glib-2.0/glib/gfileutils.h
+include/glib-2.0/glib/ggettext.h
+include/glib-2.0/glib/ghash.h
+include/glib-2.0/glib/ghmac.h
+include/glib-2.0/glib/ghook.h
+include/glib-2.0/glib/ghostutils.h
+include/glib-2.0/glib/gi18n-lib.h
+include/glib-2.0/glib/gi18n.h
+include/glib-2.0/glib/giochannel.h
+include/glib-2.0/glib/gkeyfile.h
+include/glib-2.0/glib/glist.h
+include/glib-2.0/glib/gmacros.h
+include/glib-2.0/glib/gmain.h
+include/glib-2.0/glib/gmappedfile.h
+include/glib-2.0/glib/gmarkup.h
+include/glib-2.0/glib/gmem.h
+include/glib-2.0/glib/gmessages.h
+include/glib-2.0/glib/gnode.h
+include/glib-2.0/glib/goption.h
+include/glib-2.0/glib/gpattern.h
+include/glib-2.0/glib/gpoll.h
+include/glib-2.0/glib/gprimes.h
+include/glib-2.0/glib/gprintf.h
+include/glib-2.0/glib/gqsort.h
+include/glib-2.0/glib/gquark.h
+include/glib-2.0/glib/gqueue.h
+include/glib-2.0/glib/grand.h
+include/glib-2.0/glib/gregex.h
+include/glib-2.0/glib/gscanner.h
+include/glib-2.0/glib/gsequence.h
+include/glib-2.0/glib/gshell.h
+include/glib-2.0/glib/gslice.h
+include/glib-2.0/glib/gslist.h
+include/glib-2.0/glib/gspawn.h
+include/glib-2.0/glib/gstdio.h
+include/glib-2.0/glib/gstrfuncs.h
+include/glib-2.0/glib/gstring.h
+include/glib-2.0/glib/gstringchunk.h
+include/glib-2.0/glib/gtestutils.h
+include/glib-2.0/glib/gthread.h
+include/glib-2.0/glib/gthreadpool.h
+include/glib-2.0/glib/gtimer.h
+include/glib-2.0/glib/gtimezone.h
+include/glib-2.0/glib/gtrashstack.h
+include/glib-2.0/glib/gtree.h
+include/glib-2.0/glib/gtypes.h
+include/glib-2.0/glib/gunicode.h
+include/glib-2.0/glib/gurifuncs.h
+include/glib-2.0/glib/gutils.h
+include/glib-2.0/glib/gvariant.h
+include/glib-2.0/glib/gvarianttype.h
+include/glib-2.0/glib/gversion.h
+include/glib-2.0/glib/gversionmacros.h
+include/glib-2.0/glib/gwin32.h
+include/glib-2.0/glibconfig.h
+include/glib-2.0/gmodule.h
+include/glib-2.0/gobject/gbinding.h
+include/glib-2.0/gobject/gboxed.h
+include/glib-2.0/gobject/gclosure.h
+include/glib-2.0/gobject/genums.h
+include/glib-2.0/gobject/glib-types.h
+include/glib-2.0/gobject/gmarshal.h
+include/glib-2.0/gobject/gobject.h
+include/glib-2.0/gobject/gobjectnotifyqueue.c
+include/glib-2.0/gobject/gparam.h
+include/glib-2.0/gobject/gparamspecs.h
+include/glib-2.0/gobject/gsignal.h
+include/glib-2.0/gobject/gsourceclosure.h
+include/glib-2.0/gobject/gtype.h
+include/glib-2.0/gobject/gtypemodule.h
+include/glib-2.0/gobject/gtypeplugin.h
+include/glib-2.0/gobject/gvalue.h
+include/glib-2.0/gobject/gvaluearray.h
+include/glib-2.0/gobject/gvaluecollector.h
+include/glib-2.0/gobject/gvaluetypes.h
+lib/libgio-2.0.a
+lib/libgio-2.0.la
+lib/libgio-2.0.so
+lib/libgio-2.0.so.0
+lib/libglib-2.0.a
+lib/libglib-2.0.la
+lib/libglib-2.0.so
+lib/libglib-2.0.so.0
+lib/libgmodule-2.0.a
+lib/libgmodule-2.0.la
+lib/libgmodule-2.0.so
+lib/libgmodule-2.0.so.0
+lib/libgobject-2.0.a
+lib/libgobject-2.0.la
+lib/libgobject-2.0.so
+lib/libgobject-2.0.so.0
+lib/libgthread-2.0.a
+lib/libgthread-2.0.la
+lib/libgthread-2.0.so
+lib/libgthread-2.0.so.0
+libdata/pkgconfig/gio-2.0.pc
+libdata/pkgconfig/gio-unix-2.0.pc
+libdata/pkgconfig/glib-2.0.pc
+libdata/pkgconfig/gmodule-2.0.pc
+libdata/pkgconfig/gmodule-export-2.0.pc
+libdata/pkgconfig/gmodule-no-export-2.0.pc
+libdata/pkgconfig/gobject-2.0.pc
+libdata/pkgconfig/gthread-2.0.pc
+share/aclocal/glib-2.0.m4
+share/aclocal/glib-gettext.m4
+share/aclocal/gsettings.m4
+share/glib-2.0/codegen/__init__.py
+share/glib-2.0/codegen/__init__.pyc
+share/glib-2.0/codegen/__init__.pyo
+share/glib-2.0/codegen/codegen.py
+share/glib-2.0/codegen/codegen.pyc
+share/glib-2.0/codegen/codegen.pyo
+share/glib-2.0/codegen/codegen_docbook.py
+share/glib-2.0/codegen/codegen_docbook.pyc
+share/glib-2.0/codegen/codegen_docbook.pyo
+share/glib-2.0/codegen/codegen_main.py
+share/glib-2.0/codegen/codegen_main.pyc
+share/glib-2.0/codegen/codegen_main.pyo
+share/glib-2.0/codegen/config.py
+share/glib-2.0/codegen/config.pyc
+share/glib-2.0/codegen/config.pyo
+share/glib-2.0/codegen/dbustypes.py
+share/glib-2.0/codegen/dbustypes.pyc
+share/glib-2.0/codegen/dbustypes.pyo
+share/glib-2.0/codegen/parser.py
+share/glib-2.0/codegen/parser.pyc
+share/glib-2.0/codegen/parser.pyo
+share/glib-2.0/codegen/utils.py
+share/glib-2.0/codegen/utils.pyc
+share/glib-2.0/codegen/utils.pyo
+share/glib-2.0/gettext/po/Makefile.in.in
+share/glib-2.0/schemas/gschema.dtd
+share/locale/af/LC_MESSAGES/glib20.mo
+share/locale/am/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/ga/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
+@dirrmtry share/locale/zh_HK/LC_MESSAGES
+@dirrmtry share/locale/zh_HK
+@dirrmtry share/locale/yi/LC_MESSAGES
+@dirrmtry share/locale/yi
+@dirrmtry share/locale/xh/LC_MESSAGES
+@dirrmtry share/locale/xh
+@dirrmtry share/locale/ug/LC_MESSAGES
+@dirrmtry share/locale/ug
+@dirrmtry share/locale/tt/LC_MESSAGES
+@dirrmtry share/locale/tt
+@dirrmtry share/locale/tl/LC_MESSAGES
+@dirrmtry share/locale/tl
+@dirrmtry share/locale/tg/LC_MESSAGES
+@dirrmtry share/locale/tg
+@dirrmtry share/locale/te/LC_MESSAGES
+@dirrmtry share/locale/te
+@dirrmtry share/locale/sr@latin/LC_MESSAGES
+@dirrmtry share/locale/sr@latin
+@dirrmtry share/locale/sr@ije/LC_MESSAGES
+@dirrmtry share/locale/sr@ije
+@dirrmtry share/locale/si/LC_MESSAGES
+@dirrmtry share/locale/si
+@dirrmtry share/locale/rw/LC_MESSAGES
+@dirrmtry share/locale/rw
+@dirrmtry share/locale/ps/LC_MESSAGES
+@dirrmtry share/locale/ps
+@dirrmtry share/locale/oc/LC_MESSAGES
+@dirrmtry share/locale/oc
+@dirrmtry share/locale/nds/LC_MESSAGES
+@dirrmtry share/locale/nds
+@dirrmtry share/locale/mr/LC_MESSAGES
+@dirrmtry share/locale/mr
+@dirrmtry share/locale/mg/LC_MESSAGES
+@dirrmtry share/locale/mg
+@dirrmtry share/locale/mai/LC_MESSAGES
+@dirrmtry share/locale/mai
+@dirrmtry share/locale/ku/LC_MESSAGES
+@dirrmtry share/locale/ku
+@dirrmtry share/locale/kk/LC_MESSAGES
+@dirrmtry share/locale/kk
+@dirrmtry share/locale/hy/LC_MESSAGES
+@dirrmtry share/locale/hy
+@dirrmtry share/locale/en@shaw/LC_MESSAGES
+@dirrmtry share/locale/en@shaw
+@dirrmtry share/locale/dz/LC_MESSAGES
+@dirrmtry share/locale/dz
+@dirrmtry share/locale/ca@valencia/LC_MESSAGES
+@dirrmtry share/locale/ca@valencia
+@dirrmtry share/locale/bn_IN/LC_MESSAGES
+@dirrmtry share/locale/bn_IN
+@dirrmtry share/locale/be@latin/LC_MESSAGES
+@dirrmtry share/locale/be@latin
+@dirrmtry share/locale/ast/LC_MESSAGES
+@dirrmtry share/locale/ast
+@dirrmtry share/locale/as/LC_MESSAGES
+@dirrmtry share/locale/as
+@exec mkdir -p %D/share/glib-2.0/schemas
+@exec glib-compile-schemas %D/share/glib-2.0/schemas
+@dirrm share/glib-2.0/schemas
+@dirrm share/glib-2.0/gettext/po
+@dirrm share/glib-2.0/gettext
+@dirrm share/glib-2.0/codegen
+@dirrm share/glib-2.0
+@dirrmtry share/bash-completion/completions
+@dirrmtry share/bash-completion
+@exec mkdir -p %D/share/GConf/gsettings
+@dirrm share/GConf/gsettings
+@dirrm share/GConf
+@exec mkdir -p %D/lib/gio/modules
+@exec %D/bin/gio-querymodules %D/lib/gio/modules 2>/dev/null || /usr/bin/true
+@dirrmtry lib/gio/modules
+@dirrmtry lib/gio
+@dirrm include/glib-2.0/gobject
+@dirrm include/glib-2.0/glib/deprecated
+@dirrm include/glib-2.0/glib
+@dirrm include/glib-2.0/gio
+@dirrm include/glib-2.0
+@dirrm include/gio-unix-2.0/gio
+@dirrm include/gio-unix-2.0