summaryrefslogtreecommitdiffstats
path: root/devel
diff options
context:
space:
mode:
authorkwm <kwm@df743ca5-7f9a-e211-a948-0013205c9059>2009-12-09 02:40:36 +0800
committerkwm <kwm@df743ca5-7f9a-e211-a948-0013205c9059>2009-12-09 02:40:36 +0800
commit32e065f0bb8b36b133b36eb8639160266ac879c9 (patch)
tree81c51f26f3e342201bc2e24cb8c4924c4cb610af /devel
parenta3b5135851621cb514e7708d11f9dc82f851ea5c (diff)
downloadmarcuscom-ports-32e065f0bb8b36b133b36eb8639160266ac879c9.tar
marcuscom-ports-32e065f0bb8b36b133b36eb8639160266ac879c9.tar.gz
marcuscom-ports-32e065f0bb8b36b133b36eb8639160266ac879c9.tar.bz2
marcuscom-ports-32e065f0bb8b36b133b36eb8639160266ac879c9.tar.lz
marcuscom-ports-32e065f0bb8b36b133b36eb8639160266ac879c9.tar.xz
marcuscom-ports-32e065f0bb8b36b133b36eb8639160266ac879c9.tar.zst
marcuscom-ports-32e065f0bb8b36b133b36eb8639160266ac879c9.zip
Kick off Gnome 2.29 devel cycle with Glib 2.23.0.
git-svn-id: svn://creme-brulee.marcuscom.com/ports/trunk@13267 df743ca5-7f9a-e211-a948-0013205c9059
Diffstat (limited to 'devel')
-rw-r--r--devel/glib20/Makefile78
-rw-r--r--devel/glib20/distinfo3
-rw-r--r--devel/glib20/files/extra-patch-glib_Makefile.in11
-rw-r--r--devel/glib20/files/extra-patch-glib_gunicollate.c116
-rw-r--r--devel/glib20/files/patch-ae33
-rw-r--r--devel/glib20/files/patch-ag21
-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_gunixmount.c21
-rw-r--r--devel/glib20/files/patch-gio_gunixmounts.c148
-rw-r--r--devel/glib20/files/patch-gio_gunixvolume.c17
-rw-r--r--devel/glib20/files/patch-gio_libasyncns_asyncns.c11
-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::libcharset::Makefile.in31
-rw-r--r--devel/glib20/files/patch-glib_Makefile.in22
-rw-r--r--devel/glib20/files/patch-glib_gregex.c13
-rw-r--r--devel/glib20/files/patch-glib_gutils.c20
-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/files/patch-gthread_gthread-posix.c21
-rw-r--r--devel/glib20/pkg-descr5
-rw-r--r--devel/glib20/pkg-plist344
23 files changed, 1003 insertions, 0 deletions
diff --git a/devel/glib20/Makefile b/devel/glib20/Makefile
new file mode 100644
index 000000000..8374bf566
--- /dev/null
+++ b/devel/glib20/Makefile
@@ -0,0 +1,78 @@
+# New ports collection makefile for: glib13
+# Date Created: 28 July 1998
+# Whom: Vanilla I. Shu <vanilla@FreeBSD.org>
+#
+# $FreeBSD$
+# $MCom$
+#
+# !! DON'T FORGET ABOUT devel/gio-fam-backend !!
+
+PORTNAME= glib
+PORTVERSION= 2.23.0
+PORTREVISION?= 0
+CATEGORIES= devel
+MASTER_SITES= ${MASTER_SITE_GNOME:S,%SUBDIR%,sources/glib/${PORTVERSION:C/^([0-9]+\.[0-9]+).*/\1/},} \
+ ftp://ftp.gtk.org/pub/glib/${PORTVERSION:C/^([0-9]+\.[0-9]+).*/\1/}/ \
+ ftp://ftp.gimp.org/pub/%SUBDIR%/ \
+ ftp://ftp.cs.umn.edu/pub/gimp/%SUBDIR%/ \
+ http://www.ameth.org/gimp/%SUBDIR%/ \
+ ${MASTER_SITE_RINGSERVER:S,%SUBDIR%,graphics/gimp/%SUBDIR%,}
+MASTER_SITE_SUBDIR= gtk/v${PORTVERSION:C/^([0-9]+\.[0-9]+).*/\1/}
+DIST_SUBDIR= gnome2
+
+MAINTAINER= gnome@FreeBSD.org
+COMMENT= Some useful routines of C programming (current stable version)
+
+LATEST_LINK= glib20
+
+USE_BZIP2= yes
+
+.if !defined(REFERENCE_PORT)
+
+LIB_DEPENDS+= pcre.0:${PORTSDIR}/devel/pcre
+
+USE_GETTEXT= yes
+USE_AUTOTOOLS= libtool:22
+USE_LDCONFIG= yes
+USE_GNOME= gnomehack pkgconfig ltverhack
+USE_GMAKE= yes
+MAKE_JOBS_SAFE= yes
+USE_PYTHON= yes
+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= CPPFLAGS="-I${LOCALBASE}/include" \
+ LDFLAGS="-L${LOCALBASE}/lib -lintl" \
+ PTHREAD_CFLAGS="${PTHREAD_CFLAGS}" \
+ PTHREAD_LIBS="${PTHREAD_LIBS}"
+
+OPTIONS= COLLATION_FIX "fix string collation" off
+
+.include <bsd.port.pre.mk>
+
+# 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 defined(WITH_COLLATION_FIX)
+LIB_DEPENDS+= icui18n:${PORTSDIR}/devel/icu
+EXTRA_PATCHES+= ${FILESDIR}/extra-patch-glib_Makefile.in \
+ ${FILESDIR}/extra-patch-glib_gunicollate.c
+.endif
+
+post-patch:
+ @${REINPLACE_CMD} -e 's|/usr/local|${LOCALBASE}|g' \
+ ${WRKSRC}/glib/gutils.c
+
+.include <bsd.port.post.mk>
+
+.endif
diff --git a/devel/glib20/distinfo b/devel/glib20/distinfo
new file mode 100644
index 000000000..49942402a
--- /dev/null
+++ b/devel/glib20/distinfo
@@ -0,0 +1,3 @@
+MD5 (gnome2/glib-2.23.0.tar.bz2) = 75909517629c54e5c5b36d8e233915a9
+SHA256 (gnome2/glib-2.23.0.tar.bz2) = 24002573dd17bc31c099cfa37853ccb0b510f2f6cf54222c3681b9b0ed5e9288
+SIZE (gnome2/glib-2.23.0.tar.bz2) = 5028716
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..01f856f74
--- /dev/null
+++ b/devel/glib20/files/extra-patch-glib_Makefile.in
@@ -0,0 +1,11 @@
+--- glib/Makefile.in.orig 2009-05-31 13:14:18.000000000 +0200
++++ glib/Makefile.in 2009-05-31 13:15:08.000000000 +0200
+@@ -272,7 +272,7 @@
+ INSTOBJEXT = @INSTOBJEXT@
+ INTLLIBS = @INTLLIBS@
+ LD = @LD@
+-LDFLAGS = @LDFLAGS@
++LDFLAGS = @LDFLAGS@ -licui18n
+ LIBASYNCNS_LIBADD = @LIBASYNCNS_LIBADD@
+ LIBOBJS = @LIBOBJS@
+ LIBS = @LIBS@
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..dfcb99209
--- /dev/null
+++ b/devel/glib20/files/extra-patch-glib_gunicollate.c
@@ -0,0 +1,116 @@
+--- glib/gunicollate.c.orig Thu Jun 8 17:24:10 2006
++++ glib/gunicollate.c Thu Oct 19 20:12:50 2006
+@@ -26,10 +26,57 @@
+ #include <wchar.h>
+ #endif
+
++#include <unicode/umachine.h>
++#include <unicode/ustring.h>
++#include <unicode/ucol.h>
++
+ #include "glib.h"
+ #include "gunicodeprivate.h"
+ #include "galias.h"
+
++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 */
+ static size_t
+@@ -94,6 +141,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);
+
+@@ -235,6 +304,26 @@
+ gchar *str_norm;
+
+ 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);
+
diff --git a/devel/glib20/files/patch-ae b/devel/glib20/files/patch-ae
new file mode 100644
index 000000000..4699afdbe
--- /dev/null
+++ b/devel/glib20/files/patch-ae
@@ -0,0 +1,33 @@
+--- configure.orig 2009-09-05 10:54:38.000000000 +0200
++++ configure 2009-09-05 10:56:40.000000000 +0200
+@@ -29571,6 +29571,12 @@ cat confdefs.h >>conftest.$ac_ext
+ cat >>conftest.$ac_ext <<_ACEOF
+ /* end confdefs.h. */
+ $ac_includes_default
++#ifdef HAVE_SYS_PARAM_H
++#include <sys/param.h>
++#endif
++#ifdef HAVE_SYS_MOUNT_H
++#include <sys/mount.h>
++#endif
+ int
+ main ()
+ {
+@@ -31611,7 +31617,7 @@ done
+
+
+
+-for ac_func in chown lchmod lchown fchmod fchown link statvfs statfs utimes getgrgid getpwuid
++for ac_func in chown lchmod lchown fchmod fchown link statvfs statfs utimes getgrgid getpwuid sysctlbyname
+ do
+ as_ac_var=`$as_echo "ac_cv_func_$ac_func" | $as_tr_sh`
+ { $as_echo "$as_me:$LINENO: checking for $ac_func" >&5
+@@ -39943,6 +39949,8 @@ fi
+ ;;
+ esac
+ fi
++ G_THREAD_CFLAGS="${PTHREAD_CFLAGS}"
++ G_THREAD_LIBS="${PTHREAD_LIBS}"
+
+ if test x"$G_THREAD_CFLAGS" = x; then
+
diff --git a/devel/glib20/files/patch-ag b/devel/glib20/files/patch-ag
new file mode 100644
index 000000000..5ee7fe3d5
--- /dev/null
+++ b/devel/glib20/files/patch-ag
@@ -0,0 +1,21 @@
+--- Makefile.in.orig 2008-02-12 00:16:23.000000000 +0100
++++ Makefile.in 2008-02-12 00:16:23.000000000 +0100
+@@ -338,7 +338,7 @@ EXTRA_DIST = ChangeLog.pre-2-14 ChangeLo
+ gio-2.0-uninstalled.pc.in gio-unix-2.0-uninstalled.pc.in
+ TEST_PROGS =
+ AUTOMAKE_OPTIONS = 1.7
+-SUBDIRS = . m4macros glib gmodule gthread gobject gio tests po docs
++SUBDIRS = . m4macros glib gmodule gthread gobject gio po docs
+ DIST_SUBDIRS = $(SUBDIRS) build
+ bin_SCRIPTS = glib-gettextize
+ AM_CPPFLAGS = \
+@@ -356,7 +356,8 @@ BUILT_EXTRA_DIST = \
+ config.h.win32 \
+ gtk-doc.make
+
+-configexecincludedir = $(libdir)/glib-2.0/include
++glibincludedir = $(includedir)/glib-2.0
++configexecincludedir = $(glibincludedir)
+ configexecinclude_DATA = glibconfig.h
+ CONFIGURE_DEPENDENCIES = acglib.m4
+ BUILT_SOURCES = stamp-gc-h #note: not glibconfig.h
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_gunixmount.c b/devel/glib20/files/patch-gio_gunixmount.c
new file mode 100644
index 000000000..b9bfe143e
--- /dev/null
+++ b/devel/glib20/files/patch-gio_gunixmount.c
@@ -0,0 +1,21 @@
+--- gio/gunixmount.c.orig 2007-12-23 15:53:50.000000000 -0500
++++ gio/gunixmount.c 2007-12-23 15:52:52.000000000 -0500
+@@ -372,12 +372,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
+
+ return 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..9b6fa2df3
--- /dev/null
+++ b/devel/glib20/files/patch-gio_gunixmounts.c
@@ -0,0 +1,148 @@
+--- ggio/unixmounts.c.orig 2008-03-10 20:31:58.000000000 -0400
++++ gio/gunixmounts.c 2008-03-19 22:31:23.000000000 -0400
+@@ -128,6 +128,9 @@ struct _GUnixMountMonitor {
+
+ GFileMonitor *fstab_monitor;
+ GFileMonitor *mtab_monitor;
++
++ guint mount_poller_source;
++ GList *mount_poller_mounts;
+ };
+
+ struct _GUnixMountMonitorClass {
+@@ -139,6 +142,8 @@ static GUnixMountMonitor *the_mount_moni
+ 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
+@@ -165,6 +170,7 @@ G_DEFINE_TYPE (GUnixMountMonitor, g_unix
+ #endif
+
+ #if defined(HAVE_GETMNTINFO) && defined(HAVE_FSTAB_H) && defined(HAVE_SYS_MOUNT_H)
++#include <sys/param.h>
+ #include <sys/ucred.h>
+ #include <sys/mount.h>
+ #include <fstab.h>
+@@ -215,20 +221,28 @@ 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",
+ "/media",
+ "/mnt",
+ "/opt",
++ "/rescue",
+ "/root",
+ "/sbin",
+ "/srv",
+ "/tmp",
+ "/usr",
++ "/usr/X11R6",
+ "/usr/local",
++ "/usr/obj",
++ "/usr/ports",
++ "/usr/src",
+ "/var",
+ "/var/log/audit", /* https://bugzilla.redhat.com/show_bug.cgi?id=333041 */
+ "/var/tmp", /* https://bugzilla.redhat.com/show_bug.cgi?id=335241 */
+@@ -988,6 +1002,10 @@ get_mounts_timestamp (void)
+ if (stat (monitor_file, &buf) == 0)
+ return (guint64)buf.st_mtime;
+ }
++ else
++ {
++ return mount_poller_time;
++ }
+ return 0;
+ }
+
+@@ -1129,6 +1147,13 @@ 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);
++ }
++
+ the_mount_monitor = NULL;
+
+ if (G_OBJECT_CLASS (g_unix_mount_monitor_parent_class)->finalize)
+@@ -1206,6 +1231,51 @@ mtab_file_changed (GFileMonitor *mo
+ g_signal_emit (mount_monitor, signals[MOUNTS_CHANGED], 0);
+ }
+
++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 void
+ g_unix_mount_monitor_init (GUnixMountMonitor *monitor)
+ {
+@@ -1228,6 +1298,12 @@ g_unix_mount_monitor_init (GUnixMountMon
+
+ 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_libasyncns_asyncns.c b/devel/glib20/files/patch-gio_libasyncns_asyncns.c
new file mode 100644
index 000000000..966dd27a6
--- /dev/null
+++ b/devel/glib20/files/patch-gio_libasyncns_asyncns.c
@@ -0,0 +1,11 @@
+--- gio/libasyncns/asyncns.c.orig 2009-05-05 15:25:10.000000000 -0400
++++ gio/libasyncns/asyncns.c 2009-05-05 15:25:51.000000000 -0400
+@@ -35,6 +35,8 @@
+ #include <errno.h>
+ #include <sys/wait.h>
+ #include <sys/types.h>
++#include <sys/time.h>
++#include <sys/resource.h>
+ #include <pwd.h>
+ #include <netinet/in.h>
+ #include <arpa/nameser.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::libcharset::Makefile.in b/devel/glib20/files/patch-glib::libcharset::Makefile.in
new file mode 100644
index 000000000..352c0cf60
--- /dev/null
+++ b/devel/glib20/files/patch-glib::libcharset::Makefile.in
@@ -0,0 +1,31 @@
+--- glib/libcharset/Makefile.in.orig 2008-06-04 00:03:14.000000000 +0200
++++ glib/libcharset/Makefile.in 2008-06-04 00:05:58.000000000 +0200
+@@ -278,7 +278,7 @@ EXTRA_DIST = README config.charset ref-a
+ codeset.m4 update.sh make-patch.sh libcharset-glib.patch
+ TEST_PROGS =
+ INCLUDES = \
+- -DLIBDIR=\"$(libdir)\" -I$(top_srcdir)
++ -DLIBDIR=\"$(prefix)/libdata\" -I$(top_srcdir)
+
+ noinst_LTLIBRARIES = libcharset.la
+ libcharset_la_SOURCES = \
+@@ -286,8 +286,8 @@ libcharset_la_SOURCES = \
+ localcharset.h \
+ localcharset.c
+
+-charset_alias = $(DESTDIR)$(libdir)/charset.alias
+-charset_tmp = $(DESTDIR)$(libdir)/charset.tmp
++charset_alias = $(DESTDIR)$(prefix)/libdata/charset.alias
++charset_tmp = $(DESTDIR)$(prefix)/libdata/charset.tmp
+ SUFFIXES = .sed .sin
+ CLEANFILES = charset.alias ref-add.sed ref-del.sed
+ all: all-am
+@@ -498,7 +498,7 @@ install-data-am:
+
+ install-dvi: 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..8dd7ae74b
--- /dev/null
+++ b/devel/glib20/files/patch-glib_Makefile.in
@@ -0,0 +1,22 @@
+--- glib/Makefile.in.orig 2009-09-30 09:37:39.000000000 +0200
++++ glib/Makefile.in 2009-09-30 09:38:48.000000000 +0200
+@@ -1396,7 +1396,7 @@
+
+ info-am:
+
+-install-data-am: install-data-local install-dist_gdbSCRIPTS \
++install-data-am: install-data-local \
+ install-glibincludeHEADERS install-glibsubincludeHEADERS
+ @$(NORMAL_INSTALL)
+ $(MAKE) $(AM_MAKEFLAGS) install-data-hook
+@@ -1603,9 +1603,7 @@
+ libglib-gdb.py: libglib-gdb.py.in
+ sed -e "s|\@datadir\@|$(datadir)|" $(srcdir)/libglib-gdb.py.in > libglib-gdb.py
+
+-install-data-hook: libglib-gdb.py
+- mkdir -p $(DESTDIR)$(datadir)/gdb/auto-load$(ABS_GLIB_RUNTIME_LIBDIR)
+- $(INSTALL) 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).0 $(DESTDIR)$(libdir)/$(GLIB_RUNTIME_LIBDIR)
diff --git a/devel/glib20/files/patch-glib_gregex.c b/devel/glib20/files/patch-glib_gregex.c
new file mode 100644
index 000000000..ef7f0a87b
--- /dev/null
+++ b/devel/glib20/files/patch-glib_gregex.c
@@ -0,0 +1,13 @@
+--- glib/gregex.c.orig 2007-09-09 18:35:32.000000000 -0400
++++ glib/gregex.c 2007-09-09 18:36:05.000000000 -0400
+@@ -164,8 +164,10 @@ match_error (gint errcode)
+ case PCRE_ERROR_DFA_RECURSE:
+ case PCRE_ERROR_RECURSIONLIMIT:
+ return _("recursion limit reached");
++#ifdef PCRE_ERROR_NULLWSLIMIT
+ case PCRE_ERROR_NULLWSLIMIT:
+ return _("workspace limit for empty substrings reached");
++#endif
+ case PCRE_ERROR_BADNEWLINE:
+ return _("invalid combination of newline flags");
+ default:
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-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..b8842a6f4
--- /dev/null
+++ b/devel/glib20/files/patch-gobject_Makefile.in
@@ -0,0 +1,22 @@
+--- gobject/Makefile.in.orig 2009-09-30 09:39:51.000000000 +0200
++++ gobject/Makefile.in 2009-09-30 09:40:17.000000000 +0200
+@@ -1186,7 +1186,7 @@ info: info-recursive
+
+ info-am:
+
+-install-data-am: install-data-local install-dist_gdbSCRIPTS \
++install-data-am: install-data-local \
+ install-libgobjectincludeHEADERS
+ @$(NORMAL_INSTALL)
+ $(MAKE) $(AM_MAKEFLAGS) install-data-hook
+@@ -1393,9 +1393,7 @@ libgobject-gdb.py: libgobject-gdb.py.in
+ 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) 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).0 $(DESTDIR)$(libdir)/$(GLIB_RUNTIME_LIBDIR)
diff --git a/devel/glib20/files/patch-gthread_gthread-posix.c b/devel/glib20/files/patch-gthread_gthread-posix.c
new file mode 100644
index 000000000..47c5ab8f1
--- /dev/null
+++ b/devel/glib20/files/patch-gthread_gthread-posix.c
@@ -0,0 +1,21 @@
+--- gthread/gthread-posix.c.orig Mon Nov 1 13:47:12 2004
++++ gthread/gthread-posix.c Wed Mar 9 14:21:20 2005
+@@ -125,7 +129,8 @@
+ g_thread_impl_init(void)
+ {
+ #ifdef _SC_THREAD_STACK_MIN
+- g_thread_min_stack_size = MAX (sysconf (_SC_THREAD_STACK_MIN), 0);
++ g_thread_min_stack_size = MAX (sysconf (_SC_THREAD_STACK_MIN),
++ g_thread_min_stack_size);
+ #endif /* _SC_THREAD_STACK_MIN */
+ #ifdef HAVE_PRIORITIES
+ # ifdef G_THREADS_IMPL_POSIX
+@@ -176,7 +181,7 @@
+ result = pthread_mutex_trylock ((pthread_mutex_t *) mutex);
+
+ #ifdef G_THREADS_IMPL_POSIX
+- if (result == EBUSY)
++ if ((result == EBUSY) || (result == EDEADLK))
+ return FALSE;
+ #else /* G_THREADS_IMPL_DCE */
+ if (result == 0)
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..b3b5c6b16
--- /dev/null
+++ b/devel/glib20/pkg-plist
@@ -0,0 +1,344 @@
+bin/glib-genmarshal
+bin/glib-gettextize
+bin/glib-mkenums
+bin/gobject-query
+bin/gtester
+bin/gtester-report
+include/gio-unix-2.0/gio/gdesktopappinfo.h
+include/gio-unix-2.0/gio/gunixconnection.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/gappinfo.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/gdatainputstream.h
+include/glib-2.0/gio/gdataoutputstream.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/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/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/gnetworkservice.h
+include/glib-2.0/gio/goutputstream.h
+include/glib-2.0/gio/gresolver.h
+include/glib-2.0/gio/gseekable.h
+include/glib-2.0/gio/gsimpleasyncresult.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/gtcpconnection.h
+include/glib-2.0/gio/gthemedicon.h
+include/glib-2.0/gio/gthreadedsocketservice.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.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/gbookmarkfile.h
+include/glib-2.0/glib/gcache.h
+include/glib-2.0/glib/gchecksum.h
+include/glib-2.0/glib/gcompletion.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/gdir.h
+include/glib-2.0/glib/gerror.h
+include/glib-2.0/glib/gfileutils.h
+include/glib-2.0/glib/ghash.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/grel.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/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/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/gwin32.h
+include/glib-2.0/glibconfig.h
+include/glib-2.0/gmodule.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/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/glib-2.0/gettext/mkinstalldirs
+share/glib-2.0/gettext/po/Makefile.in.in
+share/locale/am/LC_MESSAGES/glib20.mo
+share/locale/ar/LC_MESSAGES/glib20.mo
+share/locale/as/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_CA/LC_MESSAGES/glib20.mo
+share/locale/en_GB/LC_MESSAGES/glib20.mo
+share/locale/en@shaw/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/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/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/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/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
+@dirrm share/glib-2.0/gettext/po
+@dirrm share/glib-2.0/gettext
+@dirrm share/glib-2.0
+@exec mkdir -p %D/lib/gio/modules
+@dirrmtry lib/gio/modules
+@dirrmtry lib/gio
+@dirrm include/glib-2.0/gobject
+@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
+@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/tt/LC_MESSAGES
+@dirrmtry share/locale/tt
+@dirrmtry share/locale/tl/LC_MESSAGES
+@dirrmtry share/locale/tl
+@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/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/hy/LC_MESSAGES
+@dirrmtry share/locale/hy
+@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/as/LC_MESSAGES
+@dirrmtry share/locale/as