summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--berkeleydb/makefile.mk2
-rw-r--r--cairo/cairo-1.8.0.patch4
-rw-r--r--cairo/cairo/makefile.mk12
-rw-r--r--cairo/prj/d.lst3
-rw-r--r--gdk-pixbuf/gdk-pixbuf-2.23.0-win32.patch459
-rw-r--r--gdk-pixbuf/gdk-pixbuf-2.23.0.patch24
-rw-r--r--gdk-pixbuf/makefile.mk116
-rw-r--r--gdk-pixbuf/prj/build.lst3
-rwxr-xr-xgdk-pixbuf/prj/d.lst21
-rw-r--r--gettext/gettext-0.18.1.1.patch2362
-rw-r--r--gettext/makefile.mk106
-rw-r--r--gettext/prj/build.lst3
-rw-r--r--gettext/prj/d.lst30
-rw-r--r--glib/glib-2.28.1-win32-2.patch553
-rw-r--r--glib/glib-2.28.1-win32.patch1982
-rw-r--r--glib/glib-2.28.1.patch41
-rwxr-xr-xglib/makefile.mk545
-rw-r--r--glib/prj/build.lst3
-rw-r--r--glib/prj/d.lst239
-rw-r--r--jpeg/jpeg-8c.patch174
-rw-r--r--jpeg/makefile.mk24
-rw-r--r--jpeg/prj/build.lst4
-rw-r--r--jpeg/prj/d.lst10
-rw-r--r--libcroco/libcroco-0.6.2.patch110
-rw-r--r--libcroco/makefile.mk146
-rw-r--r--libcroco/prj/build.lst3
-rwxr-xr-xlibcroco/prj/d.lst39
-rw-r--r--libgsf/libgsf-1.14.19.patch20
-rw-r--r--libgsf/libgsf-1.14.19.windows.patch138
-rwxr-xr-xlibgsf/makefile.mk157
-rw-r--r--libgsf/prj/build.lst3
-rwxr-xr-xlibgsf/prj/d.lst59
-rw-r--r--libpng/libpng-1.5.1.patch277
-rwxr-xr-xlibpng/makefile.mk63
-rw-r--r--libpng/prj/build.lst3
-rwxr-xr-xlibpng/prj/d.lst11
-rw-r--r--librsvg/librsvg-2.32.1-win32.patch526
-rw-r--r--librsvg/librsvg-2.32.1.patch43
-rwxr-xr-xlibrsvg/makefile.mk111
-rw-r--r--librsvg/prj/build.lst3
-rwxr-xr-xlibrsvg/prj/d.lst14
-rw-r--r--pango/makefile.mk161
-rw-r--r--pango/pango-1.28.3-win32.patch632
-rw-r--r--pango/pango-1.28.3.patch37
-rw-r--r--pango/prj/build.lst3
-rwxr-xr-xpango/prj/d.lst44
-rw-r--r--python/Python-2.6.1-nohardlink.patch20
-rw-r--r--python/Python-2.6.1-sysbase.patch13
-rw-r--r--python/makefile.mk4
-rw-r--r--zlib/makefile.mk6
-rw-r--r--zlib/zlib-1.2.5.patch71
51 files changed, 9411 insertions, 26 deletions
diff --git a/berkeleydb/makefile.mk b/berkeleydb/makefile.mk
index 84d7e0b231eb..98c8a5ec16bd 100644
--- a/berkeleydb/makefile.mk
+++ b/berkeleydb/makefile.mk
@@ -94,7 +94,7 @@ CONFIGURE_DIR=out
#relative to CONFIGURE_DIR
CONFIGURE_ACTION= \
..$/dist$/configure
-CONFIGURE_FLAGS=--disable-cxx --enable-dynamic --enable-shared --enable-compat185
+CONFIGURE_FLAGS=--disable-cxx --enable-dynamic --enable-shared --enable-compat185 CC='$(CC) $(SOLARLIB)'
.IF "$(OS)"=="MACOSX"
CONFIGURE_FLAGS+=CPPFLAGS="$(EXTRA_CDEFS)"
.ENDIF
diff --git a/cairo/cairo-1.8.0.patch b/cairo/cairo-1.8.0.patch
index 454f234176e0..424c6041562d 100644
--- a/cairo/cairo-1.8.0.patch
+++ b/cairo/cairo-1.8.0.patch
@@ -25,7 +25,7 @@ diff -ur misc/build/cairo-1.8.0.org/build/Makefile.win32.common misc/build/cairo
DEFAULT_CFLAGS += -I. -I$(top_srcdir)
DEFAULT_CFLAGS += $(PIXMAN_CFLAGS)
+DEFAULT_CFLAGS += $(SOLARINC)
-+DEFAULT_CFLAGS += -I$(SOLARVER)/$(INPATH)/inc/zlib -DZLIB_FIX
++DEFAULT_CFLAGS += -I$(SOLARVER)/$(INPATH)/inc/zlib -I$(SOLARVER)/$(INPATH)/inc/external/libpng -DZLIB_FIX
CAIRO_CFLAGS = $(DEFAULT_CFLAGS) $(CFLAGS)
@@ -46,7 +46,7 @@ diff -ur misc/build/cairo-1.8.0.org/build/Makefile.win32.features misc/build/cai
CAIRO_HAS_OS2_SURFACE=0
CAIRO_HAS_BEOS_SURFACE=0
-CAIRO_HAS_PNG_FUNCTIONS=1
-+CAIRO_HAS_PNG_FUNCTIONS=0
++CAIRO_HAS_PNG_FUNCTIONS=1
CAIRO_HAS_GLITZ_SURFACE=0
CAIRO_HAS_DIRECTFB_SURFACE=0
CAIRO_HAS_FT_FONT=0
diff --git a/cairo/cairo/makefile.mk b/cairo/cairo/makefile.mk
index 58abbe8f8109..d6d17390db66 100644
--- a/cairo/cairo/makefile.mk
+++ b/cairo/cairo/makefile.mk
@@ -83,7 +83,7 @@ cairo_LIBS+=$(MINGW_SHARED_LIBSTDCPP)
CONFIGURE_DIR=
CONFIGURE_ACTION=cp $(SRC_ROOT)$/$(PRJNAME)$/cairo$/dummy_pkg_config . && .$/configure
-CONFIGURE_FLAGS=--disable-xlib --disable-ft --disable-pthread --disable-svg --disable-png --enable-gtk-doc=no --enable-test-surfaces=no --enable-static=no --build=i586-pc-mingw32 --host=i586-pc-mingw32 PKG_CONFIG=./dummy_pkg_config CC="$(cairo_CC)" LIBS="$(cairo_LIBS)" ZLIB3RDLIB=$(ZLIB3RDLIB) COMPRESS=$(cairo_COMPRESS) OBJDUMP="$(WRAPCMD) objdump"
+CONFIGURE_FLAGS=--disable-xlib --disable-ft --disable-pthread --disable-svg --enable-gtk-doc=no --enable-test-surfaces=no --enable-static=no --build=i586-pc-mingw32 --host=i586-pc-mingw32 PKG_CONFIG=./dummy_pkg_config CC="$(cairo_CC)" LIBS="$(cairo_LIBS)" ZLIB3RDLIB=$(ZLIB3RDLIB) COMPRESS=$(cairo_COMPRESS) OBJDUMP="$(WRAPCMD) objdump"
BUILD_ACTION=$(GNUMAKE)
BUILD_FLAGS+= -j$(EXTMAXPROCESS)
BUILD_DIR=$(CONFIGURE_DIR)
@@ -108,7 +108,7 @@ cairo_CPPFLAGS+=$(EXTRA_CFLAGS) $(EXTRA_CDEFS)
.ENDIF # "$(SYSBASE)"!=""
CONFIGURE_DIR=
CONFIGURE_ACTION=cp $(SRC_ROOT)$/$(PRJNAME)$/cairo$/dummy_pkg_config . && .$/configure
-CONFIGURE_FLAGS=--enable-static=no --disable-xlib --disable-ft --disable-svg --disable-png --enable-quartz --enable-quartz-font --enable-gtk-doc=no --enable-test-surfaces=no PKG_CONFIG=./dummy_pkg_config ZLIB3RDLIB=$(ZLIB3RDLIB) COMPRESS=$(cairo_COMPRESS)
+CONFIGURE_FLAGS=--enable-static=no --disable-xlib --disable-ft --disable-svg --enable-quartz --enable-quartz-font --enable-gtk-doc=no --enable-test-surfaces=no PKG_CONFIG=./dummy_pkg_config ZLIB3RDLIB=$(ZLIB3RDLIB) COMPRESS=$(cairo_COMPRESS)
cairo_CPPFLAGS+=$(EXTRA_CDEFS)
cairo_LDFLAGS+=$(EXTRA_LINKFLAGS)
BUILD_ACTION=$(GNUMAKE)
@@ -145,7 +145,7 @@ cairo_CFLAGS+=-march=i486
CONFIGURE_DIR=
CONFIGURE_ACTION=.$/configure
-CONFIGURE_FLAGS=--enable-xlib --enable-ft --disable-svg --disable-png --enable-gtk-doc=no --enable-test-surfaces=no --enable-static=no ZLIB3RDLIB=$(ZLIB3RDLIB) COMPRESS=$(cairo_COMPRESS)
+CONFIGURE_FLAGS=--enable-xlib --enable-ft --disable-svg --enable-gtk-doc=no --enable-test-surfaces=no --enable-static=no ZLIB3RDLIB=$(ZLIB3RDLIB) COMPRESS=$(cairo_COMPRESS)
BUILD_ACTION=$(GNUMAKE)
BUILD_FLAGS+= -j$(EXTMAXPROCESS)
BUILD_DIR=$(CONFIGURE_DIR)
@@ -178,6 +178,11 @@ CONFIGURE_FLAGS+=CFLAGS="-I$(SRC_ROOT)$/$(PRJNAME)$/$(INPATH)$/inc $(cairo_CFLAG
.ENDIF
+.IF "$(SYSTEM_LIBPNG)" != "YES"
+CONFIGURE_FLAGS+=png_CFLAGS="-I$(SOLARINCDIR)$/external$/libpng" png_LIBS="-L$(SOLARLIBDIR) -lpng"
+.ENDIF
+
+
OUT2INC+=cairo-version.h \
src$/cairo-deprecated.h \
src$/cairo-features.h \
@@ -186,6 +191,7 @@ OUT2INC+=cairo-version.h \
src$/cairo.h
.IF "$(OS)"=="MACOSX"
+EXTRPATH=LOADER
OUT2LIB+=src$/.libs$/libcairo*.dylib
.ELIF "$(OS)"=="WNT"
.IF "$(COM)"=="GCC"
diff --git a/cairo/prj/d.lst b/cairo/prj/d.lst
index b6a0c263f4a2..6cd8613cf677 100644
--- a/cairo/prj/d.lst
+++ b/cairo/prj/d.lst
@@ -1,5 +1,8 @@
mkdir: %_DEST%\inc%_EXT%\cairo
+mkdir: %_DEST%\inc%_EXT%\external
+mkdir: %_DEST%\inc%_EXT%\external\cairo
..\%__SRC%\inc\cairo*.h %_DEST%\inc%_EXT%\cairo\cairo*.h
+..\%__SRC%\inc\cairo*.h %_DEST%\inc%_EXT%\external\cairo\cairo*.h
..\%__SRC%\lib\lib*.so %_DEST%\lib%_EXT%\lib*.so
..\%__SRC%\lib\lib*.so.* %_DEST%\lib%_EXT%\lib*.so.*
diff --git a/gdk-pixbuf/gdk-pixbuf-2.23.0-win32.patch b/gdk-pixbuf/gdk-pixbuf-2.23.0-win32.patch
new file mode 100644
index 000000000000..3c56febbad6b
--- /dev/null
+++ b/gdk-pixbuf/gdk-pixbuf-2.23.0-win32.patch
@@ -0,0 +1,459 @@
+--- misc/gdk-pixbuf-2.23.0/config.h.win32 2011-03-24 04:59:07.000000000 +0100
++++ misc/build/gdk-pixbuf-2.23.0/config.h.win32 2011-03-22 01:58:24.296875000 +0100
+@@ -1 +1,126 @@
+-dummy
++/* config.h.in. Generated from configure.ac by autoheader. */
++
++/* Define to 1 if translation of program messages to the user's native
++ language is requested. */
++#undef ENABLE_NLS
++
++/* Define if gio can sniff image data */
++#undef GDK_PIXBUF_USE_GIO_MIME
++
++/* The prefix for our gettext translation domains. */
++#define GETTEXT_PACKAGE "intl.dll"
++
++/* Define to 1 if you have the `bind_textdomain_codeset' function. */
++#undef HAVE_BIND_TEXTDOMAIN_CODESET
++
++/* Define to 1 if you have the MacOS X function CFLocaleCopyCurrent in the
++ CoreFoundation framework. */
++#undef HAVE_CFLOCALECOPYCURRENT
++
++/* Define to 1 if you have the MacOS X function CFPreferencesCopyAppValue in
++ the CoreFoundation framework. */
++#undef HAVE_CFPREFERENCESCOPYAPPVALUE
++
++/* Define if the GNU dcgettext() function is already present or preinstalled.
++ */
++#undef HAVE_DCGETTEXT
++
++/* Define to 1 if you have the <dlfcn.h> header file. */
++#undef HAVE_DLFCN_H
++
++/* Define if the GNU gettext() function is already present or preinstalled. */
++#define HAVE_GETTEXT 1
++
++/* Define if you have the iconv() function and it works. */
++#define HAVE_ICONV 1
++
++/* Define to 1 if you have the <inttypes.h> header file. */
++#undef HAVE_INTTYPES_H
++
++/* Define to 1 if you have the <memory.h> header file. */
++#undef HAVE_MEMORY_H
++
++/* Define to 1 is libjpeg supports progressive JPEG */
++#define HAVE_PROGRESSIVE_JPEG 1
++
++/* Define to 1 if sigsetjmp is available */
++#undef HAVE_SIGSETJMP
++
++/* Define to 1 if you have the <stdint.h> header file. */
++#undef HAVE_STDINT_H
++
++/* Define to 1 if you have the <stdlib.h> header file. */
++#define HAVE_STDLIB_H 1
++
++/* Define to 1 if you have the <strings.h> header file. */
++#define HAVE_STRINGS_H 1
++
++/* Define to 1 if you have the <string.h> header file. */
++#undef HAVE_STRING_H
++
++/* Define to 1 if you have the <sys/stat.h> header file. */
++#undef HAVE_SYS_STAT_H
++
++/* Define to 1 if sys/sysinfo.h is available */
++#undef HAVE_SYS_SYSINFO_H
++
++/* Define to 1 if sys/systeminfo.h is available */
++#undef HAVE_SYS_SYSTEMINFO_H
++
++/* Define to 1 if you have the <sys/types.h> header file. */
++#undef HAVE_SYS_TYPES_H
++
++/* Define to 1 if you have the <unistd.h> header file. */
++#undef HAVE_UNISTD_H
++
++/* Define to the sub-directory in which libtool stores uninstalled libraries.
++ */
++#undef LT_OBJDIR
++
++/* Define to 1 if your C compiler doesn't accept -c and -o together. */
++#undef NO_MINUS_C_MINUS_O
++
++/* Define to the address where bug reports for this package should be sent. */
++#undef PACKAGE_BUGREPORT
++
++/* Define to the full name of this package. */
++#undef PACKAGE_NAME
++
++/* Define to the full name and version of this package. */
++#undef PACKAGE_STRING
++
++/* Define to the one symbol short name of this package. */
++#undef PACKAGE_TARNAME
++
++/* Define to the home page for this package. */
++#undef PACKAGE_URL
++
++/* Define to the version of this package. */
++#undef PACKAGE_VERSION
++
++/* Define to 1 if you have the ANSI C header files. */
++#undef STDC_HEADERS
++
++/* Define to 1 if gmodule works and should be used */
++#undef USE_GMODULE
++
++/* Whether to load modules via .la files rather than directly */
++#undef USE_LA_MODULES
++
++/* Define to 1 if medialib is available and should be used */
++#undef USE_MEDIALIB
++
++/* Define to 1 if medialib 2.5 is available */
++#undef USE_MEDIALIB25
++
++/* Define to 1 if XXM is available and should be used */
++#undef USE_MMX
++
++/* Number of bits in a file offset, on hosts where this is settable. */
++#undef _FILE_OFFSET_BITS
++
++/* Define for large files, on AIX-style hosts. */
++#undef _LARGE_FILES
++
++/* Define to empty if `const' does not conform to ANSI C. */
++#undef const
+--- misc/gdk-pixbuf-2.23.0/gdk-pixbuf/io-png.c 2010-07-10 02:54:35.000000000 +0200
++++ misc/build/gdk-pixbuf-2.23.0/gdk-pixbuf/io-png.c 2011-03-22 02:18:55.515625000 +0100
+@@ -27,6 +27,7 @@
+ #include <stdio.h>
+ #include <stdlib.h>
+ #include <png.h>
++#include <pngstruct.h>
+ #include "gdk-pixbuf-private.h"
+
+
+@@ -183,7 +184,7 @@
+ error_msg);
+ }
+
+- longjmp (png_save_ptr->jmpbuf, 1);
++ longjmp (png_save_ptr->png_jmpbuf, 1);
+ }
+
+ static void
+@@ -287,7 +288,7 @@
+ return NULL;
+ }
+
+- if (setjmp (png_ptr->jmpbuf)) {
++ if (setjmp (png_ptr->png_jmpbuf)) {
+ g_free (rows);
+
+ if (pixbuf)
+@@ -459,7 +460,7 @@
+ return NULL;
+ }
+
+- if (setjmp (lc->png_read_ptr->jmpbuf)) {
++ if (setjmp (lc->png_read_ptr->png_jmpbuf)) {
+ if (lc->png_info_ptr)
+ png_destroy_read_struct(&lc->png_read_ptr, NULL, NULL);
+ g_free(lc);
+@@ -531,7 +532,7 @@
+ lc->error = error;
+
+ /* Invokes our callbacks as needed */
+- if (setjmp (lc->png_read_ptr->jmpbuf)) {
++ if (setjmp (lc->png_read_ptr->png_jmpbuf)) {
+ lc->error = NULL;
+ return FALSE;
+ } else {
+@@ -769,7 +770,7 @@
+ error_msg);
+ }
+
+- longjmp (png_read_ptr->jmpbuf, 1);
++ longjmp (png_read_ptr->png_jmpbuf, 1);
+ }
+
+ static void
+@@ -978,7 +979,7 @@
+ success = FALSE;
+ goto cleanup;
+ }
+- if (setjmp (png_ptr->jmpbuf)) {
++ if (setjmp (png_ptr->png_jmpbuf)) {
+ success = FALSE;
+ goto cleanup;
+ }
+--- misc/gdk-pixbuf-2.23.0/gdk-pixbuf/makefile.msc 2010-06-25 23:40:10.000000000 +0200
++++ misc/build/gdk-pixbuf-2.23.0/gdk-pixbuf/makefile.msc 2011-03-24 06:13:30.515625000 +0100
+@@ -1,9 +1,19 @@
+-TOP = ..\..
+ PRJ_TOP = ..
++GLIB_TOP =
+ PACKAGE = gdk_pixbuf
+ PKG_VER = $(GDK_PIXBUF_VER)
++GLIB_INC = -I$(OUTDIR)\inc\external\glib-2.0
++LIBPNG_INC = -I$(OUTDIR)\inc\external\libpng
++LIBJPEG_INC = -I$(OUTDIR)\inc\external\libjpeg
++
++INTL_LIB = $(OUTDIR)\lib\intl.lib
++GLIB_LIB = $(OUTDIR)\lib\glib-2.0.lib $(OUTDIR)\lib\gobject-2.0.lib $(OUTDIR)\lib\gmodule-2.0.lib $(OUTDIR)\lib\gio-2.0.lib $(OUTDIR)\lib\gthread-2.0.lib
++LIBJPEG_LIB = $(OUTDIR)\lib\jpeg.lib
++LIBPNG_LIB = $(OUTDIR)\lib\libpng.lib
++ZLIB_LIB = $(OUTDIR)\lib\zlib.lib
++GDIPLUS_LIB = gdiplus.lib
+
+-!INCLUDE $(TOP)/glib/build/win32/make.msc
++!INCLUDE $(OUTDIR)\inc\external\glib-2.0\make.msc
+
+ !IFNDEF PERL
+ PERL = perl
+@@ -13,22 +23,22 @@
+
+ # -DINCLUDE_gdiplus _replaces_ -DINCLUDE_bmp -DINCLUDE_gif -DINCLUDE_ico -DINCLUDE_jpeg -DINCLUDE_tiff
+ # but not yet -DINCLUDE_png
+-##USEGDIP=1
++USEGDIP=1
+ # to get _working_ include modules we need respective defines ...
+ #
+ BUILT_IN_FORMATS = \
+ !IFDEF USEGDIP
+ -DINCLUDE_gdiplus \
+ !ELSE
+- -DINCLUDE_bmp -DINCLUDE_gif -DINCLUDE_ico -DINCLUDE_jpeg -DINCLUDE_tiff \
++ -DINCLUDE_bmp -DINCLUDE_gif -DINCLUDE_ico -DINCLUDE_jpeg \
+ !ENDIF
+ -DINCLUDE_png \
+ -DINCLUDE_xpm -DINCLUDE_wbmp \
+ -DINCLUDE_pnm -DINCLUDE_ras
+
+-PKG_CFLAGS = -FImsvc_recommended_pragmas.h \
++PKG_CFLAGS = -FI$(PRJ_TOP)\msvc_recommended_pragmas.h \
+ !IFNDEF USEGDIP
+- $(JPEG_CFLAGS) $(TIFF_CFLAGS) \
++ $(JPEG_CFLAGS) \
+ !ENDIF
+ -I. -I.. $(GLIB_CFLAGS) \
+ $(BUILT_IN_FORMATS) \
+@@ -39,13 +49,14 @@
+ -UUSE_GMODULE # use built-in
+ # -DUSE_GMODULE -DPIXBUF_LIBDIR=\".\"
+
+-PKG_LINK = $(GLIB_LIBS) \
+-!IFNDEF USEGDIP
+- $(TIFF_LIBS) $(JPEG_LIBS) \
+-!ENDIF
+- $(PNG_LIBS) $(INTL_LIBS) \
+- pixops\pixops.lib \
+-
++PKG_LINK = $(INTL_LIB) \
++ $(GLIB_LIB) \
++ $(LIBPNG_LIB) \
++ $(LIBJPEG_LIB) \
++ $(ZLIB_LIB) \
++ $(GDIPLUS_LIB) \
++ pixops\pixops.lib
++
+ OBJECTS_NON_NATIVE = \
+ io-bmp.obj \
+ io-gif.obj \
+@@ -95,13 +106,13 @@
+ gdk-pixbuf-transform.h
+
+ gdk-pixbuf-marshal.h: gdk-pixbuf-marshal.list
+- ..\..\glib\gobject\glib-genmarshal --prefix=_gdk_pixbuf_marshal gdk-pixbuf-marshal.list --header >gdk-pixbuf-marshal.h
++ $(OUTDIR)\bin\glib-genmarshal --prefix=_gdk_pixbuf_marshal gdk-pixbuf-marshal.list --header >gdk-pixbuf-marshal.h
+
+ gdk-pixbuf-marshal.c: gdk-pixbuf-marshal.h gdk-pixbuf-marshal.list
+- ..\..\glib\gobject\glib-genmarshal --prefix=_gdk_pixbuf_marshal gdk-pixbuf-marshal.list --body >gdk-pixbuf-marshal.c
++ $(OUTDIR)\bin\glib-genmarshal --prefix=_gdk_pixbuf_marshal gdk-pixbuf-marshal.list --body >gdk-pixbuf-marshal.c
+
+-gdk-pixbuf-alias.h: gdk-pixbuf.symbols
+- perl makegdkpixbufalias.pl < gdk-pixbuf.symbols > gdk-pixbuf-alias.h
++#gdk-pixbuf-alias.h: gdk-pixbuf.symbols
++# perl makegdkpixbufalias.pl < gdk-pixbuf.symbols > gdk-pixbuf-alias.h
+
+ gdk_pixbuf.def: gdk-pixbuf.symbols makefile.msc
+ echo EXPORTS > gdk_pixbuf.def
+@@ -109,14 +120,15 @@
+ -DG_GNUC_MALLOC= -DG_GNUC_CONST= -DG_GNUC_NULL_TERMINATED= -DG_GNUC_NORETURN= -DG_GNUC_PRINTF=;G_GNUC_PRINTF \
+ gdk-pixbuf.symbols >> gdk_pixbuf.def
+
+-gdk-pixbuf-aliasdef.c: gdk-pixbuf.symbols
+- perl makegdkpixbufalias.pl -def < gdk-pixbuf.symbols > gdk-pixbuf-aliasdef.c
++#gdk-pixbuf-aliasdef.c: gdk-pixbuf.symbols
++# perl makegdkpixbufalias.pl -def < gdk-pixbuf.symbols > gdk-pixbuf-aliasdef.c
+
+ ## common stuff
+
+ INSTALL = copy
+
+-CFLAGS = -I. -DHAVE_CONFIG_H
++CFLAGS = -I. $(SOLARINC) $(GLIB_INC) $(LIBPNG_INC) $(LIBJPEG_INC) \
++ -DHAVE_CONFIG_H -DGDK_PIXBUF_LOCALEDIR="\"locale_dummy\""
+
+ sub-pixops :
+ cd pixops
+@@ -126,19 +138,19 @@
+ ## targets
+ all : \
+ $(PRJ_TOP)\config.h \
+- gdk-pixbuf-alias.h \
+- gdk-pixbuf-aliasdef.c \
++# gdk-pixbuf-alias.h \
++# gdk-pixbuf-aliasdef.c \
+ gdk-pixbuf-marshal.h \
+ gdk-pixbuf-marshal.c \
+ sub-pixops \
+ lib$(PACKAGE)-$(PKG_VER)-0.dll \
+- $(PACKAGE)-$(PKG_VER)s.lib \
++ $(PACKAGE)-$(PKG_VER)s.lib
+ # make-inline-pixbuf.exe \
+- gdk-pixbuf-csource.exe \
+- test-gdk-pixbuf.exe
++# gdk-pixbuf-csource.exe \
++# test-gdk-pixbuf.exe
+
+ $(PACKAGE).res : $(PACKAGE).rc
+- rc -DBUILDNUMBER=0 -r -fo $(PACKAGE).res $(PACKAGE).rc
++ rc -I $(SOLARINCLUDES) -DBUILDNUMBER=0 -r -fo $(PACKAGE).res $(PACKAGE).rc
+
+ $(PACKAGE)-$(PKG_VER)s.lib : $(OBJECTS)
+ lib /out:$(PACKAGE)-$(PKG_VER)s.lib $(OBJECTS) pixops\pixops.lib
+@@ -160,7 +172,7 @@
+ # gdk-pixbuf-enum-types.h
+ #
+ gdk-pixbuf-enum-types.h : $(gdk_pixbuf_headers) makefile.msc
+- $(PERL) $(GLIB)\gobject\glib-mkenums \
++ $(PERL) $(OUTDIR)\bin\glib-mkenums \
+ --fhead "#ifndef __GDK_PIXBUF__ENUM_TYPES_H__\n#define __GDK_PIXBUF_ENUM_TYPES_H__\n" \
+ --fprod "/* enumerations from \"@filename@\" */\n" \
+ --vhead "GType @enum_name@_get_type (void);\n#define GDK_TYPE_@ENUMSHORT@ (@enum_name@_get_type())\n" \
+@@ -171,8 +183,8 @@
+ # gdk-pixbuf-enum-types.c
+ #
+ gdk-pixbuf-enum-types.c: $(gdk_pixbuf_headers) makefile.msc
+- $(PERL) $(GLIB)\gobject\glib-mkenums \
+- --fhead "#include <gdk-pixbuf/gdk-pixbuf.h>" \
++ $(PERL) $(OUTDIR)\bin\glib-mkenums \
++ --fhead "#include <gdk-pixbuf.h>" \
+ --fprod "\n/* enumerations from \"@filename@\" */" \
+ --vhead "GType\n@enum_name@_get_type (void)\n{\n static GType etype = 0;\n if (etype == 0) {\n static const G@Type@Value values[] = {" \
+ --vprod " { @VALUENAME@, \"@VALUENAME@\", \"@valuenick@\" }," \
+@@ -188,10 +200,10 @@
+ $(CC) $(CFLAGS) -GD -c $(PKG_CFLAGS) $<
+
+ clean::
+- del config.h
+- del gdk-pixbuf-marshal.h
+- del gdk-pixbuf-marshal.c
+- del gdk-pixbuf-alaias.h
++ rm config.h
++ rm gdk-pixbuf-marshal.h
++ rm gdk-pixbuf-marshal.c
++ rm gdk-pixbuf-alaias.h
+
+
+
+--- misc/gdk-pixbuf-2.23.0/gdk-pixbuf/pixops/makefile.msc 2010-06-25 23:40:10.000000000 +0200
++++ misc/build/gdk-pixbuf-2.23.0/gdk-pixbuf/pixops/makefile.msc 2011-03-24 06:03:59.062500000 +0100
+@@ -1,10 +1,11 @@
+-TOP = ../../..
+-PACKAGE = pixops
+ PRJ_TOP = ..\..
++PACKAGE = pixops
++GLIB_TOP =
++GLIB_INC = -I$(OUTDIR)\inc\external\glib-2.0
+
+-!INCLUDE $(TOP)/glib/build/win32/make.msc
++!INCLUDE $(OUTDIR)\inc\external\glib-2.0\make.msc
+
+-PKG_CFLAGS = -I.. $(GLIB_CFLAGS)
++PKG_CFLAGS = -I.. $(SOLARINC) $(GLIB_INC) $(GLIB_CFLAGS)
+
+ OBJECTS = \
+ pixops.obj \
+@@ -50,16 +51,16 @@
+ $(CC) $(CFLAGS) -GD -c $(PKG_CFLAGS) $<
+
+ clean::
+- del config.h
+- del *.exe
+- del *.obj
+- del *.dll
+- del *.lib
+- del *.err
+- del *.map
+- del *.sym
+- del *.exp
+- del *.lk1
+- del *.mk1
+- del *.pdb
+- del *.ilk
++ rm config.h
++ rm *.exe
++ rm *.obj
++ rm *.dll
++ rm *.lib
++ rm *.err
++ rm *.map
++ rm *.sym
++ rm *.exp
++ rm *.lk1
++ rm *.mk1
++ rm *.pdb
++ rm *.ilk
+--- misc/gdk-pixbuf-2.23.0/gdk-pixbuf/pixops/pixops.c 2010-06-25 23:40:10.000000000 +0200
++++ misc/build/gdk-pixbuf-2.23.0/gdk-pixbuf/pixops/pixops.c 2011-03-22 01:58:24.281250000 +0100
+@@ -21,7 +21,7 @@
+ */
+ #include "config.h"
+ #include <math.h>
+-#include <glib.h>
++#include <glib-2.0\glib.h>
+
+ #include "pixops.h"
+ #include "pixops-internal.h"
+--- misc/gdk-pixbuf-2.23.0/msvc_recommended_pragmas.h 2011-03-24 04:59:07.625000000 +0100
++++ misc/build/gdk-pixbuf-2.23.0/msvc_recommended_pragmas.h 2011-03-22 01:58:24.359375000 +0100
+@@ -1 +1,31 @@
+-dummy
++#ifndef _MSC_VER
++#pragma error "This header is for Microsoft VC only."
++#endif /* _MSC_VER */
++
++/* Make MSVC more pedantic, this is a recommended pragma list
++ * from _Win32_Programming_ by Rector and Newcomer.
++ */
++#pragma warning(error:4002) /* too many actual parameters for macro */
++#pragma warning(error:4003) /* not enough actual parameters for macro */
++#pragma warning(1:4010) /* single-line comment contains line-continuation character */
++#pragma warning(error:4013) /* 'function' undefined; assuming extern returning int */
++#pragma warning(1:4016) /* no function return type; using int as default */
++#pragma warning(error:4020) /* too many actual parameters */
++#pragma warning(error:4021) /* too few actual parameters */
++#pragma warning(error:4027) /* function declared without formal parameter list */
++#pragma warning(error:4029) /* declared formal parameter list different from definition */
++#pragma warning(error:4033) /* 'function' must return a value */
++#pragma warning(error:4035) /* 'function' : no return value */
++#pragma warning(error:4045) /* array bounds overflow */
++#pragma warning(error:4047) /* different levels of indirection */
++#pragma warning(error:4049) /* terminating line number emission */
++#pragma warning(error:4053) /* An expression of type void was used as an operand */
++#pragma warning(error:4071) /* no function prototype given */
++#pragma warning(disable:4101) /* unreferenced local variable */
++#pragma warning(error:4150)
++
++#pragma warning(disable:4244) /* No possible loss of data warnings */
++#pragma warning(disable:4305) /* No truncation from int to char warnings */
++
++/* work around Microsoft's premature attempt to deprecate the C-Library */
++#pragma warning(disable:4996) /* This function or variable may be unsafe. */
diff --git a/gdk-pixbuf/gdk-pixbuf-2.23.0.patch b/gdk-pixbuf/gdk-pixbuf-2.23.0.patch
new file mode 100644
index 000000000000..1bff29333b62
--- /dev/null
+++ b/gdk-pixbuf/gdk-pixbuf-2.23.0.patch
@@ -0,0 +1,24 @@
+--- misc/gdk-pixbuf-2.23.0/configure 2010-12-23 15:18:11.000000000 +0100
++++ misc/build/gdk-pixbuf-2.23.0/configure 2011-02-28 18:49:26.000000000 +0100
+@@ -16839,7 +16839,7 @@
+
+
+
+-
++if 0; then
+
+ if test "x$ac_cv_env_PKG_CONFIG_set" != "xset"; then
+ if test -n "$ac_tool_prefix"; then
+@@ -17158,7 +17158,11 @@
+
+
+ rm -f conf.glibtest
+-
++else
++ GLIB_MKENUMS=glib-mkenums
++ GLIB_GENMARSHAL=glib-genmarshal
++ GOBJECT_QUERY=gobject-query
++fi
+
+ # See if it's safe to turn G_DISABLE_DEPRECATED on.
+ GLIB_VERSION_MAJOR_MINOR=`$PKG_CONFIG --modversion glib-2.0 | sed "s/\.[^.]*\$//"`
diff --git a/gdk-pixbuf/makefile.mk b/gdk-pixbuf/makefile.mk
new file mode 100644
index 000000000000..663f0f252a47
--- /dev/null
+++ b/gdk-pixbuf/makefile.mk
@@ -0,0 +1,116 @@
+#*************************************************************************
+#
+# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+#
+# Copyright 2000, 2010 Oracle and/or its affiliates.
+#
+# OpenOffice.org - a multi-platform office productivity suite
+#
+# This file is part of OpenOffice.org.
+#
+# OpenOffice.org is free software: you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License version 3
+# only, as published by the Free Software Foundation.
+#
+# OpenOffice.org is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU Lesser General Public License version 3 for more details
+# (a copy is included in the LICENSE file that accompanied this code).
+#
+# You should have received a copy of the GNU Lesser General Public License
+# version 3 along with OpenOffice.org. If not, see
+# <http://www.openoffice.org/license.html>
+# for a copy of the LGPLv3 License.
+#
+#*************************************************************************
+
+PRJ=.
+
+PRJNAME=gdk-pixbuf
+TARGET=so_gdk-pixbuf
+
+# --- Settings -----------------------------------------------------
+
+.INCLUDE : settings.mk
+
+.IF "$(SYSTEM_GDKPIXBUF)" == "YES"
+all:
+ @echo "An already available installation of gdk-pixbuf should exist on your system."
+ @echo "Therefore the version provided here does not need to be built in addition."
+.ENDIF
+
+# --- Files --------------------------------------------------------
+
+GDKPIXBUFVERSION=2.23.0
+
+TARFILE_NAME=$(PRJNAME)-$(GDKPIXBUFVERSION)
+TARFILE_MD5=a7d6c5f2fe2d481149ed3ba807b5c043
+
+.IF "$(OS)"=="MACOSX"
+
+PATCH_FILES=gdk-pixbuf-2.23.0.patch
+CONFIGURE_DIR=
+CONFIGURE_ACTION=$(AUGMENT_LIBRARY_PATH) \
+ BASE_DEPENDENCIES_CFLAGS="-I$(SOLARINCDIR)$/external -I$(SOLARINCDIR)$/external/glib-2.0" \
+ BASE_DEPENDENCIES_LIBS=" " \
+ .$/configure \
+ --prefix=$(SRC_ROOT)$/$(PRJNAME)$/$(MISC) \
+ CFLAGS="$(ARCH_FLAGS) $(EXTRA_CFLAGS) -I$(SOLARINCDIR)$/external -I$(SOLARINCDIR)$/external$/glib-2.0 -I$(SOLARINCDIR)$/external$/libpng -I$(SOLARINCDIR)$/external$/libjpeg" \
+ LDFLAGS="-L$(SOLARLIBDIR) -lgobject-2.0 -lgio-2.0 -lgthread-2.0 -lgmodule-2.0 -lglib-2.0 -lintl" \
+ --disable-glibtest --without-libtiff --without-libjpeg
+
+BUILD_ACTION=$(AUGMENT_LIBRARY_PATH) $(GNUMAKE)
+BUILD_DIR=$(CONFIGURE_DIR)
+
+EXTRPATH=LOADER
+OUT2LIB+=gdk-pixbuf$/.libs/libgdk_pixbuf-2.0.0.dylib
+
+OUT2BIN+=gdk-pixbuf$/.libs/gdk-pixbuf-query-loaders
+
+OUT2INC+=gdk-pixbuf$/gdk-pixbuf-animation.h
+OUT2INC+=gdk-pixbuf$/gdk-pixbuf-features.h
+OUT2INC+=gdk-pixbuf$/gdk-pixbuf-marshal.h
+OUT2INC+=gdk-pixbuf$/gdk-pixbuf.h
+OUT2INC+=gdk-pixbuf$/gdk-pixbuf-core.h
+OUT2INC+=gdk-pixbuf$/gdk-pixbuf-io.h
+OUT2INC+=gdk-pixbuf$/gdk-pixbuf-simple-anim.h
+OUT2INC+=gdk-pixbuf$/gdk-pixdata.h
+OUT2INC+=gdk-pixbuf$/gdk-pixbuf-enum-types.h
+OUT2INC+=gdk-pixbuf$/gdk-pixbuf-loader.h
+OUT2INC+=gdk-pixbuf$/gdk-pixbuf-transform.h
+
+.ELIF "$(OS)"=="WNT"
+
+PATCH_FILES=gdk-pixbuf-2.23.0-win32.patch
+ADDITIONAL_FILES=config.h.win32 glib-mkenums.pl msvc_recommended_pragmas.h
+CONFIGURE_DIR=
+CONFIGURE_ACTION=
+BUILD_DIR=./gdk-pixbuf
+BUILD_ACTION=nmake -f makefile.msc
+
+OUT2LIB+=gdk-pixbuf$/gdk_pixbuf-2.0.lib
+
+OUT2BIN+=gdk-pixbuf$/libgdk_pixbuf-2.0-0.dll
+
+OUT2INC+=gdk-pixbuf$/gdk-pixbuf-animation.h
+OUT2INC+=gdk-pixbuf$/gdk-pixbuf-features.h
+OUT2INC+=gdk-pixbuf$/gdk-pixbuf-marshal.h
+OUT2INC+=gdk-pixbuf$/gdk-pixbuf.h
+OUT2INC+=gdk-pixbuf$/gdk-pixbuf-core.h
+OUT2INC+=gdk-pixbuf$/gdk-pixbuf-io.h
+OUT2INC+=gdk-pixbuf$/gdk-pixbuf-simple-anim.h
+OUT2INC+=gdk-pixbuf$/gdk-pixdata.h
+OUT2INC+=gdk-pixbuf$/gdk-pixbuf-enum-types.h
+OUT2INC+=gdk-pixbuf$/gdk-pixbuf-loader.h
+OUT2INC+=gdk-pixbuf$/gdk-pixbuf-transform.h
+
+.ELSE
+
+.ENDIF
+
+# --- Targets ------------------------------------------------------
+
+.INCLUDE : set_ext.mk
+.INCLUDE : target.mk
+.INCLUDE : tg_ext.mk
diff --git a/gdk-pixbuf/prj/build.lst b/gdk-pixbuf/prj/build.lst
new file mode 100644
index 000000000000..550466a7b9ed
--- /dev/null
+++ b/gdk-pixbuf/prj/build.lst
@@ -0,0 +1,3 @@
+gp gdk-pixbuf : glib gettext jpeg libpng soltools NULL
+gp gdk-pixbuf usr1 - all gp_mkout NULL
+gp gdk-pixbuf nmake - all gp_gdk-pixbuf NULL
diff --git a/gdk-pixbuf/prj/d.lst b/gdk-pixbuf/prj/d.lst
new file mode 100755
index 000000000000..ef7776aab1b7
--- /dev/null
+++ b/gdk-pixbuf/prj/d.lst
@@ -0,0 +1,21 @@
+mkdir: %_DEST%\inc%_EXT%\external
+mkdir: %_DEST%\inc%_EXT%\external\gdk-pixbuf-2.0
+mkdir: %_DEST%\inc%_EXT%\external\gdk-pixbuf-2.0\gdk-pixbuf
+
+..\%__SRC%\inc\gdk-pixbuf-animation.h %_DEST%\inc%_EXT%\external\gdk-pixbuf-2.0\gdk-pixbuf\gdk-pixbuf-animation.h
+..\%__SRC%\inc\gdk-pixbuf-features.h %_DEST%\inc%_EXT%\external\gdk-pixbuf-2.0\gdk-pixbuf\gdk-pixbuf-features.h
+..\%__SRC%\inc\gdk-pixbuf-marshal.h %_DEST%\inc%_EXT%\external\gdk-pixbuf-2.0\gdk-pixbuf\gdk-pixbuf-marshal.h
+..\%__SRC%\inc\gdk-pixbuf.h %_DEST%\inc%_EXT%\external\gdk-pixbuf-2.0\gdk-pixbuf\gdk-pixbuf.h
+..\%__SRC%\inc\gdk-pixbuf-core.h %_DEST%\inc%_EXT%\external\gdk-pixbuf-2.0\gdk-pixbuf\gdk-pixbuf-core.h
+..\%__SRC%\inc\gdk-pixbuf-io.h %_DEST%\inc%_EXT%\external\gdk-pixbuf-2.0\gdk-pixbuf\gdk-pixbuf-io.h
+..\%__SRC%\inc\gdk-pixbuf-simple-anim.h %_DEST%\inc%_EXT%\external\gdk-pixbuf-2.0\gdk-pixbuf\gdk-pixbuf-simple-anim.h
+..\%__SRC%\inc\gdk-pixdata.h %_DEST%\inc%_EXT%\external\gdk-pixbuf-2.0\gdk-pixbuf\gdk-pixdata.h
+..\%__SRC%\inc\gdk-pixbuf-enum-types.h %_DEST%\inc%_EXT%\external\gdk-pixbuf-2.0\gdk-pixbuf\gdk-pixbuf-enum-types.h
+..\%__SRC%\inc\gdk-pixbuf-loader.h %_DEST%\inc%_EXT%\external\gdk-pixbuf-2.0\gdk-pixbuf\gdk-pixbuf-loader.h
+..\%__SRC%\inc\gdk-pixbuf-transform.h %_DEST%\inc%_EXT%\external\gdk-pixbuf-2.0\gdk-pixbuf\gdk-pixbuf-transform.h
+
+..\%__SRC%\lib\libgdk_pixbuf-2.0.0.dylib %_DEST%\lib%_EXT%\libgdk_pixbuf-2.0.0.dylib
+symlink: %_DEST%\lib%_EXT%\libgdk_pixbuf-2.0.0.dylib %_DEST%\lib%_EXT%\libgdk_pixbuf-2.0.dylib
+..\%__SRC%\bin\gdk-pixbuf-query-loaders %_DEST%\bin%_EXT%\gdk-pixbuf-query-loaders
+..\%__SRC%\bin\*.dll %_DEST%\bin%_EXT%
+..\%__SRC%\lib\gdk_pixbuf-2.0.lib %_DEST%\lib%_EXT%\gdk_pixbuf-2.0.lib
diff --git a/gettext/gettext-0.18.1.1.patch b/gettext/gettext-0.18.1.1.patch
new file mode 100644
index 000000000000..b42cafe93974
--- /dev/null
+++ b/gettext/gettext-0.18.1.1.patch
@@ -0,0 +1,2362 @@
+--- misc/gettext-0.18.1.1/gettext-runtime/intl/makefile.mk Wed Aug 20 14:33:55 2008
++++ misc/build/gettext-0.18.1.1/gettext-runtime/intl/makefile.mk Wed Aug 20 14:26:42 2008
+@@ -1 +1,108 @@
+-dummy
++#*************************************************************************
++#
++# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
++#
++# Copyright 2000, 2010 Oracle and/or its affiliates.
++#
++# OpenOffice.org - a multi-platform office productivity suite
++#
++# This file is part of OpenOffice.org.
++#
++# OpenOffice.org is free software: you can redistribute it and/or modify
++# it under the terms of the GNU Lesser General Public License version 3
++# only, as published by the Free Software Foundation.
++#
++# OpenOffice.org is distributed in the hope that it will be useful,
++# but WITHOUT ANY WARRANTY; without even the implied warranty of
++# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
++# GNU Lesser General Public License version 3 for more details
++# (a copy is included in the LICENSE file that accompanied this code).
++#
++# You should have received a copy of the GNU Lesser General Public License
++# version 3 along with OpenOffice.org. If not, see
++# <http://www.openoffice.org/license.html>
++# for a copy of the LGPLv3 License.
++#
++#*************************************************************************
++
++PRJ=..$/..$/..$/..$/..$/..
++PRJINC=..
++PRJNAME=gettext
++TARGET=intl
++
++#ENABLE_EXCEPTIONS=TRUE
++VISIBILITY_HIDDEN=TRUE
++EXTERNAL_WARNINGS_NOT_ERRORS=TRUE
++
++# --- Settings ----------------------------------
++
++.INCLUDE : settings.mk
++
++#.IF "$(GUI)$(CPU)"=="WNTP"
++CFLAGS+=-c -DLOCALEDIR=\"./share/locale\" -DLOCALE_ALIAS_PATH=\"./share/locale\" -DLIBDIR=\"./lib\"
++CFLAGS+=-DBUILDING_LIBINTL -DBUILDING_DLL -DIN_LIBINTL -DENABLE_RELOCATABLE=1 -DIN_LIBRARY -DINSTALLDIR=\"./lib\" -DNO_XMALLOC -Dset_relocation_prefix=libintl_set_relocation_prefix -Drelocate=libintl_relocate
++CFLAGS+=-DDEPENDS_ON_LIBICONV=1 -DHAVE_CONFIG_H -I. -I. -I.. -DDLL_EXPORT -DPIC
++
++ #.ENDIF
++
++# --- Files -------------------------------------
++
++SLOFILES=\
++ $(SLO)$/bindtextdom.obj \
++ $(SLO)$/dcgettext.obj \
++ $(SLO)$/dgettext.obj \
++ $(SLO)$/gettext.obj \
++ $(SLO)$/finddomain.obj \
++ $(SLO)$/hash-string.obj \
++ $(SLO)$/loadmsgcat.obj \
++ $(SLO)$/localealias.obj \
++ $(SLO)$/textdomain.obj \
++ $(SLO)$/l10nflist.obj \
++ $(SLO)$/explodename.obj \
++ $(SLO)$/dcigettext.obj \
++ $(SLO)$/dcngettext.obj \
++ $(SLO)$/dngettext.obj \
++ $(SLO)$/ngettext.obj \
++ $(SLO)$/plural.obj \
++ $(SLO)$/plural-exp.obj \
++ $(SLO)$/localcharset.obj \
++ $(SLO)$/threadlib.obj \
++ $(SLO)$/lock.obj \
++ $(SLO)$/relocatable.obj \
++ $(SLO)$/langprefs.obj \
++ $(SLO)$/localename.obj \
++ $(SLO)$/log.obj \
++ $(SLO)$/printf.obj \
++ $(SLO)$/setlocale.obj \
++ $(SLO)$/version.obj \
++ $(SLO)$/osdep.obj \
++ $(SLO)$/intl-compat.obj
++
++# --- Library -----------------------------------
++
++SHL1TARGET= $(TARGET)
++SHL1OBJS=$(SLOFILES)
++SHL1STDLIBS=\
++ Advapi32.lib
++
++
++SHL1DEPN=
++#SHL1IMPLIB= i$(TARGET)
++#SHL1USE_EXPORTS=name
++
++SHL1DEF= $(MISC)$/$(SHL1TARGET).def
++
++DEF1NAME= $(SHL1TARGET)
++DEF1DEPN= $(MISC)$/$(SHL1TARGET).flt \
++ $(SLB)$/$(TARGET).lib
++DEFLIB1NAME=$(TARGET)
++
++# --- Targets ----------------------------------
++
++.INCLUDE : target.mk
++
++# --- filter file ------------------------------
++
++$(MISC)$/$(SHL1TARGET).flt: makefile.mk
++ @echo CLEAR_THE_FILE > $@
++
+--- misc/gettext-0.18.1.1/gettext-runtime/intl/printf-parse.c 2010-06-06 14:49:57.000000000 +0200
++++ misc/build/gettext-0.18.1.1/gettext-runtime/intl/printf-parse.c 2011-03-09 11:51:02.615094200 +0100
+@@ -75,6 +74,9 @@
+ # include "c-ctype.h"
+ #endif
+
++typedef __int64 intmax_t;
++
++
+ #ifdef STATIC
+ STATIC
+ #endif
+--- misc/gettext-0.18.1.1/gettext-runtime/config.h Wed Aug 20 14:33:55 2008
++++ misc/build/gettext-0.18.1.1/gettext-runtime/config.h Wed Aug 20 14:26:42 2008
+@@ -1 +1,1288 @@
+-dummy
++/* config.h. Generated from config.h.in by configure. */
++/* config.h.in. Generated from configure.ac by autoheader. */
++
++/* Define if the compiler is building for multiple architectures of Apple
++ platforms at once. */
++/* #undef AA_APPLE_UNIVERSAL_BUILD */
++
++/* Define to the number of bits in type 'ptrdiff_t'. */
++#define BITSIZEOF_PTRDIFF_T 32
++
++/* Define to the number of bits in type 'sig_atomic_t'. */
++#define BITSIZEOF_SIG_ATOMIC_T 32
++
++/* Define to the number of bits in type 'size_t'. */
++#define BITSIZEOF_SIZE_T 32
++
++/* Define to the number of bits in type 'wchar_t'. */
++#define BITSIZEOF_WCHAR_T 16
++
++/* Define to the number of bits in type 'wint_t'. */
++#define BITSIZEOF_WINT_T 16
++
++/* Define to one of `_getb67', `GETB67', `getb67' for Cray-2 and Cray-YMP
++ systems. This function is required for `alloca.c' support on those systems.
++ */
++/* #undef CRAY_STACKSEG_END */
++
++/* Define if mono is the preferred C# implementation. */
++/* #undef CSHARP_CHOICE_MONO */
++
++/* Define if pnet is the preferred C# implementation. */
++/* #undef CSHARP_CHOICE_PNET */
++
++/* Define to 1 if using `alloca.c'. */
++/* #undef C_ALLOCA */
++
++/* Define to 1 if // is a file system root distinct from /. */
++#define DOUBLE_SLASH_IS_DISTINCT_ROOT 1
++
++/* Define to 1 if translation of program messages to the user's native
++ language is requested. */
++#define ENABLE_NLS 1
++
++/* Define to 1 if the package shall run at any location in the file system. */
++/* #undef ENABLE_RELOCATABLE */
++
++/* Define on systems for which file names may have a so-called `drive letter'
++ prefix, define this to compute the length of that prefix, including the
++ colon. */
++#define FILE_SYSTEM_ACCEPTS_DRIVE_LETTER_PREFIX 1
++
++/* Define if the backslash character may also serve as a file name component
++ separator. */
++#define FILE_SYSTEM_BACKSLASH_IS_FILE_NAME_SEPARATOR 1
++
++/* Define if a drive letter prefix denotes a relative path if it is not
++ followed by a file name component separator. */
++#define FILE_SYSTEM_DRIVE_PREFIX_CAN_BE_RELATIVE 1
++
++/* Define to 1 if realpath() can malloc memory, always gives an absolute path,
++ and handles trailing slash correctly. */
++/* #undef FUNC_REALPATH_WORKS */
++
++/* Define to a C preprocessor expression that evaluates to 1 or 0, depending
++ whether the gnulib module canonicalize-lgpl shall be considered present. */
++#define GNULIB_CANONICALIZE_LGPL 1
++
++/* Define to a C preprocessor expression that evaluates to 1 or 0, depending
++ whether the gnulib module fwriteerror shall be considered present. */
++#define GNULIB_FWRITEERROR 1
++
++/* Define to a C preprocessor expression that evaluates to 1 or 0, depending
++ whether the gnulib module sigpipe shall be considered present. */
++#define GNULIB_SIGPIPE 1
++
++/* Define to 1 when the gnulib module canonicalize_file_name should be tested.
++ */
++#define GNULIB_TEST_CANONICALIZE_FILE_NAME 1
++
++/* Define to 1 when the gnulib module environ should be tested. */
++#define GNULIB_TEST_ENVIRON 1
++
++/* Define to 1 when the gnulib module getopt-gnu should be tested. */
++#define GNULIB_TEST_GETOPT_GNU 1
++
++/* Define to 1 when the gnulib module lstat should be tested. */
++#define GNULIB_TEST_LSTAT 1
++
++/* Define to 1 when the gnulib module malloc-posix should be tested. */
++#define GNULIB_TEST_MALLOC_POSIX 1
++
++/* Define to 1 when the gnulib module mbrtowc should be tested. */
++#define GNULIB_TEST_MBRTOWC 1
++
++/* Define to 1 when the gnulib module mbsinit should be tested. */
++#define GNULIB_TEST_MBSINIT 1
++
++/* Define to 1 when the gnulib module mbslen should be tested. */
++#define GNULIB_TEST_MBSLEN 1
++
++/* Define to 1 when the gnulib module mbsstr should be tested. */
++#define GNULIB_TEST_MBSSTR 1
++
++/* Define to 1 when the gnulib module memchr should be tested. */
++#define GNULIB_TEST_MEMCHR 1
++
++/* Define to 1 when the gnulib module readlink should be tested. */
++#define GNULIB_TEST_READLINK 1
++
++/* Define to 1 when the gnulib module realpath should be tested. */
++#define GNULIB_TEST_REALPATH 1
++
++/* Define to 1 when the gnulib module sigprocmask should be tested. */
++#define GNULIB_TEST_SIGPROCMASK 1
++
++/* Define to 1 when the gnulib module stat should be tested. */
++#define GNULIB_TEST_STAT 1
++
++/* Define to 1 when the gnulib module strerror should be tested. */
++#define GNULIB_TEST_STRERROR 1
++
++/* Define to 1 when the gnulib module strnlen should be tested. */
++#define GNULIB_TEST_STRNLEN 1
++
++/* Define to 1 when the gnulib module wcwidth should be tested. */
++#define GNULIB_TEST_WCWIDTH 1
++
++/* Define to 1 if you have `alloca', as a function or macro. */
++#define HAVE_ALLOCA 1
++
++/* Define to 1 if you have <alloca.h> and it should be used (not on Ultrix).
++ */
++/* #undef HAVE_ALLOCA_H */
++
++/* Define to 1 if you have the `argz_count' function. */
++/* #undef HAVE_ARGZ_COUNT */
++
++/* Define to 1 if you have the <argz.h> header file. */
++/* #undef HAVE_ARGZ_H */
++
++/* Define to 1 if you have the `argz_next' function. */
++/* #undef HAVE_ARGZ_NEXT */
++
++/* Define to 1 if you have the `argz_stringify' function. */
++/* #undef HAVE_ARGZ_STRINGIFY */
++
++/* Define to 1 if you have the `asprintf' function. */
++/* #undef HAVE_ASPRINTF */
++
++/* Define to 1 if you have the `atexit' function. */
++#define HAVE_ATEXIT 1
++
++/* Define to 1 if you have the <bp-sym.h> header file. */
++/* #undef HAVE_BP_SYM_H */
++
++/* Define to 1 if the compiler understands __builtin_expect. */
++/* #undef HAVE_BUILTIN_EXPECT */
++
++/* Define to 1 if you have the `canonicalize_file_name' function. */
++/* #undef HAVE_CANONICALIZE_FILE_NAME */
++
++/* Define to 1 if you have the MacOS X function CFLocaleCopyCurrent in the
++ CoreFoundation framework. */
++/* #undef HAVE_CFLOCALECOPYCURRENT */
++
++/* Define to 1 if you have the MacOS X function CFPreferencesCopyAppValue in
++ the CoreFoundation framework. */
++/* #undef HAVE_CFPREFERENCESCOPYAPPVALUE */
++
++/* Define if the GNU dcgettext() function is already present or preinstalled.
++ */
++/* #undef HAVE_DCGETTEXT */
++
++/* Define to 1 if you have the declaration of `clearerr_unlocked', and to 0 if
++ you don't. */
++#define HAVE_DECL_CLEARERR_UNLOCKED 0
++
++/* Define to 1 if you have the declaration of `feof_unlocked', and to 0 if you
++ don't. */
++#define HAVE_DECL_FEOF_UNLOCKED 0
++
++/* Define to 1 if you have the declaration of `ferror_unlocked', and to 0 if
++ you don't. */
++#define HAVE_DECL_FERROR_UNLOCKED 0
++
++/* Define to 1 if you have the declaration of `fflush_unlocked', and to 0 if
++ you don't. */
++#define HAVE_DECL_FFLUSH_UNLOCKED 0
++
++/* Define to 1 if you have the declaration of `fgets_unlocked', and to 0 if
++ you don't. */
++#define HAVE_DECL_FGETS_UNLOCKED 0
++
++/* Define to 1 if you have the declaration of `fputc_unlocked', and to 0 if
++ you don't. */
++#define HAVE_DECL_FPUTC_UNLOCKED 0
++
++/* Define to 1 if you have the declaration of `fputs_unlocked', and to 0 if
++ you don't. */
++#define HAVE_DECL_FPUTS_UNLOCKED 0
++
++/* Define to 1 if you have the declaration of `fread_unlocked', and to 0 if
++ you don't. */
++#define HAVE_DECL_FREAD_UNLOCKED 0
++
++/* Define to 1 if you have the declaration of `fwrite_unlocked', and to 0 if
++ you don't. */
++#define HAVE_DECL_FWRITE_UNLOCKED 0
++
++/* Define to 1 if you have the declaration of `getchar_unlocked', and to 0 if
++ you don't. */
++#define HAVE_DECL_GETCHAR_UNLOCKED 0
++
++/* Define to 1 if you have the declaration of `getc_unlocked', and to 0 if you
++ don't. */
++#define HAVE_DECL_GETC_UNLOCKED 0
++
++/* Define to 1 if you have the declaration of `getenv', and to 0 if you don't.
++ */
++#define HAVE_DECL_GETENV 1
++
++/* Define to 1 if you have the declaration of `getopt_clip', and to 0 if you
++ don't. */
++/* #undef HAVE_DECL_GETOPT_CLIP */
++
++/* Define to 1 if you have the declaration of `optreset', and to 0 if you
++ don't. */
++/* #undef HAVE_DECL_OPTRESET */
++
++/* Define to 1 if you have the declaration of `program_invocation_name', and
++ to 0 if you don't. */
++#define HAVE_DECL_PROGRAM_INVOCATION_NAME 0
++
++/* Define to 1 if you have the declaration of `program_invocation_short_name',
++ and to 0 if you don't. */
++#define HAVE_DECL_PROGRAM_INVOCATION_SHORT_NAME 0
++
++/* Define to 1 if you have the declaration of `putchar_unlocked', and to 0 if
++ you don't. */
++#define HAVE_DECL_PUTCHAR_UNLOCKED 0
++
++/* Define to 1 if you have the declaration of `putc_unlocked', and to 0 if you
++ don't. */
++#define HAVE_DECL_PUTC_UNLOCKED 0
++
++/* Define to 1 if you have the declaration of `strerror', and to 0 if you
++ don't. */
++#define HAVE_DECL_STRERROR 1
++
++/* Define to 1 if you have the declaration of `strerror_r', and to 0 if you
++ don't. */
++#define HAVE_DECL_STRERROR_R 0
++
++/* Define to 1 if you have the declaration of `strnlen', and to 0 if you
++ don't. */
++#define HAVE_DECL_STRNLEN 1
++
++/* Define to 1 if you have the declaration of `wcwidth', and to 0 if you
++ don't. */
++#define HAVE_DECL_WCWIDTH 0
++
++/* Define to 1 if you have the declaration of `_snprintf', and to 0 if you
++ don't. */
++#define HAVE_DECL__SNPRINTF 1
++
++/* Define to 1 if you have the declaration of `_snwprintf', and to 0 if you
++ don't. */
++#define HAVE_DECL__SNWPRINTF 1
++
++/* Define to 1 if you have the <dlfcn.h> header file. */
++/* #undef HAVE_DLFCN_H */
++
++/* Define if you have the declaration of environ. */
++/* #undef HAVE_ENVIRON_DECL */
++
++/* Define to 1 if you have the <errno.h> header file. */
++#define HAVE_ERRNO_H 1
++
++/* Define to 1 if you have the `fwprintf' function. */
++#define HAVE_FWPRINTF 1
++
++/* Define to 1 if you have the `getcwd' function. */
++#define HAVE_GETCWD 1
++
++/* Define to 1 if you have the `getegid' function. */
++/* #undef HAVE_GETEGID */
++
++/* Define to 1 if you have the `geteuid' function. */
++/* #undef HAVE_GETEUID */
++
++/* Define to 1 if you have the `getgid' function. */
++/* #undef HAVE_GETGID */
++
++/* Define to 1 if you have the <getopt.h> header file. */
++/* #undef HAVE_GETOPT_H */
++
++/* Define to 1 if you have the `getopt_long_only' function. */
++/* #undef HAVE_GETOPT_LONG_ONLY */
++
++/* Define to 1 if you have the `getpagesize' function. */
++/* #undef HAVE_GETPAGESIZE */
++
++/* Define if the GNU gettext() function is already present or preinstalled. */
++/* #undef HAVE_GETTEXT */
++
++/* Define to 1 if you have the `getuid' function. */
++/* #undef HAVE_GETUID */
++
++/* Define if you have the iconv() function and it works. */
++/* #undef HAVE_ICONV */
++
++/* Define to 1 if you have the <iconv.h> header file. */
++/* #undef HAVE_ICONV_H */
++
++/* Define if you have the 'intmax_t' type in <stdint.h> or <inttypes.h>. */
++/* #undef HAVE_INTMAX_T */
++#ifndef _MSC_VER
++#define HAVE_INTMAX_T 1
++#else /* _MSC_VER */
++/* #undef HAVE_INTMAX_T */
++#endif /* _MSC_VER */
++
++
++/* Define to 1 if you have the <inttypes.h> header file. */
++/* #undef HAVE_INTTYPES_H */
++#ifndef _MSC_VER
++#define HAVE_INTTYPES_H 1
++#else /* _MSC_VER */
++/* #undef HAVE_INTTYPES_H */
++#endif /* _MSC_VER */
++
++
++/* Define if <inttypes.h> exists, doesn't clash with <sys/types.h>, and
++ declares uintmax_t. */
++/* #undef HAVE_INTTYPES_H_WITH_UINTMAX */
++#ifndef _MSC_VER
++#define HAVE_INTTYPES_H_WITH_UINTMAX 1
++#else /* _MSC_VER */
++/* #undef HAVE_INTTYPES_H_WITH_UINTMAX */
++#endif /* _MSC_VER */
++
++
++/* Define to 1 if you have the `iswblank' function. */
++/* #undef HAVE_ISWBLANK */
++
++/* Define to 1 if you have the `iswcntrl' function. */
++#define HAVE_ISWCNTRL 1
++
++/* Define if you have <langinfo.h> and nl_langinfo(CODESET). */
++/* #undef HAVE_LANGINFO_CODESET */
++
++/* Define if your <locale.h> file defines LC_MESSAGES. */
++/* #undef HAVE_LC_MESSAGES */
++
++/* Define to 1 if you have the <limits.h> header file. */
++#define HAVE_LIMITS_H 1
++
++/* Define to 1 if the system has the type `long long int'. */
++#define HAVE_LONG_LONG_INT 1
++
++/* Define to 1 if you have the `lstat' function. */
++/* #undef HAVE_LSTAT */
++
++/* Define to 1 if you have the <mach-o/dyld.h> header file. */
++/* #undef HAVE_MACH_O_DYLD_H */
++
++/* Define if the 'malloc' function is POSIX compliant. */
++/* #undef HAVE_MALLOC_POSIX */
++
++/* Define to 1 if mmap()'s MAP_ANONYMOUS flag is available after including
++ config.h and <sys/mman.h>. */
++/* #undef HAVE_MAP_ANONYMOUS */
++
++/* Define to 1 if you have the `mbrtowc' function. */
++#define HAVE_MBRTOWC 1
++
++/* Define to 1 if you have the `mbsinit' function. */
++/* #undef HAVE_MBSINIT */
++
++/* Define to 1 if you have the `mbslen' function. */
++/* #undef HAVE_MBSLEN */
++
++/* Define to 1 if <wchar.h> declares mbstate_t. */
++#define HAVE_MBSTATE_T 1
++
++/* Define to 1 if you have the `memchr' function. */
++#define HAVE_MEMCHR 1
++
++/* Define to 1 if you have the `memmove' function. */
++#define HAVE_MEMMOVE 1
++
++/* Define to 1 if you have the <memory.h> header file. */
++#define HAVE_MEMORY_H 1
++
++/* Define to 1 if you have the `mempcpy' function. */
++/* #undef HAVE_MEMPCPY */
++
++/* Define to 1 if you have a working `mmap' system call. */
++/* #undef HAVE_MMAP */
++
++/* Define to 1 if you have the `mprotect' function. */
++/* #undef HAVE_MPROTECT */
++
++/* Define to 1 if you have the `munmap' function. */
++/* #undef HAVE_MUNMAP */
++
++/* Define to 1 if you have the `newlocale' function. */
++/* #undef HAVE_NEWLOCALE */
++
++/* Define to 1 if you have the `pathconf' function. */
++/* #undef HAVE_PATHCONF */
++
++/* Define if your printf() function supports format strings with positions. */
++/* #undef HAVE_POSIX_PRINTF */
++
++/* Define if the <pthread.h> defines PTHREAD_MUTEX_RECURSIVE. */
++/* #undef HAVE_PTHREAD_MUTEX_RECURSIVE */
++
++/* Define if the POSIX multithreading library has read/write locks. */
++/* #undef HAVE_PTHREAD_RWLOCK */
++
++/* Define to 1 if you have the `putenv' function. */
++#define HAVE_PUTENV 1
++
++/* Define to 1 if you have the <random.h> header file. */
++/* #undef HAVE_RANDOM_H */
++
++/* Define to 1 if atoll is declared even after undefining macros. */
++/* #undef HAVE_RAW_DECL_ATOLL */
++
++/* Define to 1 if btowc is declared even after undefining macros. */
++#define HAVE_RAW_DECL_BTOWC 1
++
++/* Define to 1 if canonicalize_file_name is declared even after undefining
++ macros. */
++/* #undef HAVE_RAW_DECL_CANONICALIZE_FILE_NAME */
++
++/* Define to 1 if chown is declared even after undefining macros. */
++/* #undef HAVE_RAW_DECL_CHOWN */
++
++/* Define to 1 if dprintf is declared even after undefining macros. */
++/* #undef HAVE_RAW_DECL_DPRINTF */
++
++/* Define to 1 if dup2 is declared even after undefining macros. */
++#define HAVE_RAW_DECL_DUP2 1
++
++/* Define to 1 if dup3 is declared even after undefining macros. */
++/* #undef HAVE_RAW_DECL_DUP3 */
++
++/* Define to 1 if endusershell is declared even after undefining macros. */
++/* #undef HAVE_RAW_DECL_ENDUSERSHELL */
++
++/* Define to 1 if environ is declared even after undefining macros. */
++/* #undef HAVE_RAW_DECL_ENVIRON */
++
++/* Define to 1 if euidaccess is declared even after undefining macros. */
++/* #undef HAVE_RAW_DECL_EUIDACCESS */
++
++/* Define to 1 if faccessat is declared even after undefining macros. */
++/* #undef HAVE_RAW_DECL_FACCESSAT */
++
++/* Define to 1 if fchdir is declared even after undefining macros. */
++/* #undef HAVE_RAW_DECL_FCHDIR */
++
++/* Define to 1 if fchmodat is declared even after undefining macros. */
++/* #undef HAVE_RAW_DECL_FCHMODAT */
++
++/* Define to 1 if fchownat is declared even after undefining macros. */
++/* #undef HAVE_RAW_DECL_FCHOWNAT */
++
++/* Define to 1 if fpurge is declared even after undefining macros. */
++/* #undef HAVE_RAW_DECL_FPURGE */
++
++/* Define to 1 if fseeko is declared even after undefining macros. */
++/* #undef HAVE_RAW_DECL_FSEEKO */
++
++/* Define to 1 if fstatat is declared even after undefining macros. */
++/* #undef HAVE_RAW_DECL_FSTATAT */
++
++/* Define to 1 if fsync is declared even after undefining macros. */
++/* #undef HAVE_RAW_DECL_FSYNC */
++
++/* Define to 1 if ftello is declared even after undefining macros. */
++/* #undef HAVE_RAW_DECL_FTELLO */
++
++/* Define to 1 if ftruncate is declared even after undefining macros. */
++/* #undef HAVE_RAW_DECL_FTRUNCATE */
++
++/* Define to 1 if futimens is declared even after undefining macros. */
++/* #undef HAVE_RAW_DECL_FUTIMENS */
++
++/* Define to 1 if getcwd is declared even after undefining macros. */
++/* #undef HAVE_RAW_DECL_GETCWD */
++
++/* Define to 1 if getdelim is declared even after undefining macros. */
++/* #undef HAVE_RAW_DECL_GETDELIM */
++
++/* Define to 1 if getdomainname is declared even after undefining macros. */
++/* #undef HAVE_RAW_DECL_GETDOMAINNAME */
++
++/* Define to 1 if getdtablesize is declared even after undefining macros. */
++/* #undef HAVE_RAW_DECL_GETDTABLESIZE */
++
++/* Define to 1 if getgroups is declared even after undefining macros. */
++/* #undef HAVE_RAW_DECL_GETGROUPS */
++
++/* Define to 1 if gethostname is declared even after undefining macros. */
++/* #undef HAVE_RAW_DECL_GETHOSTNAME */
++
++/* Define to 1 if getline is declared even after undefining macros. */
++/* #undef HAVE_RAW_DECL_GETLINE */
++
++/* Define to 1 if getloadavg is declared even after undefining macros. */
++/* #undef HAVE_RAW_DECL_GETLOADAVG */
++
++/* Define to 1 if getlogin is declared even after undefining macros. */
++/* #undef HAVE_RAW_DECL_GETLOGIN */
++
++/* Define to 1 if getlogin_r is declared even after undefining macros. */
++/* #undef HAVE_RAW_DECL_GETLOGIN_R */
++
++/* Define to 1 if getpagesize is declared even after undefining macros. */
++/* #undef HAVE_RAW_DECL_GETPAGESIZE */
++
++/* Define to 1 if getsubopt is declared even after undefining macros. */
++/* #undef HAVE_RAW_DECL_GETSUBOPT */
++
++/* Define to 1 if getusershell is declared even after undefining macros. */
++/* #undef HAVE_RAW_DECL_GETUSERSHELL */
++
++/* Define to 1 if grantpt is declared even after undefining macros. */
++/* #undef HAVE_RAW_DECL_GRANTPT */
++
++/* Define to 1 if initstat_r is declared even after undefining macros. */
++/* #undef HAVE_RAW_DECL_INITSTAT_R */
++
++/* Define to 1 if lchmod is declared even after undefining macros. */
++/* #undef HAVE_RAW_DECL_LCHMOD */
++
++/* Define to 1 if lchown is declared even after undefining macros. */
++/* #undef HAVE_RAW_DECL_LCHOWN */
++
++/* Define to 1 if link is declared even after undefining macros. */
++/* #undef HAVE_RAW_DECL_LINK */
++
++/* Define to 1 if linkat is declared even after undefining macros. */
++/* #undef HAVE_RAW_DECL_LINKAT */
++
++/* Define to 1 if lseek is declared even after undefining macros. */
++#define HAVE_RAW_DECL_LSEEK 1
++
++/* Define to 1 if lstat is declared even after undefining macros. */
++/* #undef HAVE_RAW_DECL_LSTAT */
++
++/* Define to 1 if mbrlen is declared even after undefining macros. */
++#define HAVE_RAW_DECL_MBRLEN 1
++
++/* Define to 1 if mbrtowc is declared even after undefining macros. */
++#define HAVE_RAW_DECL_MBRTOWC 1
++
++/* Define to 1 if mbsinit is declared even after undefining macros. */
++#define HAVE_RAW_DECL_MBSINIT 1
++
++/* Define to 1 if mbsnrtowcs is declared even after undefining macros. */
++/* #undef HAVE_RAW_DECL_MBSNRTOWCS */
++
++/* Define to 1 if mbsrtowcs is declared even after undefining macros. */
++#define HAVE_RAW_DECL_MBSRTOWCS 1
++
++/* Define to 1 if memmem is declared even after undefining macros. */
++/* #undef HAVE_RAW_DECL_MEMMEM */
++
++/* Define to 1 if mempcpy is declared even after undefining macros. */
++/* #undef HAVE_RAW_DECL_MEMPCPY */
++
++/* Define to 1 if memrchr is declared even after undefining macros. */
++/* #undef HAVE_RAW_DECL_MEMRCHR */
++
++/* Define to 1 if mkdirat is declared even after undefining macros. */
++/* #undef HAVE_RAW_DECL_MKDIRAT */
++
++/* Define to 1 if mkdtemp is declared even after undefining macros. */
++/* #undef HAVE_RAW_DECL_MKDTEMP */
++
++/* Define to 1 if mkfifo is declared even after undefining macros. */
++/* #undef HAVE_RAW_DECL_MKFIFO */
++
++/* Define to 1 if mkfifoat is declared even after undefining macros. */
++/* #undef HAVE_RAW_DECL_MKFIFOAT */
++
++/* Define to 1 if mknod is declared even after undefining macros. */
++/* #undef HAVE_RAW_DECL_MKNOD */
++
++/* Define to 1 if mknodat is declared even after undefining macros. */
++/* #undef HAVE_RAW_DECL_MKNODAT */
++
++/* Define to 1 if mkostemp is declared even after undefining macros. */
++/* #undef HAVE_RAW_DECL_MKOSTEMP */
++
++/* Define to 1 if mkostemps is declared even after undefining macros. */
++/* #undef HAVE_RAW_DECL_MKOSTEMPS */
++
++/* Define to 1 if mkstemp is declared even after undefining macros. */
++/* #undef HAVE_RAW_DECL_MKSTEMP */
++
++/* Define to 1 if mkstemps is declared even after undefining macros. */
++/* #undef HAVE_RAW_DECL_MKSTEMPS */
++
++/* Define to 1 if pipe2 is declared even after undefining macros. */
++/* #undef HAVE_RAW_DECL_PIPE2 */
++
++/* Define to 1 if popen is declared even after undefining macros. */
++/* #undef HAVE_RAW_DECL_POPEN */
++
++/* Define to 1 if pread is declared even after undefining macros. */
++/* #undef HAVE_RAW_DECL_PREAD */
++
++/* Define to 1 if ptsname is declared even after undefining macros. */
++/* #undef HAVE_RAW_DECL_PTSNAME */
++
++/* Define to 1 if pwrite is declared even after undefining macros. */
++/* #undef HAVE_RAW_DECL_PWRITE */
++
++/* Define to 1 if random_r is declared even after undefining macros. */
++/* #undef HAVE_RAW_DECL_RANDOM_R */
++
++/* Define to 1 if rawmemchr is declared even after undefining macros. */
++/* #undef HAVE_RAW_DECL_RAWMEMCHR */
++
++/* Define to 1 if readlink is declared even after undefining macros. */
++/* #undef HAVE_RAW_DECL_READLINK */
++
++/* Define to 1 if readlinkat is declared even after undefining macros. */
++/* #undef HAVE_RAW_DECL_READLINKAT */
++
++/* Define to 1 if realpath is declared even after undefining macros. */
++/* #undef HAVE_RAW_DECL_REALPATH */
++
++/* Define to 1 if renameat is declared even after undefining macros. */
++/* #undef HAVE_RAW_DECL_RENAMEAT */
++
++/* Define to 1 if rmdir is declared even after undefining macros. */
++/* #undef HAVE_RAW_DECL_RMDIR */
++
++/* Define to 1 if rpmatch is declared even after undefining macros. */
++/* #undef HAVE_RAW_DECL_RPMATCH */
++
++/* Define to 1 if setenv is declared even after undefining macros. */
++/* #undef HAVE_RAW_DECL_SETENV */
++
++/* Define to 1 if setstate_r is declared even after undefining macros. */
++/* #undef HAVE_RAW_DECL_SETSTATE_R */
++
++/* Define to 1 if setusershell is declared even after undefining macros. */
++/* #undef HAVE_RAW_DECL_SETUSERSHELL */
++
++/* Define to 1 if sigaction is declared even after undefining macros. */
++/* #undef HAVE_RAW_DECL_SIGACTION */
++
++/* Define to 1 if sigaddset is declared even after undefining macros. */
++/* #undef HAVE_RAW_DECL_SIGADDSET */
++
++/* Define to 1 if sigdelset is declared even after undefining macros. */
++/* #undef HAVE_RAW_DECL_SIGDELSET */
++
++/* Define to 1 if sigemptyset is declared even after undefining macros. */
++/* #undef HAVE_RAW_DECL_SIGEMPTYSET */
++
++/* Define to 1 if sigfillset is declared even after undefining macros. */
++/* #undef HAVE_RAW_DECL_SIGFILLSET */
++
++/* Define to 1 if sigismember is declared even after undefining macros. */
++/* #undef HAVE_RAW_DECL_SIGISMEMBER */
++
++/* Define to 1 if sigpending is declared even after undefining macros. */
++/* #undef HAVE_RAW_DECL_SIGPENDING */
++
++/* Define to 1 if sigprocmask is declared even after undefining macros. */
++/* #undef HAVE_RAW_DECL_SIGPROCMASK */
++
++/* Define to 1 if sleep is declared even after undefining macros. */
++/* #undef HAVE_RAW_DECL_SLEEP */
++
++/* Define to 1 if snprintf is declared even after undefining macros. */
++/* #undef HAVE_RAW_DECL_SNPRINTF */
++
++/* Define to 1 if srandom_r is declared even after undefining macros. */
++/* #undef HAVE_RAW_DECL_SRANDOM_R */
++
++/* Define to 1 if stat is declared even after undefining macros. */
++#define HAVE_RAW_DECL_STAT 1
++
++/* Define to 1 if stpcpy is declared even after undefining macros. */
++/* #undef HAVE_RAW_DECL_STPCPY */
++
++/* Define to 1 if stpncpy is declared even after undefining macros. */
++/* #undef HAVE_RAW_DECL_STPNCPY */
++
++/* Define to 1 if strcasestr is declared even after undefining macros. */
++/* #undef HAVE_RAW_DECL_STRCASESTR */
++
++/* Define to 1 if strchrnul is declared even after undefining macros. */
++/* #undef HAVE_RAW_DECL_STRCHRNUL */
++
++/* Define to 1 if strdup is declared even after undefining macros. */
++#define HAVE_RAW_DECL_STRDUP 1
++
++/* Define to 1 if strncat is declared even after undefining macros. */
++#define HAVE_RAW_DECL_STRNCAT 1
++
++/* Define to 1 if strndup is declared even after undefining macros. */
++/* #undef HAVE_RAW_DECL_STRNDUP */
++
++/* Define to 1 if strnlen is declared even after undefining macros. */
++#define HAVE_RAW_DECL_STRNLEN 1
++
++/* Define to 1 if strpbrk is declared even after undefining macros. */
++#define HAVE_RAW_DECL_STRPBRK 1
++
++/* Define to 1 if strsep is declared even after undefining macros. */
++/* #undef HAVE_RAW_DECL_STRSEP */
++
++/* Define to 1 if strsignal is declared even after undefining macros. */
++/* #undef HAVE_RAW_DECL_STRSIGNAL */
++
++/* Define to 1 if strtod is declared even after undefining macros. */
++#define HAVE_RAW_DECL_STRTOD 1
++
++/* Define to 1 if strtok_r is declared even after undefining macros. */
++/* #undef HAVE_RAW_DECL_STRTOK_R */
++
++/* Define to 1 if strtoll is declared even after undefining macros. */
++/* #undef HAVE_RAW_DECL_STRTOLL */
++
++/* Define to 1 if strtoull is declared even after undefining macros. */
++/* #undef HAVE_RAW_DECL_STRTOULL */
++
++/* Define to 1 if strverscmp is declared even after undefining macros. */
++/* #undef HAVE_RAW_DECL_STRVERSCMP */
++
++/* Define to 1 if symlink is declared even after undefining macros. */
++/* #undef HAVE_RAW_DECL_SYMLINK */
++
++/* Define to 1 if symlinkat is declared even after undefining macros. */
++/* #undef HAVE_RAW_DECL_SYMLINKAT */
++
++/* Define to 1 if tmpfile is declared even after undefining macros. */
++#define HAVE_RAW_DECL_TMPFILE 1
++
++/* Define to 1 if ttyname_r is declared even after undefining macros. */
++/* #undef HAVE_RAW_DECL_TTYNAME_R */
++
++/* Define to 1 if unlink is declared even after undefining macros. */
++#define HAVE_RAW_DECL_UNLINK 1
++
++/* Define to 1 if unlinkat is declared even after undefining macros. */
++/* #undef HAVE_RAW_DECL_UNLINKAT */
++
++/* Define to 1 if unlockpt is declared even after undefining macros. */
++/* #undef HAVE_RAW_DECL_UNLOCKPT */
++
++/* Define to 1 if unsetenv is declared even after undefining macros. */
++/* #undef HAVE_RAW_DECL_UNSETENV */
++
++/* Define to 1 if usleep is declared even after undefining macros. */
++/* #undef HAVE_RAW_DECL_USLEEP */
++
++/* Define to 1 if utimensat is declared even after undefining macros. */
++/* #undef HAVE_RAW_DECL_UTIMENSAT */
++
++/* Define to 1 if vdprintf is declared even after undefining macros. */
++/* #undef HAVE_RAW_DECL_VDPRINTF */
++
++/* Define to 1 if vsnprintf is declared even after undefining macros. */
++#define HAVE_RAW_DECL_VSNPRINTF 1
++
++/* Define to 1 if wcrtomb is declared even after undefining macros. */
++#define HAVE_RAW_DECL_WCRTOMB 1
++
++/* Define to 1 if wcsnrtombs is declared even after undefining macros. */
++/* #undef HAVE_RAW_DECL_WCSNRTOMBS */
++
++/* Define to 1 if wcsrtombs is declared even after undefining macros. */
++#define HAVE_RAW_DECL_WCSRTOMBS 1
++
++/* Define to 1 if wctob is declared even after undefining macros. */
++#define HAVE_RAW_DECL_WCTOB 1
++
++/* Define to 1 if wcwidth is declared even after undefining macros. */
++/* #undef HAVE_RAW_DECL_WCWIDTH */
++
++/* Define to 1 if you have the `readlink' function. */
++/* #undef HAVE_READLINK */
++
++/* Define to 1 if you have the `realpath' function. */
++/* #undef HAVE_REALPATH */
++
++/* Define to 1 if you have the <search.h> header file. */
++#define HAVE_SEARCH_H 1
++
++/* Define to 1 if you have the `setenv' function. */
++/* #undef HAVE_SETENV */
++
++/* Define to 1 if you have the `setlocale' function. */
++#define HAVE_SETLOCALE 1
++
++/* Define to 1 if you have the <signal.h> header file. */
++#define HAVE_SIGNAL_H 1
++
++/* Define to 1 if 'sig_atomic_t' is a signed integer type. */
++#define HAVE_SIGNED_SIG_ATOMIC_T 1
++
++/* Define to 1 if 'wchar_t' is a signed integer type. */
++/* #undef HAVE_SIGNED_WCHAR_T */
++
++/* Define to 1 if 'wint_t' is a signed integer type. */
++/* #undef HAVE_SIGNED_WINT_T */
++
++/* Define to 1 if the system has the type `sigset_t'. */
++/* #undef HAVE_SIGSET_T */
++
++/* Define to 1 if you have the `snprintf' function. */
++/* #undef HAVE_SNPRINTF */
++
++/* Define to 1 if stdbool.h conforms to C99. */
++/* #undef HAVE_STDBOOL_H */
++
++/* Define to 1 if you have the <stddef.h> header file. */
++#define HAVE_STDDEF_H 1
++
++/* Define to 1 if you have the <stdint.h> header file. */
++/* #undef HAVE_STDINT_H */
++
++/* Define if <stdint.h> exists, doesn't clash with <sys/types.h>, and declares
++ uintmax_t. */
++/* #undef HAVE_STDINT_H_WITH_UINTMAX */
++
++/* Define to 1 if you have the <stdio.h> header file. */
++#define HAVE_STDIO_H 1
++
++/* Define to 1 if you have the <stdlib.h> header file. */
++#define HAVE_STDLIB_H 1
++
++/* Define to 1 if you have the `stpcpy' function. */
++/* #undef HAVE_STPCPY */
++
++/* Define to 1 if you have the `strcasecmp' function. */
++/* #undef HAVE_STRCASECMP */
++
++/* Define to 1 if you have the `strdup' function. */
++#define HAVE_STRDUP 1
++
++/* Define to 1 if you have the `strerror_r' function. */
++/* #undef HAVE_STRERROR_R */
++
++/* Define to 1 if you have the <strings.h> header file. */
++/* #undef HAVE_STRINGS_H */
++
++/* Define to 1 if you have the <string.h> header file. */
++#define HAVE_STRING_H 1
++
++/* Define to 1 if you have the `strnlen' function. */
++#define HAVE_STRNLEN 1
++
++/* Define to 1 if you have the `strtol' function. */
++#define HAVE_STRTOL 1
++
++/* Define to 1 if you have the `strtoul' function. */
++#define HAVE_STRTOUL 1
++
++/* Define to 1 if the system has the type `struct random_data'. */
++/* #undef HAVE_STRUCT_RANDOM_DATA */
++
++/* Define to 1 if you have the <sys/bitypes.h> header file. */
++/* #undef HAVE_SYS_BITYPES_H */
++
++/* Define to 1 if you have the <sys/inttypes.h> header file. */
++/* #undef HAVE_SYS_INTTYPES_H */
++
++/* Define to 1 if you have the <sys/mman.h> header file. */
++/* #undef HAVE_SYS_MMAN_H */
++
++/* Define to 1 if you have the <sys/param.h> header file. */
++/* #undef HAVE_SYS_PARAM_H */
++
++/* Define to 1 if you have the <sys/socket.h> header file. */
++/* #undef HAVE_SYS_SOCKET_H */
++
++/* Define to 1 if you have the <sys/stat.h> header file. */
++#define HAVE_SYS_STAT_H 1
++
++/* Define to 1 if you have the <sys/time.h> header file. */
++/* #undef HAVE_SYS_TIME_H */
++
++/* Define to 1 if you have the <sys/types.h> header file. */
++#define HAVE_SYS_TYPES_H 1
++
++/* Define to 1 if you have the <time.h> header file. */
++#define HAVE_TIME_H 1
++
++/* Define to 1 if you have the `tsearch' function. */
++/* #undef HAVE_TSEARCH */
++
++/* Define if you have the 'uintmax_t' type in <stdint.h> or <inttypes.h>. */
++/* #undef HAVE_UINTMAX_T */
++
++/* Define to 1 if you have the <unistd.h> header file. */
++#define HAVE_UNISTD_H 1
++
++/* Define to 1 if the system has the type `unsigned long long int'. */
++#define HAVE_UNSIGNED_LONG_LONG_INT 1
++
++/* Define to 1 if you have the `uselocale' function. */
++/* #undef HAVE_USELOCALE */
++
++/* Define to 1 or 0, depending whether the compiler supports simple visibility
++ declarations. */
++#define HAVE_VISIBILITY 0
++
++/* Define to 1 if you have the <wchar.h> header file. */
++#define HAVE_WCHAR_H 1
++
++/* Define if you have the 'wchar_t' type. */
++#define HAVE_WCHAR_T 1
++
++/* Define to 1 if you have the `wcrtomb' function. */
++#define HAVE_WCRTOMB 1
++
++/* Define to 1 if you have the `wcslen' function. */
++#define HAVE_WCSLEN 1
++
++/* Define to 1 if you have the `wcsnlen' function. */
++#define HAVE_WCSNLEN 1
++
++/* Define to 1 if you have the <wctype.h> header file. */
++#define HAVE_WCTYPE_H 1
++
++/* Define to 1 if you have the `wcwidth' function. */
++/* #undef HAVE_WCWIDTH */
++
++/* Define to 1 if you have the <winsock2.h> header file. */
++#define HAVE_WINSOCK2_H 1
++
++/* Define if you have the 'wint_t' type. */
++#define HAVE_WINT_T 1
++
++/* Define to 1 if O_NOATIME works. */
++#define HAVE_WORKING_O_NOATIME 0
++
++/* Define to 1 if O_NOFOLLOW works. */
++#define HAVE_WORKING_O_NOFOLLOW 0
++
++/* Define to 1 if the system has the type `_Bool'. */
++/* #undef HAVE__BOOL */
++
++/* Define to 1 if you have the `_NSGetExecutablePath' function. */
++/* #undef HAVE__NSGETEXECUTABLEPATH */
++
++/* Define to 1 if you have the `__fsetlocking' function. */
++/* #undef HAVE___FSETLOCKING */
++
++/* Define as const if the declaration of iconv() needs const. */
++/* #undef ICONV_CONST */
++
++/* Define to a symbolic name denoting the flavor of iconv_open()
++ implementation. */
++/* #undef ICONV_FLAVOR */
++
++/* Define to the value of ${prefix}, as a string. */
++#define INSTALLPREFIX "."
++
++/* Define if integer division by zero raises signal SIGFPE. */
++#define INTDIV0_RAISES_SIGFPE 0
++
++#if FILE_SYSTEM_BACKSLASH_IS_FILE_NAME_SEPARATOR
++# define ISSLASH(C) ((C) == '/' || (C) == '\\')
++#else
++# define ISSLASH(C) ((C) == '/')
++#endif
++
++/* Define to 1 if `lstat' dereferences a symlink specified with a trailing
++ slash. */
++/* #undef LSTAT_FOLLOWS_SLASHED_SYMLINK */
++
++/* Define to the sub-directory in which libtool stores uninstalled libraries.
++ */
++#define LT_OBJDIR ".libs/"
++
++/* If malloc(0) is != NULL, define this to 1. Otherwise define this to 0. */
++#define MALLOC_0_IS_NONNULL 1
++
++/* Define to a substitute value for mmap()'s MAP_ANONYMOUS flag. */
++/* #undef MAP_ANONYMOUS */
++
++/* Define if the mbrtowc function has the NULL string argument bug. */
++/* #undef MBRTOWC_NULL_ARG_BUG */
++
++/* Define if the mbrtowc function does not return 0 for a NUL character. */
++/* #undef MBRTOWC_NUL_RETVAL_BUG */
++
++/* Define if the mbrtowc function returns a wrong return value. */
++/* #undef MBRTOWC_RETVAL_BUG */
++
++/* Define to 1 if your C compiler doesn't accept -c and -o together. */
++#define NO_MINUS_C_MINUS_O 1
++
++/* Name of package */
++#define PACKAGE "gettext-runtime"
++
++/* Define to the address where bug reports for this package should be sent. */
++#define PACKAGE_BUGREPORT ""
++
++/* Define to the full name of this package. */
++#define PACKAGE_NAME ""
++
++/* Define to the full name and version of this package. */
++#define PACKAGE_STRING ""
++
++/* Define to the one symbol short name of this package. */
++#define PACKAGE_TARNAME ""
++
++/* Define to the home page for this package. */
++#define PACKAGE_URL ""
++
++/* Define to the version of this package. */
++#define PACKAGE_VERSION ""
++
++/* Define if <inttypes.h> exists and defines unusable PRI* macros. */
++/* #undef PRI_MACROS_BROKEN */
++
++/* Define if the pthread_in_use() detection is hard. */
++/* #undef PTHREAD_IN_USE_DETECTION_HARD */
++
++/* Define to l, ll, u, ul, ull, etc., as suitable for constants of type
++ 'ptrdiff_t'. */
++#define PTRDIFF_T_SUFFIX
++
++/* Define to 1 if readlink fails to recognize a trailing slash. */
++/* #undef READLINK_TRAILING_SLASH_BUG */
++
++/* Define to 1 if stat needs help when passed a directory name with a trailing
++ slash */
++#define REPLACE_FUNC_STAT_DIR 1
++
++/* Define to 1 if stat needs help when passed a file name with a trailing
++ slash */
++/* #undef REPLACE_FUNC_STAT_FILE */
++
++/* Define this to 1 if strerror is broken. */
++#define REPLACE_STRERROR 1
++
++/* Define to l, ll, u, ul, ull, etc., as suitable for constants of type
++ 'sig_atomic_t'. */
++#define SIG_ATOMIC_T_SUFFIX
++
++/* Define as the maximum value of type 'size_t', if the system doesn't define
++ it. */
++#ifndef SIZE_MAX
++/* # undef SIZE_MAX */
++#endif
++
++/* Define to l, ll, u, ul, ull, etc., as suitable for constants of type
++ 'size_t'. */
++#define SIZE_T_SUFFIX u
++
++/* If using the C implementation of alloca, define if you know the
++ direction of stack growth for your system; otherwise it will be
++ automatically deduced at runtime.
++ STACK_DIRECTION > 0 => grows toward higher addresses
++ STACK_DIRECTION < 0 => grows toward lower addresses
++ STACK_DIRECTION = 0 => direction of growth unknown */
++/* #undef STACK_DIRECTION */
++
++/* Define to 1 if the `S_IS*' macros in <sys/stat.h> do not work properly. */
++/* #undef STAT_MACROS_BROKEN */
++
++/* Define to 1 if you have the ANSI C header files. */
++#define STDC_HEADERS 1
++
++/* Define to 1 if strerror_r returns char *. */
++/* #undef STRERROR_R_CHAR_P */
++
++/* Define to the prefix of C symbols at the assembler and linker level, either
++ an underscore or empty. */
++#define USER_LABEL_PREFIX
++
++/* Define if the POSIX multithreading library can be used. */
++/* #undef USE_POSIX_THREADS */
++
++/* Define if references to the POSIX multithreading library should be made
++ weak. */
++/* #undef USE_POSIX_THREADS_WEAK */
++
++/* Define if the GNU Pth multithreading library can be used. */
++/* #undef USE_PTH_THREADS */
++
++/* Define if references to the GNU Pth multithreading library should be made
++ weak. */
++/* #undef USE_PTH_THREADS_WEAK */
++
++/* Define if the old Solaris multithreading library can be used. */
++/* #undef USE_SOLARIS_THREADS */
++
++/* Define if references to the old Solaris multithreading library should be
++ made weak. */
++/* #undef USE_SOLARIS_THREADS_WEAK */
++
++/* Define to 1 if you want getc etc. to use unlocked I/O if available.
++ Unlocked I/O can improve performance in unithreaded apps, but it is not
++ safe for multithreaded apps. */
++#define USE_UNLOCKED_IO 1
++
++/* Define if the Win32 multithreading API can be used. */
++/* #undef USE_WIN32_THREADS */
++
++/* Version number of package */
++#define VERSION "0.18.1"
++
++/* Define to l, ll, u, ul, ull, etc., as suitable for constants of type
++ 'wchar_t'. */
++#define WCHAR_T_SUFFIX
++
++/* Define to l, ll, u, ul, ull, etc., as suitable for constants of type
++ 'wint_t'. */
++#define WINT_T_SUFFIX
++
++/* Define to 1 if on MINIX. */
++/* #undef _MINIX */
++
++/* Define to 2 if the system does not provide POSIX.1 features except with
++ this defined. */
++/* #undef _POSIX_1_SOURCE */
++
++/* Define to 1 if you need to in order for `stat' and other things to work. */
++/* #undef _POSIX_SOURCE */
++
++/* Define to 500 only on HP-UX. */
++/* #undef _XOPEN_SOURCE */
++
++/* Enable extensions on AIX 3, Interix. */
++#ifndef _ALL_SOURCE
++# define _ALL_SOURCE 1
++#endif
++/* Enable GNU extensions on systems that have them. */
++#ifndef _GNU_SOURCE
++# define _GNU_SOURCE 1
++#endif
++/* Enable threading extensions on Solaris. */
++#ifndef _POSIX_PTHREAD_SEMANTICS
++# define _POSIX_PTHREAD_SEMANTICS 1
++#endif
++/* Enable extensions on HP NonStop. */
++#ifndef _TANDEM_SOURCE
++# define _TANDEM_SOURCE 1
++#endif
++/* Enable general extensions on Solaris. */
++#ifndef __EXTENSIONS__
++# define __EXTENSIONS__ 1
++#endif
++
++
++/* Define to rpl_ if the getopt replacement functions and variables should be
++ used. */
++#define __GETOPT_PREFIX rpl_
++
++/* Define to `int' if <sys/types.h> doesn't define. */
++#define gid_t int
++
++/* Define to `__inline__' or `__inline' if that's what the C compiler
++ calls it, or to nothing if 'inline' is not supported under any name. */
++#ifndef __cplusplus
++#define inline __inline
++#endif
++
++/* Work around a bug in Apple GCC 4.0.1 build 5465: In C99 mode, it supports
++ the ISO C 99 semantics of 'extern inline' (unlike the GNU C semantics of
++ earlier versions), but does not display it by setting __GNUC_STDC_INLINE__.
++ __APPLE__ && __MACH__ test for MacOS X.
++ __APPLE_CC__ tests for the Apple compiler and its version.
++ __STDC_VERSION__ tests for the C99 mode. */
++#if defined __APPLE__ && defined __MACH__ && __APPLE_CC__ >= 5465 && !defined __cplusplus && __STDC_VERSION__ >= 199901L && !defined __GNUC_STDC_INLINE__
++# define __GNUC_STDC_INLINE__ 1
++#endif
++
++/* Define to a type if <wchar.h> does not define. */
++/* #undef mbstate_t */
++
++/* Define to the type of st_nlink in struct stat, or a supertype. */
++#define nlink_t int
++
++/* Define as the type of the result of subtracting two pointers, if the system
++ doesn't define it. */
++/* #undef ptrdiff_t */
++
++/* Define to the equivalent of the C99 'restrict' keyword, or to
++ nothing if this is not supported. Do not define if restrict is
++ supported directly. */
++#define restrict /**/
++/* Work around a bug in Sun C++: it does not support _Restrict or
++ __restrict__, even though the corresponding Sun C compiler ends up with
++ "#define restrict _Restrict" or "#define restrict __restrict__" in the
++ previous line. Perhaps some future version of Sun C++ will work with
++ restrict; if so, hopefully it defines __RESTRICT like Sun C does. */
++#if defined __SUNPRO_CC && !defined __RESTRICT
++# define _Restrict
++# define __restrict__
++#endif
++
++/* Define to `unsigned int' if <sys/types.h> does not define. */
++/* #undef size_t */
++
++/* Define as a signed type of the same size as size_t. */
++#define ssize_t int
++
++/* Define to `int' if <sys/types.h> doesn't define. */
++#define uid_t int
++
++/* Define to unsigned long or unsigned long long if <stdint.h> and
++ <inttypes.h> don't define. */
++#define uintmax_t unsigned long long
++
++/* Define as a marker that can be attached to declarations that might not
++ be used. This helps to reduce warnings, such as from
++ GCC -Wunused-parameter. */
++#if __GNUC__ >= 3 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 7)
++# define _GL_UNUSED __attribute__ ((__unused__))
++#else
++# define _GL_UNUSED
++#endif
++/* The name _UNUSED_PARAMETER_ is an earlier spelling, although the name
++ is a misnomer outside of parameter lists. */
++#define _UNUSED_PARAMETER_ _GL_UNUSED
++
++
++
++#define __libc_lock_t gl_lock_t
++#define __libc_lock_define gl_lock_define
++#define __libc_lock_define_initialized gl_lock_define_initialized
++#define __libc_lock_init gl_lock_init
++#define __libc_lock_lock gl_lock_lock
++#define __libc_lock_unlock gl_lock_unlock
++#define __libc_lock_recursive_t gl_recursive_lock_t
++#define __libc_lock_define_recursive gl_recursive_lock_define
++#define __libc_lock_define_initialized_recursive gl_recursive_lock_define_initialized
++#define __libc_lock_init_recursive gl_recursive_lock_init
++#define __libc_lock_lock_recursive gl_recursive_lock_lock
++#define __libc_lock_unlock_recursive gl_recursive_lock_unlock
++#define glthread_in_use libintl_thread_in_use
++#define glthread_lock_init_func libintl_lock_init_func
++#define glthread_lock_lock_func libintl_lock_lock_func
++#define glthread_lock_unlock_func libintl_lock_unlock_func
++#define glthread_lock_destroy_func libintl_lock_destroy_func
++#define glthread_rwlock_init_multithreaded libintl_rwlock_init_multithreaded
++#define glthread_rwlock_init_func libintl_rwlock_init_func
++#define glthread_rwlock_rdlock_multithreaded libintl_rwlock_rdlock_multithreaded
++#define glthread_rwlock_rdlock_func libintl_rwlock_rdlock_func
++#define glthread_rwlock_wrlock_multithreaded libintl_rwlock_wrlock_multithreaded
++#define glthread_rwlock_wrlock_func libintl_rwlock_wrlock_func
++#define glthread_rwlock_unlock_multithreaded libintl_rwlock_unlock_multithreaded
++#define glthread_rwlock_unlock_func libintl_rwlock_unlock_func
++#define glthread_rwlock_destroy_multithreaded libintl_rwlock_destroy_multithreaded
++#define glthread_rwlock_destroy_func libintl_rwlock_destroy_func
++#define glthread_recursive_lock_init_multithreaded libintl_recursive_lock_init_multithreaded
++#define glthread_recursive_lock_init_func libintl_recursive_lock_init_func
++#define glthread_recursive_lock_lock_multithreaded libintl_recursive_lock_lock_multithreaded
++#define glthread_recursive_lock_lock_func libintl_recursive_lock_lock_func
++#define glthread_recursive_lock_unlock_multithreaded libintl_recursive_lock_unlock_multithreaded
++#define glthread_recursive_lock_unlock_func libintl_recursive_lock_unlock_func
++#define glthread_recursive_lock_destroy_multithreaded libintl_recursive_lock_destroy_multithreaded
++#define glthread_recursive_lock_destroy_func libintl_recursive_lock_destroy_func
++#define glthread_once_func libintl_once_func
++#define glthread_once_singlethreaded libintl_once_singlethreaded
++#define glthread_once_multithreaded libintl_once_multithreaded
++
++
++
++/* On Windows, variables that may be in a DLL must be marked specially. */
++#if (defined _MSC_VER && defined _DLL) && !defined IN_RELOCWRAPPER
++# define DLL_VARIABLE __declspec (dllimport)
++#else
++# define DLL_VARIABLE
++#endif
++
++/* Extra OS/2 (emx+gcc) defines. */
++#ifdef __EMX__
++# include "intl/os2compat.h"
++#endif
++
+--- misc/gettext-0.18.1.1/gettext-runtime/intl/libgnuintl.h Wed Aug 20 14:33:55 2008
++++ misc/build/gettext-0.18.1.1/gettext-runtime/intl/libgnuintl.h Wed Aug 20 14:26:42 2008
+@@ -1 +1,473 @@
+-dummy
++/* Message catalogs for internationalization.
++ Copyright (C) 1995-1997, 2000-2010 Free Software Foundation, Inc.
++
++ This program is free software; you can redistribute it and/or modify it
++ under the terms of the GNU Library General Public License as published
++ by the Free Software Foundation; either version 2, or (at your option)
++ any later version.
++
++ This program is distributed in the hope that it will be useful,
++ but WITHOUT ANY WARRANTY; without even the implied warranty of
++ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
++ Library General Public License for more details.
++
++ You should have received a copy of the GNU Library General Public
++ License along with this program; if not, write to the Free Software
++ Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301,
++ USA. */
++
++#ifndef _LIBINTL_H
++#define _LIBINTL_H 1
++
++#if 0 && BUILDING_LIBINTL
++#define LIBINTL_DLL_EXPORTED __attribute__((__visibility__("default")))
++#elif defined _MSC_VER && BUILDING_DLL
++# define LIBINTL_DLL_EXPORTED __declspec(dllexport)
++#else
++#define LIBINTL_DLL_EXPORTED
++#endif
++
++#include <locale.h>
++#if (defined __APPLE__ && defined __MACH__) && 0
++# include <xlocale.h>
++#endif
++
++/* The LC_MESSAGES locale category is the category used by the functions
++ gettext() and dgettext(). It is specified in POSIX, but not in ANSI C.
++ On systems that don't define it, use an arbitrary value instead.
++ On Solaris, <locale.h> defines __LOCALE_H (or _LOCALE_H in Solaris 2.5)
++ then includes <libintl.h> (i.e. this file!) and then only defines
++ LC_MESSAGES. To avoid a redefinition warning, don't define LC_MESSAGES
++ in this case. */
++#if !defined LC_MESSAGES && !(defined __LOCALE_H || (defined _LOCALE_H && defined __sun))
++# define LC_MESSAGES 1729
++#endif
++
++/* We define an additional symbol to signal that we use the GNU
++ implementation of gettext. */
++#define __USE_GNU_GETTEXT 1
++
++/* Provide information about the supported file formats. Returns the
++ maximum minor revision number supported for a given major revision. */
++#define __GNU_GETTEXT_SUPPORTED_REVISION(major) \
++ ((major) == 0 || (major) == 1 ? 1 : -1)
++
++/* Resolve a platform specific conflict on DJGPP. GNU gettext takes
++ precedence over _conio_gettext. */
++#ifdef __DJGPP__
++# undef gettext
++#endif
++
++#ifdef __cplusplus
++extern "C" {
++#endif
++
++
++/* Version number: (major<<16) + (minor<<8) + subminor */
++#define LIBINTL_VERSION 0x001201
++extern LIBINTL_DLL_EXPORTED __declspec (dllimport) int libintl_version;
++
++
++/* We redirect the functions to those prefixed with "libintl_". This is
++ necessary, because some systems define gettext/textdomain/... in the C
++ library (namely, Solaris 2.4 and newer, and GNU libc 2.0 and newer).
++ If we used the unprefixed names, there would be cases where the
++ definition in the C library would override the one in the libintl.so
++ shared library. Recall that on ELF systems, the symbols are looked
++ up in the following order:
++ 1. in the executable,
++ 2. in the shared libraries specified on the link command line, in order,
++ 3. in the dependencies of the shared libraries specified on the link
++ command line,
++ 4. in the dlopen()ed shared libraries, in the order in which they were
++ dlopen()ed.
++ The definition in the C library would override the one in libintl.so if
++ either
++ * -lc is given on the link command line and -lintl isn't, or
++ * -lc is given on the link command line before -lintl, or
++ * libintl.so is a dependency of a dlopen()ed shared library but not
++ linked to the executable at link time.
++ Since Solaris gettext() behaves differently than GNU gettext(), this
++ would be unacceptable.
++
++ The redirection happens by default through macros in C, so that &gettext
++ is independent of the compilation unit, but through inline functions in
++ C++, in order not to interfere with the name mangling of class fields or
++ class methods called 'gettext'. */
++
++/* The user can define _INTL_REDIRECT_INLINE or _INTL_REDIRECT_MACROS.
++ If he doesn't, we choose the method. A third possible method is
++ _INTL_REDIRECT_ASM, supported only by GCC. */
++#if !(defined _INTL_REDIRECT_INLINE || defined _INTL_REDIRECT_MACROS)
++# if defined __GNUC__ && __GNUC__ >= 2 && !(defined __APPLE_CC__ && __APPLE_CC__ > 1) && !defined __MINGW32__ && !(__GNUC__ == 2 && defined _AIX) && (defined __STDC__ || defined __cplusplus)
++# define _INTL_REDIRECT_ASM
++# else
++# ifdef __cplusplus
++# define _INTL_REDIRECT_INLINE
++# else
++# define _INTL_REDIRECT_MACROS
++# endif
++# endif
++#endif
++/* Auxiliary macros. */
++#ifdef _INTL_REDIRECT_ASM
++# define _INTL_ASM(cname) __asm__ (_INTL_ASMNAME (__USER_LABEL_PREFIX__, #cname))
++# define _INTL_ASMNAME(prefix,cnamestring) _INTL_STRINGIFY (prefix) cnamestring
++# define _INTL_STRINGIFY(prefix) #prefix
++#else
++# define _INTL_ASM(cname)
++#endif
++
++/* _INTL_MAY_RETURN_STRING_ARG(n) declares that the given function may return
++ its n-th argument literally. This enables GCC to warn for example about
++ printf (gettext ("foo %y")). */
++#if defined __GNUC__ && __GNUC__ >= 3 && !(defined __APPLE_CC__ && __APPLE_CC__ > 1 && defined __cplusplus)
++# define _INTL_MAY_RETURN_STRING_ARG(n) __attribute__ ((__format_arg__ (n)))
++#else
++# define _INTL_MAY_RETURN_STRING_ARG(n)
++#endif
++
++/* Look up MSGID in the current default message catalog for the current
++ LC_MESSAGES locale. If not found, returns MSGID itself (the default
++ text). */
++#ifdef _INTL_REDIRECT_INLINE
++extern LIBINTL_DLL_EXPORTED char *libintl_gettext (const char *__msgid)
++ _INTL_MAY_RETURN_STRING_ARG (1);
++static inline char *gettext (const char *__msgid)
++{
++ return libintl_gettext (__msgid);
++}
++#else
++#ifdef _INTL_REDIRECT_MACROS
++# define gettext libintl_gettext
++#endif
++extern LIBINTL_DLL_EXPORTED char *gettext (const char *__msgid)
++ _INTL_ASM (libintl_gettext)
++ _INTL_MAY_RETURN_STRING_ARG (1);
++#endif
++
++/* Look up MSGID in the DOMAINNAME message catalog for the current
++ LC_MESSAGES locale. */
++#ifdef _INTL_REDIRECT_INLINE
++extern LIBINTL_DLL_EXPORTED char *libintl_dgettext (const char *__domainname, const char *__msgid)
++ _INTL_MAY_RETURN_STRING_ARG (2);
++static inline char *dgettext (const char *__domainname, const char *__msgid)
++{
++ return libintl_dgettext (__domainname, __msgid);
++}
++#else
++#ifdef _INTL_REDIRECT_MACROS
++# define dgettext libintl_dgettext
++#endif
++extern LIBINTL_DLL_EXPORTED char *dgettext (const char *__domainname, const char *__msgid)
++ _INTL_ASM (libintl_dgettext)
++ _INTL_MAY_RETURN_STRING_ARG (2);
++#endif
++
++/* Look up MSGID in the DOMAINNAME message catalog for the current CATEGORY
++ locale. */
++#ifdef _INTL_REDIRECT_INLINE
++extern LIBINTL_DLL_EXPORTED char *libintl_dcgettext (const char *__domainname, const char *__msgid,
++ int __category)
++ _INTL_MAY_RETURN_STRING_ARG (2);
++static inline char *dcgettext (const char *__domainname, const char *__msgid,
++ int __category)
++{
++ return libintl_dcgettext (__domainname, __msgid, __category);
++}
++#else
++#ifdef _INTL_REDIRECT_MACROS
++# define dcgettext libintl_dcgettext
++#endif
++extern LIBINTL_DLL_EXPORTED char *dcgettext (const char *__domainname, const char *__msgid,
++ int __category)
++ _INTL_ASM (libintl_dcgettext)
++ _INTL_MAY_RETURN_STRING_ARG (2);
++#endif
++
++
++/* Similar to `gettext' but select the plural form corresponding to the
++ number N. */
++#ifdef _INTL_REDIRECT_INLINE
++extern LIBINTL_DLL_EXPORTED char *libintl_ngettext (const char *__msgid1, const char *__msgid2,
++ unsigned long int __n)
++ _INTL_MAY_RETURN_STRING_ARG (1) _INTL_MAY_RETURN_STRING_ARG (2);
++static inline char *ngettext (const char *__msgid1, const char *__msgid2,
++ unsigned long int __n)
++{
++ return libintl_ngettext (__msgid1, __msgid2, __n);
++}
++#else
++#ifdef _INTL_REDIRECT_MACROS
++# define ngettext libintl_ngettext
++#endif
++extern LIBINTL_DLL_EXPORTED char *ngettext (const char *__msgid1, const char *__msgid2,
++ unsigned long int __n)
++ _INTL_ASM (libintl_ngettext)
++ _INTL_MAY_RETURN_STRING_ARG (1) _INTL_MAY_RETURN_STRING_ARG (2);
++#endif
++
++/* Similar to `dgettext' but select the plural form corresponding to the
++ number N. */
++#ifdef _INTL_REDIRECT_INLINE
++extern LIBINTL_DLL_EXPORTED char *libintl_dngettext (const char *__domainname, const char *__msgid1,
++ const char *__msgid2, unsigned long int __n)
++ _INTL_MAY_RETURN_STRING_ARG (2) _INTL_MAY_RETURN_STRING_ARG (3);
++static inline char *dngettext (const char *__domainname, const char *__msgid1,
++ const char *__msgid2, unsigned long int __n)
++{
++ return libintl_dngettext (__domainname, __msgid1, __msgid2, __n);
++}
++#else
++#ifdef _INTL_REDIRECT_MACROS
++# define dngettext libintl_dngettext
++#endif
++extern LIBINTL_DLL_EXPORTED char *dngettext (const char *__domainname,
++ const char *__msgid1, const char *__msgid2,
++ unsigned long int __n)
++ _INTL_ASM (libintl_dngettext)
++ _INTL_MAY_RETURN_STRING_ARG (2) _INTL_MAY_RETURN_STRING_ARG (3);
++#endif
++
++/* Similar to `dcgettext' but select the plural form corresponding to the
++ number N. */
++#ifdef _INTL_REDIRECT_INLINE
++extern LIBINTL_DLL_EXPORTED char *libintl_dcngettext (const char *__domainname,
++ const char *__msgid1, const char *__msgid2,
++ unsigned long int __n, int __category)
++ _INTL_MAY_RETURN_STRING_ARG (2) _INTL_MAY_RETURN_STRING_ARG (3);
++static inline char *dcngettext (const char *__domainname,
++ const char *__msgid1, const char *__msgid2,
++ unsigned long int __n, int __category)
++{
++ return libintl_dcngettext (__domainname, __msgid1, __msgid2, __n, __category);
++}
++#else
++#ifdef _INTL_REDIRECT_MACROS
++# define dcngettext libintl_dcngettext
++#endif
++extern LIBINTL_DLL_EXPORTED char *dcngettext (const char *__domainname,
++ const char *__msgid1, const char *__msgid2,
++ unsigned long int __n, int __category)
++ _INTL_ASM (libintl_dcngettext)
++ _INTL_MAY_RETURN_STRING_ARG (2) _INTL_MAY_RETURN_STRING_ARG (3);
++#endif
++
++
++
++/* Set the current default message catalog to DOMAINNAME.
++ If DOMAINNAME is null, return the current default.
++ If DOMAINNAME is "", reset to the default of "messages". */
++#ifdef _INTL_REDIRECT_INLINE
++extern LIBINTL_DLL_EXPORTED char *libintl_textdomain (const char *__domainname);
++static inline char *textdomain (const char *__domainname)
++{
++ return libintl_textdomain (__domainname);
++}
++#else
++#ifdef _INTL_REDIRECT_MACROS
++# define textdomain libintl_textdomain
++#endif
++extern LIBINTL_DLL_EXPORTED char *textdomain (const char *__domainname)
++ _INTL_ASM (libintl_textdomain);
++#endif
++
++/* Specify that the DOMAINNAME message catalog will be found
++ in DIRNAME rather than in the system locale data base. */
++#ifdef _INTL_REDIRECT_INLINE
++extern LIBINTL_DLL_EXPORTED char *libintl_bindtextdomain (const char *__domainname,
++ const char *__dirname);
++static inline char *bindtextdomain (const char *__domainname,
++ const char *__dirname)
++{
++ return libintl_bindtextdomain (__domainname, __dirname);
++}
++#else
++#ifdef _INTL_REDIRECT_MACROS
++# define bindtextdomain libintl_bindtextdomain
++#endif
++extern LIBINTL_DLL_EXPORTED char *bindtextdomain (const char *__domainname, const char *__dirname)
++ _INTL_ASM (libintl_bindtextdomain);
++#endif
++
++/* Specify the character encoding in which the messages from the
++ DOMAINNAME message catalog will be returned. */
++#ifdef _INTL_REDIRECT_INLINE
++extern LIBINTL_DLL_EXPORTED char *libintl_bind_textdomain_codeset (const char *__domainname,
++ const char *__codeset);
++static inline char *bind_textdomain_codeset (const char *__domainname,
++ const char *__codeset)
++{
++ return libintl_bind_textdomain_codeset (__domainname, __codeset);
++}
++#else
++#ifdef _INTL_REDIRECT_MACROS
++# define bind_textdomain_codeset libintl_bind_textdomain_codeset
++#endif
++extern LIBINTL_DLL_EXPORTED char *bind_textdomain_codeset (const char *__domainname,
++ const char *__codeset)
++ _INTL_ASM (libintl_bind_textdomain_codeset);
++#endif
++
++
++
++/* Support for format strings with positions in *printf(), following the
++ POSIX/XSI specification.
++ Note: These replacements for the *printf() functions are visible only
++ in source files that #include <libintl.h> or #include "gettext.h".
++ Packages that use *printf() in source files that don't refer to _()
++ or gettext() but for which the format string could be the return value
++ of _() or gettext() need to add this #include. Oh well. */
++
++#if !0
++
++#include <stdio.h>
++#include <stddef.h>
++
++/* Get va_list. */
++#if (defined __STDC__ && __STDC__) || defined __cplusplus || defined _MSC_VER
++# include <stdarg.h>
++#else
++# include <varargs.h>
++#endif
++
++#if !(defined fprintf && defined _GL_STDIO_H) /* don't override gnulib */
++#undef fprintf
++#define fprintf libintl_fprintf
++extern LIBINTL_DLL_EXPORTED int fprintf (FILE *, const char *, ...);
++#endif
++#if !(defined vfprintf && defined _GL_STDIO_H) /* don't override gnulib */
++#undef vfprintf
++#define vfprintf libintl_vfprintf
++extern LIBINTL_DLL_EXPORTED int vfprintf (FILE *, const char *, va_list);
++#endif
++
++#if !(defined printf && defined _GL_STDIO_H) /* don't override gnulib */
++#undef printf
++#if defined __NetBSD__ || defined __BEOS__ || defined __CYGWIN__ || defined __MINGW32__
++/* Don't break __attribute__((format(printf,M,N))).
++ This redefinition is only possible because the libc in NetBSD, Cygwin,
++ mingw does not have a function __printf__.
++ Alternatively, we could have done this redirection only when compiling with
++ __GNUC__, together with a symbol redirection:
++ extern LIBINTL_DLL_EXPORTED int printf (const char *, ...)
++ __asm__ (#__USER_LABEL_PREFIX__ "libintl_printf");
++ But doing it now would introduce a binary incompatibility with already
++ distributed versions of libintl on these systems. */
++# define libintl_printf __printf__
++#endif
++#define printf libintl_printf
++extern LIBINTL_DLL_EXPORTED int printf (const char *, ...);
++#endif
++#if !(defined vprintf && defined _GL_STDIO_H) /* don't override gnulib */
++#undef vprintf
++#define vprintf libintl_vprintf
++extern LIBINTL_DLL_EXPORTED int vprintf (const char *, va_list);
++#endif
++
++#if !(defined sprintf && defined _GL_STDIO_H) /* don't override gnulib */
++#undef sprintf
++#define sprintf libintl_sprintf
++extern LIBINTL_DLL_EXPORTED int sprintf (char *, const char *, ...);
++#endif
++#if !(defined vsprintf && defined _GL_STDIO_H) /* don't override gnulib */
++#undef vsprintf
++#define vsprintf libintl_vsprintf
++extern LIBINTL_DLL_EXPORTED int vsprintf (char *, const char *, va_list);
++#endif
++
++#if 0
++
++#if !(defined snprintf && defined _GL_STDIO_H) /* don't override gnulib */
++#undef snprintf
++#define snprintf libintl_snprintf
++extern LIBINTL_DLL_EXPORTED int snprintf (char *, size_t, const char *, ...);
++#endif
++#if !(defined vsnprintf && defined _GL_STDIO_H) /* don't override gnulib */
++#undef vsnprintf
++#define vsnprintf libintl_vsnprintf
++extern LIBINTL_DLL_EXPORTED int vsnprintf (char *, size_t, const char *, va_list);
++#endif
++
++#endif
++
++#if 0
++
++#if !(defined asprintf && defined _GL_STDIO_H) /* don't override gnulib */
++#undef asprintf
++#define asprintf libintl_asprintf
++extern LIBINTL_DLL_EXPORTED int asprintf (char **, const char *, ...);
++#endif
++#if !(defined vasprintf && defined _GL_STDIO_H) /* don't override gnulib */
++#undef vasprintf
++#define vasprintf libintl_vasprintf
++extern LIBINTL_DLL_EXPORTED int vasprintf (char **, const char *, va_list);
++#endif
++
++#endif
++
++#if 0
++
++#undef fwprintf
++#define fwprintf libintl_fwprintf
++extern LIBINTL_DLL_EXPORTED int fwprintf (FILE *, const wchar_t *, ...);
++#undef vfwprintf
++#define vfwprintf libintl_vfwprintf
++extern LIBINTL_DLL_EXPORTED int vfwprintf (FILE *, const wchar_t *, va_list);
++
++#undef wprintf
++#define wprintf libintl_wprintf
++extern LIBINTL_DLL_EXPORTED int wprintf (const wchar_t *, ...);
++#undef vwprintf
++#define vwprintf libintl_vwprintf
++extern LIBINTL_DLL_EXPORTED int vwprintf (const wchar_t *, va_list);
++
++#undef swprintf
++#define swprintf libintl_swprintf
++extern LIBINTL_DLL_EXPORTED int swprintf (wchar_t *, size_t, const wchar_t *, ...);
++#undef vswprintf
++#define vswprintf libintl_vswprintf
++extern LIBINTL_DLL_EXPORTED int vswprintf (wchar_t *, size_t, const wchar_t *, va_list);
++
++#endif
++
++#endif
++
++
++/* Support for the locale chosen by the user. */
++#if (defined __APPLE__ && defined __MACH__) || defined _WIN32 || defined __WIN32__ || defined __CYGWIN__
++
++#undef setlocale
++#define setlocale libintl_setlocale
++extern LIBINTL_DLL_EXPORTED char *setlocale (int, const char *);
++
++#if 0
++
++#undef newlocale
++#define newlocale libintl_newlocale
++extern LIBINTL_DLL_EXPORTED locale_t newlocale (int, const char *, locale_t);
++
++#endif
++
++#endif
++
++
++/* Support for relocatable packages. */
++
++/* Sets the original and the current installation prefix of the package.
++ Relocation simply replaces a pathname starting with the original prefix
++ by the corresponding pathname with the current prefix instead. Both
++ prefixes should be directory names without trailing slash (i.e. use ""
++ instead of "/"). */
++#define libintl_set_relocation_prefix libintl_set_relocation_prefix
++extern LIBINTL_DLL_EXPORTED void
++ libintl_set_relocation_prefix (const char *orig_prefix,
++ const char *curr_prefix);
++
++
++#ifdef __cplusplus
++}
++#endif
++
++#endif /* libintl.h */
++
+--- misc/gettext-0.18.1.1/gettext-runtime/intl/libintl.h Wed Aug 20 14:33:55 2008
++++ misc/build/gettext-0.18.1.1/gettext-runtime/intl/libintl.h Wed Aug 20 14:26:42 2008
+@@ -1 +1,465 @@
+-dummy
++/* Message catalogs for internationalization.
++ Copyright (C) 1995-1997, 2000-2010 Free Software Foundation, Inc.
++
++ This program is free software; you can redistribute it and/or modify it
++ under the terms of the GNU Library General Public License as published
++ by the Free Software Foundation; either version 2, or (at your option)
++ any later version.
++
++ This program is distributed in the hope that it will be useful,
++ but WITHOUT ANY WARRANTY; without even the implied warranty of
++ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
++ Library General Public License for more details.
++
++ You should have received a copy of the GNU Library General Public
++ License along with this program; if not, write to the Free Software
++ Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301,
++ USA. */
++
++#ifndef _LIBINTL_H
++#define _LIBINTL_H 1
++
++#include <locale.h>
++#if (defined __APPLE__ && defined __MACH__) && 0
++# include <xlocale.h>
++#endif
++
++/* The LC_MESSAGES locale category is the category used by the functions
++ gettext() and dgettext(). It is specified in POSIX, but not in ANSI C.
++ On systems that don't define it, use an arbitrary value instead.
++ On Solaris, <locale.h> defines __LOCALE_H (or _LOCALE_H in Solaris 2.5)
++ then includes <libintl.h> (i.e. this file!) and then only defines
++ LC_MESSAGES. To avoid a redefinition warning, don't define LC_MESSAGES
++ in this case. */
++#if !defined LC_MESSAGES && !(defined __LOCALE_H || (defined _LOCALE_H && defined __sun))
++# define LC_MESSAGES 1729
++#endif
++
++/* We define an additional symbol to signal that we use the GNU
++ implementation of gettext. */
++#define __USE_GNU_GETTEXT 1
++
++/* Provide information about the supported file formats. Returns the
++ maximum minor revision number supported for a given major revision. */
++#define __GNU_GETTEXT_SUPPORTED_REVISION(major) \
++ ((major) == 0 || (major) == 1 ? 1 : -1)
++
++/* Resolve a platform specific conflict on DJGPP. GNU gettext takes
++ precedence over _conio_gettext. */
++#ifdef __DJGPP__
++# undef gettext
++#endif
++
++#ifdef __cplusplus
++extern "C" {
++#endif
++
++
++/* Version number: (major<<16) + (minor<<8) + subminor */
++#define LIBINTL_VERSION 0x001201
++extern int libintl_version;
++
++
++/* We redirect the functions to those prefixed with "libintl_". This is
++ necessary, because some systems define gettext/textdomain/... in the C
++ library (namely, Solaris 2.4 and newer, and GNU libc 2.0 and newer).
++ If we used the unprefixed names, there would be cases where the
++ definition in the C library would override the one in the libintl.so
++ shared library. Recall that on ELF systems, the symbols are looked
++ up in the following order:
++ 1. in the executable,
++ 2. in the shared libraries specified on the link command line, in order,
++ 3. in the dependencies of the shared libraries specified on the link
++ command line,
++ 4. in the dlopen()ed shared libraries, in the order in which they were
++ dlopen()ed.
++ The definition in the C library would override the one in libintl.so if
++ either
++ * -lc is given on the link command line and -lintl isn't, or
++ * -lc is given on the link command line before -lintl, or
++ * libintl.so is a dependency of a dlopen()ed shared library but not
++ linked to the executable at link time.
++ Since Solaris gettext() behaves differently than GNU gettext(), this
++ would be unacceptable.
++
++ The redirection happens by default through macros in C, so that &gettext
++ is independent of the compilation unit, but through inline functions in
++ C++, in order not to interfere with the name mangling of class fields or
++ class methods called 'gettext'. */
++
++/* The user can define _INTL_REDIRECT_INLINE or _INTL_REDIRECT_MACROS.
++ If he doesn't, we choose the method. A third possible method is
++ _INTL_REDIRECT_ASM, supported only by GCC. */
++#if !(defined _INTL_REDIRECT_INLINE || defined _INTL_REDIRECT_MACROS)
++# if defined __GNUC__ && __GNUC__ >= 2 && !(defined __APPLE_CC__ && __APPLE_CC__ > 1) && !defined __MINGW32__ && !(__GNUC__ == 2 && defined _AIX) && (defined __STDC__ || defined __cplusplus)
++# define _INTL_REDIRECT_ASM
++# else
++# ifdef __cplusplus
++# define _INTL_REDIRECT_INLINE
++# else
++# define _INTL_REDIRECT_MACROS
++# endif
++# endif
++#endif
++/* Auxiliary macros. */
++#ifdef _INTL_REDIRECT_ASM
++# define _INTL_ASM(cname) __asm__ (_INTL_ASMNAME (__USER_LABEL_PREFIX__, #cname))
++# define _INTL_ASMNAME(prefix,cnamestring) _INTL_STRINGIFY (prefix) cnamestring
++# define _INTL_STRINGIFY(prefix) #prefix
++#else
++# define _INTL_ASM(cname)
++#endif
++
++/* _INTL_MAY_RETURN_STRING_ARG(n) declares that the given function may return
++ its n-th argument literally. This enables GCC to warn for example about
++ printf (gettext ("foo %y")). */
++#if defined __GNUC__ && __GNUC__ >= 3 && !(defined __APPLE_CC__ && __APPLE_CC__ > 1 && defined __cplusplus)
++# define _INTL_MAY_RETURN_STRING_ARG(n) __attribute__ ((__format_arg__ (n)))
++#else
++# define _INTL_MAY_RETURN_STRING_ARG(n)
++#endif
++
++/* Look up MSGID in the current default message catalog for the current
++ LC_MESSAGES locale. If not found, returns MSGID itself (the default
++ text). */
++#ifdef _INTL_REDIRECT_INLINE
++extern char *libintl_gettext (const char *__msgid)
++ _INTL_MAY_RETURN_STRING_ARG (1);
++static inline char *gettext (const char *__msgid)
++{
++ return libintl_gettext (__msgid);
++}
++#else
++#ifdef _INTL_REDIRECT_MACROS
++# define gettext libintl_gettext
++#endif
++extern char *gettext (const char *__msgid)
++ _INTL_ASM (libintl_gettext)
++ _INTL_MAY_RETURN_STRING_ARG (1);
++#endif
++
++/* Look up MSGID in the DOMAINNAME message catalog for the current
++ LC_MESSAGES locale. */
++#ifdef _INTL_REDIRECT_INLINE
++extern char *libintl_dgettext (const char *__domainname, const char *__msgid)
++ _INTL_MAY_RETURN_STRING_ARG (2);
++static inline char *dgettext (const char *__domainname, const char *__msgid)
++{
++ return libintl_dgettext (__domainname, __msgid);
++}
++#else
++#ifdef _INTL_REDIRECT_MACROS
++# define dgettext libintl_dgettext
++#endif
++extern char *dgettext (const char *__domainname, const char *__msgid)
++ _INTL_ASM (libintl_dgettext)
++ _INTL_MAY_RETURN_STRING_ARG (2);
++#endif
++
++/* Look up MSGID in the DOMAINNAME message catalog for the current CATEGORY
++ locale. */
++#ifdef _INTL_REDIRECT_INLINE
++extern char *libintl_dcgettext (const char *__domainname, const char *__msgid,
++ int __category)
++ _INTL_MAY_RETURN_STRING_ARG (2);
++static inline char *dcgettext (const char *__domainname, const char *__msgid,
++ int __category)
++{
++ return libintl_dcgettext (__domainname, __msgid, __category);
++}
++#else
++#ifdef _INTL_REDIRECT_MACROS
++# define dcgettext libintl_dcgettext
++#endif
++extern char *dcgettext (const char *__domainname, const char *__msgid,
++ int __category)
++ _INTL_ASM (libintl_dcgettext)
++ _INTL_MAY_RETURN_STRING_ARG (2);
++#endif
++
++
++/* Similar to `gettext' but select the plural form corresponding to the
++ number N. */
++#ifdef _INTL_REDIRECT_INLINE
++extern char *libintl_ngettext (const char *__msgid1, const char *__msgid2,
++ unsigned long int __n)
++ _INTL_MAY_RETURN_STRING_ARG (1) _INTL_MAY_RETURN_STRING_ARG (2);
++static inline char *ngettext (const char *__msgid1, const char *__msgid2,
++ unsigned long int __n)
++{
++ return libintl_ngettext (__msgid1, __msgid2, __n);
++}
++#else
++#ifdef _INTL_REDIRECT_MACROS
++# define ngettext libintl_ngettext
++#endif
++extern char *ngettext (const char *__msgid1, const char *__msgid2,
++ unsigned long int __n)
++ _INTL_ASM (libintl_ngettext)
++ _INTL_MAY_RETURN_STRING_ARG (1) _INTL_MAY_RETURN_STRING_ARG (2);
++#endif
++
++/* Similar to `dgettext' but select the plural form corresponding to the
++ number N. */
++#ifdef _INTL_REDIRECT_INLINE
++extern char *libintl_dngettext (const char *__domainname, const char *__msgid1,
++ const char *__msgid2, unsigned long int __n)
++ _INTL_MAY_RETURN_STRING_ARG (2) _INTL_MAY_RETURN_STRING_ARG (3);
++static inline char *dngettext (const char *__domainname, const char *__msgid1,
++ const char *__msgid2, unsigned long int __n)
++{
++ return libintl_dngettext (__domainname, __msgid1, __msgid2, __n);
++}
++#else
++#ifdef _INTL_REDIRECT_MACROS
++# define dngettext libintl_dngettext
++#endif
++extern char *dngettext (const char *__domainname,
++ const char *__msgid1, const char *__msgid2,
++ unsigned long int __n)
++ _INTL_ASM (libintl_dngettext)
++ _INTL_MAY_RETURN_STRING_ARG (2) _INTL_MAY_RETURN_STRING_ARG (3);
++#endif
++
++/* Similar to `dcgettext' but select the plural form corresponding to the
++ number N. */
++#ifdef _INTL_REDIRECT_INLINE
++extern char *libintl_dcngettext (const char *__domainname,
++ const char *__msgid1, const char *__msgid2,
++ unsigned long int __n, int __category)
++ _INTL_MAY_RETURN_STRING_ARG (2) _INTL_MAY_RETURN_STRING_ARG (3);
++static inline char *dcngettext (const char *__domainname,
++ const char *__msgid1, const char *__msgid2,
++ unsigned long int __n, int __category)
++{
++ return libintl_dcngettext (__domainname, __msgid1, __msgid2, __n, __category);
++}
++#else
++#ifdef _INTL_REDIRECT_MACROS
++# define dcngettext libintl_dcngettext
++#endif
++extern char *dcngettext (const char *__domainname,
++ const char *__msgid1, const char *__msgid2,
++ unsigned long int __n, int __category)
++ _INTL_ASM (libintl_dcngettext)
++ _INTL_MAY_RETURN_STRING_ARG (2) _INTL_MAY_RETURN_STRING_ARG (3);
++#endif
++
++
++
++/* Set the current default message catalog to DOMAINNAME.
++ If DOMAINNAME is null, return the current default.
++ If DOMAINNAME is "", reset to the default of "messages". */
++#ifdef _INTL_REDIRECT_INLINE
++extern char *libintl_textdomain (const char *__domainname);
++static inline char *textdomain (const char *__domainname)
++{
++ return libintl_textdomain (__domainname);
++}
++#else
++#ifdef _INTL_REDIRECT_MACROS
++# define textdomain libintl_textdomain
++#endif
++extern char *textdomain (const char *__domainname)
++ _INTL_ASM (libintl_textdomain);
++#endif
++
++/* Specify that the DOMAINNAME message catalog will be found
++ in DIRNAME rather than in the system locale data base. */
++#ifdef _INTL_REDIRECT_INLINE
++extern char *libintl_bindtextdomain (const char *__domainname,
++ const char *__dirname);
++static inline char *bindtextdomain (const char *__domainname,
++ const char *__dirname)
++{
++ return libintl_bindtextdomain (__domainname, __dirname);
++}
++#else
++#ifdef _INTL_REDIRECT_MACROS
++# define bindtextdomain libintl_bindtextdomain
++#endif
++extern char *bindtextdomain (const char *__domainname, const char *__dirname)
++ _INTL_ASM (libintl_bindtextdomain);
++#endif
++
++/* Specify the character encoding in which the messages from the
++ DOMAINNAME message catalog will be returned. */
++#ifdef _INTL_REDIRECT_INLINE
++extern char *libintl_bind_textdomain_codeset (const char *__domainname,
++ const char *__codeset);
++static inline char *bind_textdomain_codeset (const char *__domainname,
++ const char *__codeset)
++{
++ return libintl_bind_textdomain_codeset (__domainname, __codeset);
++}
++#else
++#ifdef _INTL_REDIRECT_MACROS
++# define bind_textdomain_codeset libintl_bind_textdomain_codeset
++#endif
++extern char *bind_textdomain_codeset (const char *__domainname,
++ const char *__codeset)
++ _INTL_ASM (libintl_bind_textdomain_codeset);
++#endif
++
++
++
++/* Support for format strings with positions in *printf(), following the
++ POSIX/XSI specification.
++ Note: These replacements for the *printf() functions are visible only
++ in source files that #include <libintl.h> or #include "gettext.h".
++ Packages that use *printf() in source files that don't refer to _()
++ or gettext() but for which the format string could be the return value
++ of _() or gettext() need to add this #include. Oh well. */
++
++#if !0
++
++#include <stdio.h>
++#include <stddef.h>
++
++/* Get va_list. */
++#if (defined __STDC__ && __STDC__) || defined __cplusplus || defined _MSC_VER
++# include <stdarg.h>
++#else
++# include <varargs.h>
++#endif
++
++#if !(defined fprintf && defined _GL_STDIO_H) /* don't override gnulib */
++#undef fprintf
++#define fprintf libintl_fprintf
++extern int fprintf (FILE *, const char *, ...);
++#endif
++#if !(defined vfprintf && defined _GL_STDIO_H) /* don't override gnulib */
++#undef vfprintf
++#define vfprintf libintl_vfprintf
++extern int vfprintf (FILE *, const char *, va_list);
++#endif
++
++#if !(defined printf && defined _GL_STDIO_H) /* don't override gnulib */
++#undef printf
++#if defined __NetBSD__ || defined __BEOS__ || defined __CYGWIN__ || defined __MINGW32__
++/* Don't break __attribute__((format(printf,M,N))).
++ This redefinition is only possible because the libc in NetBSD, Cygwin,
++ mingw does not have a function __printf__.
++ Alternatively, we could have done this redirection only when compiling with
++ __GNUC__, together with a symbol redirection:
++ extern int printf (const char *, ...)
++ __asm__ (#__USER_LABEL_PREFIX__ "libintl_printf");
++ But doing it now would introduce a binary incompatibility with already
++ distributed versions of libintl on these systems. */
++# define libintl_printf __printf__
++#endif
++#define printf libintl_printf
++extern int printf (const char *, ...);
++#endif
++#if !(defined vprintf && defined _GL_STDIO_H) /* don't override gnulib */
++#undef vprintf
++#define vprintf libintl_vprintf
++extern int vprintf (const char *, va_list);
++#endif
++
++#if !(defined sprintf && defined _GL_STDIO_H) /* don't override gnulib */
++#undef sprintf
++#define sprintf libintl_sprintf
++extern int sprintf (char *, const char *, ...);
++#endif
++#if !(defined vsprintf && defined _GL_STDIO_H) /* don't override gnulib */
++#undef vsprintf
++#define vsprintf libintl_vsprintf
++extern int vsprintf (char *, const char *, va_list);
++#endif
++
++#if 0
++
++#if !(defined snprintf && defined _GL_STDIO_H) /* don't override gnulib */
++#undef snprintf
++#define snprintf libintl_snprintf
++extern int snprintf (char *, size_t, const char *, ...);
++#endif
++#if !(defined vsnprintf && defined _GL_STDIO_H) /* don't override gnulib */
++#undef vsnprintf
++#define vsnprintf libintl_vsnprintf
++extern int vsnprintf (char *, size_t, const char *, va_list);
++#endif
++
++#endif
++
++#if 0
++
++#if !(defined asprintf && defined _GL_STDIO_H) /* don't override gnulib */
++#undef asprintf
++#define asprintf libintl_asprintf
++extern int asprintf (char **, const char *, ...);
++#endif
++#if !(defined vasprintf && defined _GL_STDIO_H) /* don't override gnulib */
++#undef vasprintf
++#define vasprintf libintl_vasprintf
++extern int vasprintf (char **, const char *, va_list);
++#endif
++
++#endif
++
++#if 0
++
++#undef fwprintf
++#define fwprintf libintl_fwprintf
++extern int fwprintf (FILE *, const wchar_t *, ...);
++#undef vfwprintf
++#define vfwprintf libintl_vfwprintf
++extern int vfwprintf (FILE *, const wchar_t *, va_list);
++
++#undef wprintf
++#define wprintf libintl_wprintf
++extern int wprintf (const wchar_t *, ...);
++#undef vwprintf
++#define vwprintf libintl_vwprintf
++extern int vwprintf (const wchar_t *, va_list);
++
++#undef swprintf
++#define swprintf libintl_swprintf
++extern int swprintf (wchar_t *, size_t, const wchar_t *, ...);
++#undef vswprintf
++#define vswprintf libintl_vswprintf
++extern int vswprintf (wchar_t *, size_t, const wchar_t *, va_list);
++
++#endif
++
++#endif
++
++
++/* Support for the locale chosen by the user. */
++#if (defined __APPLE__ && defined __MACH__) || defined _WIN32 || defined __WIN32__ || defined __CYGWIN__
++
++#undef setlocale
++#define setlocale libintl_setlocale
++extern char *setlocale (int, const char *);
++
++#if 0
++
++#undef newlocale
++#define newlocale libintl_newlocale
++extern locale_t newlocale (int, const char *, locale_t);
++
++#endif
++
++#endif
++
++
++/* Support for relocatable packages. */
++
++/* Sets the original and the current installation prefix of the package.
++ Relocation simply replaces a pathname starting with the original prefix
++ by the corresponding pathname with the current prefix instead. Both
++ prefixes should be directory names without trailing slash (i.e. use ""
++ instead of "/"). */
++#define libintl_set_relocation_prefix libintl_set_relocation_prefix
++extern void
++ libintl_set_relocation_prefix (const char *orig_prefix,
++ const char *curr_prefix);
++
++
++#ifdef __cplusplus
++}
++#endif
++
++#endif /* libintl.h */
++
diff --git a/gettext/makefile.mk b/gettext/makefile.mk
new file mode 100644
index 000000000000..5569a31ff6c1
--- /dev/null
+++ b/gettext/makefile.mk
@@ -0,0 +1,106 @@
+#*************************************************************************
+#
+# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+#
+# Copyright 2000, 2010 Oracle and/or its affiliates.
+#
+# OpenOffice.org - a multi-platform office productivity suite
+#
+# This file is part of OpenOffice.org.
+#
+# OpenOffice.org is free software: you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License version 3
+# only, as published by the Free Software Foundation.
+#
+# OpenOffice.org is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU Lesser General Public License version 3 for more details
+# (a copy is included in the LICENSE file that accompanied this code).
+#
+# You should have received a copy of the GNU Lesser General Public License
+# version 3 along with OpenOffice.org. If not, see
+# <http://www.openoffice.org/license.html>
+# for a copy of the LGPLv3 License.
+#
+#*************************************************************************
+
+PRJ=.
+
+PRJNAME=gettext
+TARGET=so_gettext
+
+# --- Settings -----------------------------------------------------
+
+.INCLUDE : settings.mk
+
+.IF "$(SYSTEM_GETTEXT)" == "YES"
+all:
+ @echo "An already available installation of gettext should exist on your system."
+ @echo "Therefore the version provided here does not need to be built in addition."
+.ENDIF
+
+# --- Files --------------------------------------------------------
+
+GETTEXTVERSION=0.18.1.1
+
+TARFILE_NAME=$(PRJNAME)-$(GETTEXTVERSION)
+TARFILE_MD5=3dd55b952826d2b32f51308f2f91aa89
+
+PATCH_FILES=
+
+
+.IF "$(OS)"=="MACOSX"
+CONFIGURE_DIR=
+CONFIGURE_ACTION=.$/configure --prefix=$(SRC_ROOT)$/$(PRJNAME)$/$(MISC) CFLAGS="$(ARCH_FLAGS) $(EXTRA_CFLAGS)" CXXFLAGS="$(ARCH_FLAGS) $(EXTRA_CFLAGS)"
+CONFIGURE_FLAGS=$(eq,$(OS),MACOSX CPPFLAGS="$(EXTRA_CDEFS)" $(NULL)) --disable-curses --without-emacs --without-git --disable-java
+
+BUILD_ACTION=$(GNUMAKE)
+BUILD_DIR=$(CONFIGURE_DIR)
+
+EXTRPATH=LOADER
+OUT2LIB+=gettext-tools$/intl$/.libs$/libintl.*.dylib
+OUT2LIB+=gettext-runtime$/libasprintf$/.libs$/libasprintf.*.dylib
+OUT2LIB+=gettext-tools$/gnulib-lib$/.libs$/libgettextlib-*.dylib
+OUT2LIB+=gettext-tools$/src$/.libs$/libgettextsrc-*.dylib
+OUT2LIB+=gettext-tools$/libgettextpo$/.libs$/libgettextpo.*.dylib
+
+OUT2INC+=gettext-tools$/intl$/libintl.h
+OUT2INC+=gettext-runtime$/libasprintf$/autosprintf.h
+OUT2INC+=gettext-tools$/libgettextpo$/gettext-po.h
+
+OUT2BIN+=gettext-tools$/src$/.libs$/msgattrib
+OUT2BIN+=gettext-tools$/src$/.libs$/msgcat
+OUT2BIN+=gettext-tools$/src$/.libs$/msgcmp
+OUT2BIN+=gettext-tools$/src$/.libs$/msgcomm
+OUT2BIN+=gettext-tools$/src$/.libs$/msgconv
+OUT2BIN+=gettext-tools$/src$/.libs$/msgen
+OUT2BIN+=gettext-tools$/src$/.libs$/msgexec
+OUT2BIN+=gettext-tools$/src$/.libs$/msgfilter
+OUT2BIN+=gettext-tools$/src$/.libs$/msgfmt
+OUT2BIN+=gettext-tools$/src$/.libs$/msggrep
+OUT2BIN+=gettext-tools$/src$/.libs$/msginit
+OUT2BIN+=gettext-tools$/src$/.libs$/msgmerge
+OUT2BIN+=gettext-tools$/src$/.libs$/msgunfmt
+OUT2BIN+=gettext-tools$/src$/.libs$/msguniq
+OUT2BIN+=gettext-tools$/src$/.libs$/urlget
+OUT2BIN+=gettext-tools$/src$/.libs$/xgettext
+.ELIF "$(OS)"=="WNT"
+BUILD_DIR=gettext-runtime$/intl
+BUILD_ACTION=dmake
+PATCH_FILES=gettext-0.18.1.1.patch
+ADDITIONAL_FILES=\
+ gettext-runtime/intl/makefile.mk \
+ gettext-runtime/intl/libgnuintl.h \
+ gettext-runtime/intl/libintl.h \
+ gettext-runtime/config.h
+OUT2INC+=gettext-runtime$/intl$/libintl.h
+.ELSE
+.ENDIF
+
+# --- Targets ------------------------------------------------------
+
+.INCLUDE : set_ext.mk
+.INCLUDE : target.mk
+.INCLUDE : tg_ext.mk
+
diff --git a/gettext/prj/build.lst b/gettext/prj/build.lst
new file mode 100644
index 000000000000..cf38e63c826f
--- /dev/null
+++ b/gettext/prj/build.lst
@@ -0,0 +1,3 @@
+gt gettext : sal soltools NULL
+gt gettext usr1 - all gt_mkout NULL
+gt gettext nmake - all gt_gettext NULL
diff --git a/gettext/prj/d.lst b/gettext/prj/d.lst
new file mode 100644
index 000000000000..09e9ea1c2e60
--- /dev/null
+++ b/gettext/prj/d.lst
@@ -0,0 +1,30 @@
+mkdir: %_DEST%\inc%_EXT%\external
+..\%__SRC%\inc\*.h %_DEST%\inc%_EXT%\external\*.h
+..\%__SRC%\lib\libasprintf.0.dylib %_DEST%\lib%_EXT%\libasprintf.0.dylib
+symlink: %_DEST%\lib%_EXT%\libasprintf.0.dylib %_DEST%\lib%_EXT%\libasprintf.dylib
+..\%__SRC%\lib\libgettextpo.0.dylib %_DEST%\lib%_EXT%\libgettextpo.0.dylib
+symlink: %_DEST%\lib%_EXT%\libgettextpo.0.dylib %_DEST%\lib%_EXT%\libgettextpo.dylib
+..\%__SRC%\lib\libgettextsrc-0.18.1.dylib %_DEST%\lib%_EXT%\libgettextsrc-0.18.1.dylib
+symlink: %_DEST%\lib%_EXT%\libgettextsrc-0.18.1.dylib %_DEST%\lib%_EXT%\libgettextsrc.dylib
+..\%__SRC%\lib\libintl.8.dylib %_DEST%\lib%_EXT%\libintl.8.dylib
+symlink: %_DEST%\lib%_EXT%\libintl.8.dylib %_DEST%\lib%_EXT%\libintl.dylib
+..\%__SRC%\lib\libgettextlib-0.18.1.dylib %_DEST%\lib%_EXT%\libgettextlib-0.18.1.dylib
+symlink: %_DEST%\lib%_EXT%\libgettextlib-0.18.1.dylib %_DEST%\lib%_EXT%\libgettextlib.dylib
+..\%__SRC%\bin\*.dll %_DEST%\bin%_EXT%
+..\%__SRC%\bin\msgattrib %_DEST%\bin%_EXT%\msgattrib
+..\%__SRC%\bin\msgcat %_DEST%\bin%_EXT%\msgcat
+..\%__SRC%\bin\msgcmp %_DEST%\bin%_EXT%\msgcmp
+..\%__SRC%\bin\msgcomm %_DEST%\bin%_EXT%\msgcomm
+..\%__SRC%\bin\msgconv %_DEST%\bin%_EXT%\msgconv
+..\%__SRC%\bin\msgen %_DEST%\bin%_EXT%\msgen
+..\%__SRC%\bin\msgexec %_DEST%\bin%_EXT%\msgexec
+..\%__SRC%\bin\msgfilter %_DEST%\bin%_EXT%\msgfilter
+..\%__SRC%\bin\msgfmt %_DEST%\bin%_EXT%\msgfmt
+..\%__SRC%\bin\msggrep %_DEST%\bin%_EXT%\msggrep
+..\%__SRC%\bin\msginit %_DEST%\bin%_EXT%\msginit
+..\%__SRC%\bin\msgmerge %_DEST%\bin%_EXT%\msgmerge
+..\%__SRC%\bin\msgunfmt %_DEST%\bin%_EXT%\msgunfmt
+..\%__SRC%\bin\msguniq %_DEST%\bin%_EXT%\msguniq
+..\%__SRC%\bin\urlget %_DEST%\bin%_EXT%\urlget
+..\%__SRC%\bin\xgettext %_DEST%\bin%_EXT%\xgettext
+..\%__SRC%\lib\iintl_t1.lib %_DEST%\lib%_EXT%\intl.lib
diff --git a/glib/glib-2.28.1-win32-2.patch b/glib/glib-2.28.1-win32-2.patch
new file mode 100644
index 000000000000..ee4b868f6b1a
--- /dev/null
+++ b/glib/glib-2.28.1-win32-2.patch
@@ -0,0 +1,553 @@
+--- misc/glib-2.28.1/build/win32/make.msc 2011-04-01 16:52:15.676157900 +0200
++++ misc/build/glib-2.28.1/build/win32/make.msc 2011-04-01 16:52:02.168385300 +0200
+@@ -55,7 +55,7 @@
+ BABL_LIBS = $(BABL)\babl\babl-1.0.lib
+
+ # force inclusion of the _right_ cairoversion.h even when using without installation
+-CAIRO_CFLAGS = -FI $(CAIRO)\cairo-version.h -I $(CAIRO)\src -I $(CAIRO)
++CAIRO_CFLAGS = -I $(CAIRO)\src -I $(CAIRO)
+ CAIRO_LIBS = $(CAIRO)\src\libcairo.lib
+
+ DIRENT_CFLAGS = -I ..\build\win32\dirent
+--- misc/glib-2.28.1/gobject/glib-mkenums 2011-04-01 16:52:15.155128100 +0200
++++ misc/build/glib-2.28.1/gobject/glib-mkenums 2011-04-01 16:51:30.994602300 +0200
+@@ -1 +1,538 @@
+-dummy
++#! perl.exe
++
++use warnings;
++use File::Basename;
++use Safe;
++
++# glib-mkenums.pl
++# Information about the current enumeration
++my $flags; # Is enumeration a bitmask?
++my $option_underscore_name; # Overriden underscore variant of the enum name
++ # for example to fix the cases we don't get the
++ # mixed-case -> underscorized transform right.
++my $option_lowercase_name; # DEPRECATED. A lower case name to use as part
++ # of the *_get_type() function, instead of the
++ # one that we guess. For instance, when an enum
++ # uses abnormal capitalization and we can not
++ # guess where to put the underscores.
++my $seenbitshift; # Have we seen bitshift operators?
++my $enum_prefix; # Prefix for this enumeration
++my $enumname; # Name for this enumeration
++my $enumshort; # $enumname without prefix
++my $enumname_prefix; # prefix of $enumname
++my $enumindex = 0; # Global enum counter
++my $firstenum = 1; # Is this the first enumeration per file?
++my @entries; # [ $name, $val ] for each entry
++my $sandbox = Safe->new; # sandbox for safe evaluation of expressions
++
++sub parse_trigraph {
++ my $opts = shift;
++ my @opts;
++
++ for $opt (split /\s*,\s*/, $opts) {
++ $opt =~ s/^\s*//;
++ $opt =~ s/\s*$//;
++ my ($key,$val) = $opt =~ /(\w+)(?:=(.+))?/;
++ defined $val or $val = 1;
++ push @opts, $key, $val;
++ }
++ @opts;
++}
++sub parse_entries {
++ my $file = shift;
++ my $file_name = shift;
++ my $looking_for_name = 0;
++
++ while (<$file>) {
++ # read lines until we have no open comments
++ while (m@/\*([^*]|\*(?!/))*$@) {
++ my $new;
++ defined ($new = <$file>) || die "Unmatched comment in $ARGV";
++ $_ .= $new;
++ }
++ # strip comments w/o options
++ s@/\*(?!<)
++ ([^*]+|\*(?!/))*
++ \*/@@gx;
++
++ # strip newlines
++ s@\n@ @;
++
++ # skip empty lines
++ next if m@^\s*$@;
++
++ if ($looking_for_name) {
++ if (/^\s*(\w+)/) {
++ $enumname = $1;
++ return 1;
++ }
++ }
++
++ # Handle include files
++ if (/^\#include\s*<([^>]*)>/ ) {
++ my $file= "../$1";
++ open NEWFILE, $file or die "Cannot open include file $file: $!\n";
++
++ if (parse_entries (\*NEWFILE, $NEWFILE)) {
++ return 1;
++ } else {
++ next;
++ }
++ }
++
++ if (/^\s*\}\s*(\w+)/) {
++ $enumname = $1;
++ $enumindex++;
++ return 1;
++ }
++
++ if (/^\s*\}/) {
++ $enumindex++;
++ $looking_for_name = 1;
++ next;
++ }
++
++ if (m@^\s*
++ (\w+)\s* # name
++ (?:=( # value
++ \s*\w+\s*\(.*\)\s* # macro with multiple args
++ | # OR
++ (?:[^,/]|/(?!\*))* # anything but a comma or comment
++ ))?,?\s*
++ (?:/\*< # options
++ (([^*]|\*(?!/))*)
++ >\s*\*/)?,?
++ \s*$
++ @x) {
++ my ($name, $value, $options) = ($1,$2,$3);
++
++ if (!defined $flags && defined $value && $value =~ /<</) {
++ $seenbitshift = 1;
++ }
++
++ if (defined $options) {
++ my %options = parse_trigraph($options);
++ if (!defined $options{skip}) {
++ push @entries, [ $name, $value, $options{nick} ];
++ }
++ } else {
++ push @entries, [ $name, $value ];
++ }
++ } elsif (m@^\s*\#@) {
++ # ignore preprocessor directives
++ } else {
++ print STDERR "$0: $file_name:$.: Failed to parse `$_'\n";
++ }
++ }
++
++ return 0;
++}
++
++sub version {
++ print "glib-mkenums version glib-@GLIB_VERSION@\n";
++ print "glib-mkenums comes with ABSOLUTELY NO WARRANTY.\n";
++ print "You may redistribute copies of glib-mkenums under the terms of\n";
++ print "the GNU General Public License which can be found in the\n";
++ print "GLib source package. Sources, examples and contact\n";
++ print "information are available at http://www.gtk.org\n";
++ exit 0;
++}
++sub usage {
++ print "Usage:\n";
++ print " glib-mkenums [OPTION...] [FILES...]\n\n";
++ print "Help Options:\n";
++ print " -h, --help Show this help message\n\n";
++ print "Utility Options:\n";
++ print " --fhead <text> Output file header\n";
++ print " --fprod <text> Per input file production\n";
++ print " --ftail <text> Output file trailer\n";
++ print " --eprod <text> Per enum text (produced prior to value itarations)\n";
++ print " --vhead <text> Value header, produced before iterating over enum values\n";
++ print " --vprod <text> Value text, produced for each enum value\n";
++ print " --vtail <text> Value tail, produced after iterating over enum values\n";
++ print " --comments <text> Comment structure\n";
++ print " --template file Template file\n";
++ print " -v, --version Print version informations\n\n";
++ print "Production text substitutions:\n";
++ print " \@EnumName\@ PrefixTheXEnum\n";
++ print " \@enum_name\@ prefix_the_xenum\n";
++ print " \@ENUMNAME\@ PREFIX_THE_XENUM\n";
++ print " \@ENUMSHORT\@ THE_XENUM\n";
++ print " \@ENUMPREFIX\@ PREFIX\n";
++ print " \@VALUENAME\@ PREFIX_THE_XVALUE\n";
++ print " \@valuenick\@ the-xvalue\n";
++ print " \@valuenum\@ the integer value (limited support, Since: 2.26)\n";
++ print " \@type\@ either enum or flags\n";
++ print " \@Type\@ either Enum or Flags\n";
++ print " \@TYPE\@ either ENUM or FLAGS\n";
++ print " \@filename\@ name of current input file\n";
++ print " \@basename\@ base name of the current input file (Since: 2.22)\n";
++ exit 0;
++}
++
++# production variables:
++my $fhead = ""; # output file header
++my $fprod = ""; # per input file production
++my $ftail = ""; # output file trailer
++my $eprod = ""; # per enum text (produced prior to value itarations)
++my $vhead = ""; # value header, produced before iterating over enum values
++my $vprod = ""; # value text, produced for each enum value
++my $vtail = ""; # value tail, produced after iterating over enum values
++my $comment_tmpl = ""; # comment template
++
++sub read_template_file {
++ my ($file) = @_;
++ my %tmpl = ('file-header', $fhead,
++ 'file-production', $fprod,
++ 'file-tail', $ftail,
++ 'enumeration-production', $eprod,
++ 'value-header', $vhead,
++ 'value-production', $vprod,
++ 'value-tail', $vtail,
++ 'comment', $comment_tmpl);
++ my $in = 'junk';
++ open (FILE, $file) || die "Can't open $file: $!\n";
++ while (<FILE>) {
++ if (/^\/\*\*\*\s+(BEGIN|END)\s+([\w-]+)\s+\*\*\*\//) {
++ if (($in eq 'junk') && ($1 eq 'BEGIN') && (exists($tmpl{$2}))) {
++ $in = $2;
++ next;
++ }
++ elsif (($in eq $2) && ($1 eq 'END') && (exists($tmpl{$2}))) {
++ $in = 'junk';
++ next;
++ } else {
++ die "Malformed template file $file\n";
++ }
++ }
++ if (!($in eq 'junk')) {
++ $tmpl{$in} .= $_;
++ }
++ }
++ close (FILE);
++ if (!($in eq 'junk')) {
++ die "Malformed template file $file\n";
++ }
++ $fhead = $tmpl{'file-header'};
++ $fprod = $tmpl{'file-production'};
++ $ftail = $tmpl{'file-tail'};
++ $eprod = $tmpl{'enumeration-production'};
++ $vhead = $tmpl{'value-header'};
++ $vprod = $tmpl{'value-production'};
++ $vtail = $tmpl{'value-tail'};
++ $comment_tmpl = $tmpl{'comment'};
++
++ # default to C-style comments
++ $comment_tmpl = "/* \@comment\@ */" if $comment_tmpl eq "";
++}
++
++if (!defined $ARGV[0]) {
++ usage;
++}
++while ($_=$ARGV[0],/^-/) {
++ shift;
++ last if /^--$/;
++ if (/^--template$/) { read_template_file (shift); }
++ elsif (/^--fhead$/) { $fhead = $fhead . shift }
++ elsif (/^--fprod$/) { $fprod = $fprod . shift }
++ elsif (/^--ftail$/) { $ftail = $ftail . shift }
++ elsif (/^--eprod$/) { $eprod = $eprod . shift }
++ elsif (/^--vhead$/) { $vhead = $vhead . shift }
++ elsif (/^--vprod$/) { $vprod = $vprod . shift }
++ elsif (/^--vtail$/) { $vtail = $vtail . shift }
++ elsif (/^--comments$/) { $comment_tmpl = shift }
++ elsif (/^--help$/ || /^-h$/ || /^-\?$/) { usage; }
++ elsif (/^--version$/ || /^-v$/) { version; }
++ else { usage; }
++ last if not defined($ARGV[0]);
++}
++
++# put auto-generation comment
++{
++ my $comment = $comment_tmpl;
++ $comment =~ s/\@comment\@/Generated data (by glib-mkenums)/;
++ print "\n" . $comment . "\n\n";
++}
++
++if (length($fhead)) {
++ my $prod = $fhead;
++ my $base = basename ($ARGV[0]);
++
++ $prod =~ s/\@filename\@/$ARGV[0]/g;
++ $prod =~ s/\@basename\@/$base/g;
++ $prod =~ s/\\a/\a/g; $prod =~ s/\\b/\b/g; $prod =~ s/\\t/\t/g; $prod =~ s/\\n/\n/g;
++ $prod =~ s/\\f/\f/g; $prod =~ s/\\r/\r/g;
++ chomp ($prod);
++
++ print "$prod\n";
++}
++
++while (<>) {
++ if (eof) {
++ close (ARGV); # reset line numbering
++ $firstenum = 1; # Flag to print filename at next enum
++ }
++
++ # read lines until we have no open comments
++ while (m@/\*([^*]|\*(?!/))*$@) {
++ my $new;
++ defined ($new = <>) || die "Unmatched comment in $ARGV";
++ $_ .= $new;
++ }
++ # strip comments w/o options
++ s@/\*(?!<)
++ ([^*]+|\*(?!/))*
++ \*/@@gx;
++
++ if (m@^\s*typedef\s+enum\s*
++ ({)?\s*
++ (?:/\*<
++ (([^*]|\*(?!/))*)
++ >\s*\*/)?
++ \s*({)?
++ @x) {
++ if (defined $2) {
++ my %options = parse_trigraph ($2);
++ next if defined $options{skip};
++ $enum_prefix = $options{prefix};
++ $flags = $options{flags};
++ $option_lowercase_name = $options{lowercase_name};
++ $option_underscore_name = $options{underscore_name};
++ } else {
++ $enum_prefix = undef;
++ $flags = undef;
++ $option_lowercase_name = undef;
++ $option_underscore_name = undef;
++ }
++ if (defined $option_lowercase_name) {
++ if (defined $option_underscore_name) {
++ print STDERR "$0: $ARGV:$.: lowercase_name overriden with underscore_name\n";
++ $option_lowercase_name = undef;
++ } else {
++ print STDERR "$0: $ARGV:$.: lowercase_name is deprecated, use underscore_name\n";
++ }
++ }
++ # Didn't have trailing '{' look on next lines
++ if (!defined $1 && !defined $4) {
++ while (<>) {
++ if (s/^\s*\{//) {
++ last;
++ }
++ }
++ }
++
++ $seenbitshift = 0;
++ @entries = ();
++
++ # Now parse the entries
++ parse_entries (\*ARGV, $ARGV);
++
++ # figure out if this was a flags or enums enumeration
++ if (!defined $flags) {
++ $flags = $seenbitshift;
++ }
++
++ # Autogenerate a prefix
++ if (!defined $enum_prefix) {
++ for (@entries) {
++ my $nick = $_->[2];
++ if (!defined $nick) {
++ my $name = $_->[0];
++ if (defined $enum_prefix) {
++ my $tmp = ~ ($name ^ $enum_prefix);
++ ($tmp) = $tmp =~ /(^\xff*)/;
++ $enum_prefix = $enum_prefix & $tmp;
++ } else {
++ $enum_prefix = $name;
++ }
++ }
++ }
++ if (!defined $enum_prefix) {
++ $enum_prefix = "";
++ } else {
++ # Trim so that it ends in an underscore
++ $enum_prefix =~ s/_[^_]*$/_/;
++ }
++ } else {
++ # canonicalize user defined prefixes
++ $enum_prefix = uc($enum_prefix);
++ $enum_prefix =~ s/-/_/g;
++ $enum_prefix =~ s/(.*)([^_])$/$1$2_/;
++ }
++
++ for $entry (@entries) {
++ my ($name,$num,$nick) = @{$entry};
++ if (!defined $nick) {
++ ($nick = $name) =~ s/^$enum_prefix//;
++ $nick =~ tr/_/-/;
++ $nick = lc($nick);
++ @{$entry} = ($name, $num, $nick);
++ }
++ }
++
++
++ # Spit out the output
++ if (defined $option_underscore_name) {
++ $enumlong = uc $option_underscore_name;
++ $enumsym = lc $option_underscore_name;
++ $enumshort = $enumlong;
++ $enumshort =~ s/^[A-Z][A-Z0-9]*_//;
++
++ $enumname_prefix = $enumlong;
++ $enumname_prefix =~ s/$enumshort$//;
++ } else {
++ # enumname is e.g. GMatchType
++ $enspace = $enumname;
++ $enspace =~ s/^([A-Z][a-z]*).*$/$1/;
++
++ $enumshort = $enumname;
++ $enumshort =~ s/^[A-Z][a-z]*//;
++ $enumshort =~ s/([^A-Z])([A-Z])/$1_$2/g;
++ $enumshort =~ s/([A-Z][A-Z])([A-Z][0-9a-z])/$1_$2/g;
++ $enumshort = uc($enumshort);
++
++ $enumname_prefix = $enumname;
++ $enumname_prefix =~ s/^([A-Z][a-z]*).*$/$1/;
++ $enumname_prefix = uc($enumname_prefix);
++
++ $enumlong = uc($enspace) . "_" . $enumshort;
++ $enumsym = lc($enspace) . "_" . lc($enumshort);
++
++ if (defined($option_lowercase_name)) {
++ $enumsym = $option_lowercase_name;
++ }
++ }
++
++ if ($firstenum) {
++ $firstenum = 0;
++
++ if (length($fprod)) {
++ my $prod = $fprod;
++ my $base = basename ($ARGV);
++
++ $prod =~ s/\@filename\@/$ARGV/g;
++ $prod =~ s/\@basename\@/$base/g;
++ $prod =~ s/\\a/\a/g; $prod =~ s/\\b/\b/g; $prod =~ s/\\t/\t/g; $prod =~ s/\\n/\n/g;
++ $prod =~ s/\\f/\f/g; $prod =~ s/\\r/\r/g;
++ chomp ($prod);
++
++ print "$prod\n";
++ }
++ }
++
++ if (length($eprod)) {
++ my $prod = $eprod;
++
++ $prod =~ s/\@enum_name\@/$enumsym/g;
++ $prod =~ s/\@EnumName\@/$enumname/g;
++ $prod =~ s/\@ENUMSHORT\@/$enumshort/g;
++ $prod =~ s/\@ENUMNAME\@/$enumlong/g;
++ $prod =~ s/\@ENUMPREFIX\@/$enumname_prefix/g;
++ if ($flags) { $prod =~ s/\@type\@/flags/g; } else { $prod =~ s/\@type\@/enum/g; }
++ if ($flags) { $prod =~ s/\@Type\@/Flags/g; } else { $prod =~ s/\@Type\@/Enum/g; }
++ if ($flags) { $prod =~ s/\@TYPE\@/FLAGS/g; } else { $prod =~ s/\@TYPE\@/ENUM/g; }
++ $prod =~ s/\\a/\a/g; $prod =~ s/\\b/\b/g; $prod =~ s/\\t/\t/g; $prod =~ s/\\n/\n/g;
++ $prod =~ s/\\f/\f/g; $prod =~ s/\\r/\r/g;
++ chomp ($prod);
++
++ print "$prod\n";
++ }
++
++ if (length($vhead)) {
++ my $prod = $vhead;
++
++ $prod =~ s/\@enum_name\@/$enumsym/g;
++ $prod =~ s/\@EnumName\@/$enumname/g;
++ $prod =~ s/\@ENUMSHORT\@/$enumshort/g;
++ $prod =~ s/\@ENUMNAME\@/$enumlong/g;
++ $prod =~ s/\@ENUMPREFIX\@/$enumname_prefix/g;
++ if ($flags) { $prod =~ s/\@type\@/flags/g; } else { $prod =~ s/\@type\@/enum/g; }
++ if ($flags) { $prod =~ s/\@Type\@/Flags/g; } else { $prod =~ s/\@Type\@/Enum/g; }
++ if ($flags) { $prod =~ s/\@TYPE\@/FLAGS/g; } else { $prod =~ s/\@TYPE\@/ENUM/g; }
++ $prod =~ s/\\a/\a/g; $prod =~ s/\\b/\b/g; $prod =~ s/\\t/\t/g; $prod =~ s/\\n/\n/g;
++ $prod =~ s/\\f/\f/g; $prod =~ s/\\r/\r/g;
++ chomp ($prod);
++
++ print "$prod\n";
++ }
++
++ if (length($vprod)) {
++ my $prod = $vprod;
++ my $next_num = 0;
++
++ $prod =~ s/\\a/\a/g; $prod =~ s/\\b/\b/g; $prod =~ s/\\t/\t/g; $prod =~ s/\\n/\n/g;
++ $prod =~ s/\\f/\f/g; $prod =~ s/\\r/\r/g;
++ for (@entries) {
++ my ($name,$num,$nick) = @{$_};
++ my $tmp_prod = $prod;
++
++ if ($prod =~ /\@valuenum\@/) {
++ # only attempt to eval the value if it is requested
++ # this prevents us from throwing errors otherwise
++ if (defined $num) {
++ # use sandboxed perl evaluation as a reasonable
++ # approximation to C constant folding
++ $num = $sandbox->reval ($num);
++
++ # make sure it parsed to an integer
++ if (!defined $num or $num !~ /^-?\d+$/) {
++ die "Unable to parse enum value '$num'";
++ }
++ } else {
++ $num = $next_num;
++ }
++
++ $tmp_prod =~ s/\@valuenum\@/$num/g;
++ $next_num = $num + 1;
++ }
++
++ $tmp_prod =~ s/\@VALUENAME\@/$name/g;
++ $tmp_prod =~ s/\@valuenick\@/$nick/g;
++ if ($flags) { $tmp_prod =~ s/\@type\@/flags/g; } else { $tmp_prod =~ s/\@type\@/enum/g; }
++ if ($flags) { $tmp_prod =~ s/\@Type\@/Flags/g; } else { $tmp_prod =~ s/\@Type\@/Enum/g; }
++ if ($flags) { $tmp_prod =~ s/\@TYPE\@/FLAGS/g; } else { $tmp_prod =~ s/\@TYPE\@/ENUM/g; }
++ chomp ($tmp_prod);
++
++ print "$tmp_prod\n";
++ }
++ }
++
++ if (length($vtail)) {
++ my $prod = $vtail;
++
++ $prod =~ s/\@enum_name\@/$enumsym/g;
++ $prod =~ s/\@EnumName\@/$enumname/g;
++ $prod =~ s/\@ENUMSHORT\@/$enumshort/g;
++ $prod =~ s/\@ENUMNAME\@/$enumlong/g;
++ $prod =~ s/\@ENUMPREFIX\@/$enumname_prefix/g;
++ if ($flags) { $prod =~ s/\@type\@/flags/g; } else { $prod =~ s/\@type\@/enum/g; }
++ if ($flags) { $prod =~ s/\@Type\@/Flags/g; } else { $prod =~ s/\@Type\@/Enum/g; }
++ if ($flags) { $prod =~ s/\@TYPE\@/FLAGS/g; } else { $prod =~ s/\@TYPE\@/ENUM/g; }
++ $prod =~ s/\\a/\a/g; $prod =~ s/\\b/\b/g; $prod =~ s/\\t/\t/g; $prod =~ s/\\n/\n/g;
++ $prod =~ s/\\f/\f/g; $prod =~ s/\\r/\r/g;
++ chomp ($prod);
++
++ print "$prod\n";
++ }
++ }
++}
++
++if (length($ftail)) {
++ my $prod = $ftail;
++ my $base = basename ($ARGV);
++
++ $prod =~ s/\@filename\@/$ARGV/g;
++ $prod =~ s/\@basename\@/$base/g;
++ $prod =~ s/\\a/\a/g; $prod =~ s/\\b/\b/g; $prod =~ s/\\t/\t/g; $prod =~ s/\\n/\n/g;
++ $prod =~ s/\\f/\f/g; $prod =~ s/\\r/\r/g;
++ chomp ($prod);
++
++ print "$prod\n";
++}
++
++# put auto-generation comment
++{
++ my $comment = $comment_tmpl;
++ $comment =~ s/\@comment\@/Generated data ends here/;
++ print "\n" . $comment . "\n\n";
++}
diff --git a/glib/glib-2.28.1-win32.patch b/glib/glib-2.28.1-win32.patch
new file mode 100644
index 000000000000..6e7c06d68465
--- /dev/null
+++ b/glib/glib-2.28.1-win32.patch
@@ -0,0 +1,1982 @@
+--- misc/glib-2.28.1/build/win32/dirent/makefile.msc 2009-04-01 01:04:20.000000000 +0200
++++ misc/build/glib-2.28.1/build/win32/dirent/makefile.msc 2011-03-04 09:06:56.391118000 +0100
+@@ -1,10 +1,10 @@
+ TOP = ..\..\..\..
+
+-!INCLUDE $(TOP)\glib\build\win32\make.msc
++!INCLUDE ..\make.msc
+
+ dirent_OBJECTS = dirent.obj wdirent.obj
+
+-INCLUDES = -I.
++INCLUDES = -I. $(SOLARINC)
+
+ all : dirent.lib
+
+@@ -12,5 +12,5 @@
+ lib /out:dirent.lib /nodefaultlib $(dirent_OBJECTS)
+
+ clean::
+- del /f $(dirent_OBJECTS)
+- del /f dirent.lib
++ rm /f $(dirent_OBJECTS)
++ rm /f dirent.lib
+--- misc/glib-2.28.1/build/win32/make.msc 2009-08-29 04:52:21.000000000 +0200
++++ misc/build/glib-2.28.1/build/win32/make.msc 2011-03-04 12:36:27.513145100 +0100
+@@ -35,7 +35,7 @@
+ XSLTPROC = d:\gnome-0\xsltproc
+
+ # paths and version numbers
+-!INCLUDE $(TOP)\glib\build\win32\module.defs
++!INCLUDE module.defs
+
+ ################
+ # CFLAGS and LIBS for the packages in module.defs.
+@@ -58,8 +58,8 @@
+ CAIRO_CFLAGS = -FI $(CAIRO)\cairo-version.h -I $(CAIRO)\src -I $(CAIRO)
+ CAIRO_LIBS = $(CAIRO)\src\libcairo.lib
+
+-DIRENT_CFLAGS = -I $(GLIB)\build\win32\dirent
+-DIRENT_LIBS = $(GLIB)\build\win32\dirent\dirent.lib
++DIRENT_CFLAGS = -I ..\build\win32\dirent
++DIRENT_LIBS = ..\build\win32\dirent\dirent.lib
+
+ !IFNDEF EXIF
+ EXIF_CFLAGS = -I $(DEVTOP)\include
+@@ -92,7 +92,7 @@
+ # overide definition to use it as callable path
+ GLIB = $(TOP)\glib
+
+-GLIB_CFLAGS = -I $(GLIB) -I $(GLIB)\glib -I $(GLIB)\gmodule $(INTL_CFLAGS)
++GLIB_CFLAGS = -I $(GLIB) -I $(GLIB)\glib -I $(GLIB)\gmodule $(INTL_CFLAGS) $(SOLARINC)
+ GLIB_LIBS = $(GLIB)\glib\glib-$(GLIB_VER).lib $(GLIB)\gmodule\gmodule-$(GLIB_VER).lib $(GLIB)\gobject\gobject-$(GLIB_VER).lib $(GLIB)\gio\gio-$(GLIB_VER).lib
+ GTHREAD_LIBS = $(GLIB)\gthread\gthread-$(GLIB_VER).lib
+
+@@ -126,11 +126,11 @@
+ LIBART_LIBS = $(LIBART)\art_lgpl_2.lib
+
+ !IFNDEF INTL
+-INTL_CFLAGS = -I $(DEVTOP)\include
+-INTL_LIBS = $(DEVTOP)\lib\intl.lib
++INTL_CFLAGS = -I $(OUTDIR)\inc\external
++INTL_LIBS = $(OUTDIR)/lib/intl.lib
+ !ELSE
+-INTL_CFLAGS = -I $(INTL)
+-INTL_LIBS = $(INTL)\intl.lib
++INTL_CFLAGS = -I $(OUTDIR)\inc\external
++INTL_LIBS = $(OUTDIR)/lib/intl.lib
+ !ENDIF
+
+ !IFDEF LCMS
+@@ -199,10 +199,10 @@
+
+ !IFDEF ZLIB
+ ZLIB_CFLAGS = -I $(ZLIB)
+-ZLIB_LIBS = $(ZLIB)\projects\visualc6\Win32_LIB_Release\zlib.lib
++ZLIB_LIBS = $(OUTDIR)\lib\zlib.lib
+ !ELSE
+-ZLIB_CFLAGS = -I $(DEVTOP)\include
+-ZLIB_LIBS = $(DEVTOP)\lib\zdll.lib
++ZLIB_CFLAGS = -I $(ZLIB)
++ZLIB_LIBS = $(OUTDIR)\lib\zlib.lib
+ !ENDIF
+
+ ################
+--- misc/glib-2.28.1/gio/gzlibcompressor.c 2011-02-11 16:23:12.000000000 +0100
++++ misc/build/glib-2.28.1/gio/gzlibcompressor.c 2011-03-07 10:33:19.559189800 +0100
+@@ -25,7 +25,7 @@
+ #include "gzlibcompressor.h"
+
+ #include <errno.h>
+-#include <zlib.h>
++#include <zlib/zlib.h>
+ #include <string.h>
+
+ #include "gfileinfo.h"
+@@ -64,8 +64,10 @@
+
+ GZlibCompressorFormat format;
+ int level;
++#if !defined (G_OS_WIN32) || ZLIB_VERNUM >= 0x1240
+ z_stream zstream;
+ gz_header gzheader;
++#endif
+ GFileInfo *file_info;
+ };
+
+@@ -73,7 +75,7 @@
+ g_zlib_compressor_set_gzheader (GZlibCompressor *compressor)
+ {
+ /* On win32, these functions were not exported before 1.2.4 */
+-#if !defined (G_OS_WIN32) || ZLIB_VERNUM >= 0x1240
++#if (!defined (G_OS_WIN32) && ! defined(BUILD_OS_APPLEOSX)) || ZLIB_VERNUM >= 0x1240
+ const gchar *filename;
+
+ if (compressor->format != G_ZLIB_COMPRESSOR_FORMAT_GZIP ||
+--- misc/glib-2.28.1/gio/gzlibdecompressor.c 2011-03-07 09:13:41.324890400 +0100
++++ misc/build/glib-2.28.1/gio/gzlibdecompressor.c 2011-03-04 11:28:39.712480200 +0100
+@@ -25,7 +25,7 @@
+ #include "gzlibdecompressor.h"
+
+ #include <errno.h>
+-#include <zlib.h>
++#include <zlib/zlib.h>
+ #include <string.h>
+
+ #include "gfileinfo.h"
+@@ -76,7 +76,7 @@
+ g_zlib_decompressor_set_gzheader (GZlibDecompressor *decompressor)
+ {
+ /* On win32, these functions were not exported before 1.2.4 */
+-#if !defined (G_OS_WIN32) || ZLIB_VERNUM >= 0x1240
++#if (!defined (G_OS_WIN32) && !defined(BUILD_OS_APPLEOSX)) || ZLIB_VERNUM >= 0x1240
+ if (decompressor->format != G_ZLIB_COMPRESSOR_FORMAT_GZIP)
+ return;
+
+@@ -376,7 +376,7 @@
+ *bytes_read = inbuf_size - decompressor->zstream.avail_in;
+ *bytes_written = outbuf_size - decompressor->zstream.avail_out;
+
+-#if !defined (G_OS_WIN32) || ZLIB_VERNUM >= 0x1240
++#if (!defined (G_OS_WIN32) && !defined(BUILD_OS_APPLEOSX)) || ZLIB_VERNUM >= 0x1240
+ if (decompressor->header_data != NULL &&
+ decompressor->header_data->gzheader.done == 1)
+ {
+--- misc/glib-2.28.1/gio/makefile.msc 2011-02-11 16:23:12.000000000 +0100
++++ misc/build/glib-2.28.1/gio/makefile.msc 2011-03-04 12:43:54.423706900 +0100
+@@ -3,9 +3,9 @@
+ PRJ_TOP = ..
+ PACKAGE = gio
+ PKG_VER = 2.0
+-!INCLUDE $(TOP)\glib\build\win32\make.msc
++!INCLUDE ..\build\win32\make.msc
+
+-SUBDIRS = win32
++SUBDIRS = win32 gvdb
+
+ sub-all:
+ for %d in ($(SUBDIRS)) do nmake -nologo -f makefile.msc sub-one THIS=%d
+@@ -18,13 +18,15 @@
+ INCLUDES = \
+ -FImsvc_recommended_pragmas.h \
+ -I .. -I ..\glib -I ..\gmodule -I . \
+- $(INTL_CFLAGS)
++ $(INTL_CFLAGS) \
++ $(SOLARINC) \
+
+ DEFINES = \
+ -DG_LOG_DOMAIN=\"GLib-GIO\" \
+ -DGIO_MODULE_DIR=\"$(libdir)/gio/modules\" \
+ -DGIO_COMPILATION
+
++
+ appinfo_sources = \
+ gwin32appinfo.c gwin32appinfo.h
+
+@@ -75,19 +77,50 @@
+ $(NULL)
+
+ OBJECTS = \
++ gaction.obj \
++ gactiongroup.obj \
+ gappinfo.obj \
++ gapplication.obj \
++ gapplicationcommandline.obj \
++ gapplicationimpl-dbus.obj \
+ gasynchelper.obj \
+ gasyncinitable.obj \
+ gasyncresult.obj \
+ gbufferedinputstream.obj \
+ gbufferedoutputstream.obj \
+ gcancellable.obj \
++ gcharsetconverter.obj \
+ gcontenttype.obj \
++ gconverter.obj \
++ gconverterinputstream.obj \
++ gconverteroutputstream.obj \
++ gcredentials.obj \
+ gdatainputstream.obj \
+ gdataoutputstream.obj \
++ gdbusaddress.obj \
++ gdbusauth.obj \
++ gdbusauthmechanism.obj \
++ gdbusauthmechanismanon.obj \
++ gdbusauthmechanismexternal.obj \
++ gdbusauthmechanismsha1.obj \
++ gdbusauthobserver.obj \
++ gdbusconnection.obj \
++ gdbuserror.obj \
++ gdbusintrospection.obj \
++ gdbusmessage.obj \
++ gdbusmethodinvocation.obj \
++ gdbusnameowning.obj \
++ gdbusnamewatching.obj \
++ gdbusprivate.obj \
++ gdbusproxy.obj \
++ gdbusserver.obj \
++ gdbusutils.obj \
++ gdelayedsettingsbackend.obj \
+ # gdesktopappinfo.obj \
+ gdrive.obj \
+ gdummyfile.obj \
++ gdummyproxyresolver.obj \
++ gdummytlsbackend.obj \
+ gemblem.obj \
+ gemblemedicon.obj \
+ gfile.obj \
+@@ -112,20 +145,39 @@
+ giomodule.obj \
+ gioscheduler.obj \
+ giostream.obj \
++ gkeyfilesettingsbackend.obj \
+ gloadableicon.obj \
+ glocalfileiostream.obj \
+ gmemoryinputstream.obj \
+ gmemoryoutputstream.obj \
++ gmemorysettingsbackend.obj \
+ gmount.obj \
+ gmountoperation.obj \
+ gnativevolumemonitor.obj \
+ gnetworkaddress.obj \
+ gnetworkservice.obj \
++ gnullsettingsbackend.obj \
+ goutputstream.obj \
++ gpermission.obj \
++ gpollableinputstream.obj \
++ gpollableoutputstream.obj \
+ gpollfilemonitor.obj \
++ gproxy.obj\
++ gproxyaddress.obj \
++ gproxyaddressenumerator.obj \
++ gproxyresolver.obj \
++ gregistrysettingsbackend.obj \
+ gresolver.obj \
++ gsettings-mapping.obj \
++ gsettings-tool.obj \
++ gsettings.obj \
++ gsettingsbackend.obj \
++ gsettingsschema.obj \
+ gseekable.obj \
++ gsimpleaction.obj \
++ gsimpleactiongroup.obj \
+ gsimpleasyncresult.obj \
++ gsimplepermission.obj \
+ gsocket.obj \
+ gsocketaddress.obj \
+ gsocketaddressenumerator.obj \
+@@ -135,13 +187,22 @@
+ gsocketcontrolmessage.obj \
+ gsocketlistener.obj \
+ gsocketservice.obj \
++ gsocks4aproxy.obj \
++ gsocks4proxy.obj \
++ gsocks5proxy.obj \
+ gsocketinputstream.obj \
+ gsocketoutputstream.obj \
+ gsrvtarget.obj \
+ gtcpconnection.obj \
++ gtcpwrapperconnection.obj \
+ gthreadedresolver.obj \
+ gthreadedsocketservice.obj \
+ gthemedicon.obj \
++ gtlsbackend.obj \
++ gtlscertificate.obj \
++ gtlsclientconnection.obj \
++ gtlsconnection.obj \
++ gtlsserverconnection.obj \
+ gunionvolumemonitor.obj \
+ gvfs.obj \
+ gvolume.obj \
+@@ -156,11 +217,15 @@
+ glocalfilemonitor.obj \
+ glocaldirectorymonitor.obj \
+ gwin32appinfo.obj \
++ gwin32outputstream.obj \
+ \
+ gio-marshal.obj \
++ gwin32inputstream.obj \
+ gwin32mount.obj \
+ gwin32volumemonitor.obj \
+- gwin32resolver.obj
++ gwin32resolver.obj \
++ gzlibdecompressor.obj \
++ gzlibcompressor.obj
+
+ libgio_2_0_la_LIBADD = \
+ $(top_builddir)/glib/libglib-2.0.la \
+@@ -190,14 +255,14 @@
+
+ gio-marshal.h: gio-marshal.list
+ $(GLIB_GEN_MARSHAL) --prefix=_gio_marshal gio-marshal.list --header >> xgen-gwmh \
+- && copy /y xgen-gwmh gio-marshal.h \
+- && del xgen-gwmh xgen-gwmh~
++ && $(GNUCOPY) /y xgen-gwmh gio-marshal.h \
++ && rm xgen-gwmh xgen-gwmh~
+
+ gio-marshal.c: gio-marshal.h
+ echo #include "gio-marshal.h" >> xgen-gwmc \
+ && $(GLIB_GEN_MARSHAL) --prefix=_gio_marshal gio-marshal.list --body >> xgen-gwmc \
+- && copy xgen-gwmc gio-marshal.c \
+- && del xgen-gwmc xgen-gwmc~
++ && $(GNUCOPY) xgen-gwmc gio-marshal.c \
++ && rm xgen-gwmc xgen-gwmc~
+
+ local_sources = \
+ glocaldirectorymonitor.c \
+@@ -228,7 +293,7 @@
+
+
+ $(PRJ_TOP)\config.h: $(PRJ_TOP)\config.h.win32
+- copy $(PRJ_TOP)\config.h.win32 $(PRJ_TOP)\config.h
++ $(GNUCOPY) $(PRJ_TOP)\config.h.win32 $(PRJ_TOP)\config.h
+
+ gioenumtypes.h: $(gio_headers) gioenumtypes.h.template
+ $(PERL) ..\gobject\glib-mkenums --template gioenumtypes.h.template $(gio_headers) > gioenumtypes.h
+@@ -245,14 +310,14 @@
+ RESOURCE = $(PACKAGE).res
+
+ $(PACKAGE).res : $(PACKAGE).rc
+- rc -DBUILDNUMBER=0 -r -fo $(PACKAGE).res $(PACKAGE).rc
++ rc -DBUILDNUMBER=0 -r -i $(SOLARINC) -fo $(PACKAGE).res $(PACKAGE).rc
+
+-libgio-$(PKG_VER)-0.dll : $(OBJECTS) win32\giowin32.lib $(PACKAGE).def $(RESOURCE)
++libgio-$(PKG_VER)-0.dll : $(OBJECTS) win32\giowin32.lib gvdb\giogvdb.lib $(PACKAGE).def $(RESOURCE)
+ $(CC) $(CFLAGS) -LD -Felibgio-$(PKG_VER)-0.dll $(OBJECTS) $(RESOURCE) \
+ ..\glib\glib-2.0.lib ..\gobject\gobject-2.0.lib ..\gmodule\gmodule-2.0.lib \
+- win32\giowin32.lib \
+- $(INTL_LIBS) \
+- kernel32.lib user32.lib advapi32.lib shell32.lib wsock32.lib ws2_32.lib dnsapi.lib mpr.lib $(LDFLAGS) \
++ win32\giowin32.lib gvdb\giogvdb.lib \
++ $(INTL_LIBS) $(ZLIB_LIBS) \
++ kernel32.lib user32.lib advapi32.lib shell32.lib wsock32.lib Shlwapi.lib ws2_32.lib dnsapi.lib mpr.lib $(LDFLAGS) \
+ /implib:gio-2.0.lib /def:$(PACKAGE).def
+
+ .c.obj :
+--- misc/glib-2.28.1/glib/gatomic.c 2011-02-11 16:23:12.000000000 +0100
++++ misc/build/glib-2.28.1/glib/gatomic.c 2011-02-25 15:51:45.000000000 +0100
+@@ -28,6 +28,7 @@
+ #endif
+
+ #include "gatomic.h"
++#include "gthread.h"
+ #include "gthreadprivate.h"
+
+ /**
+--- misc/glib-2.28.1/glib/gnulib/makefile.msc 2009-04-01 01:04:20.000000000 +0200
++++ misc/build/glib-2.28.1/glib/gnulib/makefile.msc 2011-03-04 08:37:50.624265900 +0100
+@@ -1,7 +1,7 @@
+ TOP = ..\..\..
+ !INCLUDE ..\..\build\win32\make.msc
+
+-INCLUDES = -I ..\.. -I ..
++INCLUDES = -I ..\.. -I .. $(SOLARINC)
+ DEFINES = -DHAVE_CONFIG_H -DHAVE_LONG_LONG_FORMAT
+
+ OBJECTS = \
+--- misc/glib-2.28.1/glib/makefile.msc 2011-02-18 16:34:53.000000000 +0100
++++ misc/build/glib-2.28.1/glib/makefile.msc 2011-03-07 11:41:13.874227300 +0100
+@@ -7,7 +7,7 @@
+
+ ################################################################
+
+-INCLUDES = -FImsvc_recommended_pragmas.h -I . -I ..
++INCLUDES = -FImsvc_recommended_pragmas.h -I . -I .. $(SOLARINC)
+ DEFINES = \
+ -DHAVE_CONFIG_H -DGLIB_COMPILATION -DG_LOG_DOMAIN=\"GLib\" \
+ -DG_ENABLE_DEBUG -DPCRE_STATIC -DG_DISABLE_DEPRECATED \
+@@ -17,13 +17,11 @@
+
+ all : \
+ ..\config.h \
+- ..\glibconfig.h \
++ glibconfig.h \
+ gnulib\gnulib.lib \
+ pcre\pcre.lib \
+ libglib-2.0-0.dll \
+- glib-2.28s.lib \
+- gspawn-win32-helper.exe \
+- gspawn-win32-helper-console.exe \
++ glib-2.28s.lib
+
+
+ gnulib\gnulib.lib :
+@@ -37,37 +35,40 @@
+ cd ..
+
+ glib_OBJECTS = \
+- garray.obj \
+- gasyncqueue.obj \
+- gatomic.obj \
+- gbacktrace.obj \
+- gbase64.obj \
++ garray.obj \
++ gasyncqueue.obj \
++ gatomic.obj \
++ gbacktrace.obj \
++ gbase64.obj \
++ gbitlock.obj \
+ gbookmarkfile.obj \
++ gbuffer.obj \
+ gcache.obj \
+- gchecksum.obj \
+- gcompletion.obj \
++ gchecksum.obj \
+ gconvert.obj \
++ gcompletion.obj \
+ gdataset.obj \
+ gdate.obj \
++ gdatetime.obj \
+ gdir.obj \
+ gerror.obj \
+ gfileutils.obj \
+ ghash.obj \
+- ghostutils.obj \
+ ghook.obj \
++ ghostutils.obj \
+ giochannel.obj \
+ giowin32.obj \
+- gpoll.obj \
+ gkeyfile.obj \
+ glist.obj \
+ gmain.obj \
+- gmappedfile.obj \
++ gmappedfile.obj \
+ gmarkup.obj \
+ gmem.obj \
+ gmessages.obj \
+ gnode.obj \
+ goption.obj \
+ gpattern.obj \
++ gpoll.obj \
+ gprimes.obj \
+ gprintf.obj \
+ gqsort.obj \
+@@ -88,22 +89,29 @@
+ gthread.obj \
+ gthreadpool.obj \
+ gtimer.obj \
++ gtimezone.obj \
+ gtree.obj \
+ gunibreak.obj \
+ gunicollate.obj \
+ gunidecomp.obj \
+ guniprop.obj \
+ gurifuncs.obj \
+- gutf8.obj \
+- gutils.obj \
+- gwin32.obj \
++ gutf8.obj \
++ gutils.obj \
++ gvariant-core.obj \
++ gvariant-parser.obj \
++ gvariant-serialiser.obj \
++ gvariant.obj \
++ gvarianttype.obj \
++ gvarianttypeinfo.obj \
++ gwin32.obj \
+ localcharset.obj
+
+-..\glibconfig.h: ..\glibconfig.h.win32
+- copy ..\glibconfig.h.win32 ..\glibconfig.h
++glibconfig.h: glibconfig.h.win32
++ $(GNUCOPY) glibconfig.h.win32 glibconfig.h
+
+ ..\config.h: ..\config.h.win32
+- copy ..\config.h.win32 ..\config.h
++ $(GNUCOPY) ..\config.h.win32 ..\config.h
+
+ localcharset.obj : libcharset\localcharset.c
+ $(CC) $(CFLAGS) -DLIBDIR=\".\" -c libcharset\localcharset.c
+@@ -115,7 +123,7 @@
+ -DG_GNUC_PRINTF=;G_GNUC_PRINTF -DG_GNUC_FORMAT=;G_GNUC_FORMAT glib.symbols >> glib.def
+
+ glib.res : glib.rc
+- rc -DBUILDNUMBER=0 -r -fo glib.res glib.rc
++ rc -DBUILDNUMBER=0 -r -i $(SOLARINC) -fo glib.res glib.rc
+
+ ################ glib
+
+@@ -124,20 +132,14 @@
+ glib-2.28s.lib : $(glib_OBJECTS) gnulib\gnulib.lib pcre\pcre.lib
+ lib /out:glib-2.28s.lib $(glib_OBJECTS) gnulib\gnulib.lib pcre\pcre.lib
+
+-libglib-2.0-0.dll : $(glib_OBJECTS) gnulib\gnulib.lib pcre\pcre.lib glib.def glib.res
++libglib-2.0-0.dll : $(glib_OBJECTS) gnulib\gnulib.lib pcre\pcre.lib glib.def glib.res
+ $(CC) $(CFLAGS) -LD -Fe$@ $(glib_OBJECTS) glib.res $(INTL_LIBS) \
+ gnulib\gnulib.lib pcre\pcre.lib $(DIRENT_LIBS) user32.lib advapi32.lib shell32.lib wsock32.lib ole32.lib ws2_32.lib \
+ $(LDFLAGS) /implib:glib-2.0.lib /def:glib.def
+
+-gspawn-win32-helper.exe : gspawn-win32-helper.c libglib-2.0-0.dll
+- $(CC) $(CFLAGS) -Fe$@ -DG_LOG_DOMAIN=\"gspawn-win32-helper\" gspawn-win32-helper.c glib-2.0.lib $(LDFLAGS) /subsystem:windows user32.lib
+-
+-gspawn-win32-helper-console.exe : gspawn-win32-helper.c libglib-2.0-0.dll
+- $(CC) $(CFLAGS) -Fe$@ -DG_LOG_DOMAIN=\"gspawn-win32-helper\" gspawn-win32-helper.c glib-2.0.lib $(LDFLAGS) /subsystem:console user32.lib
+-
+ ################ other stuff
+
+ clean::
+- del ..\config.h
+- del ..\glibconfig.h
++ rm ..\config.h
++ rm glibconfig.h
+
+--- misc/glib-2.28.1/glib/pcre/makefile.msc 2010-06-20 06:35:47.000000000 +0200
++++ misc/build/glib-2.28.1/glib/pcre/makefile.msc 2011-03-04 09:06:02.748049800 +0100
+@@ -3,7 +3,8 @@
+
+ INCLUDES = \
+ -I ..\.. \
+- -I ..
++ -I .. \
++ $(SOLARINC)
+
+ DEFINES = \
+ -DPCRE_STATIC \
+@@ -18,10 +19,24 @@
+ -DMAX_NAME_COUNT=10000 \
+ -DMAX_DUPLENGTH=30000 \
+ -DLINK_SIZE=2 \
+- -DEBCDIC=0 \
+ -DPOSIX_MALLOC_THRESHOLD=10
+
+ OBJECTS = \
++ pcre_chartables.obj \
++ pcre_compile.obj \
++ pcre_config.obj \
++ pcre_dfa_exec.obj \
++ pcre_exec.obj \
++ pcre_fullinfo.obj \
++ pcre_get.obj \
++ pcre_globals.obj \
++ pcre_newline.obj \
++ pcre_ord2utf8.obj \
++ pcre_study.obj \
++ pcre_tables.obj \
++ pcre_try_flipped.obj \
++ pcre_ucp_searchfuncs.obj \
++ pcre_xclass.obj \
+
+
+ all : pcre.lib
+--- misc/glib-2.28.1/gmodule/makefile.msc 2011-02-18 16:34:58.000000000 +0100
++++ misc/build/glib-2.28.1/gmodule/makefile.msc 2011-03-04 08:43:06.896355600 +0100
+@@ -7,7 +7,7 @@
+
+ ################################################################
+
+-INCLUDES = -FImsvc_recommended_pragmas.h -I .. -I . -I ..\glib
++INCLUDES = -FImsvc_recommended_pragmas.h -I .. -I . -I ..\glib $(SOLARINC)
+ DEFINES = -DHAVE_CONFIG_H -DG_LOG_DOMAIN=\"GModule\"
+
+ all : \
+@@ -16,22 +16,22 @@
+
+ gmodule_OBJECTS = \
+ gmodule.obj
+-gmodule.def: gmodule.symbols
+- echo EXPORTS > gmodule.def
+- cl /EP -DINCLUDE_VARIABLES -DG_OS_WIN32 -DINCLUDE_INTERNAL_SYMBOLS -DALL_FILES \
+- -DG_GNUC_MALLOC= -DG_GNUC_CONST= -DG_GNUC_NULL_TERMINATED= -DG_GNUC_NORETURN= \
+- -DG_GNUC_PRINTF=;G_GNUC_PRINTF gmodule.symbols >> gmodule.def
+-
++gmodule.def: gmodule.symbols
++ echo EXPORTS > gmodule.def
++ cl /EP -DINCLUDE_VARIABLES -DG_OS_WIN32 -DINCLUDE_INTERNAL_SYMBOLS -DALL_FILES \
++ -DG_GNUC_MALLOC= -DG_GNUC_CONST= -DG_GNUC_NULL_TERMINATED= -DG_GNUC_NORETURN= \
++ -DG_GNUC_PRINTF=;G_GNUC_PRINTF gmodule.symbols >> gmodule.def
++
+
+ gmoduleconf.h: gmoduleconf.h.win32
+- copy gmoduleconf.h.win32 gmoduleconf.h
++ $(GNUCOPY) gmoduleconf.h.win32 gmoduleconf.h
+
+ gmodule.res : gmodule.rc
+- rc -DBUILDNUMBER=0 -r -fo gmodule.res gmodule.rc
++ rc -DBUILDNUMBER=0 -r -i $(SOLARINC) -fo gmodule.res gmodule.rc
+
+ libgmodule-2.0-0.dll : $(gmodule_OBJECTS) gmodule.def gmodule.res
+ $(CC) $(CFLAGS) -LD -Fe$@ $(gmodule_OBJECTS) gmodule.res \
+ ..\glib\glib-2.0.lib $(LDFLAGS) /implib:gmodule-2.0.lib /def:gmodule.def
+
+ clean::
+- del gmoduleconf.h
++ rm gmoduleconf.h
+--- misc/glib-2.28.1/gobject/makefile.msc 2011-02-18 16:35:05.000000000 +0100
++++ misc/build/glib-2.28.1/gobject/makefile.msc 2011-03-04 12:33:52.399273100 +0100
+--- misc/glib-2.28.1/gobject/makefile.msc 2011-02-18 16:35:05.000000000 +0100
++++ misc/build/glib-2.28.1/gobject/makefile.msc 2011-03-09 09:29:52.712284300 +0100
+@@ -7,7 +7,7 @@
+
+ ################################################################
+
+-INCLUDES = -FImsvc_recommended_pragmas.h -I .. -I . -I ..\glib
++INCLUDES = -FImsvc_recommended_pragmas.h -I .. -I . -I ..\glib $(SOLARINC)
+ DEFINES = -DHAVE_CONFIG_H -DGOBJECT_COMPILATION -DG_LOG_DOMAIN=\"GLib-GObject\" \
+ -DG_ENABLE_DEBUG
+ # -DG_DISABLE_ASSERT -DG_DISABLE_CHECKS -DG_DISABLE_CAST_CHECKS
+@@ -16,7 +16,6 @@
+ all : \
+ glib-genmarshal.exe \
+ gmarshal.h \
+- gmarshal.c \
+ gmarshal.strings \
+ gobject-query.exe \
+ libgobject-2.0-0.dll \
+@@ -24,8 +23,10 @@
+ testgobject.exe
+
+ gobject_OBJECTS = \
++ gatomicarray.obj \
++ gbinding.obj \
+ gboxed.obj \
+ gclosure.obj \
+ genums.obj \
+ gobject.obj \
+ gparam.obj \
+@@ -47,21 +49,18 @@
+ -DG_GNUC_PRINTF=;G_GNUC_PRINTF gobject.symbols >> gobject.def
+
+ gobject.res : gobject.rc
+- rc -DBUILDNUMBER=0 -r -fo gobject.res gobject.rc
++ rc -DBUILDNUMBER=0 -r -i $(SOLARINC) -fo gobject.res gobject.rc
+
+ gmarshal.h : gmarshal.list glib-genmarshal.exe
+ echo #ifndef __G_MARSHAL_H__ > xgen-gmh
+ echo #define __G_MARSHAL_H__ >> xgen-gmh
+ glib-genmarshal --nostdinc --prefix=g_cclosure_marshal gmarshal.list --header >> xgen-gmh
+ echo #endif /* __G_MARSHAL_H__ */ >> xgen-gmh
+- copy xgen-gmh gmarshal.h
+-
+-gmarshal.c: gmarshal.list gmarshal.h glib-genmarshal.exe
+- glib-genmarshal --nostdinc --prefix=g_cclosure_marshal gmarshal.list --body > gmarshal.c
++ $(GNUCOPY) xgen-gmh gmarshal.h
+
+ libgobject-2.0-0.dll : $(gobject_OBJECTS) gobject.def gobject.res
+ $(CC) $(CFLAGS) -Fm -LD -Fe$@ $(gobject_OBJECTS) gobject.res \
+- ..\glib\glib-2.0.lib $(LDFLAGS) /implib:gobject-2.0.lib /def:gobject.def || del $@
++ ..\glib\glib-2.0.lib ..\gthread\gthread-2.0.lib $(LDFLAGS) /implib:gobject-2.0.lib /def:gobject.def || rm $@
+
+ gobject-2.28s.lib : $(gobject_OBJECTS)
+ lib /out:$@ $(gobject_OBJECTS)
+@@ -69,7 +68,7 @@
+ # link glib's static version to avoid installing
+ glib-genmarshal.exe : glib-genmarshal.c gmarshal.strings
+ $(CC) -Fe$@ $(CFLAGS) -UGOBJECT_COMPILATION glib-genmarshal.c \
+- ..\glib\glib-2.28s.lib user32.lib advapi32.lib ole32.lib shell32.lib $(INTL_LIBS)
++ ..\glib\glib-2.28s.lib user32.lib advapi32.lib ole32.lib shell32.lib $(INTL_LIBS)
+
+ gobject-query.exe : gobject-query.c libgobject-2.0-0.dll
+ $(CC) -Fe$@ $(CFLAGS) -UGOBJECT_COMPILATION gobject-query.c \
+--- misc/glib-2.28.1/gthread/makefile.msc 2011-02-18 16:35:00.000000000 +0100
++++ misc/build/glib-2.28.1/gthread/makefile.msc 2011-03-04 08:43:06.900355800 +0100
+@@ -7,7 +7,7 @@
+
+ ################################################################
+
+-INCLUDES = -FImsvc_recommended_pragmas.h -I .. -I . -I ..\glib
++INCLUDES = -FImsvc_recommended_pragmas.h -I .. -I . -I ..\glib $(SOLARINC)
+ DEFINES = -DHAVE_CONFIG_H -DG_LOG_DOMAIN=\"GThread\"
+ all : \
+ libgthread-2.0-0.dll
+@@ -19,7 +19,7 @@
+ $(CC) -c $(CFLAGS) gthread-impl.c
+
+ gthread.res : gthread.rc
+- rc -DBUILDNUMBER=0 -r -fo gthread.res gthread.rc
++ rc -DBUILDNUMBER=0 -r -i $(SOLARINC) -fo gthread.res gthread.rc
+
+ libgthread-2.0-0.dll : $(gthread_OBJECTS) gthread.def gthread.res
+ $(CC) $(CFLAGS) -LD -Fe$@ $(gthread_OBJECTS) gthread.res \
+--- misc/glib-2.28.1/makefile.msc 2009-04-01 01:04:20.000000000 +0200
++++ misc/build/glib-2.28.1/makefile.msc 2011-03-04 09:11:06.663432800 +0100
+@@ -1,7 +1,7 @@
+ ## Makefile for building the GLib dlls with Microsoft C
+ ## Use: nmake -f makefile.msc
+
+-PARTS = glib gmodule gthread gobject gio tests
++PARTS = "build\win32\dirent" glib gmodule gthread gobject gio tests
+
+ all : \
+ config.h \
+@@ -22,7 +22,7 @@
+ @cd ..
+
+ config.h: config.h.win32
+- copy config.h.win32 config.h
++ $(GNUCOPY) config.h.win32 config.h
+
+-glibconfig.h: glibconfig.h.win32
+- copy glibconfig.h.win32 glibconfig.h
++glibconfig.h: glib/glibconfig.h.win32
++ $(GNUCOPY) glib/glibconfig.h.win32 glib/glibconfig.h
+--- misc/glib-2.28.1/tests/makefile.msc 2011-02-18 16:35:43.000000000 +0100
++++ misc/build/glib-2.28.1/tests/makefile.msc 2011-03-04 08:33:02.079762100 +0100
+@@ -7,7 +7,7 @@
+
+ ################################################################
+
+-INCLUDES = -FImsvc_recommended_pragmas.h -I .. -I ..\glib -I ..\gmodule
++INCLUDES = -FImsvc_recommended_pragmas.h -I .. -I ..\glib -I ..\gmodule $(SOLARINC)
+ DEFINES = -DHAVE_CONFIG_H -DENABLE_REGEX
+
+ NONAUTOMATIC_TESTS = \
+@@ -79,7 +79,7 @@
+ libmoduletestplugin_a.dll \
+ libmoduletestplugin_b.dll
+
+-all : $(TESTS) $(NONAUTOMATIC_TESTS) $(DLLS)
++all :
+
+ .c.exe :
+ $(CC) $(CFLAGS) -c $<
+--- misc/glib-2.28.1/glib/glibconfig.h Wed Aug 20 14:33:55 2008
++++ misc/build/glib-2.28.1/glib/glibconfig.h Wed Aug 20 14:26:42 2008
+@@ -1 +1,285 @@
+-dummy
++/* glibconfig.h.win32.in. Originally merged from two versions of
++ * glibconfig.h, generated by the GLib configure script, for gcc and
++ * MSVC.
++ */
++
++/* glibconfig.h
++ *
++ * This is a generated file. Please modify 'glibconfig.h.win32.in'
++ */
++
++#ifndef __G_LIBCONFIG_H__
++#define __G_LIBCONFIG_H__
++
++#include <glib/gmacros.h>
++
++#include <limits.h>
++#include <float.h>
++
++G_BEGIN_DECLS
++
++#define G_MINFLOAT FLT_MIN
++#define G_MAXFLOAT FLT_MAX
++#define G_MINDOUBLE DBL_MIN
++#define G_MAXDOUBLE DBL_MAX
++#define G_MINSHORT SHRT_MIN
++#define G_MAXSHORT SHRT_MAX
++#define G_MAXUSHORT USHRT_MAX
++#define G_MININT INT_MIN
++#define G_MAXINT INT_MAX
++#define G_MAXUINT UINT_MAX
++#define G_MINLONG LONG_MIN
++#define G_MAXLONG LONG_MAX
++#define G_MAXULONG ULONG_MAX
++
++typedef signed char gint8;
++typedef unsigned char guint8;
++typedef signed short gint16;
++typedef unsigned short guint16;
++#define G_GINT16_MODIFIER "h"
++#define G_GINT16_FORMAT "hi"
++#define G_GUINT16_FORMAT "hu"
++typedef signed int gint32;
++typedef unsigned int guint32;
++#define G_GINT32_MODIFIER ""
++#define G_GINT32_FORMAT "i"
++#define G_GUINT32_FORMAT "u"
++#define G_HAVE_GINT64 1 /* deprecated, always true */
++
++#ifndef _MSC_VER
++G_GNUC_EXTENSION typedef signed long long gint64;
++G_GNUC_EXTENSION typedef unsigned long long guint64;
++#else /* _MSC_VER */
++typedef signed __int64 gint64;
++typedef unsigned __int64 guint64;
++#endif /* _MSC_VER */
++
++#ifndef _MSC_VER
++#define G_GINT64_CONSTANT(val) (G_GNUC_EXTENSION (val##LL))
++#else /* _MSC_VER */
++#define G_GINT64_CONSTANT(val) (val##i64)
++#endif /* _MSC_VER */
++#ifndef _MSC_VER
++#define G_GUINT64_CONSTANT(val) (G_GNUC_EXTENSION (val##ULL))
++#else /* _MSC_VER */
++#define G_GUINT64_CONSTANT(val) (val##Ui64)
++#endif /* _MSC_VER */
++#define G_GINT64_MODIFIER "I64"
++#define G_GINT64_FORMAT "I64i"
++#define G_GUINT64_FORMAT "I64u"
++
++#if defined(_WIN64) || defined(_M_X64) || defined(_M_AMD64)
++
++#define GLIB_SIZEOF_VOID_P 8
++#define GLIB_SIZEOF_LONG 4
++#define GLIB_SIZEOF_SIZE_T 8
++
++typedef signed long long gssize;
++typedef unsigned long long gsize;
++#define G_GSIZE_MODIFIER "I64"
++#define G_GSSIZE_FORMAT "I64d"
++#define G_GSIZE_FORMAT "I64u"
++
++#define G_MAXSIZE G_MAXUINT64
++#define G_MINSSIZE G_MININT64
++#define G_MAXSSIZE G_MAXINT64
++
++#else
++
++#define GLIB_SIZEOF_VOID_P 4
++#define GLIB_SIZEOF_LONG 4
++#define GLIB_SIZEOF_SIZE_T 4
++
++typedef signed int gssize;
++typedef unsigned int gsize;
++#define G_GSIZE_MODIFIER ""
++#define G_GSSIZE_FORMAT "i"
++#define G_GSIZE_FORMAT "u"
++
++#define G_MAXSIZE G_MAXUINT
++#define G_MINSSIZE G_MININT
++#define G_MAXSSIZE G_MAXINT
++
++#endif
++
++typedef gint64 goffset;
++#define G_MINOFFSET G_MININT64
++#define G_MAXOFFSET G_MAXINT64
++
++#define G_GOFFSET_MODIFIER G_GINT64_MODIFIER
++#define G_GOFFSET_FORMAT G_GINT64_FORMAT
++#define G_GOFFSET_CONSTANT(val) G_GINT64_CONSTANT(val)
++
++
++#ifndef _WIN64
++
++#define GPOINTER_TO_INT(p) ((gint) (p))
++#define GPOINTER_TO_UINT(p) ((guint) (p))
++
++#define GINT_TO_POINTER(i) ((gpointer) (i))
++#define GUINT_TO_POINTER(u) ((gpointer) (u))
++
++typedef signed int gintptr;
++typedef unsigned int guintptr;
++
++#define G_GINTPTR_MODIFIER ""
++#define G_GINTPTR_FORMAT "i"
++#define G_GUINTPTR_FORMAT "u"
++
++#else
++
++#define GPOINTER_TO_INT(p) ((gint) (gint64) (p))
++#define GPOINTER_TO_UINT(p) ((guint) (guint64) (p))
++
++#define GINT_TO_POINTER(i) ((gpointer) (gint64) (i))
++#define GUINT_TO_POINTER(u) ((gpointer) (guint64) (u))
++
++#ifndef _MSC_VER
++typedef signed long long gintptr;
++typedef unsigned long long guintptr;
++#else
++typedef signed __int64 gintptr;
++typedef unsigned __int64 guintptr;
++#endif
++
++#define G_GINTPTR_MODIFIER "I64"
++#define G_GINTPTR_FORMAT "I64i"
++#define G_GUINTPTR_FORMAT "I64u"
++
++#endif
++
++#ifdef NeXT /* @#%@! NeXTStep */
++# define g_ATEXIT(proc) (!atexit (proc))
++#else
++# define g_ATEXIT(proc) (atexit (proc))
++#endif
++
++#define g_memmove(dest,src,len) G_STMT_START { memmove ((dest), (src), (len)); } G_STMT_END
++
++#define GLIB_MAJOR_VERSION 2
++#define GLIB_MINOR_VERSION 28
++#define GLIB_MICRO_VERSION 1
++
++#define G_OS_WIN32
++#define G_PLATFORM_WIN32
++
++
++#ifndef _MSC_VER
++#define G_VA_COPY va_copy
++#endif /* not _MSC_VER */
++
++#ifdef __cplusplus
++#define G_HAVE_INLINE 1
++#else /* !__cplusplus */
++#ifndef _MSC_VER
++#define G_HAVE_INLINE 1
++#endif /* _MSC_VER */
++#define G_HAVE___INLINE 1
++#if !defined(_MSC_VER) && !defined(__DMC__)
++#define G_HAVE___INLINE__ 1
++#endif /* !_MSC_VER and !__DMC__ */
++#endif /* !__cplusplus */
++
++#define G_CAN_INLINE 1
++
++#ifndef _MSC_VER
++#define G_HAVE_ISO_VARARGS 1
++
++/* gcc-2.95.x supports both gnu style and ISO varargs, but if -ansi
++ * is passed ISO vararg support is turned off, and there is no work
++ * around to turn it on, so we unconditionally turn it off.
++ */
++#if __GNUC__ == 2 && __GNUC_MINOR__ == 95
++# undef G_HAVE_ISO_VARARGS
++#endif
++
++#define G_HAVE_GNUC_VARARGS 1
++#else /* _MSC_VER */
++/* varargs macros available since msvc8 (vs2005) */
++# if _MSC_VER >= 1400
++# define G_HAVE_ISO_VARARGS 1
++# endif
++#endif /* not _MSC_VER */
++#define G_HAVE_GROWING_STACK 0
++
++#define G_GNUC_INTERNAL
++
++#define G_THREADS_ENABLED
++#define G_THREADS_IMPL_WIN32
++typedef struct _GMutex* GStaticMutex;
++#define G_STATIC_MUTEX_INIT NULL
++#define g_static_mutex_get_mutex(mutex) \
++ (g_static_mutex_get_mutex_impl_shortcut (mutex))
++/* This represents a system thread as used by the implementation. An
++ * alien implementaion, as loaded by g_thread_init can only count on
++ * "sizeof (gpointer)" bytes to store their info. We however need more
++ * for some of our native implementations. */
++typedef union _GSystemThread GSystemThread;
++union _GSystemThread
++{
++#ifndef _WIN64
++ char data[4];
++#else
++ char data[8];
++#endif
++ double dummy_double;
++ void *dummy_pointer;
++ long dummy_long;
++};
++
++#define GINT16_TO_LE(val) ((gint16) (val))
++#define GUINT16_TO_LE(val) ((guint16) (val))
++#define GINT16_TO_BE(val) ((gint16) GUINT16_SWAP_LE_BE (val))
++#define GUINT16_TO_BE(val) (GUINT16_SWAP_LE_BE (val))
++#define GINT32_TO_LE(val) ((gint32) (val))
++#define GUINT32_TO_LE(val) ((guint32) (val))
++#define GINT32_TO_BE(val) ((gint32) GUINT32_SWAP_LE_BE (val))
++#define GUINT32_TO_BE(val) (GUINT32_SWAP_LE_BE (val))
++#define GINT64_TO_LE(val) ((gint64) (val))
++#define GUINT64_TO_LE(val) ((guint64) (val))
++#define GINT64_TO_BE(val) ((gint64) GUINT64_SWAP_LE_BE (val))
++#define GUINT64_TO_BE(val) (GUINT64_SWAP_LE_BE (val))
++#define GLONG_TO_LE(val) ((glong) GINT32_TO_LE (val))
++#define GULONG_TO_LE(val) ((gulong) GUINT32_TO_LE (val))
++#define GLONG_TO_BE(val) ((glong) GINT32_TO_BE (val))
++#define GULONG_TO_BE(val) ((gulong) GUINT32_TO_BE (val))
++#define GINT_TO_LE(val) ((gint) GINT32_TO_LE (val))
++#define GUINT_TO_LE(val) ((guint) GUINT32_TO_LE (val))
++#define GINT_TO_BE(val) ((gint) GINT32_TO_BE (val))
++#define GUINT_TO_BE(val) ((guint) GUINT32_TO_BE (val))
++#define GSIZE_TO_LE(val) ((gsize) GUINT32_TO_LE (val))
++#define GSSIZE_TO_LE(val) ((gssize) GINT32_TO_LE (val))
++#define GSIZE_TO_BE(val) ((gsize) GUINT32_TO_BE (val))
++#define GSSIZE_TO_BE(val) ((gssize) GINT32_TO_BE (val))
++#define G_BYTE_ORDER G_LITTLE_ENDIAN
++
++#define GLIB_SYSDEF_POLLIN =1
++#define GLIB_SYSDEF_POLLOUT =4
++#define GLIB_SYSDEF_POLLPRI =2
++#define GLIB_SYSDEF_POLLHUP =16
++#define GLIB_SYSDEF_POLLERR =8
++#define GLIB_SYSDEF_POLLNVAL =32
++
++#define G_MODULE_SUFFIX "dll"
++
++/* A GPid is an abstraction for a process "handle". It is *not* an
++ * abstraction for a process identifier in general. GPid is used in
++ * GLib only for descendant processes spawned with the g_spawn*
++ * functions. On POSIX there is no "process handle" concept as such,
++ * but on Windows a GPid is a handle to a process, a kind of pointer,
++ * not a process identifier.
++ */
++typedef void * GPid;
++
++#define GLIB_SYSDEF_AF_UNIX 1
++#define GLIB_SYSDEF_AF_INET 2
++#define GLIB_SYSDEF_AF_INET6 23
++
++#define GLIB_SYSDEF_MSG_OOB 1
++#define GLIB_SYSDEF_MSG_PEEK 2
++#define GLIB_SYSDEF_MSG_DONTROUTE 4
++
++G_END_DECLS
++
++#endif /* GLIBCONFIG_H */
++
+--- misc/glib-2.28.1/gmodule/gmoduleconf.h Wed Aug 20 14:33:55 2008
++++ misc/build/glib-2.28.1/gmodule/gmoduleconf.h Wed Aug 20 14:26:42 2008
+@@ -1 +1,45 @@
+-dummy
++/* GMODULE - GLIB wrapper code for dynamic module loading
++ * Copyright (C) 1998 Tim Janik
++ *
++ * This library is free software; you can redistribute it and/or
++ * modify it under the terms of the GNU Lesser General Public
++ * License as published by the Free Software Foundation; either
++ * version 2 of the License, or (at your option) any later version.
++ *
++ * This library is distributed in the hope that it will be useful,
++ * but WITHOUT ANY WARRANTY; without even the implied warranty of
++ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
++ * Lesser General Public License for more details.
++ *
++ * You should have received a copy of the GNU Lesser General Public
++ * License along with this library; if not, write to the
++ * Free Software Foundation, Inc., 59 Temple Place - Suite 330,
++ * Boston, MA 02111-1307, USA.
++ */
++#ifndef __G_MODULE_CONF_H__
++#define __G_MODULE_CONF_H__
++
++
++#ifdef __cplusplus
++extern "C" {
++#endif /* __cplusplus */
++
++
++#define G_MODULE_IMPL_NONE 0
++#define G_MODULE_IMPL_DL 1
++#define G_MODULE_IMPL_DLD 2
++#define G_MODULE_IMPL_WIN32 3
++#define G_MODULE_IMPL_OS2 4
++#define G_MODULE_IMPL_BEOS 5
++#define G_MODULE_IMPL_DYLD 6
++
++#define G_MODULE_IMPL G_MODULE_IMPL_WIN32
++#undef G_MODULE_HAVE_DLERROR
++
++#ifdef __cplusplus
++}
++#endif /* __cplusplus */
++
++
++#endif /* __G_MODULE_CONF_H__ */
++
+--- misc/glib-2.28.1/config.h Wed Aug 20 14:33:55 2008
++++ misc/build/glib-2.28.1/config.h Wed Aug 20 14:26:42 2008
+@@ -1 +1,834 @@
+-dummy
++/* config.h.win32.in Merged from two versions generated by configure for gcc and MSVC. */
++/* config.h. Generated by configure. */
++/* config.h.in. Generated from configure.ac by autoheader. */
++
++/* Define if building universal (internal helper macro) */
++/* #undef AC_APPLE_UNIVERSAL_BUILD */
++
++/* define if asm blocks can use numeric local labels */
++/* #undef ASM_NUMERIC_LABELS */
++
++/* poll doesn't work on devices */
++#define BROKEN_POLL 1
++
++/* Define to one of `_getb67', `GETB67', `getb67' for Cray-2 and Cray-YMP
++ systems. This function is required for `alloca.c' support on those systems.
++ */
++/* #undef CRAY_STACKSEG_END */
++
++/* Define to 1 if using `alloca.c'. */
++/* #undef C_ALLOCA */
++
++/* Whether to disable memory pools */
++/* #undef DISABLE_MEM_POOLS */
++
++/* Whether to enable GC friendliness by default */
++/* #undef ENABLE_GC_FRIENDLY_DEFAULT */
++
++/* always defined to indicate that i18n is enabled */
++#define ENABLE_NLS 1
++
++/* include GRegex */
++#define ENABLE_REGEX /**/
++
++/* Define the gettext package to be used */
++#define GETTEXT_PACKAGE "glib20"
++
++/* Define to the GLIB binary age */
++#define GLIB_BINARY_AGE 2801
++
++/* Byte contents of gmutex */
++/* #undef GLIB_BYTE_CONTENTS_GMUTEX */
++
++/* Define to the GLIB interface age */
++#define GLIB_INTERFACE_AGE 1
++
++/* Define the location where the catalogs will be installed */
++#define GLIB_LOCALE_DIR "NONE/share/locale"
++
++/* Define to the GLIB major version */
++#define GLIB_MAJOR_VERSION 2
++
++/* Define to the GLIB micro version */
++#define GLIB_MICRO_VERSION 1
++
++/* Define to the GLIB minor version */
++#define GLIB_MINOR_VERSION 28
++
++/* The size of gmutex, as computed by sizeof. */
++/* #undef GLIB_SIZEOF_GMUTEX */
++
++/* The size of system_thread, as computed by sizeof. */
++#define GLIB_SIZEOF_SYSTEM_THREAD 4
++
++/* alpha atomic implementation */
++/* #undef G_ATOMIC_ALPHA */
++
++/* arm atomic implementation */
++/* #undef G_ATOMIC_ARM */
++
++/* cris atomic implementation */
++/* #undef G_ATOMIC_CRIS */
++
++/* crisv32 atomic implementation */
++/* #undef G_ATOMIC_CRISV32 */
++
++/* i486 atomic implementation */
++#ifndef _MSC_VER
++#define G_ATOMIC_I486 1
++#endif /* _MSC_VER */
++
++/* ia64 atomic implementation */
++/* #undef G_ATOMIC_IA64 */
++
++/* powerpc atomic implementation */
++/* #undef G_ATOMIC_POWERPC */
++
++/* s390 atomic implementation */
++/* #undef G_ATOMIC_S390 */
++
++/* sparcv9 atomic implementation */
++/* #undef G_ATOMIC_SPARCV9 */
++
++/* x86_64 atomic implementation */
++/* #undef G_ATOMIC_X86_64 */
++
++/* Have inline keyword */
++#ifndef _MSC_VER
++#define G_HAVE_INLINE 1
++#else /* _MSC_VER */
++/* #undef G_HAVE_INLINE */
++#endif /* _MSC_VER */
++
++/* Have __inline keyword */
++#define G_HAVE___INLINE 1
++
++/* Have __inline__ keyword */
++#if !defined(_MSC_VER) && !defined(__DMC__)
++#define G_HAVE___INLINE__ 1
++#else /* _MSC_VER or __DMC__ */
++/* #undef G_HAVE___INLINE__ */
++#endif /* _MSC_VER or __DMC__ */
++
++/* Source file containing theread implementation */
++#define G_THREAD_SOURCE "gthread-win32.c"
++
++/* A 'va_copy' style function */
++#ifndef _MSC_VER
++#define G_VA_COPY va_copy
++#else /* _MSC_VER */
++/* #undef G_VA_COPY */
++#endif /* _MSC_VER */
++
++/* 'va_lists' cannot be copies as values */
++/* #undef G_VA_COPY_AS_ARRAY */
++
++/* Define to 1 if you have `alloca', as a function or macro. */
++#define HAVE_ALLOCA 1
++
++/* Define to 1 if you have <alloca.h> and it should be used (not on Ultrix).
++ */
++/* #undef HAVE_ALLOCA_H */
++
++/* Define to 1 if you have the <arpa/nameser_compat.h> header file. */
++/* #undef HAVE_ARPA_NAMESER_COMPAT_H */
++
++/* Define to 1 if you have the `atexit' function. */
++#define HAVE_ATEXIT 1
++
++/* Define to 1 if you have the <attr/xattr.h> header file. */
++/* #undef HAVE_ATTR_XATTR_H */
++
++/* Define to 1 if you have the `bind_textdomain_codeset' function. */
++#define HAVE_BIND_TEXTDOMAIN_CODESET 1
++
++/* Define if you have a version of the snprintf function with semantics as
++ specified by the ISO C99 standard. */
++/* #undef HAVE_C99_SNPRINTF */
++
++/* Define if you have a version of the vsnprintf function with semantics as
++ specified by the ISO C99 standard. */
++/* #undef HAVE_C99_VSNPRINTF */
++
++/* define to 1 if Carbon is available */
++/* #undef HAVE_CARBON */
++
++/* Define to 1 if you have the `chown' function. */
++/* #undef HAVE_CHOWN */
++
++/* Define to 1 if you have the `clock_gettime' function. */
++/* #undef HAVE_CLOCK_GETTIME */
++
++/* Have nl_langinfo (CODESET) */
++/* #undef HAVE_CODESET */
++
++/* Define to 1 if you have the <crt_externs.h> header file. */
++/* #undef HAVE_CRT_EXTERNS_H */
++
++/* Define if dbus-1 is available */
++/* #undef HAVE_DBUS1 */
++
++/* Define to 1 if you have the `dcgettext' function. */
++#define HAVE_DCGETTEXT 1
++
++/* Define to 1 if you have the <dirent.h> header file. */
++#ifndef _MSC_VER
++#define HAVE_DIRENT_H 1
++#else
++/* #undef HAVE_DIRENT_H */
++#endif
++
++/* Define to 1 if you have the <dlfcn.h> header file. */
++/* #undef HAVE_DLFCN_H */
++
++/* Define to 1 if you don't have `vprintf' but do have `_doprnt.' */
++/* #undef HAVE_DOPRNT */
++
++/* define for working do while(0) macros */
++#define HAVE_DOWHILE_MACROS 1
++
++/* Define to 1 if you have the `endmntent' function. */
++/* #undef HAVE_ENDMNTENT */
++
++/* Define to 1 if you have the `endservent' function. */
++/* #undef HAVE_ENDSERVENT */
++
++/* Define if we have FAM */
++/* #undef HAVE_FAM */
++
++/* Define to 1 if you have the <fam.h> header file. */
++/* #undef HAVE_FAM_H */
++
++/* Define if we have FAMNoExists in fam */
++/* #undef HAVE_FAM_NO_EXISTS */
++
++/* Define to 1 if you have the `fchmod' function. */
++/* #undef HAVE_FCHMOD */
++
++/* Define to 1 if you have the `fchown' function. */
++/* #undef HAVE_FCHOWN */
++
++/* Define to 1 if you have the `fdwalk' function. */
++/* #undef HAVE_FDWALK */
++
++/* Define to 1 if you have the <float.h> header file. */
++#define HAVE_FLOAT_H 1
++
++/* Define to 1 if you have the <fstab.h> header file. */
++/* #undef HAVE_FSTAB_H */
++
++/* Define to 1 if you have the `fsync' function. */
++/* #undef HAVE_FSYNC */
++
++/* we have the futex(2) system call */
++/* #undef HAVE_FUTEX */
++
++/* Define to 1 if you have the `getcwd' function. */
++#define HAVE_GETCWD 1
++
++/* Define to 1 if you have the `getc_unlocked' function. */
++/* #undef HAVE_GETC_UNLOCKED */
++
++/* Define to 1 if you have the `getgrgid' function. */
++/* #undef HAVE_GETGRGID */
++
++/* Define to 1 if you have the `getmntent_r' function. */
++/* #undef HAVE_GETMNTENT_R */
++
++/* Define to 1 if you have the `getmntinfo' function. */
++/* #undef HAVE_GETMNTINFO */
++
++/* Define to 1 if you have the `getprotobyname_r' function. */
++/* #undef HAVE_GETPROTOBYNAME_R */
++
++/* Define to 1 if you have the `getpwuid' function. */
++/* #undef HAVE_GETPWUID */
++
++/* Define if the GNU gettext() function is already present or preinstalled. */
++#define HAVE_GETTEXT 1
++
++/* Define to 1 if you have the `gmtime_r' function. */
++/* #undef HAVE_GMTIME_R */
++
++/* define to use system printf */
++/* #undef HAVE_GOOD_PRINTF */
++
++/* Define to 1 if you have the <grp.h> header file. */
++/* #undef HAVE_GRP_H */
++
++/* Define to 1 if you have the `hasmntopt' function. */
++/* #undef HAVE_HASMNTOPT */
++
++/* Define to 1 if you have the `inotify_init1' function. */
++/* #undef HAVE_INOTIFY_INIT1 */
++
++/* define to support printing 64-bit integers with format I64 */
++#define HAVE_INT64_AND_I64 1
++
++/* Define if you have the 'intmax_t' type in <stdint.h> or <inttypes.h>. */
++#ifndef _MSC_VER
++#define HAVE_INTMAX_T 1
++#else /* _MSC_VER */
++/* #undef HAVE_INTMAX_T */
++#endif /* _MSC_VER */
++
++/* Define to 1 if you have the <inttypes.h> header file. */
++#ifndef _MSC_VER
++#define HAVE_INTTYPES_H 1
++#else /* _MSC_VER */
++/* #undef HAVE_INTTYPES_H */
++#endif /* _MSC_VER */
++
++/* Define if <inttypes.h> exists, doesn't clash with <sys/types.h>, and
++ declares uintmax_t. */
++#ifndef _MSC_VER
++#define HAVE_INTTYPES_H_WITH_UINTMAX 1
++#else /* _MSC_VER */
++/* #undef HAVE_INTTYPES_H_WITH_UINTMAX */
++#endif /* _MSC_VER */
++
++/* Define if you have <langinfo.h> and nl_langinfo(CODESET). */
++/* #undef HAVE_LANGINFO_CODESET */
++
++/* Define to 1 if you have the `lchmod' function. */
++/* #undef HAVE_LCHMOD */
++
++/* Define to 1 if you have the `lchown' function. */
++/* #undef HAVE_LCHOWN */
++
++/* Define if your <locale.h> file defines LC_MESSAGES. */
++/* #undef HAVE_LC_MESSAGES */
++
++/* Define to 1 if you have the <limits.h> header file. */
++#define HAVE_LIMITS_H 1
++
++/* Define to 1 if you have the `link' function. */
++/* #undef HAVE_LINK */
++
++/* Define to 1 if you have the <locale.h> header file. */
++#define HAVE_LOCALE_H 1
++
++/* Define to 1 if you have the `localtime_r' function. */
++/* #undef HAVE_LOCALTIME_R */
++
++/* Define if you have the 'long double' type. */
++#define HAVE_LONG_DOUBLE 1
++
++/* Define if you have the 'long long' type. */
++#ifndef _MSC_VER
++#define HAVE_LONG_LONG 1
++#else /* _MSC_VER */
++/* #undef HAVE_LONG_LONG */
++#endif /* _MSC_VER */
++
++/* define if system printf can print long long */
++#define HAVE_LONG_LONG_FORMAT 1
++
++/* Define to 1 if you have the `lstat' function. */
++/* #undef HAVE_LSTAT */
++
++/* Define to 1 if you have the <malloc.h> header file. */
++#define HAVE_MALLOC_H 1
++
++/* Define to 1 if you have the `memalign' function. */
++/* #undef HAVE_MEMALIGN */
++
++/* Define to 1 if you have the `memmem' function. */
++/* #undef HAVE_MEMMEM */
++
++/* Define to 1 if you have the `memmove' function. */
++#define HAVE_MEMMOVE 1
++
++/* Define to 1 if you have the <memory.h> header file. */
++#define HAVE_MEMORY_H 1
++
++/* Define to 1 if you have the `mmap' function. */
++/* #undef HAVE_MMAP */
++
++/* Define to 1 if you have the <mntent.h> header file. */
++/* #undef HAVE_MNTENT_H */
++
++/* Have a monotonic clock */
++/* #undef HAVE_MONOTONIC_CLOCK */
++
++/* Define to 1 if you have the `nanosleep' function. */
++/* #undef HAVE_NANOSLEEP */
++
++/* Define to 1 if you have the <netdb.h> header file. */
++/* #undef HAVE_NETDB_H */
++
++/* Have non-POSIX function getgrgid_r */
++/* #undef HAVE_NONPOSIX_GETGRGID_R */
++
++/* Have non-POSIX function getpwuid_r */
++/* #undef HAVE_NONPOSIX_GETPWUID_R */
++
++/* Define to 1 if you have the `nsleep' function. */
++/* #undef HAVE_NSLEEP */
++
++/* Define to 1 if you have the `on_exit' function. */
++/* #undef HAVE_ON_EXIT */
++
++/* Define to 1 if you have the `pipe2' function. */
++/* #undef HAVE_PIPE2 */
++
++/* Define to 1 if you have the `poll' function. */
++/* #undef HAVE_POLL */
++
++/* Have POSIX function getgrgid_r */
++/* #undef HAVE_POSIX_GETGRGID_R */
++
++/* Have POSIX function getpwuid_r */
++/* #undef HAVE_POSIX_GETPWUID_R */
++
++/* Define to 1 if you have the `posix_memalign' function. */
++/* #undef HAVE_POSIX_MEMALIGN */
++
++/* Have function pthread_attr_setstacksize */
++/* #undef HAVE_PTHREAD_ATTR_SETSTACKSIZE */
++
++/* Define to 1 if the system has the type `ptrdiff_t'. */
++#define HAVE_PTRDIFF_T 1
++
++/* Define to 1 if you have the <pwd.h> header file. */
++/* #undef HAVE_PWD_H */
++
++/* Define to 1 if you have the `readlink' function. */
++/* #undef HAVE_READLINK */
++
++/* Define to 1 if you have the <sched.h> header file. */
++/* #undef HAVE_SCHED_H */
++
++/* Define to 1 if libselinux is available */
++/* #undef HAVE_SELINUX */
++
++/* Define to 1 if you have the <selinux/selinux.h> header file. */
++/* #undef HAVE_SELINUX_SELINUX_H */
++
++/* Define to 1 if you have the `setenv' function. */
++/* #undef HAVE_SETENV */
++
++/* Define to 1 if you have the `setlocale' function. */
++#define HAVE_SETLOCALE 1
++
++/* Define to 1 if you have the `setmntent' function. */
++/* #undef HAVE_SETMNTENT */
++
++/* Define to 1 if you have the `setresuid' function. */
++/* #undef HAVE_SETRESUID */
++
++/* Define to 1 if you have the `setreuid' function. */
++/* #undef HAVE_SETREUID */
++
++/* Define to 1 if you have the `snprintf' function. */
++#ifndef _MSC_VER
++#define HAVE_SNPRINTF 1
++#ifdef __DMC__
++#define snprintf _snprintf
++#endif
++#else /* _MSC_VER */
++/* #undef HAVE_SNPRINTF */
++#endif /* _MSC_VER */
++
++/* Define to 1 if you have the `splice' function. */
++/* #undef HAVE_SPLICE */
++
++/* Define to 1 if you have the `statfs' function. */
++/* #undef HAVE_STATFS */
++
++/* Define to 1 if you have the `statvfs' function. */
++/* #undef HAVE_STATVFS */
++
++/* Define to 1 if you have the <stddef.h> header file. */
++#define HAVE_STDDEF_H 1
++
++/* Define to 1 if you have the <stdint.h> header file. */
++#ifndef _MSC_VER
++#define HAVE_STDINT_H 1
++#else /* _MSC_VER */
++/* #undef HAVE_STDINT_H */
++#endif /* _MSC_VER */
++
++/* Define if <stdint.h> exists, doesn't clash with <sys/types.h>, and declares
++ uintmax_t. */
++#ifndef _MSC_VER
++#define HAVE_STDINT_H_WITH_UINTMAX 1
++#else /* _MSC_VER */
++/* #undef HAVE_STDINT_H_WITH_UINTMAX */
++#endif /* _MSC_VER */
++
++/* Define to 1 if you have the <stdlib.h> header file. */
++#define HAVE_STDLIB_H 1
++
++/* Define to 1 if you have the `stpcpy' function. */
++/* #undef HAVE_STPCPY */
++
++/* Define to 1 if you have the `strcasecmp' function. */
++#if !defined(_MSC_VER) && !defined(__DMC__)
++#define HAVE_STRCASECMP 1
++#else /* _MSC_VER or __DMC__ */
++/* #undef HAVE_STRCASECMP */
++#endif /* _MSC_VER or __DMC__ */
++
++/* Define to 1 if you have the `strerror' function. */
++#define HAVE_STRERROR 1
++
++/* Define to 1 if you have the <strings.h> header file. */
++#if !defined(_MSC_VER) && !defined(__DMC__)
++#define HAVE_STRINGS_H 1
++#else /* _MSC_VER or __DMC__ */
++/* #undef HAVE_STRINGS_H */
++#endif /* _MSC_VER or __DMC__ */
++
++/* Define to 1 if you have the <string.h> header file. */
++#define HAVE_STRING_H 1
++
++/* Have functions strlcpy and strlcat */
++/* #undef HAVE_STRLCPY */
++
++/* Define to 1 if you have the `strncasecmp' function. */
++#if !defined(_MSC_VER) && !defined(__DMC__)
++#define HAVE_STRNCASECMP 1
++#else /* _MSC_VER or __DMC__ */
++/* #undef HAVE_STRNCASECMP */
++#endif /* _MSC_VER or __DMC__ */
++
++/* Define to 1 if you have the `strndup' function. */
++/* #undef HAVE_STRNDUP */
++
++/* Define to 1 if you have the `strsignal' function. */
++/* #undef HAVE_STRSIGNAL */
++
++/* Define to 1 if `f_bavail' is member of `struct statfs'. */
++/* #undef HAVE_STRUCT_STATFS_F_BAVAIL */
++
++/* Define to 1 if `f_fstypename' is member of `struct statfs'. */
++/* #undef HAVE_STRUCT_STATFS_F_FSTYPENAME */
++
++/* Define to 1 if `f_basetype' is member of `struct statvfs'. */
++/* #undef HAVE_STRUCT_STATVFS_F_BASETYPE */
++
++/* Define to 1 if `st_atimensec' is member of `struct stat'. */
++/* #undef HAVE_STRUCT_STAT_ST_ATIMENSEC */
++
++/* Define to 1 if `st_atim.tv_nsec' is member of `struct stat'. */
++/* #undef HAVE_STRUCT_STAT_ST_ATIM_TV_NSEC */
++
++/* Define to 1 if `st_blksize' is member of `struct stat'. */
++/* #undef HAVE_STRUCT_STAT_ST_BLKSIZE */
++
++/* Define to 1 if `st_blocks' is member of `struct stat'. */
++/* #undef HAVE_STRUCT_STAT_ST_BLOCKS */
++
++/* Define to 1 if `st_ctimensec' is member of `struct stat'. */
++/* #undef HAVE_STRUCT_STAT_ST_CTIMENSEC */
++
++/* Define to 1 if `st_ctim.tv_nsec' is member of `struct stat'. */
++/* #undef HAVE_STRUCT_STAT_ST_CTIM_TV_NSEC */
++
++/* Define to 1 if `st_mtimensec' is member of `struct stat'. */
++/* #undef HAVE_STRUCT_STAT_ST_MTIMENSEC */
++
++/* Define to 1 if `st_mtim.tv_nsec' is member of `struct stat'. */
++/* #undef HAVE_STRUCT_STAT_ST_MTIM_TV_NSEC */
++
++/* Define to 1 if you have the `symlink' function. */
++/* #undef HAVE_SYMLINK */
++
++/* Define to 1 if you have the <sys/inotify.h> header file. */
++/* #undef HAVE_SYS_INOTIFY_H */
++
++/* Define to 1 if you have the <sys/mntctl.h> header file. */
++/* #undef HAVE_SYS_MNTCTL_H */
++
++/* Define to 1 if you have the <sys/mnttab.h> header file. */
++/* #undef HAVE_SYS_MNTTAB_H */
++
++/* Define to 1 if you have the <sys/mount.h> header file. */
++/* #undef HAVE_SYS_MOUNT_H */
++
++/* Define to 1 if you have the <sys/param.h> header file. */
++#if !defined(_MSC_VER) && !defined(__DMC__)
++#define HAVE_SYS_PARAM_H 1
++#else /* _MSC_VER or __DMC__ */
++/* #undef HAVE_SYS_PARAM_H */
++#endif /* _MSC_VER or __DMC__ */
++
++/* Define to 1 if you have the <sys/poll.h> header file. */
++/* #undef HAVE_SYS_POLL_H */
++
++/* Define to 1 if you have the <sys/prctl.h> header file. */
++/* #undef HAVE_SYS_PRCTL_H */
++
++/* Define to 1 if you have the <sys/resource.h> header file. */
++/* #undef HAVE_SYS_RESOURCE_H */
++
++/* found fd_set in sys/select.h */
++/* #undef HAVE_SYS_SELECT_H */
++
++/* Define to 1 if you have the <sys/statfs.h> header file. */
++/* #undef HAVE_SYS_STATFS_H */
++
++/* Define to 1 if you have the <sys/statvfs.h> header file. */
++/* #undef HAVE_SYS_STATVFS_H */
++
++/* Define to 1 if you have the <sys/stat.h> header file. */
++#define HAVE_SYS_STAT_H 1
++
++/* Define to 1 if you have the <sys/sysctl.h> header file. */
++/* #undef HAVE_SYS_SYSCTL_H */
++
++/* Define to 1 if you have the <sys/times.h> header file. */
++/* #undef HAVE_SYS_TIMES_H */
++
++/* Define to 1 if you have the <sys/time.h> header file. */
++#ifndef _MSC_VER
++#define HAVE_SYS_TIME_H 1
++#else /* _MSC_VER */
++/* #undef HAVE_SYS_TIME_H */
++#endif /* _MSC_VER */
++
++/* Define to 1 if you have the <sys/types.h> header file. */
++#define HAVE_SYS_TYPES_H 1
++
++/* Define to 1 if you have the <sys/uio.h> header file. */
++/* #undef HAVE_SYS_UIO_H */
++
++/* Define to 1 if you have the <sys/vfstab.h> header file. */
++/* #undef HAVE_SYS_VFSTAB_H */
++
++/* Define to 1 if you have the <sys/vfs.h> header file. */
++/* #undef HAVE_SYS_VFS_H */
++
++/* Define to 1 if you have the <sys/vmount.h> header file. */
++/* #undef HAVE_SYS_VMOUNT_H */
++
++/* Define to 1 if you have the <sys/wait.h> header file. */
++/* #undef HAVE_SYS_WAIT_H */
++
++/* Define to 1 if you have the <sys/xattr.h> header file. */
++/* #undef HAVE_SYS_XATTR_H */
++
++/* Define to 1 if you have the `timegm' function. */
++/* #undef HAVE_TIMEGM */
++
++/* Define to 1 if you have the <unistd.h> header file. */
++#ifndef _MSC_VER
++#define HAVE_UNISTD_H 1
++#else /* _MSC_VER */
++/* #undef HAVE_UNISTD_H */
++#endif /* _MSC_VER */
++
++/* Define if your printf function family supports positional parameters as
++ specified by Unix98. */
++/* #undef HAVE_UNIX98_PRINTF */
++
++/* Define to 1 if you have the `unsetenv' function. */
++/* #undef HAVE_UNSETENV */
++
++/* Define to 1 if you have the `utimes' function. */
++/* #undef HAVE_UTIMES */
++
++/* Define to 1 if you have the `valloc' function. */
++/* #undef HAVE_VALLOC */
++
++/* Define to 1 if you have the <values.h> header file. */
++#if !defined(_MSC_VER) && !defined(__DMC__)
++#define HAVE_VALUES_H 1
++#else /* _MSC_VER or __DMC__ */
++/* #undef HAVE_VALUES_H */
++#endif /* _MSC_VER or __DMC__ */
++
++/* Define to 1 if you have the `vasprintf' function. */
++#define HAVE_VASPRINTF 1
++
++/* Define to 1 if you have the `vprintf' function. */
++#define HAVE_VPRINTF 1
++
++/* Define to 1 if you have the `vsnprintf' function. */
++#ifndef _MSC_VER
++#define HAVE_VSNPRINTF 1
++#ifdef __DMC__
++#define vsnprintf _vsnprintf
++#endif
++#else /* _MSC_VER */
++/* #undef HAVE_VSNPRINTF */
++#endif /* _MSC_VER */
++
++/* Define if you have the 'wchar_t' type. */
++#define HAVE_WCHAR_T 1
++
++/* Define to 1 if you have the `wcslen' function. */
++#define HAVE_WCSLEN 1
++
++/* Define if you have the 'wint_t' type. */
++#define HAVE_WINT_T 1
++
++/* Have a working bcopy */
++/* #undef HAVE_WORKING_BCOPY */
++
++/* Define to 1 if you have the <wspiapi.h> header file. */
++#ifndef _MSC_VER
++/* #undef HAVE_WSPIAPI_H */
++#else
++#define HAVE_WSPIAPI_H 1
++#endif
++
++/* Define to 1 if xattr is available */
++/* #undef HAVE_XATTR */
++
++/* Define to 1 if xattr API uses XATTR_NOFOLLOW */
++/* #undef HAVE_XATTR_NOFOLLOW */
++
++/* Define to 1 if you have the `_NSGetEnviron' function. */
++/* #undef HAVE__NSGETENVIRON */
++
++/* Define to the sub-directory in which libtool stores uninstalled libraries.
++ */
++#define LT_OBJDIR ".libs/"
++
++/* Do we cache iconv descriptors */
++#define NEED_ICONV_CACHE 1
++
++/* didn't find fd_set */
++#define NO_FD_SET 1
++
++/* Define to 1 if your C compiler doesn't accept -c and -o together. */
++/* #undef NO_MINUS_C_MINUS_O */
++
++/* global 'sys_errlist' not found */
++#define NO_SYS_ERRLIST 1
++
++/* global 'sys_siglist' not found */
++#define NO_SYS_SIGLIST 1
++
++/* global 'sys_siglist' not declared */
++#define NO_SYS_SIGLIST_DECL 1
++
++/* Define to the address where bug reports for this package should be sent. */
++#define PACKAGE_BUGREPORT "http://bugzilla.gnome.org/enter_bug.cgi?product=glib"
++
++/* Define to the full name of this package. */
++#define PACKAGE_NAME "glib"
++
++/* Define to the full name and version of this package. */
++#define PACKAGE_STRING "glib 2.28.1"
++
++/* Define to the one symbol short name of this package. */
++#define PACKAGE_TARNAME "glib"
++
++/* Define to the version of this package. */
++#define PACKAGE_VERSION "2.28.1"
++
++/* Maximum POSIX RT priority */
++/* #undef POSIX_MAX_PRIORITY */
++
++/* define if posix_memalign() can allocate any size */
++/* #undef POSIX_MEMALIGN_WITH_COMPLIANT_ALLOCS */
++
++/* Minimum POSIX RT priority */
++/* #undef POSIX_MIN_PRIORITY */
++
++/* The POSIX RT yield function */
++/* #undef POSIX_YIELD_FUNC */
++
++/* whether realloc (NULL,) works */
++#define REALLOC_0_WORKS 1
++
++/* Define if you have correct malloc prototypes */
++#ifndef _MSC_VER
++#define SANE_MALLOC_PROTOS 1
++#else /* _MSC_VER */
++/* #undef SANE_MALLOC_PROTOS */
++#endif /* _MSC_VER */
++
++/* The size of `char', as computed by sizeof. */
++#define SIZEOF_CHAR 1
++
++/* The size of `int', as computed by sizeof. */
++#define SIZEOF_INT 4
++
++/* The size of `long', as computed by sizeof. */
++#define SIZEOF_LONG 4
++
++/* The size of `long long', as computed by sizeof. */
++#ifndef _MSC_VER
++#define SIZEOF_LONG_LONG 8
++#else /* _MSC_VER */
++#define SIZEOF_LONG_LONG 0
++#endif /* _MSC_VER */
++
++/* The size of `short', as computed by sizeof. */
++#define SIZEOF_SHORT 2
++
++/* The size of `size_t', as computed by sizeof. */
++#define SIZEOF_SIZE_T 4
++
++/* The size of `void *', as computed by sizeof. */
++#define SIZEOF_VOID_P 4
++
++/* The size of `__int64', as computed by sizeof. */
++#define SIZEOF___INT64 8
++
++/* If using the C implementation of alloca, define if you know the
++ direction of stack growth for your system; otherwise it will be
++ automatically deduced at runtime.
++ STACK_DIRECTION > 0 => grows toward higher addresses
++ STACK_DIRECTION < 0 => grows toward lower addresses
++ STACK_DIRECTION = 0 => direction of growth unknown */
++/* #undef STACK_DIRECTION */
++
++/* Number of arguments to statfs() */
++/* #undef STATFS_ARGS */
++
++/* Define to 1 if you have the ANSI C header files. */
++#define STDC_HEADERS 1
++
++/* Using GNU libiconv */
++/* #undef USE_LIBICONV_GNU */
++
++/* Using a native implementation of iconv in a separate library */
++#define USE_LIBICONV_NATIVE 1
++
++/* using the system-supplied PCRE library */
++/* #undef USE_SYSTEM_PCRE */
++
++/* Define WORDS_BIGENDIAN to 1 if your processor stores words with the most
++ significant byte first (like Motorola and SPARC, unlike Intel). */
++#if defined AC_APPLE_UNIVERSAL_BUILD
++# if defined __BIG_ENDIAN__
++# define WORDS_BIGENDIAN 1
++# endif
++#else
++# ifndef WORDS_BIGENDIAN
++/* # undef WORDS_BIGENDIAN */
++# endif
++#endif
++
++/* Number of bits in a file offset, on hosts where this is settable. */
++/* #undef _FILE_OFFSET_BITS */
++
++/* Define for large files, on AIX-style hosts. */
++/* #undef _LARGE_FILES */
++
++/* Needed to get declarations for msg_control and msg_controllen on Solaris */
++/* #undef _XOPEN_SOURCE */
++
++/* Needed to get declarations for msg_control and msg_controllen on Solaris */
++/* #undef _XOPEN_SOURCE_EXTENDED */
++
++/* Needed to get declarations for msg_control and msg_controllen on Solaris */
++/* #undef __EXTENSIONS__ */
++
++/* Define to empty if `const' does not conform to ANSI C. */
++/* #undef const */
++
++/* Define to long or long long if <inttypes.h> and <stdint.h> don't define. */
++/* #undef intmax_t */
++
++/* Define to empty if the C compiler doesn't support this keyword. */
++/* #undef signed */
++
++/* Define to `unsigned int' if <sys/types.h> does not define. */
++/* #undef size_t */
++
+--- misc/glib-2.28.1/gio/gvdb/makefile.msc Wed Aug 20 14:33:55 2008
++++ misc/build/glib-2.28.1/gio/gvdb/makefile.msc Wed Aug 20 14:26:42 2008
+@@ -1 +1,24 @@
+-dummy
++TOP = ..\..\..
++
++!INCLUDE ..\..\build\win32\make.msc
++
++INCLUDES = \
++ -FImsvc_recommended_pragmas.h \
++ -I .. -I ..\..\glib -I ..\..\gmodule -I . -I ..\.. \
++ $(INTL_CFLAGS) \
++ $(SOLARINC)
++
++DEFINES = \
++ -DG_LOG_DOMAIN=\"GLib-GIO\" \
++ -DGIO_MODULE_DIR=\"$(libdir)/gio/modules\" \
++ -DGIO_COMPILATION
++
++OBJECTS = \
++ gvdb-reader.obj \
++ gvdb-builder.obj
++
++all : giogvdb.lib
++
++giogvdb.lib : $(OBJECTS)
++ lib -out:giogvdb.lib $(OBJECTS)
++
+--- misc/glib-2.28.1/gio/win32/makefile.msc Wed Aug 20 14:33:55 2008
++++ misc/build/glib-2.28.1/gio/win32/makefile.msc Wed Aug 20 14:26:42 2008
+@@ -1 +1,27 @@
+-dummy
++TOP = ..\..\..
++
++!INCLUDE ..\..\build\win32\make.msc
++
++INCLUDES = \
++ -FImsvc_recommended_pragmas.h \
++ -I .. -I ..\..\glib -I ..\..\gmodule -I . -I ..\.. \
++ $(INTL_CFLAGS) \
++ $(SOLARINC)
++
++DEFINES = \
++ -DG_LOG_DOMAIN=\"GLib-GIO\" \
++ -DGIO_MODULE_DIR=\"$(libdir)/gio/modules\" \
++ -DGIO_COMPILATION
++
++OBJECTS = \
++ gwin32directorymonitor.obj \
++ gwinhttpfile.obj \
++ gwinhttpfileinputstream.obj \
++ gwinhttpfileoutputstream.obj \
++ gwinhttpvfs.obj \
++
++all : giowin32.lib
++
++giowin32.lib : $(OBJECTS)
++ lib -out:giowin32.lib $(OBJECTS)
++
+--- misc/glib-2.28.1/gobject/gmarshal.c Wed Aug 20 14:33:55 2008
++++ misc/build/glib-2.28.1/gobject/gmarshal.c Wed Aug 20 14:26:42 2008
+@@ -1,4 +1,13 @@
++#include "config.h"
+
++#include "gsourceclosure.h"
++#include "gboxed.h"
++#include "genums.h"
++#include "gmarshal.h"
++#include "gvalue.h"
++#include "gvaluetypes.h"
++#include "gparam.h"
++#include "gobject.h"
+
+ #ifdef G_ENABLE_DEBUG
+ #define g_marshal_value_peek_boolean(v) g_value_get_boolean (v)
diff --git a/glib/glib-2.28.1.patch b/glib/glib-2.28.1.patch
new file mode 100644
index 000000000000..cadcc4db2cb8
--- /dev/null
+++ b/glib/glib-2.28.1.patch
@@ -0,0 +1,41 @@
+--- misc/glib-2.28.1/gio/gzlibcompressor.c 2011-02-11 16:23:12.000000000 +0100
++++ misc/build/glib-2.28.1/gio/gzlibcompressor.c 2011-02-25 15:59:17.000000000 +0100
+@@ -73,7 +73,7 @@
+ g_zlib_compressor_set_gzheader (GZlibCompressor *compressor)
+ {
+ /* On win32, these functions were not exported before 1.2.4 */
+-#if !defined (G_OS_WIN32) || ZLIB_VERNUM >= 0x1240
++#if (!defined (G_OS_WIN32) && ! defined(BUILD_OS_APPLEOSX)) || ZLIB_VERNUM >= 0x1240
+ const gchar *filename;
+
+ if (compressor->format != G_ZLIB_COMPRESSOR_FORMAT_GZIP ||
+--- misc/glib-2.28.1/gio/gzlibdecompressor.c 2011-02-11 16:23:12.000000000 +0100
++++ misc/build/glib-2.28.1/gio/gzlibdecompressor.c 2011-02-25 16:00:43.000000000 +0100
+@@ -76,7 +76,7 @@
+ g_zlib_decompressor_set_gzheader (GZlibDecompressor *decompressor)
+ {
+ /* On win32, these functions were not exported before 1.2.4 */
+-#if !defined (G_OS_WIN32) || ZLIB_VERNUM >= 0x1240
++#if (!defined (G_OS_WIN32) && !defined(BUILD_OS_APPLEOSX)) || ZLIB_VERNUM >= 0x1240
+ if (decompressor->format != G_ZLIB_COMPRESSOR_FORMAT_GZIP)
+ return;
+
+@@ -376,7 +376,7 @@
+ *bytes_read = inbuf_size - decompressor->zstream.avail_in;
+ *bytes_written = outbuf_size - decompressor->zstream.avail_out;
+
+-#if !defined (G_OS_WIN32) || ZLIB_VERNUM >= 0x1240
++#if (!defined (G_OS_WIN32) && !defined(BUILD_OS_APPLEOSX)) || ZLIB_VERNUM >= 0x1240
+ if (decompressor->header_data != NULL &&
+ decompressor->header_data->gzheader.done == 1)
+ {
+--- misc/glib-2.28.1/glib/gatomic.c 2011-02-11 16:23:12.000000000 +0100
++++ misc/build/glib-2.28.1/glib/gatomic.c 2011-02-25 15:51:45.000000000 +0100
+@@ -28,6 +28,7 @@
+ #endif
+
+ #include "gatomic.h"
++#include "gthread.h"
+ #include "gthreadprivate.h"
+
+ /**
diff --git a/glib/makefile.mk b/glib/makefile.mk
new file mode 100755
index 000000000000..e724baee219f
--- /dev/null
+++ b/glib/makefile.mk
@@ -0,0 +1,545 @@
+#*************************************************************************
+#
+# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+#
+# Copyright 2000, 2010 Oracle and/or its affiliates.
+#
+# OpenOffice.org - a multi-platform office productivity suite
+#
+# This file is part of OpenOffice.org.
+#
+# OpenOffice.org is free software: you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License version 3
+# only, as published by the Free Software Foundation.
+#
+# OpenOffice.org is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU Lesser General Public License version 3 for more details
+# (a copy is included in the LICENSE file that accompanied this code).
+#
+# You should have received a copy of the GNU Lesser General Public License
+# version 3 along with OpenOffice.org. If not, see
+# <http://www.openoffice.org/license.html>
+# for a copy of the LGPLv3 License.
+#
+#*************************************************************************
+
+PRJ=.
+
+PRJNAME=glib
+TARGET=so_glib
+
+# --- Settings -----------------------------------------------------
+
+.INCLUDE : settings.mk
+
+.IF "$(SYSTEM_GLIB)" == "YES"
+all:
+ @echo "An already available installation of glib should exist on your system."
+ @echo "Therefore the version provided here does not need to be built in addition."
+.ENDIF
+
+# --- Files --------------------------------------------------------
+
+GLIBVERSION=2.28.1
+
+TARFILE_NAME=$(PRJNAME)-$(GLIBVERSION)
+TARFILE_MD5=9f6e85e1e38490c3956f4415bcd33e6e
+
+
+.IF "$(OS)"=="MACOSX"
+PATCH_FILES=glib-2.28.1.patch
+CONFIGURE_LDFLAGS="-L$(SOLARLIBDIR)"
+CONFIGURE_DIR=
+CONFIGURE_ACTION=$(AUGMENT_LIBRARY_PATH) \
+ .$/configure --prefix=$(SRC_ROOT)$/$(PRJNAME)$/$(MISC) \
+ CFLAGS="$(ARCH_FLAGS) $(EXTRA_CFLAGS) -I$(SOLARINCDIR)$/external" \
+ LDFLAGS="$(CONFIGURE_LDFLAGS)"
+CONFIGURE_FLAGS=--disable-fam
+.IF "$(OS)" == "MACOSX"
+CONFIGURE_FLAGS+= CPPFLAGS="$(ARCH_FLAGS) $(EXTRA_CDEFS)"
+.ENDIF
+
+BUILD_ACTION=$(AUGMENT_LIBRARY_PATH) $(GNUMAKE)
+BUILD_DIR=$(CONFIGURE_DIR)
+
+
+EXTRPATH=LOADER
+OUT2LIB+=gio/.libs/libgio-2.0.0.dylib
+OUT2LIB+=glib/.libs/libglib-2.0.0.dylib
+OUT2LIB+=gmodule/.libs/libgmodule-2.0.0.dylib
+OUT2LIB+=gobject/.libs/libgobject-2.0.0.dylib
+OUT2LIB+=gthread/.libs/libgthread-2.0.0.dylib
+
+OUT2BIN+=gobject$/glib-mkenums
+OUT2BIN+=gobject$/.libs$/glib-genmarshal
+
+OUT2INC+=glib/glib.h
+OUT2INC+=glib/glib-object.h
+OUT2INC+=glib/glibconfig.h
+OUT2INC+=gmodule/gmodule.h
+
+OUT2INC+=gio/gdesktopappinfo.h
+OUT2INC+=gio/gunixcredentialsmessage.h
+OUT2INC+=gio/gunixinputstream.h
+OUT2INC+=gio/gunixsocketaddress.h
+OUT2INC+=gio/gfiledescriptorbased.h
+OUT2INC+=gio/gunixfdlist.h
+OUT2INC+=gio/gunixmounts.h
+OUT2INC+=gio/gunixconnection.h
+OUT2INC+=gio/gunixfdmessage.h
+OUT2INC+=gio/gunixoutputstream.h
+
+
+OUT2INC+=gio/gaction.h
+OUT2INC+=gio/gfileicon.h
+OUT2INC+=gio/gproxyaddressenumerator.h
+OUT2INC+=gio/gactiongroup.h
+OUT2INC+=gio/gfileinfo.h
+OUT2INC+=gio/gproxyresolver.h
+OUT2INC+=gio/gappinfo.h
+OUT2INC+=gio/gfileinputstream.h
+OUT2INC+=gio/gresolver.h
+OUT2INC+=gio/gapplication.h
+OUT2INC+=gio/gfileiostream.h
+OUT2INC+=gio/gseekable.h
+OUT2INC+=gio/gapplicationcommandline.h
+OUT2INC+=gio/gfilemonitor.h
+OUT2INC+=gio/gsettings.h
+OUT2INC+=gio/gasyncinitable.h
+OUT2INC+=gio/gfilenamecompleter.h
+OUT2INC+=gio/gsettingsbackend.h
+OUT2INC+=gio/gasyncresult.h
+OUT2INC+=gio/gfileoutputstream.h
+OUT2INC+=gio/gsimpleaction.h
+OUT2INC+=gio/gbufferedinputstream.h
+OUT2INC+=gio/gfilterinputstream.h
+OUT2INC+=gio/gsimpleactiongroup.h
+OUT2INC+=gio/gbufferedoutputstream.h
+OUT2INC+=gio/gfilteroutputstream.h
+OUT2INC+=gio/gsimpleasyncresult.h
+OUT2INC+=gio/gcancellable.h
+OUT2INC+=gio/gicon.h
+OUT2INC+=gio/gsimplepermission.h
+OUT2INC+=gio/gcharsetconverter.h
+OUT2INC+=gio/ginetaddress.h
+OUT2INC+=gio/gsocket.h
+OUT2INC+=gio/gcontenttype.h
+OUT2INC+=gio/ginetsocketaddress.h
+OUT2INC+=gio/gsocketaddress.h
+OUT2INC+=gio/gconverter.h
+OUT2INC+=gio/ginitable.h
+OUT2INC+=gio/gsocketaddressenumerator.h
+OUT2INC+=gio/gconverterinputstream.h
+OUT2INC+=gio/ginputstream.h
+OUT2INC+=gio/gsocketclient.h
+OUT2INC+=gio/gconverteroutputstream.h
+OUT2INC+=gio/gio.h
+OUT2INC+=gio/gsocketconnectable.h
+OUT2INC+=gio/gcredentials.h
+OUT2INC+=gio/gioenums.h
+OUT2INC+=gio/gsocketconnection.h
+OUT2INC+=gio/gdatainputstream.h
+OUT2INC+=gio/gioenumtypes.h
+OUT2INC+=gio/gsocketcontrolmessage.h
+OUT2INC+=gio/gdataoutputstream.h
+OUT2INC+=gio/gioerror.h
+OUT2INC+=gio/gsocketlistener.h
+OUT2INC+=gio/gdbusaddress.h
+OUT2INC+=gio/giomodule.h
+OUT2INC+=gio/gsocketservice.h
+OUT2INC+=gio/gdbusauthobserver.h
+OUT2INC+=gio/gioscheduler.h
+OUT2INC+=gio/gsrvtarget.h
+OUT2INC+=gio/gdbusconnection.h
+OUT2INC+=gio/giostream.h
+OUT2INC+=gio/gtcpconnection.h
+OUT2INC+=gio/gdbuserror.h
+OUT2INC+=gio/giotypes.h
+OUT2INC+=gio/gtcpwrapperconnection.h
+OUT2INC+=gio/gdbusintrospection.h
+OUT2INC+=gio/gloadableicon.h
+OUT2INC+=gio/gthemedicon.h
+OUT2INC+=gio/gdbusmessage.h
+OUT2INC+=gio/gmemoryinputstream.h
+OUT2INC+=gio/gthreadedsocketservice.h
+OUT2INC+=gio/gdbusmethodinvocation.h
+OUT2INC+=gio/gmemoryoutputstream.h
+OUT2INC+=gio/gtlsbackend.h
+OUT2INC+=gio/gdbusnameowning.h
+OUT2INC+=gio/gmount.h
+OUT2INC+=gio/gtlscertificate.h
+OUT2INC+=gio/gdbusnamewatching.h
+OUT2INC+=gio/gmountoperation.h
+OUT2INC+=gio/gtlsclientconnection.h
+OUT2INC+=gio/gdbusproxy.h
+OUT2INC+=gio/gnativevolumemonitor.h
+OUT2INC+=gio/gtlsconnection.h
+OUT2INC+=gio/gdbusserver.h
+OUT2INC+=gio/gnetworkaddress.h
+OUT2INC+=gio/gtlsserverconnection.h
+OUT2INC+=gio/gdbusutils.h
+OUT2INC+=gio/gnetworkservice.h
+OUT2INC+=gio/gvfs.h
+OUT2INC+=gio/gdrive.h
+OUT2INC+=gio/goutputstream.h
+OUT2INC+=gio/gvolume.h
+OUT2INC+=gio/gemblem.h
+OUT2INC+=gio/gpermission.h
+OUT2INC+=gio/gvolumemonitor.h
+OUT2INC+=gio/gemblemedicon.h
+OUT2INC+=gio/gpollableinputstream.h
+OUT2INC+=gio/gzlibcompressor.h
+OUT2INC+=gio/gfile.h
+OUT2INC+=gio/gpollableoutputstream.h
+OUT2INC+=gio/gzlibdecompressor.h
+OUT2INC+=gio/gfileattribute.h
+OUT2INC+=gio/gproxy.h
+OUT2INC+=gio/gfileenumerator.h
+OUT2INC+=gio/gproxyaddress.h
+
+OUT2INC+=glib/galloca.h
+OUT2INC+=glib/gconvert.h
+OUT2INC+=glib/gi18n.h
+OUT2INC+=glib/goption.h
+OUT2INC+=glib/gscanner.h
+OUT2INC+=glib/gthreadpool.h
+OUT2INC+=glib/garray.h
+OUT2INC+=glib/gdataset.h
+OUT2INC+=glib/giochannel.h
+OUT2INC+=glib/gpattern.h
+OUT2INC+=glib/gsequence.h
+OUT2INC+=glib/gtimer.h
+OUT2INC+=glib/gasyncqueue.h
+OUT2INC+=glib/gdate.h
+OUT2INC+=glib/gkeyfile.h
+OUT2INC+=glib/gpoll.h
+OUT2INC+=glib/gshell.h
+OUT2INC+=glib/gtimezone.h
+OUT2INC+=glib/gatomic.h
+OUT2INC+=glib/gdatetime.h
+OUT2INC+=glib/glist.h
+OUT2INC+=glib/gprimes.h
+OUT2INC+=glib/gslice.h
+OUT2INC+=glib/gtree.h
+OUT2INC+=glib/gbacktrace.h
+OUT2INC+=glib/gdir.h
+OUT2INC+=glib/gmacros.h
+OUT2INC+=glib/gprintf.h
+OUT2INC+=glib/gslist.h
+OUT2INC+=glib/gtypes.h
+OUT2INC+=glib/gbase64.h
+OUT2INC+=glib/gerror.h
+OUT2INC+=glib/gmain.h
+OUT2INC+=glib/gqsort.h
+OUT2INC+=glib/gspawn.h
+OUT2INC+=glib/gunicode.h
+OUT2INC+=glib/gbitlock.h
+OUT2INC+=glib/gfileutils.h
+OUT2INC+=glib/gmappedfile.h
+OUT2INC+=glib/gquark.h
+OUT2INC+=glib/gstdio.h
+OUT2INC+=glib/gurifuncs.h
+OUT2INC+=glib/gbookmarkfile.h
+OUT2INC+=glib/ghash.h
+OUT2INC+=glib/gmarkup.h
+OUT2INC+=glib/gqueue.h
+OUT2INC+=glib/gstrfuncs.h
+OUT2INC+=glib/gutils.h
+OUT2INC+=glib/gcache.h
+OUT2INC+=glib/ghook.h
+OUT2INC+=glib/gmem.h
+OUT2INC+=glib/grand.h
+OUT2INC+=glib/gstring.h
+OUT2INC+=glib/gvariant.h
+OUT2INC+=glib/gchecksum.h
+OUT2INC+=glib/ghostutils.h
+OUT2INC+=glib/gmessages.h
+OUT2INC+=glib/gregex.h
+OUT2INC+=glib/gtestutils.h
+OUT2INC+=glib/gvarianttype.h
+OUT2INC+=glib/gcompletion.h
+OUT2INC+=glib/gi18n-lib.h
+OUT2INC+=glib/gnode.h
+OUT2INC+=glib/grel.h
+OUT2INC+=glib/gthread.h
+OUT2INC+=glib/gwin32.h
+
+
+OUT2INC+=gobject/gbinding.h
+OUT2INC+=gobject/gmarshal.h
+OUT2INC+=gobject/gparamspecs.h
+OUT2INC+=gobject/gtypemodule.h
+OUT2INC+=gobject/gvaluecollector.h
+OUT2INC+=gobject/gboxed.h
+OUT2INC+=gobject/gobject.h
+OUT2INC+=gobject/gsignal.h
+OUT2INC+=gobject/gtypeplugin.h
+OUT2INC+=gobject/gvaluetypes.h
+OUT2INC+=gobject/gclosure.h
+OUT2INC+=gobject/gobjectnotifyqueue.c
+OUT2INC+=gobject/gsourceclosure.h
+OUT2INC+=gobject/gvalue.h
+OUT2INC+=gobject/genums.h
+OUT2INC+=gobject/gparam.h
+OUT2INC+=gobject/gtype.h
+OUT2INC+=gobject/gvaluearray.h
+
+.ELIF "$(OS)"=="WNT"
+CONVERTFILES=gobject/gmarshal.c
+
+PATCH_FILES=glib-2.28.1-win32.patch glib-2.28.1-win32-2.patch
+CONFIGURE_ACTION=
+ADDITIONAL_FILES= config.h \
+ gio/gvdb/makefile.msc \
+ gio/win32/makefile.msc \
+ glib/glibconfig.h \
+ gmodule/gmoduleconf.h \
+ gobject/glib-mkenums
+
+BUILD_ACTION=nmake -f makefile.msc
+
+OUT2BIN+=gio$/libgio-2.0-0.dll
+OUT2BIN+=glib$/libglib-2.0-0.dll
+OUT2BIN+=gmodule$/libgmodule-2.0-0.dll
+OUT2BIN+=gobject$/libgobject-2.0-0.dll
+OUT2BIN+=gthread$/libgthread-2.0-0.dll
+OUT2BIN+=gobject$/glib-mkenums
+OUT2BIN+=gobject$/glib-genmarshal.exe
+
+OUT2LIB+=build/win32/dirent/dirent.lib
+OUT2LIB+=gio/gio-2.0.lib
+OUT2LIB+=gio/gvdb/giogvdb.lib
+OUT2LIB+=gio/win32/giowin32.lib
+OUT2LIB+=glib/glib-2.0.lib
+OUT2LIB+=glib/glib-2.28s.lib
+OUT2LIB+=glib/gnulib/gnulib.lib
+OUT2LIB+=glib/pcre/pcre.lib
+OUT2LIB+=gmodule/gmodule-2.0.lib
+OUT2LIB+=gobject/glib-genmarshal.lib
+OUT2LIB+=gobject/gobject-2.0.lib
+OUT2LIB+=gthread/gthread-2.0.lib
+
+OUT2INC+=build$/win32$/make.msc
+OUT2INC+=build$/win32$/module.defs
+
+OUT2INC+=glib/glib.h
+OUT2INC+=glib/glib-object.h
+OUT2INC+=glib/glibconfig.h
+OUT2INC+=gmodule/gmodule.h
+
+OUT2INC+=gio/gdesktopappinfo.h
+OUT2INC+=gio/gunixcredentialsmessage.h
+OUT2INC+=gio/gunixinputstream.h
+OUT2INC+=gio/gunixsocketaddress.h
+OUT2INC+=gio/gfiledescriptorbased.h
+OUT2INC+=gio/gunixfdlist.h
+OUT2INC+=gio/gunixmounts.h
+OUT2INC+=gio/gunixconnection.h
+OUT2INC+=gio/gunixfdmessage.h
+OUT2INC+=gio/gunixoutputstream.h
+
+
+OUT2INC+=gio/gaction.h
+OUT2INC+=gio/gfileicon.h
+OUT2INC+=gio/gproxyaddressenumerator.h
+OUT2INC+=gio/gactiongroup.h
+OUT2INC+=gio/gfileinfo.h
+OUT2INC+=gio/gproxyresolver.h
+OUT2INC+=gio/gappinfo.h
+OUT2INC+=gio/gfileinputstream.h
+OUT2INC+=gio/gresolver.h
+OUT2INC+=gio/gapplication.h
+OUT2INC+=gio/gfileiostream.h
+OUT2INC+=gio/gseekable.h
+OUT2INC+=gio/gapplicationcommandline.h
+OUT2INC+=gio/gfilemonitor.h
+OUT2INC+=gio/gsettings.h
+OUT2INC+=gio/gasyncinitable.h
+OUT2INC+=gio/gfilenamecompleter.h
+OUT2INC+=gio/gsettingsbackend.h
+OUT2INC+=gio/gasyncresult.h
+OUT2INC+=gio/gfileoutputstream.h
+OUT2INC+=gio/gsimpleaction.h
+OUT2INC+=gio/gbufferedinputstream.h
+OUT2INC+=gio/gfilterinputstream.h
+OUT2INC+=gio/gsimpleactiongroup.h
+OUT2INC+=gio/gbufferedoutputstream.h
+OUT2INC+=gio/gfilteroutputstream.h
+OUT2INC+=gio/gsimpleasyncresult.h
+OUT2INC+=gio/gcancellable.h
+OUT2INC+=gio/gicon.h
+OUT2INC+=gio/gsimplepermission.h
+OUT2INC+=gio/gcharsetconverter.h
+OUT2INC+=gio/ginetaddress.h
+OUT2INC+=gio/gsocket.h
+OUT2INC+=gio/gcontenttype.h
+OUT2INC+=gio/ginetsocketaddress.h
+OUT2INC+=gio/gsocketaddress.h
+OUT2INC+=gio/gconverter.h
+OUT2INC+=gio/ginitable.h
+OUT2INC+=gio/gsocketaddressenumerator.h
+OUT2INC+=gio/gconverterinputstream.h
+OUT2INC+=gio/ginputstream.h
+OUT2INC+=gio/gsocketclient.h
+OUT2INC+=gio/gconverteroutputstream.h
+OUT2INC+=gio/gio.h
+OUT2INC+=gio/gsocketconnectable.h
+OUT2INC+=gio/gcredentials.h
+OUT2INC+=gio/gioenums.h
+OUT2INC+=gio/gsocketconnection.h
+OUT2INC+=gio/gdatainputstream.h
+OUT2INC+=gio/gioenumtypes.h
+OUT2INC+=gio/gsocketcontrolmessage.h
+OUT2INC+=gio/gdataoutputstream.h
+OUT2INC+=gio/gioerror.h
+OUT2INC+=gio/gsocketlistener.h
+OUT2INC+=gio/gdbusaddress.h
+OUT2INC+=gio/giomodule.h
+OUT2INC+=gio/gsocketservice.h
+OUT2INC+=gio/gdbusauthobserver.h
+OUT2INC+=gio/gioscheduler.h
+OUT2INC+=gio/gsrvtarget.h
+OUT2INC+=gio/gdbusconnection.h
+OUT2INC+=gio/giostream.h
+OUT2INC+=gio/gtcpconnection.h
+OUT2INC+=gio/gdbuserror.h
+OUT2INC+=gio/giotypes.h
+OUT2INC+=gio/gtcpwrapperconnection.h
+OUT2INC+=gio/gdbusintrospection.h
+OUT2INC+=gio/gloadableicon.h
+OUT2INC+=gio/gthemedicon.h
+OUT2INC+=gio/gdbusmessage.h
+OUT2INC+=gio/gmemoryinputstream.h
+OUT2INC+=gio/gthreadedsocketservice.h
+OUT2INC+=gio/gdbusmethodinvocation.h
+OUT2INC+=gio/gmemoryoutputstream.h
+OUT2INC+=gio/gtlsbackend.h
+OUT2INC+=gio/gdbusnameowning.h
+OUT2INC+=gio/gmount.h
+OUT2INC+=gio/gtlscertificate.h
+OUT2INC+=gio/gdbusnamewatching.h
+OUT2INC+=gio/gmountoperation.h
+OUT2INC+=gio/gtlsclientconnection.h
+OUT2INC+=gio/gdbusproxy.h
+OUT2INC+=gio/gnativevolumemonitor.h
+OUT2INC+=gio/gtlsconnection.h
+OUT2INC+=gio/gdbusserver.h
+OUT2INC+=gio/gnetworkaddress.h
+OUT2INC+=gio/gtlsserverconnection.h
+OUT2INC+=gio/gdbusutils.h
+OUT2INC+=gio/gnetworkservice.h
+OUT2INC+=gio/gvfs.h
+OUT2INC+=gio/gdrive.h
+OUT2INC+=gio/goutputstream.h
+OUT2INC+=gio/gvolume.h
+OUT2INC+=gio/gemblem.h
+OUT2INC+=gio/gpermission.h
+OUT2INC+=gio/gvolumemonitor.h
+OUT2INC+=gio/gemblemedicon.h
+OUT2INC+=gio/gpollableinputstream.h
+OUT2INC+=gio/gzlibcompressor.h
+OUT2INC+=gio/gfile.h
+OUT2INC+=gio/gpollableoutputstream.h
+OUT2INC+=gio/gzlibdecompressor.h
+OUT2INC+=gio/gfileattribute.h
+OUT2INC+=gio/gproxy.h
+OUT2INC+=gio/gfileenumerator.h
+OUT2INC+=gio/gproxyaddress.h
+
+OUT2INC+=glib/galloca.h
+OUT2INC+=glib/gconvert.h
+OUT2INC+=glib/gi18n.h
+OUT2INC+=glib/goption.h
+OUT2INC+=glib/gscanner.h
+OUT2INC+=glib/gthreadpool.h
+OUT2INC+=glib/garray.h
+OUT2INC+=glib/gdataset.h
+OUT2INC+=glib/giochannel.h
+OUT2INC+=glib/gpattern.h
+OUT2INC+=glib/gsequence.h
+OUT2INC+=glib/gtimer.h
+OUT2INC+=glib/gasyncqueue.h
+OUT2INC+=glib/gdate.h
+OUT2INC+=glib/gkeyfile.h
+OUT2INC+=glib/gpoll.h
+OUT2INC+=glib/gshell.h
+OUT2INC+=glib/gtimezone.h
+OUT2INC+=glib/gatomic.h
+OUT2INC+=glib/gdatetime.h
+OUT2INC+=glib/glist.h
+OUT2INC+=glib/gprimes.h
+OUT2INC+=glib/gslice.h
+OUT2INC+=glib/gtree.h
+OUT2INC+=glib/gbacktrace.h
+OUT2INC+=glib/gdir.h
+OUT2INC+=glib/gmacros.h
+OUT2INC+=glib/gprintf.h
+OUT2INC+=glib/gslist.h
+OUT2INC+=glib/gtypes.h
+OUT2INC+=glib/gbase64.h
+OUT2INC+=glib/gerror.h
+OUT2INC+=glib/gmain.h
+OUT2INC+=glib/gqsort.h
+OUT2INC+=glib/gspawn.h
+OUT2INC+=glib/gunicode.h
+OUT2INC+=glib/gbitlock.h
+OUT2INC+=glib/gfileutils.h
+OUT2INC+=glib/gmappedfile.h
+OUT2INC+=glib/gquark.h
+OUT2INC+=glib/gstdio.h
+OUT2INC+=glib/gurifuncs.h
+OUT2INC+=glib/gbookmarkfile.h
+OUT2INC+=glib/ghash.h
+OUT2INC+=glib/gmarkup.h
+OUT2INC+=glib/gqueue.h
+OUT2INC+=glib/gstrfuncs.h
+OUT2INC+=glib/gutils.h
+OUT2INC+=glib/gcache.h
+OUT2INC+=glib/ghook.h
+OUT2INC+=glib/gmem.h
+OUT2INC+=glib/grand.h
+OUT2INC+=glib/gstring.h
+OUT2INC+=glib/gvariant.h
+OUT2INC+=glib/gchecksum.h
+OUT2INC+=glib/ghostutils.h
+OUT2INC+=glib/gmessages.h
+OUT2INC+=glib/gregex.h
+OUT2INC+=glib/gtestutils.h
+OUT2INC+=glib/gvarianttype.h
+OUT2INC+=glib/gcompletion.h
+OUT2INC+=glib/gi18n-lib.h
+OUT2INC+=glib/gnode.h
+OUT2INC+=glib/grel.h
+OUT2INC+=glib/gthread.h
+OUT2INC+=glib/gwin32.h
+
+
+OUT2INC+=gobject/gbinding.h
+OUT2INC+=gobject/gmarshal.h
+OUT2INC+=gobject/gparamspecs.h
+OUT2INC+=gobject/gtypemodule.h
+OUT2INC+=gobject/gvaluecollector.h
+OUT2INC+=gobject/gboxed.h
+OUT2INC+=gobject/gobject.h
+OUT2INC+=gobject/gsignal.h
+OUT2INC+=gobject/gtypeplugin.h
+OUT2INC+=gobject/gvaluetypes.h
+OUT2INC+=gobject/gclosure.h
+OUT2INC+=gobject/gobjectnotifyqueue.c
+OUT2INC+=gobject/gsourceclosure.h
+OUT2INC+=gobject/gvalue.h
+OUT2INC+=gobject/genums.h
+OUT2INC+=gobject/gparam.h
+OUT2INC+=gobject/gtype.h
+OUT2INC+=gobject/gvaluearray.h
+.ELSE
+.ENDIF
+
+# --- Targets ------------------------------------------------------
+
+.INCLUDE : set_ext.mk
+.INCLUDE : target.mk
+.INCLUDE : tg_ext.mk
+
diff --git a/glib/prj/build.lst b/glib/prj/build.lst
new file mode 100644
index 000000000000..4ce80753c576
--- /dev/null
+++ b/glib/prj/build.lst
@@ -0,0 +1,3 @@
+gl glib : gettext NULL
+gl glib usr1 - all gl_mkout NULL
+gl glib nmake - all gl_glib NULL
diff --git a/glib/prj/d.lst b/glib/prj/d.lst
new file mode 100644
index 000000000000..851265ca79a2
--- /dev/null
+++ b/glib/prj/d.lst
@@ -0,0 +1,239 @@
+mkdir: %_DEST%\inc%_EXT%\external
+..\%__SRC%\lib\libgio-2.0.0.dylib %_DEST%\lib%_EXT%\libgio-2.0.0.dylib
+symlink: %_DEST%\lib%_EXT%\libgio-2.0.0.dylib %_DEST%\lib%_EXT%\libgio-2.0.dylib
+..\%__SRC%\lib\libgmodule-2.0.0.dylib %_DEST%\lib%_EXT%\libgmodule-2.0.0.dylib
+symlink: %_DEST%\lib%_EXT%\libgmodule-2.0.0.dylib %_DEST%\lib%_EXT%\libgmodule-2.0.dylib
+..\%__SRC%\lib\libgthread-2.0.0.dylib %_DEST%\lib%_EXT%\libgthread-2.0.0.dylib
+symlink: %_DEST%\lib%_EXT%\libgthread-2.0.0.dylib %_DEST%\lib%_EXT%\libgthread-2.0.dylib
+..\%__SRC%\lib\libglib-2.0.0.dylib %_DEST%\lib%_EXT%\libglib-2.0.0.dylib
+symlink: %_DEST%\lib%_EXT%\libglib-2.0.0.dylib %_DEST%\lib%_EXT%\libglib-2.0.dylib
+..\%__SRC%\lib\libgobject-2.0.0.dylib %_DEST%\lib%_EXT%\libgobject-2.0.0.dylib
+symlink: %_DEST%\lib%_EXT%\libgobject-2.0.0.dylib %_DEST%\lib%_EXT%\libgobject-2.0.dylib
+..\%__SRC%\bin\*.dll %_DEST%\bin%_EXT%
+..\%__SRC%\bin\glib-mkenums %_DEST%\bin%_EXT%\glib-mkenums
+..\%__SRC%\bin\glib-genmarshal %_DEST%\bin%_EXT%\glib-genmarshal
+..\%__SRC%\bin\glib-genmarshal.exe %_DEST%\bin%_EXT%\glib-genmarshal.exe
+..\%__SRC%\lib\gio-2.0.lib %_DEST%\lib%_EXT%\gio-2.0.lib
+..\%__SRC%\lib\gmodule-2.0.lib %_DEST%\lib%_EXT%\gmodule-2.0.lib
+..\%__SRC%\lib\gthread-2.0.lib %_DEST%\lib%_EXT%\gthread-2.0.lib
+..\%__SRC%\lib\glib-2.0.lib %_DEST%\lib%_EXT%\glib-2.0.lib
+..\%__SRC%\lib\gobject-2.0.lib %_DEST%\lib%_EXT%\gobject-2.0.lib
+
+mkdir: %_DEST%\inc%_EXT%\external\gio-unix-2.0
+mkdir: %_DEST%\inc%_EXT%\external\gio-unix-2.0\gio
+..\%__SRC%\inc\gdesktopappinfo.h %_DEST%\inc%_EXT%\external\gio-unix-2.0\gio\gdesktopappinfo.h
+..\%__SRC%\inc\gunixcredentialsmessage.h %_DEST%\inc%_EXT%\external\gio-unix-2.0\gio\gunixcredentialsmessage.h
+..\%__SRC%\inc\gunixinputstream.h %_DEST%\inc%_EXT%\external\gio-unix-2.0\gio\gunixinputstream.h
+..\%__SRC%\inc\gunixsocketaddress.h %_DEST%\inc%_EXT%\external\gio-unix-2.0\gio\gunixsocketaddress.h
+..\%__SRC%\inc\gfiledescriptorbased.h %_DEST%\inc%_EXT%\external\gio-unix-2.0\gio\gfiledescriptorbased.h
+..\%__SRC%\inc\gunixfdlist.h %_DEST%\inc%_EXT%\external\gio-unix-2.0\gio\gunixfdlist.h
+..\%__SRC%\inc\gunixmounts.h %_DEST%\inc%_EXT%\external\gio-unix-2.0\gio\gunixmounts.h
+..\%__SRC%\inc\gunixconnection.h %_DEST%\inc%_EXT%\external\gio-unix-2.0\gio\gunixconnection.h
+..\%__SRC%\inc\gunixfdmessage.h %_DEST%\inc%_EXT%\external\gio-unix-2.0\gio\gunixfdmessage.h
+..\%__SRC%\inc\gunixoutputstream.h %_DEST%\inc%_EXT%\external\gio-unix-2.0\gio\gunixoutputstream.h
+
+mkdir: %_DEST%\inc%_EXT%\external\glib-2.0
+..\%__SRC%\inc\glib-object.h %_DEST%\inc%_EXT%\external\glib-2.0\glib-object.h
+..\%__SRC%\inc\glib.h %_DEST%\inc%_EXT%\external\glib-2.0\glib.h
+..\%__SRC%\inc\glibconfig.h %_DEST%\inc%_EXT%\external\glib-2.0\glibconfig.h
+..\%__SRC%\inc\gmodule.h %_DEST%\inc%_EXT%\external\glib-2.0\gmodule.h
+..\%__SRC%\inc\make.msc %_DEST%\inc%_EXT%\external\glib-2.0\make.msc
+..\%__SRC%\inc\module.defs %_DEST%\inc%_EXT%\external\glib-2.0\module.defs
+
+mkdir: %_DEST%\inc%_EXT%\external\glib-2.0\gio
+..\%__SRC%\inc\gaction.h %_DEST%\inc%_EXT%\external\glib-2.0\gio\gaction.h
+..\%__SRC%\inc\gfileicon.h %_DEST%\inc%_EXT%\external\glib-2.0\gio\gfileicon.h
+..\%__SRC%\inc\gproxyaddressenumerator.h %_DEST%\inc%_EXT%\external\glib-2.0\gio\gproxyaddressenumerator.h
+..\%__SRC%\inc\gactiongroup.h %_DEST%\inc%_EXT%\external\glib-2.0\gio\gactiongroup.h
+..\%__SRC%\inc\gfileinfo.h %_DEST%\inc%_EXT%\external\glib-2.0\gio\gfileinfo.h
+..\%__SRC%\inc\gproxyresolver.h %_DEST%\inc%_EXT%\external\glib-2.0\gio\gproxyresolver.h
+..\%__SRC%\inc\gappinfo.h %_DEST%\inc%_EXT%\external\glib-2.0\gio\gappinfo.h
+..\%__SRC%\inc\gfileinputstream.h %_DEST%\inc%_EXT%\external\glib-2.0\gio\gfileinputstream.h
+..\%__SRC%\inc\gresolver.h %_DEST%\inc%_EXT%\external\glib-2.0\gio\gresolver.h
+..\%__SRC%\inc\gapplication.h %_DEST%\inc%_EXT%\external\glib-2.0\gio\gapplication.h
+..\%__SRC%\inc\gfileiostream.h %_DEST%\inc%_EXT%\external\glib-2.0\gio\gfileiostream.h
+..\%__SRC%\inc\gseekable.h %_DEST%\inc%_EXT%\external\glib-2.0\gio\gseekable.h
+..\%__SRC%\inc\gapplicationcommandline.h %_DEST%\inc%_EXT%\external\glib-2.0\gio\gapplicationcommandline.h
+..\%__SRC%\inc\gfilemonitor.h %_DEST%\inc%_EXT%\external\glib-2.0\gio\gfilemonitor.h
+..\%__SRC%\inc\gsettings.h %_DEST%\inc%_EXT%\external\glib-2.0\gio\gsettings.h
+..\%__SRC%\inc\gasyncinitable.h %_DEST%\inc%_EXT%\external\glib-2.0\gio\gasyncinitable.h
+..\%__SRC%\inc\gfilenamecompleter.h %_DEST%\inc%_EXT%\external\glib-2.0\gio\gfilenamecompleter.h
+..\%__SRC%\inc\gsettingsbackend.h %_DEST%\inc%_EXT%\external\glib-2.0\gio\gsettingsbackend.h
+..\%__SRC%\inc\gasyncresult.h %_DEST%\inc%_EXT%\external\glib-2.0\gio\gasyncresult.h
+..\%__SRC%\inc\gfileoutputstream.h %_DEST%\inc%_EXT%\external\glib-2.0\gio\gfileoutputstream.h
+..\%__SRC%\inc\gsimpleaction.h %_DEST%\inc%_EXT%\external\glib-2.0\gio\gsimpleaction.h
+..\%__SRC%\inc\gbufferedinputstream.h %_DEST%\inc%_EXT%\external\glib-2.0\gio\gbufferedinputstream.h
+..\%__SRC%\inc\gfilterinputstream.h %_DEST%\inc%_EXT%\external\glib-2.0\gio\gfilterinputstream.h
+..\%__SRC%\inc\gsimpleactiongroup.h %_DEST%\inc%_EXT%\external\glib-2.0\gio\gsimpleactiongroup.h
+..\%__SRC%\inc\gbufferedoutputstream.h %_DEST%\inc%_EXT%\external\glib-2.0\gio\gbufferedoutputstream.h
+..\%__SRC%\inc\gfilteroutputstream.h %_DEST%\inc%_EXT%\external\glib-2.0\gio\gfilteroutputstream.h
+..\%__SRC%\inc\gsimpleasyncresult.h %_DEST%\inc%_EXT%\external\glib-2.0\gio\gsimpleasyncresult.h
+..\%__SRC%\inc\gcancellable.h %_DEST%\inc%_EXT%\external\glib-2.0\gio\gcancellable.h
+..\%__SRC%\inc\gicon.h %_DEST%\inc%_EXT%\external\glib-2.0\gio\gicon.h
+..\%__SRC%\inc\gsimplepermission.h %_DEST%\inc%_EXT%\external\glib-2.0\gio\gsimplepermission.h
+..\%__SRC%\inc\gcharsetconverter.h %_DEST%\inc%_EXT%\external\glib-2.0\gio\gcharsetconverter.h
+..\%__SRC%\inc\ginetaddress.h %_DEST%\inc%_EXT%\external\glib-2.0\gio\ginetaddress.h
+..\%__SRC%\inc\gsocket.h %_DEST%\inc%_EXT%\external\glib-2.0\gio\gsocket.h
+..\%__SRC%\inc\gcontenttype.h %_DEST%\inc%_EXT%\external\glib-2.0\gio\gcontenttype.h
+..\%__SRC%\inc\ginetsocketaddress.h %_DEST%\inc%_EXT%\external\glib-2.0\gio\ginetsocketaddress.h
+..\%__SRC%\inc\gsocketaddress.h %_DEST%\inc%_EXT%\external\glib-2.0\gio\gsocketaddress.h
+..\%__SRC%\inc\gconverter.h %_DEST%\inc%_EXT%\external\glib-2.0\gio\gconverter.h
+..\%__SRC%\inc\ginitable.h %_DEST%\inc%_EXT%\external\glib-2.0\gio\ginitable.h
+..\%__SRC%\inc\gsocketaddressenumerator.h %_DEST%\inc%_EXT%\external\glib-2.0\gio\gsocketaddressenumerator.h
+..\%__SRC%\inc\gconverterinputstream.h %_DEST%\inc%_EXT%\external\glib-2.0\gio\gconverterinputstream.h
+..\%__SRC%\inc\ginputstream.h %_DEST%\inc%_EXT%\external\glib-2.0\gio\ginputstream.h
+..\%__SRC%\inc\gsocketclient.h %_DEST%\inc%_EXT%\external\glib-2.0\gio\gsocketclient.h
+..\%__SRC%\inc\gconverteroutputstream.h %_DEST%\inc%_EXT%\external\glib-2.0\gio\gconverteroutputstream.h
+..\%__SRC%\inc\gio.h %_DEST%\inc%_EXT%\external\glib-2.0\gio\gio.h
+..\%__SRC%\inc\gsocketconnectable.h %_DEST%\inc%_EXT%\external\glib-2.0\gio\gsocketconnectable.h
+..\%__SRC%\inc\gcredentials.h %_DEST%\inc%_EXT%\external\glib-2.0\gio\gcredentials.h
+..\%__SRC%\inc\gioenums.h %_DEST%\inc%_EXT%\external\glib-2.0\gio\gioenums.h
+..\%__SRC%\inc\gsocketconnection.h %_DEST%\inc%_EXT%\external\glib-2.0\gio\gsocketconnection.h
+..\%__SRC%\inc\gdatainputstream.h %_DEST%\inc%_EXT%\external\glib-2.0\gio\gdatainputstream.h
+..\%__SRC%\inc\gioenumtypes.h %_DEST%\inc%_EXT%\external\glib-2.0\gio\gioenumtypes.h
+..\%__SRC%\inc\gsocketcontrolmessage.h %_DEST%\inc%_EXT%\external\glib-2.0\gio\gsocketcontrolmessage.h
+..\%__SRC%\inc\gdataoutputstream.h %_DEST%\inc%_EXT%\external\glib-2.0\gio\gdataoutputstream.h
+..\%__SRC%\inc\gioerror.h %_DEST%\inc%_EXT%\external\glib-2.0\gio\gioerror.h
+..\%__SRC%\inc\gsocketlistener.h %_DEST%\inc%_EXT%\external\glib-2.0\gio\gsocketlistener.h
+..\%__SRC%\inc\gdbusaddress.h %_DEST%\inc%_EXT%\external\glib-2.0\gio\gdbusaddress.h
+..\%__SRC%\inc\giomodule.h %_DEST%\inc%_EXT%\external\glib-2.0\gio\giomodule.h
+..\%__SRC%\inc\gsocketservice.h %_DEST%\inc%_EXT%\external\glib-2.0\gio\gsocketservice.h
+..\%__SRC%\inc\gdbusauthobserver.h %_DEST%\inc%_EXT%\external\glib-2.0\gio\gdbusauthobserver.h
+..\%__SRC%\inc\gioscheduler.h %_DEST%\inc%_EXT%\external\glib-2.0\gio\gioscheduler.h
+..\%__SRC%\inc\gsrvtarget.h %_DEST%\inc%_EXT%\external\glib-2.0\gio\gsrvtarget.h
+..\%__SRC%\inc\gdbusconnection.h %_DEST%\inc%_EXT%\external\glib-2.0\gio\gdbusconnection.h
+..\%__SRC%\inc\giostream.h %_DEST%\inc%_EXT%\external\glib-2.0\gio\giostream.h
+..\%__SRC%\inc\gtcpconnection.h %_DEST%\inc%_EXT%\external\glib-2.0\gio\gtcpconnection.h
+..\%__SRC%\inc\gdbuserror.h %_DEST%\inc%_EXT%\external\glib-2.0\gio\gdbuserror.h
+..\%__SRC%\inc\giotypes.h %_DEST%\inc%_EXT%\external\glib-2.0\gio\giotypes.h
+..\%__SRC%\inc\gtcpwrapperconnection.h %_DEST%\inc%_EXT%\external\glib-2.0\gio\gtcpwrapperconnection.h
+..\%__SRC%\inc\gdbusintrospection.h %_DEST%\inc%_EXT%\external\glib-2.0\gio\gdbusintrospection.h
+..\%__SRC%\inc\gloadableicon.h %_DEST%\inc%_EXT%\external\glib-2.0\gio\gloadableicon.h
+..\%__SRC%\inc\gthemedicon.h %_DEST%\inc%_EXT%\external\glib-2.0\gio\gthemedicon.h
+..\%__SRC%\inc\gdbusmessage.h %_DEST%\inc%_EXT%\external\glib-2.0\gio\gdbusmessage.h
+..\%__SRC%\inc\gmemoryinputstream.h %_DEST%\inc%_EXT%\external\glib-2.0\gio\gmemoryinputstream.h
+..\%__SRC%\inc\gthreadedsocketservice.h %_DEST%\inc%_EXT%\external\glib-2.0\gio\gthreadedsocketservice.h
+..\%__SRC%\inc\gdbusmethodinvocation.h %_DEST%\inc%_EXT%\external\glib-2.0\gio\gdbusmethodinvocation.h
+..\%__SRC%\inc\gmemoryoutputstream.h %_DEST%\inc%_EXT%\external\glib-2.0\gio\gmemoryoutputstream.h
+..\%__SRC%\inc\gtlsbackend.h %_DEST%\inc%_EXT%\external\glib-2.0\gio\gtlsbackend.h
+..\%__SRC%\inc\gdbusnameowning.h %_DEST%\inc%_EXT%\external\glib-2.0\gio\gdbusnameowning.h
+..\%__SRC%\inc\gmount.h %_DEST%\inc%_EXT%\external\glib-2.0\gio\gmount.h
+..\%__SRC%\inc\gtlscertificate.h %_DEST%\inc%_EXT%\external\glib-2.0\gio\gtlscertificate.h
+..\%__SRC%\inc\gdbusnamewatching.h %_DEST%\inc%_EXT%\external\glib-2.0\gio\gdbusnamewatching.h
+..\%__SRC%\inc\gmountoperation.h %_DEST%\inc%_EXT%\external\glib-2.0\gio\gmountoperation.h
+..\%__SRC%\inc\gtlsclientconnection.h %_DEST%\inc%_EXT%\external\glib-2.0\gio\gtlsclientconnection.h
+..\%__SRC%\inc\gdbusproxy.h %_DEST%\inc%_EXT%\external\glib-2.0\gio\gdbusproxy.h
+..\%__SRC%\inc\gnativevolumemonitor.h %_DEST%\inc%_EXT%\external\glib-2.0\gio\gnativevolumemonitor.h
+..\%__SRC%\inc\gtlsconnection.h %_DEST%\inc%_EXT%\external\glib-2.0\gio\gtlsconnection.h
+..\%__SRC%\inc\gdbusserver.h %_DEST%\inc%_EXT%\external\glib-2.0\gio\gdbusserver.h
+..\%__SRC%\inc\gnetworkaddress.h %_DEST%\inc%_EXT%\external\glib-2.0\gio\gnetworkaddress.h
+..\%__SRC%\inc\gtlsserverconnection.h %_DEST%\inc%_EXT%\external\glib-2.0\gio\gtlsserverconnection.h
+..\%__SRC%\inc\gdbusutils.h %_DEST%\inc%_EXT%\external\glib-2.0\gio\gdbusutils.h
+..\%__SRC%\inc\gnetworkservice.h %_DEST%\inc%_EXT%\external\glib-2.0\gio\gnetworkservice.h
+..\%__SRC%\inc\gvfs.h %_DEST%\inc%_EXT%\external\glib-2.0\gio\gvfs.h
+..\%__SRC%\inc\gdrive.h %_DEST%\inc%_EXT%\external\glib-2.0\gio\gdrive.h
+..\%__SRC%\inc\goutputstream.h %_DEST%\inc%_EXT%\external\glib-2.0\gio\goutputstream.h
+..\%__SRC%\inc\gvolume.h %_DEST%\inc%_EXT%\external\glib-2.0\gio\gvolume.h
+..\%__SRC%\inc\gemblem.h %_DEST%\inc%_EXT%\external\glib-2.0\gio\gemblem.h
+..\%__SRC%\inc\gpermission.h %_DEST%\inc%_EXT%\external\glib-2.0\gio\gpermission.h
+..\%__SRC%\inc\gvolumemonitor.h %_DEST%\inc%_EXT%\external\glib-2.0\gio\gvolumemonitor.h
+..\%__SRC%\inc\gemblemedicon.h %_DEST%\inc%_EXT%\external\glib-2.0\gio\gemblemedicon.h
+..\%__SRC%\inc\gpollableinputstream.h %_DEST%\inc%_EXT%\external\glib-2.0\gio\gpollableinputstream.h
+..\%__SRC%\inc\gzlibcompressor.h %_DEST%\inc%_EXT%\external\glib-2.0\gio\gzlibcompressor.h
+..\%__SRC%\inc\gfile.h %_DEST%\inc%_EXT%\external\glib-2.0\gio\gfile.h
+..\%__SRC%\inc\gpollableoutputstream.h %_DEST%\inc%_EXT%\external\glib-2.0\gio\gpollableoutputstream.h
+..\%__SRC%\inc\gzlibdecompressor.h %_DEST%\inc%_EXT%\external\glib-2.0\gio\gzlibdecompressor.h
+..\%__SRC%\inc\gfileattribute.h %_DEST%\inc%_EXT%\external\glib-2.0\gio\gfileattribute.h
+..\%__SRC%\inc\gproxy.h %_DEST%\inc%_EXT%\external\glib-2.0\gio\gproxy.h
+..\%__SRC%\inc\gfileenumerator.h %_DEST%\inc%_EXT%\external\glib-2.0\gio\gfileenumerator.h
+..\%__SRC%\inc\gproxyaddress.h %_DEST%\inc%_EXT%\external\glib-2.0\gio\gproxyaddress.h
+
+mkdir: %_DEST%\inc%_EXT%\external\glib-2.0\glib
+
+..\%__SRC%\inc\galloca.h %_DEST%\inc%_EXT%\external\glib-2.0\glib\galloca.h
+..\%__SRC%\inc\gconvert.h %_DEST%\inc%_EXT%\external\glib-2.0\glib\gconvert.h
+..\%__SRC%\inc\gi18n.h %_DEST%\inc%_EXT%\external\glib-2.0\glib\gi18n.h
+..\%__SRC%\inc\goption.h %_DEST%\inc%_EXT%\external\glib-2.0\glib\goption.h
+..\%__SRC%\inc\gscanner.h %_DEST%\inc%_EXT%\external\glib-2.0\glib\gscanner.h
+..\%__SRC%\inc\gthreadpool.h %_DEST%\inc%_EXT%\external\glib-2.0\glib\gthreadpool.h
+..\%__SRC%\inc\garray.h %_DEST%\inc%_EXT%\external\glib-2.0\glib\garray.h
+..\%__SRC%\inc\gdataset.h %_DEST%\inc%_EXT%\external\glib-2.0\glib\gdataset.h
+..\%__SRC%\inc\giochannel.h %_DEST%\inc%_EXT%\external\glib-2.0\glib\giochannel.h
+..\%__SRC%\inc\gpattern.h %_DEST%\inc%_EXT%\external\glib-2.0\glib\gpattern.h
+..\%__SRC%\inc\gsequence.h %_DEST%\inc%_EXT%\external\glib-2.0\glib\gsequence.h
+..\%__SRC%\inc\gtimer.h %_DEST%\inc%_EXT%\external\glib-2.0\glib\gtimer.h
+..\%__SRC%\inc\gasyncqueue.h %_DEST%\inc%_EXT%\external\glib-2.0\glib\gasyncqueue.h
+..\%__SRC%\inc\gdate.h %_DEST%\inc%_EXT%\external\glib-2.0\glib\gdate.h
+..\%__SRC%\inc\gkeyfile.h %_DEST%\inc%_EXT%\external\glib-2.0\glib\gkeyfile.h
+..\%__SRC%\inc\gpoll.h %_DEST%\inc%_EXT%\external\glib-2.0\glib\gpoll.h
+..\%__SRC%\inc\gshell.h %_DEST%\inc%_EXT%\external\glib-2.0\glib\gshell.h
+..\%__SRC%\inc\gtimezone.h %_DEST%\inc%_EXT%\external\glib-2.0\glib\gtimezone.h
+..\%__SRC%\inc\gatomic.h %_DEST%\inc%_EXT%\external\glib-2.0\glib\gatomic.h
+..\%__SRC%\inc\gdatetime.h %_DEST%\inc%_EXT%\external\glib-2.0\glib\gdatetime.h
+..\%__SRC%\inc\glist.h %_DEST%\inc%_EXT%\external\glib-2.0\glib\glist.h
+..\%__SRC%\inc\gprimes.h %_DEST%\inc%_EXT%\external\glib-2.0\glib\gprimes.h
+..\%__SRC%\inc\gslice.h %_DEST%\inc%_EXT%\external\glib-2.0\glib\gslice.h
+..\%__SRC%\inc\gtree.h %_DEST%\inc%_EXT%\external\glib-2.0\glib\gtree.h
+..\%__SRC%\inc\gbacktrace.h %_DEST%\inc%_EXT%\external\glib-2.0\glib\gbacktrace.h
+..\%__SRC%\inc\gdir.h %_DEST%\inc%_EXT%\external\glib-2.0\glib\gdir.h
+..\%__SRC%\inc\gmacros.h %_DEST%\inc%_EXT%\external\glib-2.0\glib\gmacros.h
+..\%__SRC%\inc\gprintf.h %_DEST%\inc%_EXT%\external\glib-2.0\glib\gprintf.h
+..\%__SRC%\inc\gslist.h %_DEST%\inc%_EXT%\external\glib-2.0\glib\gslist.h
+..\%__SRC%\inc\gtypes.h %_DEST%\inc%_EXT%\external\glib-2.0\glib\gtypes.h
+..\%__SRC%\inc\gbase64.h %_DEST%\inc%_EXT%\external\glib-2.0\glib\gbase64.h
+..\%__SRC%\inc\gerror.h %_DEST%\inc%_EXT%\external\glib-2.0\glib\gerror.h
+..\%__SRC%\inc\gmain.h %_DEST%\inc%_EXT%\external\glib-2.0\glib\gmain.h
+..\%__SRC%\inc\gqsort.h %_DEST%\inc%_EXT%\external\glib-2.0\glib\gqsort.h
+..\%__SRC%\inc\gspawn.h %_DEST%\inc%_EXT%\external\glib-2.0\glib\gspawn.h
+..\%__SRC%\inc\gunicode.h %_DEST%\inc%_EXT%\external\glib-2.0\glib\gunicode.h
+..\%__SRC%\inc\gbitlock.h %_DEST%\inc%_EXT%\external\glib-2.0\glib\gbitlock.h
+..\%__SRC%\inc\gfileutils.h %_DEST%\inc%_EXT%\external\glib-2.0\glib\gfileutils.h
+..\%__SRC%\inc\gmappedfile.h %_DEST%\inc%_EXT%\external\glib-2.0\glib\gmappedfile.h
+..\%__SRC%\inc\gquark.h %_DEST%\inc%_EXT%\external\glib-2.0\glib\gquark.h
+..\%__SRC%\inc\gstdio.h %_DEST%\inc%_EXT%\external\glib-2.0\glib\gstdio.h
+..\%__SRC%\inc\gurifuncs.h %_DEST%\inc%_EXT%\external\glib-2.0\glib\gurifuncs.h
+..\%__SRC%\inc\gbookmarkfile.h %_DEST%\inc%_EXT%\external\glib-2.0\glib\gbookmarkfile.h
+..\%__SRC%\inc\ghash.h %_DEST%\inc%_EXT%\external\glib-2.0\glib\ghash.h
+..\%__SRC%\inc\gmarkup.h %_DEST%\inc%_EXT%\external\glib-2.0\glib\gmarkup.h
+..\%__SRC%\inc\gqueue.h %_DEST%\inc%_EXT%\external\glib-2.0\glib\gqueue.h
+..\%__SRC%\inc\gstrfuncs.h %_DEST%\inc%_EXT%\external\glib-2.0\glib\gstrfuncs.h
+..\%__SRC%\inc\gutils.h %_DEST%\inc%_EXT%\external\glib-2.0\glib\gutils.h
+..\%__SRC%\inc\gcache.h %_DEST%\inc%_EXT%\external\glib-2.0\glib\gcache.h
+..\%__SRC%\inc\ghook.h %_DEST%\inc%_EXT%\external\glib-2.0\glib\ghook.h
+..\%__SRC%\inc\gmem.h %_DEST%\inc%_EXT%\external\glib-2.0\glib\gmem.h
+..\%__SRC%\inc\grand.h %_DEST%\inc%_EXT%\external\glib-2.0\glib\grand.h
+..\%__SRC%\inc\gstring.h %_DEST%\inc%_EXT%\external\glib-2.0\glib\gstring.h
+..\%__SRC%\inc\gvariant.h %_DEST%\inc%_EXT%\external\glib-2.0\glib\gvariant.h
+..\%__SRC%\inc\gchecksum.h %_DEST%\inc%_EXT%\external\glib-2.0\glib\gchecksum.h
+..\%__SRC%\inc\ghostutils.h %_DEST%\inc%_EXT%\external\glib-2.0\glib\ghostutils.h
+..\%__SRC%\inc\gmessages.h %_DEST%\inc%_EXT%\external\glib-2.0\glib\gmessages.h
+..\%__SRC%\inc\gregex.h %_DEST%\inc%_EXT%\external\glib-2.0\glib\gregex.h
+..\%__SRC%\inc\gtestutils.h %_DEST%\inc%_EXT%\external\glib-2.0\glib\gtestutils.h
+..\%__SRC%\inc\gvarianttype.h %_DEST%\inc%_EXT%\external\glib-2.0\glib\gvarianttype.h
+..\%__SRC%\inc\gcompletion.h %_DEST%\inc%_EXT%\external\glib-2.0\glib\gcompletion.h
+..\%__SRC%\inc\gi18n-lib.h %_DEST%\inc%_EXT%\external\glib-2.0\glib\gi18n-lib.h
+..\%__SRC%\inc\gnode.h %_DEST%\inc%_EXT%\external\glib-2.0\glib\gnode.h
+..\%__SRC%\inc\grel.h %_DEST%\inc%_EXT%\external\glib-2.0\glib\grel.h
+..\%__SRC%\inc\gthread.h %_DEST%\inc%_EXT%\external\glib-2.0\glib\gthread.h
+..\%__SRC%\inc\gwin32.h %_DEST%\inc%_EXT%\external\glib-2.0\glib\gwin32.h
+
+mkdir: %_DEST%\inc%_EXT%\external\glib-2.0\gobject
+..\%__SRC%\inc\gbinding.h %_DEST%\inc%_EXT%\external\glib-2.0\gobject\gbinding.h
+..\%__SRC%\inc\gmarshal.h %_DEST%\inc%_EXT%\external\glib-2.0\gobject\gmarshal.h
+..\%__SRC%\inc\gparamspecs.h %_DEST%\inc%_EXT%\external\glib-2.0\gobject\gparamspecs.h
+..\%__SRC%\inc\gtypemodule.h %_DEST%\inc%_EXT%\external\glib-2.0\gobject\gtypemodule.h
+..\%__SRC%\inc\gvaluecollector.h %_DEST%\inc%_EXT%\external\glib-2.0\gobject\gvaluecollector.h
+..\%__SRC%\inc\gboxed.h %_DEST%\inc%_EXT%\external\glib-2.0\gobject\gboxed.h
+..\%__SRC%\inc\gobject.h %_DEST%\inc%_EXT%\external\glib-2.0\gobject\gobject.h
+..\%__SRC%\inc\gsignal.h %_DEST%\inc%_EXT%\external\glib-2.0\gobject\gsignal.h
+..\%__SRC%\inc\gtypeplugin.h %_DEST%\inc%_EXT%\external\glib-2.0\gobject\gtypeplugin.h
+..\%__SRC%\inc\gvaluetypes.h %_DEST%\inc%_EXT%\external\glib-2.0\gobject\gvaluetypes.h
+..\%__SRC%\inc\gclosure.h %_DEST%\inc%_EXT%\external\glib-2.0\gobject\gclosure.h
+..\%__SRC%\inc\gobjectnotifyqueue.c %_DEST%\inc%_EXT%\external\glib-2.0\gobject\gobjectnotifyqueue.c
+..\%__SRC%\inc\gsourceclosure.h %_DEST%\inc%_EXT%\external\glib-2.0\gobject\gsourceclosure.h
+..\%__SRC%\inc\gvalue.h %_DEST%\inc%_EXT%\external\glib-2.0\gobject\gvalue.h
+..\%__SRC%\inc\genums.h %_DEST%\inc%_EXT%\external\glib-2.0\gobject\genums.h
+..\%__SRC%\inc\gparam.h %_DEST%\inc%_EXT%\external\glib-2.0\gobject\gparam.h
+..\%__SRC%\inc\gtype.h %_DEST%\inc%_EXT%\external\glib-2.0\gobject\gtype.h
+..\%__SRC%\inc\gvaluearray.h %_DEST%\inc%_EXT%\external\glib-2.0\gobject\gvaluearray.h
+
diff --git a/jpeg/jpeg-8c.patch b/jpeg/jpeg-8c.patch
new file mode 100644
index 000000000000..77c1ff592c7a
--- /dev/null
+++ b/jpeg/jpeg-8c.patch
@@ -0,0 +1,174 @@
+--- misc/jpeg-8c/jconfig.h 2011-03-30 11:20:06.266329889 +0200
++++ misc/build/jpeg-8c/jconfig.h 2011-03-30 11:02:01.926080079 +0200
+@@ -1 +1,60 @@
+-dummy
++/* jconfig.h. Generated from jconfig.cfg by configure. */
++/* jconfig.cfg --- source file edited by configure script */
++/* see jconfig.txt for explanations */
++
++#define HAVE_PROTOTYPES 1
++#define HAVE_UNSIGNED_CHAR 1
++#define HAVE_UNSIGNED_SHORT 1
++/* #undef void */
++/* #undef const */
++/* #undef CHAR_IS_UNSIGNED */
++#define HAVE_STDDEF_H 1
++#define HAVE_STDLIB_H 1
++#define HAVE_LOCALE_H 1
++/* #undef NEED_BSD_STRINGS */
++/* #undef NEED_SYS_TYPES_H */
++/* #undef NEED_FAR_POINTERS */
++/* #undef NEED_SHORT_EXTERNAL_NAMES */
++/* Define this if you get warnings about undefined structures. */
++/* #undef INCOMPLETE_TYPES_BROKEN */
++
++/* Define "boolean" as unsigned char, not int, on Windows systems. */
++#ifdef WNT
++#ifndef __RPCNDR_H__ /* don't conflict if rpcndr.h already read */
++typedef unsigned char boolean;
++#endif
++#define HAVE_BOOLEAN /* prevent jmorecfg.h from redefining it */
++#endif
++
++#ifdef JPEG_INTERNALS
++
++/* #undef RIGHT_SHIFT_IS_UNSIGNED */
++#ifdef WNT
++#define INLINE __inline
++#elif defined SOLARIS
++#define INLINE
++#else
++#define INLINE inline
++#endif
++/* These are for configuring the JPEG memory manager. */
++/* #undef DEFAULT_MAX_MEM */
++/* #undef NO_MKTEMP */
++
++#endif /* JPEG_INTERNALS */
++
++#ifdef JPEG_CJPEG_DJPEG
++
++#undef BMP_SUPPORTED /* BMP image file format */
++#undef GIF_SUPPORTED /* GIF image file format */
++#undef PPM_SUPPORTED /* PBMPLUS PPM/PGM image file format */
++/* #undef RLE_SUPPORTED */
++#undef TARGA_SUPPORTED /* Targa image file format */
++
++/* #undef TWO_FILE_COMMANDLINE */
++/* #undef NEED_SIGNAL_CATCHER */
++/* #undef DONT_USE_B_MODE */
++
++/* Define this if you want percent-done progress reports from cjpeg/djpeg. */
++/* #undef PROGRESS_REPORT */
++
++#endif /* JPEG_CJPEG_DJPEG */
+--- misc/jpeg-8c/jmorecfg.h 2009-11-20 09:01:24.000000000 +0100
++++ misc/build/jpeg-8c/jmorecfg.h 2011-03-24 21:29:02.073761750 +0100
+@@ -21,7 +21,7 @@
+ * We do not support run-time selection of data precision, sorry.
+ */
+
+-#define BITS_IN_JSAMPLE 8 /* use 8 or 12 */
++#define BITS_IN_JSAMPLE 8 /* use 8 or 12 */
+
+
+ /*
+@@ -158,7 +158,8 @@
+
+ /* INT32 must hold at least signed 32-bit values. */
+
+-#ifndef XMD_H /* X11/xmd.h correctly defines INT32 */
++#ifndef XMD_H /* X11/xmd.h correctly defines INT32 */
++#ifndef _SOLAR_H
+ #ifndef _BASETSD_H_ /* Microsoft defines it in basetsd.h */
+ #ifndef _BASETSD_H /* MinGW is slightly different */
+ #ifndef QGLOBAL_H /* Qt defines it in qglobal.h */
+@@ -166,6 +167,7 @@
+ #endif
+ #endif
+ #endif
++#endif
+ #endif
+
+ /* Datatype used for image dimensions. The JPEG standard only supports
+--- misc/jpeg-8c/makefile.mk 2011-03-24 21:20:52.540761397 +0100
++++ misc/build/jpeg-8c/makefile.mk 2011-03-24 21:15:20.712761156 +0100
+@@ -1 +1,77 @@
+-dummy
++#*************************************************************************
++#
++# Copyright according the GNU Public License.
++#
++#*************************************************************************
++
++PRJ=..$/..$/..$/..
++
++PRJNAME=jpeg
++TARGET=jpeglib
++LIBTARGET=NO
++EXTERNAL_WARNINGS_NOT_ERRORS=TRUE
++VISIBILITY_HIDDEN=TRUE
++
++# --- Settings -----------------------------------------------------------
++
++.INCLUDE : settings.mk
++
++.IF "$(GUI)$(CPU)"=="WNTP"
++CFLAGS=$(CFLAGS) -Od
++.ENDIF
++
++# --- Files --------------------------------------------------------
++
++SLOFILES= $(SLO)$/jaricom.obj \
++ $(SLO)$/jcapimin.obj \
++ $(SLO)$/jcapistd.obj \
++ $(SLO)$/jcarith.obj \
++ $(SLO)$/jccoefct.obj \
++ $(SLO)$/jccolor.obj \
++ $(SLO)$/jcdctmgr.obj \
++ $(SLO)$/jchuff.obj \
++ $(SLO)$/jcinit.obj \
++ $(SLO)$/jcmainct.obj \
++ $(SLO)$/jcmarker.obj \
++ $(SLO)$/jcmaster.obj \
++ $(SLO)$/jcomapi.obj \
++ $(SLO)$/jcparam.obj \
++ $(SLO)$/jcprepct.obj \
++ $(SLO)$/jcsample.obj \
++ $(SLO)$/jctrans.obj \
++ $(SLO)$/jdapimin.obj \
++ $(SLO)$/jdapistd.obj \
++ $(SLO)$/jdarith.obj \
++ $(SLO)$/jdatadst.obj \
++ $(SLO)$/jdatasrc.obj \
++ $(SLO)$/jdcoefct.obj \
++ $(SLO)$/jdcolor.obj \
++ $(SLO)$/jddctmgr.obj \
++ $(SLO)$/jdhuff.obj \
++ $(SLO)$/jdinput.obj \
++ $(SLO)$/jdmainct.obj \
++ $(SLO)$/jdmarker.obj \
++ $(SLO)$/jdmaster.obj \
++ $(SLO)$/jdmerge.obj \
++ $(SLO)$/jdpostct.obj \
++ $(SLO)$/jdsample.obj \
++ $(SLO)$/jdtrans.obj \
++ $(SLO)$/jerror.obj \
++ $(SLO)$/jfdctflt.obj \
++ $(SLO)$/jfdctfst.obj \
++ $(SLO)$/jfdctint.obj \
++ $(SLO)$/jidctflt.obj \
++ $(SLO)$/jidctfst.obj \
++ $(SLO)$/jidctint.obj \
++ $(SLO)$/jquant1.obj \
++ $(SLO)$/jquant2.obj \
++ $(SLO)$/jutils.obj \
++ $(SLO)$/jmemmgr.obj \
++ $(SLO)$/jmemnobs.obj \
++ $(SLO)$/jutils.obj
++
++LIB1TARGET=$(SLB)$/$(TARGET).lib
++LIB1ARCHIV=$(LB)$/lib$(TARGET).a
++LIB1OBJFILES=$(SLOFILES)
++
++.INCLUDE : target.mk
diff --git a/jpeg/makefile.mk b/jpeg/makefile.mk
index b2553dd1b4f2..adc0c664c127 100644
--- a/jpeg/makefile.mk
+++ b/jpeg/makefile.mk
@@ -42,23 +42,27 @@ all:
# --- Files --------------------------------------------------------
-TARFILE_NAME=jpeg-6b
-TARFILE_MD5=dbd5f3b47ed13132f04c685d608a7547
+#TARFILE_NAME=jpeg-6b
+TARFILE_NAME=jpeg-8c
-PATCH_FILES=jpeg-6b.patch
-ADDITIONAL_FILES=makefile.mk \
- jconfig.h
+#TARFILE_MD5=dbd5f3b47ed13132f04c685d608a7547
+TARFILE_MD5=a2c10c04f396a9ce72894beb18b4e1f9
+
+#PATCH_FILES=jpeg-6b.patch
+PATCH_FILES=jpeg-8c.patch
+
+ADDITIONAL_FILES=makefile.mk jconfig.h
#relative to CONFIGURE_DIR
BUILD_DIR=$(CONFIGURE_DIR)
BUILD_ACTION=dmake $(MFLAGS) $(CALLMACROS)
-OUT2INC=jerror.h \
- jpeglib.h \
- jconfig.h \
- jmorecfg.h
-
+OUT2INC= jconfig.h \
+ jerror.h \
+ jmorecfg.h \
+ jpegint.h \
+ jpeglib.h
# --- Targets ------------------------------------------------------
diff --git a/jpeg/prj/build.lst b/jpeg/prj/build.lst
index b0fe1f0aaf68..ef26ed4a7926 100644
--- a/jpeg/prj/build.lst
+++ b/jpeg/prj/build.lst
@@ -1,2 +1,2 @@
-jg jpeg : soltools NULL
-jg jpeg nmake - all jg_mkout NULL
+jg jpeg : soltools NULL
+jg jpeg nmake - all jg_mkout NULL
diff --git a/jpeg/prj/d.lst b/jpeg/prj/d.lst
index 8bda1b88ea9d..93c3de45c570 100644
--- a/jpeg/prj/d.lst
+++ b/jpeg/prj/d.lst
@@ -2,9 +2,11 @@ mkdir: %_DEST%\inc%_EXT%\external
mkdir: %_DEST%\inc%_EXT%\external\jpeg
..\%__SRC%\slb\jpeglib.lib %_DEST%\lib%_EXT%\jpeglib.lib
+..\%__SRC%\slb\jpeglib.lib %_DEST%\lib%_EXT%\jpeg.lib
..\%__SRC%\lib\libjpeglib.a %_DEST%\lib%_EXT%\libjpeglib.a
+..\%__SRC%\lib\libjpeglib.a %_DEST%\lib%_EXT%\libjpeg.a
-..\%__SRC%\inc\jerror.h %_DEST%\inc%_EXT%\external\jerror.h
-..\%__SRC%\inc\jpeglib.h %_DEST%\inc%_EXT%\external\jpeglib.h
-..\%__SRC%\inc\jconfig.h %_DEST%\inc%_EXT%\external\jconfig.h
-..\%__SRC%\inc\jmorecfg.h %_DEST%\inc%_EXT%\external\jmorecfg.h
+..\%__SRC%\inc\jerror.h %_DEST%\inc%_EXT%\external\jpeg\jerror.h
+..\%__SRC%\inc\jpeglib.h %_DEST%\inc%_EXT%\external\jpeg\jpeglib.h
+..\%__SRC%\inc\jconfig.h %_DEST%\inc%_EXT%\external\jpeg\jconfig.h
+..\%__SRC%\inc\jmorecfg.h %_DEST%\inc%_EXT%\external\jpeg\jmorecfg.h
diff --git a/libcroco/libcroco-0.6.2.patch b/libcroco/libcroco-0.6.2.patch
new file mode 100644
index 000000000000..100023fb7395
--- /dev/null
+++ b/libcroco/libcroco-0.6.2.patch
@@ -0,0 +1,110 @@
+--- misc/libcroco-0.6.2/src/makefile.mk Wed Aug 20 14:33:55 2008
++++ misc/build/libcroco-0.6.2/src/makefile.mk Wed Aug 20 14:26:42 2008
+@@ -1 +1,106 @@
+-dummy
++#*************************************************************************
++#
++# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
++#
++# Copyright 2000, 2010 Oracle and/or its affiliates.
++#
++# OpenOffice.org - a multi-platform office productivity suite
++#
++# This file is part of OpenOffice.org.
++#
++# OpenOffice.org is free software: you can redistribute it and/or modify
++# it under the terms of the GNU Lesser General Public License version 3
++# only, as published by the Free Software Foundation.
++#
++# OpenOffice.org is distributed in the hope that it will be useful,
++# but WITHOUT ANY WARRANTY; without even the implied warranty of
++# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
++# GNU Lesser General Public License version 3 for more details
++# (a copy is included in the LICENSE file that accompanied this code).
++#
++# You should have received a copy of the GNU Lesser General Public License
++# version 3 along with OpenOffice.org. If not, see
++# <http://www.openoffice.org/license.html>
++# for a copy of the LGPLv3 License.
++#
++#*************************************************************************
++
++PRJ=..$/..$/..$/..$/..
++#PRJINC=..
++PRJNAME=libcroco
++TARGET=libcroco-0.6-3
++
++#ENABLE_EXCEPTIONS=TRUE
++VISIBILITY_HIDDEN=TRUE
++EXTERNAL_WARNINGS_NOT_ERRORS=TRUE
++
++# --- Settings ----------------------------------
++
++.INCLUDE : settings.mk
++
++CFLAGS+=-I$(SOLARINCDIR)$/external -I$(SOLARINCDIR)$/external$/glib-2.0
++
++# --- Files -------------------------------------
++
++SLOFILES=\
++ $(SLO)$/cr-utils.obj \
++ $(SLO)$/cr-input.obj \
++ $(SLO)$/cr-enc-handler.obj \
++ $(SLO)$/cr-num.obj \
++ $(SLO)$/cr-rgb.obj \
++ $(SLO)$/cr-token.obj \
++ $(SLO)$/cr-tknzr.obj \
++ $(SLO)$/cr-term.obj \
++ $(SLO)$/cr-attr-sel.obj \
++ $(SLO)$/cr-pseudo.obj \
++ $(SLO)$/cr-additional-sel.obj \
++ $(SLO)$/cr-simple-sel.obj \
++ $(SLO)$/cr-selector.obj \
++ $(SLO)$/cr-doc-handler.obj \
++ $(SLO)$/cr-parser.obj \
++ $(SLO)$/cr-declaration.obj \
++ $(SLO)$/cr-statement.obj \
++ $(SLO)$/cr-stylesheet.obj \
++ $(SLO)$/cr-cascade.obj \
++ $(SLO)$/cr-om-parser.obj \
++ $(SLO)$/cr-style.obj \
++ $(SLO)$/cr-sel-eng.obj \
++ $(SLO)$/cr-fonts.obj \
++ $(SLO)$/cr-prop-list.obj \
++ $(SLO)$/cr-parsing-location.obj \
++ $(SLO)$/cr-string.obj
++
++
++# --- Library -----------------------------------
++
++SHL1TARGET= $(TARGET)
++SHL1OBJS=$(SLOFILES)
++SHL1STDLIBS=\
++ gio-2.0.lib \
++ gobject-2.0.lib \
++ gthread-2.0.lib \
++ glib-2.0.lib \
++ intl.lib \
++ $(LIBXML2LIB)
++
++
++SHL1DEPN=
++#SHL1IMPLIB=$(TARGET)
++#SHL1USE_EXPORTS=name
++
++SHL1DEF= $(MISC)$/$(SHL1TARGET).def
++
++DEF1NAME= $(SHL1TARGET)
++DEF1DEPN= $(MISC)$/$(SHL1TARGET).flt \
++ $(SLB)$/$(TARGET).lib
++DEFLIB1NAME=$(TARGET)
++
++# --- Targets ----------------------------------
++
++.INCLUDE : target.mk
++
++# --- filter file ------------------------------
++
++$(MISC)$/$(SHL1TARGET).flt: makefile.mk
++ @echo CLEAR_THE_FILE > $@
++
diff --git a/libcroco/makefile.mk b/libcroco/makefile.mk
new file mode 100644
index 000000000000..d5c84d517190
--- /dev/null
+++ b/libcroco/makefile.mk
@@ -0,0 +1,146 @@
+#*************************************************************************
+#
+# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+#
+# Copyright 2000, 2010 Oracle and/or its affiliates.
+#
+# OpenOffice.org - a multi-platform office productivity suite
+#
+# This file is part of OpenOffice.org.
+#
+# OpenOffice.org is free software: you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License version 3
+# only, as published by the Free Software Foundation.
+#
+# OpenOffice.org is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU Lesser General Public License version 3 for more details
+# (a copy is included in the LICENSE file that accompanied this code).
+#
+# You should have received a copy of the GNU Lesser General Public License
+# version 3 along with OpenOffice.org. If not, see
+# <http://www.openoffice.org/license.html>
+# for a copy of the LGPLv3 License.
+#
+#*************************************************************************
+
+PRJ=.
+
+PRJNAME=libcroco
+TARGET=so_libcroco
+
+# --- Settings -----------------------------------------------------
+
+.INCLUDE : settings.mk
+
+.IF "$(SYSTEM_LIBCROCO)" == "YES"
+all:
+ @echo "An already available installation of libcroco should exist on your system."
+ @echo "Therefore the version provided here does not need to be built in addition."
+.ENDIF
+
+# --- Files --------------------------------------------------------
+
+LIBCROCOVERSION=0.6.2
+
+TARFILE_NAME=$(PRJNAME)-$(LIBCROCOVERSION)
+TARFILE_MD5=0611e099e807210cf738dcb41425d104
+
+PATCH_FILES=
+CONFIGURE_DIR=
+
+.IF "$(OS)"=="MACOSX"
+CONFIGURE_ACTION=$(AUGMENT_LIBRARY_PATH) \
+ .$/configure \
+ --prefix=$(SRC_ROOT)$/$(PRJNAME)$/$(MISC) \
+ CFLAGS="$(ARCH_FLAGS) $(EXTRA_CFLAGS) -I$(SOLARINCDIR)$/external -I$(SOLARINCDIR)$/external$/glib-2.0" \
+ LDFLAGS="-L$(SOLARLIBDIR)" \
+ GLIB2_CFLAGS="-I$(SOLARINCDIR)$/external$/glib-2.0" \
+ GLIB2_LIBS="-lgio-2.0 -lgobject-2.0 -lgthread-2.0 -lglib-2.0 -lintl" \
+ LIBXML2_CFLAGS=" " \
+ LIBXML2_LIBS="-lxml2"
+
+CONFIGURE_FLAGS=$(eq,$(OS),MACOSX CPPFLAGS="$(EXTRA_CDEFS)" $(NULL))
+
+BUILD_ACTION=$(AUGMENT_LIBRARY_PATH) \
+ $(GNUMAKE)
+BUILD_DIR=$(CONFIGURE_DIR)
+
+EXTRPATH=LOADER
+OUT2LIB+=src$/.libs$/libcroco-0.6.3.0.1.dylib
+
+OUT2INC+=src$/cr-additional-sel.h
+OUT2INC+=src$/cr-input.h
+OUT2INC+=src$/cr-rgb.h
+OUT2INC+=src$/cr-stylesheet.h
+OUT2INC+=src$/cr-attr-sel.h
+OUT2INC+=src$/cr-num.h
+OUT2INC+=src$/cr-sel-eng.h
+OUT2INC+=src$/cr-term.h
+OUT2INC+=src$/cr-cascade.h
+OUT2INC+=src$/cr-om-parser.h
+OUT2INC+=src$/cr-selector.h
+OUT2INC+=src$/cr-tknzr.h
+OUT2INC+=src$/cr-declaration.h
+OUT2INC+=src$/cr-parser.h
+OUT2INC+=src$/cr-simple-sel.h
+OUT2INC+=src$/cr-token.h
+OUT2INC+=src$/cr-doc-handler.h
+OUT2INC+=src$/cr-parsing-location.h
+OUT2INC+=src$/cr-statement.h
+OUT2INC+=src$/cr-utils.h
+OUT2INC+=src$/cr-enc-handler.h
+OUT2INC+=src$/cr-prop-list.h
+OUT2INC+=src$/cr-string.h
+OUT2INC+=src$/libcroco-config.h
+OUT2INC+=src$/cr-fonts.h
+OUT2INC+=src$/cr-pseudo.h
+OUT2INC+=src$/cr-style.h
+OUT2INC+=src$/libcroco.h
+.ELIF "$(OS)"=="WNT"
+
+BUILD_ACTION=dmake
+BUILD_DIR=$(CONFIGURE_DIR)$/src
+PATCH_FILES=libcroco-0.6.2.patch
+ADDITIONAL_FILES=\
+ src$/makefile.mk
+
+OUT2INC+=src$/cr-additional-sel.h
+OUT2INC+=src$/cr-input.h
+OUT2INC+=src$/cr-rgb.h
+OUT2INC+=src$/cr-stylesheet.h
+OUT2INC+=src$/cr-attr-sel.h
+OUT2INC+=src$/cr-num.h
+OUT2INC+=src$/cr-sel-eng.h
+OUT2INC+=src$/cr-term.h
+OUT2INC+=src$/cr-cascade.h
+OUT2INC+=src$/cr-om-parser.h
+OUT2INC+=src$/cr-selector.h
+OUT2INC+=src$/cr-tknzr.h
+OUT2INC+=src$/cr-declaration.h
+OUT2INC+=src$/cr-parser.h
+OUT2INC+=src$/cr-simple-sel.h
+OUT2INC+=src$/cr-token.h
+OUT2INC+=src$/cr-doc-handler.h
+OUT2INC+=src$/cr-parsing-location.h
+OUT2INC+=src$/cr-statement.h
+OUT2INC+=src$/cr-utils.h
+OUT2INC+=src$/cr-enc-handler.h
+OUT2INC+=src$/cr-prop-list.h
+OUT2INC+=src$/cr-string.h
+OUT2INC+=src$/libcroco-config.h
+OUT2INC+=src$/cr-fonts.h
+OUT2INC+=src$/cr-pseudo.h
+OUT2INC+=src$/cr-style.h
+OUT2INC+=src$/libcroco.h
+.ELSE
+
+.ENDIF
+
+# --- Targets ------------------------------------------------------
+
+.INCLUDE : set_ext.mk
+.INCLUDE : target.mk
+.INCLUDE : tg_ext.mk
+
diff --git a/libcroco/prj/build.lst b/libcroco/prj/build.lst
new file mode 100644
index 000000000000..ef0578bfe141
--- /dev/null
+++ b/libcroco/prj/build.lst
@@ -0,0 +1,3 @@
+cr libcroco : libxml2 glib soltools NULL
+cr libcroco usr1 - all cr_mkout NULL
+cr libcroco nmake - all cr_libcroco NULL
diff --git a/libcroco/prj/d.lst b/libcroco/prj/d.lst
new file mode 100755
index 000000000000..f010d0024951
--- /dev/null
+++ b/libcroco/prj/d.lst
@@ -0,0 +1,39 @@
+mkdir: %_DEST%\inc%_EXT%\external
+mkdir: %_DEST%\inc%_EXT%\external\libcroco-0.6
+mkdir: %_DEST%\inc%_EXT%\external\libcroco-0.6\libcroco
+
+..\%__SRC%\inc\cr-additional-sel.h %_DEST%\inc%_EXT%\external\libcroco-0.6\libcroco\cr-additional-sel.h
+..\%__SRC%\inc\cr-input.h %_DEST%\inc%_EXT%\external\libcroco-0.6\libcroco\cr-input.h
+..\%__SRC%\inc\cr-rgb.h %_DEST%\inc%_EXT%\external\libcroco-0.6\libcroco\cr-rgb.h
+..\%__SRC%\inc\cr-stylesheet.h %_DEST%\inc%_EXT%\external\libcroco-0.6\libcroco\cr-stylesheet.h
+..\%__SRC%\inc\cr-attr-sel.h %_DEST%\inc%_EXT%\external\libcroco-0.6\libcroco\cr-attr-sel.h
+..\%__SRC%\inc\cr-num.h %_DEST%\inc%_EXT%\external\libcroco-0.6\libcroco\cr-num.h
+..\%__SRC%\inc\cr-sel-eng.h %_DEST%\inc%_EXT%\external\libcroco-0.6\libcroco\cr-sel-eng.h
+..\%__SRC%\inc\cr-term.h %_DEST%\inc%_EXT%\external\libcroco-0.6\libcroco\cr-term.h
+..\%__SRC%\inc\cr-cascade.h %_DEST%\inc%_EXT%\external\libcroco-0.6\libcroco\cr-cascade.h
+..\%__SRC%\inc\cr-om-parser.h %_DEST%\inc%_EXT%\external\libcroco-0.6\libcroco\cr-om-parser.h
+..\%__SRC%\inc\cr-selector.h %_DEST%\inc%_EXT%\external\libcroco-0.6\libcroco\cr-selector.h
+..\%__SRC%\inc\cr-tknzr.h %_DEST%\inc%_EXT%\external\libcroco-0.6\libcroco\cr-tknzr.h
+..\%__SRC%\inc\cr-declaration.h %_DEST%\inc%_EXT%\external\libcroco-0.6\libcroco\cr-declaration.h
+..\%__SRC%\inc\cr-parser.h %_DEST%\inc%_EXT%\external\libcroco-0.6\libcroco\cr-parser.h
+..\%__SRC%\inc\cr-simple-sel.h %_DEST%\inc%_EXT%\external\libcroco-0.6\libcroco\cr-simple-sel.h
+..\%__SRC%\inc\cr-token.h %_DEST%\inc%_EXT%\external\libcroco-0.6\libcroco\cr-token.h
+..\%__SRC%\inc\cr-doc-handler.h %_DEST%\inc%_EXT%\external\libcroco-0.6\libcroco\cr-doc-handler.h
+..\%__SRC%\inc\cr-parsing-location.h %_DEST%\inc%_EXT%\external\libcroco-0.6\libcroco\cr-parsing-location.h
+..\%__SRC%\inc\cr-statement.h %_DEST%\inc%_EXT%\external\libcroco-0.6\libcroco\cr-statement.h
+..\%__SRC%\inc\cr-utils.h %_DEST%\inc%_EXT%\external\libcroco-0.6\libcroco\cr-utils.h
+..\%__SRC%\inc\cr-enc-handler.h %_DEST%\inc%_EXT%\external\libcroco-0.6\libcroco\cr-enc-handler.h
+..\%__SRC%\inc\cr-prop-list.h %_DEST%\inc%_EXT%\external\libcroco-0.6\libcroco\cr-prop-list.h
+..\%__SRC%\inc\cr-string.h %_DEST%\inc%_EXT%\external\libcroco-0.6\libcroco\cr-string.h
+..\%__SRC%\inc\libcroco-config.h %_DEST%\inc%_EXT%\external\libcroco-0.6\libcroco\libcroco-config.h
+..\%__SRC%\inc\cr-fonts.h %_DEST%\inc%_EXT%\external\libcroco-0.6\libcroco\cr-fonts.h
+..\%__SRC%\inc\cr-pseudo.h %_DEST%\inc%_EXT%\external\libcroco-0.6\libcroco\cr-pseudo.h
+..\%__SRC%\inc\cr-style.h %_DEST%\inc%_EXT%\external\libcroco-0.6\libcroco\cr-style.h
+..\%__SRC%\inc\libcroco.h %_DEST%\inc%_EXT%\external\libcroco-0.6\libcroco\libcroco.h
+
+..\%__SRC%\lib\libcroco-0.6.3.0.1.dylib %_DEST%\lib%_EXT%\libcroco-0.6.3.0.1.dylib
+symlink: %_DEST%\lib%_EXT%\libcroco-0.6.3.0.1.dylib %_DEST%\lib%_EXT%\libcroco-0.6.3.dylib
+symlink: %_DEST%\lib%_EXT%\libcroco-0.6.3.dylib %_DEST%\lib%_EXT%\libcroco-0.6.dylib
+
+..\%__SRC%\lib\ilibcroco-0.6-3_t1.lib %_DEST%\lib%_EXT%\libcroco-0.6-3.lib
+..\%__SRC%\bin\libcroco-0.6-3.dll %_DEST%\bin%_EXT%\libcroco-0.6-3.dll
diff --git a/libgsf/libgsf-1.14.19.patch b/libgsf/libgsf-1.14.19.patch
new file mode 100644
index 000000000000..a39758367f83
--- /dev/null
+++ b/libgsf/libgsf-1.14.19.patch
@@ -0,0 +1,20 @@
+--- misc/libgsf-1.14.19/configure 2010-09-25 18:53:55.000000000 +0200
++++ misc/build/libgsf-1.14.19/configure 2011-03-03 12:42:21.000000000 +0100
+@@ -11475,7 +11475,7 @@
+
+
+
+-
++if 0; then
+ case "$am__api_version" in
+ 1.01234)
+ as_fn_error "Automake 1.5 or newer is required to use intltool" "$LINENO" 5
+@@ -11650,7 +11650,7 @@
+
+
+
+-
++fi
+
+
+
diff --git a/libgsf/libgsf-1.14.19.windows.patch b/libgsf/libgsf-1.14.19.windows.patch
new file mode 100644
index 000000000000..2f4221420558
--- /dev/null
+++ b/libgsf/libgsf-1.14.19.windows.patch
@@ -0,0 +1,138 @@
+--- misc/libgsf-1.14.19/gsf/gsf-config.h 2011-03-23 16:18:27.163747600 +0100
++++ misc/build/libgsf-1.14.19/gsf/gsf-config.h 2011-03-23 16:01:26.598374600 +0100
+@@ -1 +1,10 @@
+-dummy
++#ifndef GSF_CONFIG_H
++#define GSF_CONFIG_H
++
++#define GETTEXT_PACKAGE "gsf"
++
++typedef unsigned short mode_t;
++
++#define S_ISREG(x) ((x & _S_IFREG)!=0)
++
++#endif
+--- misc/libgsf-1.14.19/gsf/makefile.mk 2011-03-23 16:18:27.070742300 +0100
++++ misc/build/libgsf-1.14.19/gsf/makefile.mk 2011-03-23 16:17:29.477448100 +0100
+@@ -1 +1,120 @@
+-dummy
++#*************************************************************************
++#
++# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
++#
++# Copyright 2000, 2010 Oracle and/or its affiliates.
++#
++# OpenOffice.org - a multi-platform office productivity suite
++#
++# This file is part of OpenOffice.org.
++#
++# OpenOffice.org is free software: you can redistribute it and/or modify
++# it under the terms of the GNU Lesser General Public License version 3
++# only, as published by the Free Software Foundation.
++#
++# OpenOffice.org is distributed in the hope that it will be useful,
++# but WITHOUT ANY WARRANTY; without even the implied warranty of
++# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
++# GNU Lesser General Public License version 3 for more details
++# (a copy is included in the LICENSE file that accompanied this code).
++#
++# You should have received a copy of the GNU Lesser General Public License
++# version 3 along with OpenOffice.org. If not, see
++# <http://www.openoffice.org/license.html>
++# for a copy of the LGPLv3 License.
++#
++#*************************************************************************
++
++PRJ=..$/..$/..$/..$/..
++PRJINC=..
++PRJNAME=libgsf
++TARGET=gsf-1
++
++VISIBILITY_HIDDEN=TRUE
++EXTERNAL_WARNINGS_NOT_ERRORS=TRUE
++
++# --- Settings ----------------------------------
++
++.INCLUDE : settings.mk
++
++CFLAGS+= -I.. -I$(SOLARINCDIR)$/external$/glib-2.0 -I$(SOLARINCDIR)$/external$/zlib -I$(SOLARINCDIR)$/external
++
++# --- Files -------------------------------------
++
++SLOFILES=\
++ $(SLO)$/gsf-blob.obj \
++ $(SLO)$/gsf-input-memory.obj \
++ $(SLO)$/gsf-output-gio.obj \
++ $(SLO)$/gsf-clip-data.obj \
++ $(SLO)$/gsf-input-proxy.obj \
++ $(SLO)$/gsf-output-gzip.obj \
++ $(SLO)$/gsf-doc-meta-data.obj \
++ $(SLO)$/gsf-input-stdio.obj \
++ $(SLO)$/gsf-output-iconv.obj \
++ $(SLO)$/gsf-docprop-vector.obj \
++ $(SLO)$/gsf-input-textline.obj \
++ $(SLO)$/gsf-output-iochannel.obj \
++ $(SLO)$/gsf-infile-msole.obj \
++ $(SLO)$/gsf-input.obj \
++ $(SLO)$/gsf-output-memory.obj \
++ $(SLO)$/gsf-infile-msvba.obj \
++ $(SLO)$/gsf-libxml.obj \
++ $(SLO)$/gsf-output-stdio.obj \
++ $(SLO)$/gsf-infile-stdio.obj \
++ $(SLO)$/gsf-msole-utils.obj \
++ $(SLO)$/gsf-output.obj \
++ $(SLO)$/gsf-infile-tar.obj \
++ $(SLO)$/gsf-open-pkg-utils.obj \
++ $(SLO)$/gsf-shared-memory.obj \
++ $(SLO)$/gsf-infile-zip.obj \
++ $(SLO)$/gsf-opendoc-utils.obj \
++ $(SLO)$/gsf-structured-blob.obj \
++ $(SLO)$/gsf-infile.obj \
++ $(SLO)$/gsf-outfile-msole.obj \
++ $(SLO)$/gsf-timestamp.obj \
++ $(SLO)$/gsf-input-bzip.obj \
++ $(SLO)$/gsf-outfile-stdio.obj \
++ $(SLO)$/gsf-utils.obj \
++ $(SLO)$/gsf-input-gio.obj \
++ $(SLO)$/gsf-outfile-zip.obj \
++ $(SLO)$/gsf-zip-utils.obj \
++ $(SLO)$/gsf-input-gzip.obj \
++ $(SLO)$/gsf-outfile.obj \
++ $(SLO)$/version.obj \
++ $(SLO)$/gsf-input-http.obj \
++ $(SLO)$/gsf-output-bzip.obj \
++ $(SLO)$/gsf-input-iochannel.obj \
++ $(SLO)$/gsf-output-csv.obj
++
++# --- Library -----------------------------------
++
++SHL1TARGET= $(TARGET)
++SHL1OBJS=$(SLOFILES)
++SHL1STDLIBS=\
++ libxml2.lib \
++ gio-2.0.lib \
++ gmodule-2.0.lib \
++ gobject-2.0.lib \
++ glib-2.0.lib \
++ intl.lib \
++ zlib.lib \
++ Advapi32.lib
++
++
++SHL1IMPLIB= i$(TARGET)
++SHL1DEF= $(MISC)$/$(SHL1TARGET).def
++
++DEF1NAME= $(SHL1TARGET)
++DEF1DEPN= $(MISC)$/$(SHL1TARGET).flt \
++ $(SLB)$/$(TARGET).lib
++DEFLIB1NAME=$(TARGET)
++
++# --- Targets ----------------------------------
++
++.INCLUDE : target.mk
++
++# --- filter file ------------------------------
++
++$(MISC)$/$(SHL1TARGET).flt: makefile.mk
++ @echo CLEAR_THE_FILE > $@
++
diff --git a/libgsf/makefile.mk b/libgsf/makefile.mk
new file mode 100755
index 000000000000..fc2897deaec1
--- /dev/null
+++ b/libgsf/makefile.mk
@@ -0,0 +1,157 @@
+#*************************************************************************
+#
+# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+#
+# Copyright 2000, 2010 Oracle and/or its affiliates.
+#
+# OpenOffice.org - a multi-platform office productivity suite
+#
+# This file is part of OpenOffice.org.
+#
+# OpenOffice.org is free software: you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License version 3
+# only, as published by the Free Software Foundation.
+#
+# OpenOffice.org is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU Lesser General Public License version 3 for more details
+# (a copy is included in the LICENSE file that accompanied this code).
+#
+# You should have received a copy of the GNU Lesser General Public License
+# version 3 along with OpenOffice.org. If not, see
+# <http://www.openoffice.org/license.html>
+# for a copy of the LGPLv3 License.
+#
+#*************************************************************************
+
+
+PRJ=.
+
+PRJNAME=libgsf
+TARGET=so_libgsf
+
+# --- Settings -----------------------------------------------------
+
+.INCLUDE : settings.mk
+
+.IF "$(SYSTEM_LIBGSF)" == "YES"
+all:
+ @echo "An already available installation of gdk-pixbuf should exist on your system."
+ @echo "Therefore the version provided here does not need to be built in addition."
+.ENDIF
+
+# --- Files --------------------------------------------------------
+
+LIBGSFVERSION=1.14.19
+
+TARFILE_NAME=$(PRJNAME)-$(LIBGSFVERSION)
+TARFILE_MD5=3a84ac2da37cae5bf7ce616228c6fbde
+
+.IF "$(OS)"=="MACOSX" || "$(OS)"=="WNT"
+
+.IF "$(OS)" == "WNT"
+PATCH_FILES=libgsf-1.14.19.windows.patch
+
+BUILD_DIR=gsf
+BUILD_ACTION=dmake
+
+ADDITIONAL_FILES=\
+ gsf$/makefile.mk \
+ gsf$/gsf-config.h
+
+.ELSE
+PATCH_FILES=libgsf-1.14.19.patch
+
+CONFIGURE_DIR=
+CONFIGURE_ACTION=$(AUGMENT_LIBRARY_PATH) \
+ .$/configure \
+ --prefix=$(SRC_ROOT)$/$(PRJNAME)$/$(MISC) \
+ CFLAGS="$(ARCH_FLAGS) $(EXTRA_CFLAGS) -I$(SOLARINCDIR)$/external -I$(SOLARINCDIR)$/external$/glib-2.0" \
+ LDFLAGS="-L$(SOLARLIBDIR)" \
+ --without-python \
+ --without-bonobo \
+ --with-bz2 \
+ --with-gio \
+ --with-gdk_pixbuf \
+ --without-gnome-vfs \
+ --disable-nls \
+ LIBGSF_CFLAGS="-I$(SOLARINCDIR)$/external$/glib-2.0" \
+ LIBGSF_LIBS="-lxml2 -lgio-2.0 -lgobject-2.0 -lgmodule-2.0 -lgthread-2.0 -lglib-2.0 -lintl" \
+ LIBGSF_GIO_CFLAGS="-I$(SOLARINCDIR)$/external$/glib-2.0" \
+ LIBGSF_GIO_LIBS="-lgio-2.0 -lgmodule-2.0 -lgthread-2.0 -lglib-2.0 -lintl" \
+ GDK_PIXBUF_CFLAGS="-I$(SOLARINCDIR)$/external$/gdk-pixbuf-2.0" \
+ GDK_PIXBUF_LIBS="-lgdk_pixbuf-2.0"
+
+
+CONFIGURE_FLAGS=$(eq,$(OS),MACOSX CPPFLAGS="$(EXTRA_CDEFS)" $(NULL))
+
+BUILD_ACTION=$(AUGMENT_LIBRARY_PATH) \
+ $(GNUMAKE)
+BUILD_DIR=$(CONFIGURE_DIR)
+
+.ENDIF
+
+.IF "$(OS)"=="MACOSX"
+EXTRPATH=LOADER
+OUT2LIB+=gsf$/.libs$/libgsf-1.114.dylib
+.ENDIF
+
+OUT2INC+=gsf$/gsf-blob.h
+OUT2INC+=gsf$/gsf-input-impl.h
+OUT2INC+=gsf$/gsf-outfile.h
+OUT2INC+=gsf$/gsf-clip-data.h
+OUT2INC+=gsf$/gsf-input-iochannel.h
+OUT2INC+=gsf$/gsf-output-bzip.h
+OUT2INC+=gsf$/gsf-doc-meta-data.h
+OUT2INC+=gsf$/gsf-input-memory.h
+OUT2INC+=gsf$/gsf-output-csv.h
+OUT2INC+=gsf$/gsf-docprop-vector.h
+OUT2INC+=gsf$/gsf-input-proxy.h
+OUT2INC+=gsf$/gsf-output-gio.h
+OUT2INC+=gsf$/gsf-impl-utils.h
+OUT2INC+=gsf$/gsf-input-stdio.h
+OUT2INC+=gsf$/gsf-output-gzip.h
+OUT2INC+=gsf$/gsf-infile-impl.h
+OUT2INC+=gsf$/gsf-input-textline.h
+OUT2INC+=gsf$/gsf-output-iconv.h
+OUT2INC+=gsf$/gsf-infile-msole.h
+OUT2INC+=gsf$/gsf-input.h
+OUT2INC+=gsf$/gsf-output-impl.h
+OUT2INC+=gsf$/gsf-infile-msvba.h
+OUT2INC+=gsf$/gsf-libxml.h
+OUT2INC+=gsf$/gsf-output-iochannel.h
+OUT2INC+=gsf$/gsf-infile-stdio.h
+OUT2INC+=gsf$/gsf-meta-names.h
+OUT2INC+=gsf$/gsf-output-memory.h
+OUT2INC+=gsf$/gsf-infile-tar.h
+OUT2INC+=gsf$/gsf-msole-utils.h
+OUT2INC+=gsf$/gsf-output-stdio.h
+OUT2INC+=gsf$/gsf-infile-zip.h
+OUT2INC+=gsf$/gsf-open-pkg-utils.h
+OUT2INC+=gsf$/gsf-output.h
+OUT2INC+=gsf$/gsf-infile.h
+OUT2INC+=gsf$/gsf-opendoc-utils.h
+OUT2INC+=gsf$/gsf-shared-memory.h
+OUT2INC+=gsf$/gsf-input-bzip.h
+OUT2INC+=gsf$/gsf-outfile-impl.h
+OUT2INC+=gsf$/gsf-structured-blob.h
+OUT2INC+=gsf$/gsf-input-gio.h
+OUT2INC+=gsf$/gsf-outfile-msole.h
+OUT2INC+=gsf$/gsf-timestamp.h
+OUT2INC+=gsf$/gsf-input-gzip.h
+OUT2INC+=gsf$/gsf-outfile-stdio.h
+OUT2INC+=gsf$/gsf-utils.h
+OUT2INC+=gsf$/gsf-input-http.h
+OUT2INC+=gsf$/gsf-outfile-zip.h
+OUT2INC+=gsf$/gsf.h
+
+.ENDIF
+
+# --- Targets ------------------------------------------------------
+
+.INCLUDE : set_ext.mk
+.INCLUDE : target.mk
+.INCLUDE : tg_ext.mk
+
+
diff --git a/libgsf/prj/build.lst b/libgsf/prj/build.lst
new file mode 100644
index 000000000000..1a3ea01e7535
--- /dev/null
+++ b/libgsf/prj/build.lst
@@ -0,0 +1,3 @@
+gs libgsf : glib soltools NULL
+gs libgsf usr1 - all gs_mkout NULL
+gs libgsf nmake - all gs_libgsf NULL
diff --git a/libgsf/prj/d.lst b/libgsf/prj/d.lst
new file mode 100755
index 000000000000..c47826c5b410
--- /dev/null
+++ b/libgsf/prj/d.lst
@@ -0,0 +1,59 @@
+mkdir: %_DEST%\inc%_EXT%\external
+mkdir: %_DEST%\inc%_EXT%\external\libgsf-1
+mkdir: %_DEST%\inc%_EXT%\external\libgsf-1\gsf
+
+..\%__SRC%\inc\gsf-blob.h %_DEST%\inc%_EXT%\external\libgsf-1\gsf\gsf-blob.h
+..\%__SRC%\inc\gsf-input-impl.h %_DEST%\inc%_EXT%\external\libgsf-1\gsf\gsf-input-impl.h
+..\%__SRC%\inc\gsf-outfile.h %_DEST%\inc%_EXT%\external\libgsf-1\gsf\gsf-outfile.h
+..\%__SRC%\inc\gsf-clip-data.h %_DEST%\inc%_EXT%\external\libgsf-1\gsf\gsf-clip-data.h
+..\%__SRC%\inc\gsf-input-iochannel.h %_DEST%\inc%_EXT%\external\libgsf-1\gsf\gsf-input-iochannel.h
+..\%__SRC%\inc\gsf-output-bzip.h %_DEST%\inc%_EXT%\external\libgsf-1\gsf\gsf-output-bzip.h
+..\%__SRC%\inc\gsf-doc-meta-data.h %_DEST%\inc%_EXT%\external\libgsf-1\gsf\gsf-doc-meta-data.h
+..\%__SRC%\inc\gsf-input-memory.h %_DEST%\inc%_EXT%\external\libgsf-1\gsf\gsf-input-memory.h
+..\%__SRC%\inc\gsf-output-csv.h %_DEST%\inc%_EXT%\external\libgsf-1\gsf\gsf-output-csv.h
+..\%__SRC%\inc\gsf-docprop-vector.h %_DEST%\inc%_EXT%\external\libgsf-1\gsf\gsf-docprop-vector.h
+..\%__SRC%\inc\gsf-input-proxy.h %_DEST%\inc%_EXT%\external\libgsf-1\gsf\gsf-input-proxy.h
+..\%__SRC%\inc\gsf-output-gio.h %_DEST%\inc%_EXT%\external\libgsf-1\gsf\gsf-output-gio.h
+..\%__SRC%\inc\gsf-impl-utils.h %_DEST%\inc%_EXT%\external\libgsf-1\gsf\gsf-impl-utils.h
+..\%__SRC%\inc\gsf-input-stdio.h %_DEST%\inc%_EXT%\external\libgsf-1\gsf\gsf-input-stdio.h
+..\%__SRC%\inc\gsf-output-gzip.h %_DEST%\inc%_EXT%\external\libgsf-1\gsf\gsf-output-gzip.h
+..\%__SRC%\inc\gsf-infile-impl.h %_DEST%\inc%_EXT%\external\libgsf-1\gsf\gsf-infile-impl.h
+..\%__SRC%\inc\gsf-input-textline.h %_DEST%\inc%_EXT%\external\libgsf-1\gsf\gsf-input-textline.h
+..\%__SRC%\inc\gsf-output-iconv.h %_DEST%\inc%_EXT%\external\libgsf-1\gsf\gsf-output-iconv.h
+..\%__SRC%\inc\gsf-infile-msole.h %_DEST%\inc%_EXT%\external\libgsf-1\gsf\gsf-infile-msole.h
+..\%__SRC%\inc\gsf-input.h %_DEST%\inc%_EXT%\external\libgsf-1\gsf\gsf-input.h
+..\%__SRC%\inc\gsf-output-impl.h %_DEST%\inc%_EXT%\external\libgsf-1\gsf\gsf-output-impl.h
+..\%__SRC%\inc\gsf-infile-msvba.h %_DEST%\inc%_EXT%\external\libgsf-1\gsf\gsf-infile-msvba.h
+..\%__SRC%\inc\gsf-libxml.h %_DEST%\inc%_EXT%\external\libgsf-1\gsf\gsf-libxml.h
+..\%__SRC%\inc\gsf-output-iochannel.h %_DEST%\inc%_EXT%\external\libgsf-1\gsf\gsf-output-iochannel.h
+..\%__SRC%\inc\gsf-infile-stdio.h %_DEST%\inc%_EXT%\external\libgsf-1\gsf\gsf-infile-stdio.h
+..\%__SRC%\inc\gsf-meta-names.h %_DEST%\inc%_EXT%\external\libgsf-1\gsf\gsf-meta-names.h
+..\%__SRC%\inc\gsf-output-memory.h %_DEST%\inc%_EXT%\external\libgsf-1\gsf\gsf-output-memory.h
+..\%__SRC%\inc\gsf-infile-tar.h %_DEST%\inc%_EXT%\external\libgsf-1\gsf\gsf-infile-tar.h
+..\%__SRC%\inc\gsf-msole-utils.h %_DEST%\inc%_EXT%\external\libgsf-1\gsf\gsf-msole-utils.h
+..\%__SRC%\inc\gsf-output-stdio.h %_DEST%\inc%_EXT%\external\libgsf-1\gsf\gsf-output-stdio.h
+..\%__SRC%\inc\gsf-infile-zip.h %_DEST%\inc%_EXT%\external\libgsf-1\gsf\gsf-infile-zip.h
+..\%__SRC%\inc\gsf-open-pkg-utils.h %_DEST%\inc%_EXT%\external\libgsf-1\gsf\gsf-open-pkg-utils.h
+..\%__SRC%\inc\gsf-output.h %_DEST%\inc%_EXT%\external\libgsf-1\gsf\gsf-output.h
+..\%__SRC%\inc\gsf-infile.h %_DEST%\inc%_EXT%\external\libgsf-1\gsf\gsf-infile.h
+..\%__SRC%\inc\gsf-opendoc-utils.h %_DEST%\inc%_EXT%\external\libgsf-1\gsf\gsf-opendoc-utils.h
+..\%__SRC%\inc\gsf-shared-memory.h %_DEST%\inc%_EXT%\external\libgsf-1\gsf\gsf-shared-memory.h
+..\%__SRC%\inc\gsf-input-bzip.h %_DEST%\inc%_EXT%\external\libgsf-1\gsf\gsf-input-bzip.h
+..\%__SRC%\inc\gsf-outfile-impl.h %_DEST%\inc%_EXT%\external\libgsf-1\gsf\gsf-outfile-impl.h
+..\%__SRC%\inc\gsf-structured-blob.h %_DEST%\inc%_EXT%\external\libgsf-1\gsf\gsf-structured-blob.h
+..\%__SRC%\inc\gsf-input-gio.h %_DEST%\inc%_EXT%\external\libgsf-1\gsf\gsf-input-gio.h
+..\%__SRC%\inc\gsf-outfile-msole.h %_DEST%\inc%_EXT%\external\libgsf-1\gsf\gsf-outfile-msole.h
+..\%__SRC%\inc\gsf-timestamp.h %_DEST%\inc%_EXT%\external\libgsf-1\gsf\gsf-timestamp.h
+..\%__SRC%\inc\gsf-input-gzip.h %_DEST%\inc%_EXT%\external\libgsf-1\gsf\gsf-input-gzip.h
+..\%__SRC%\inc\gsf-outfile-stdio.h %_DEST%\inc%_EXT%\external\libgsf-1\gsf\gsf-outfile-stdio.h
+..\%__SRC%\inc\gsf-utils.h %_DEST%\inc%_EXT%\external\libgsf-1\gsf\gsf-utils.h
+..\%__SRC%\inc\gsf-input-http.h %_DEST%\inc%_EXT%\external\libgsf-1\gsf\gsf-input-http.h
+..\%__SRC%\inc\gsf-outfile-zip.h %_DEST%\inc%_EXT%\external\libgsf-1\gsf\gsf-outfile-zip.h
+..\%__SRC%\inc\gsf.h %_DEST%\inc%_EXT%\external\libgsf-1\gsf\gsf.h
+
+..\%__SRC%\lib\libgsf-1.114.dylib %_DEST%\lib%_EXT%\libgsf-1.114.dylib
+symlink: %_DEST%\lib%_EXT%\libgsf-1.114.dylib %_DEST%\lib%_EXT%\libgsf-1.dylib
+
+..\%__SRC%\bin\gsf-1.dll %_DEST%\bin%_EXT%\gsf-1.dll
+..\%__SRC%\lib\igsf-1.lib %_DEST%\lib%_EXT%\igsf-1.lib
+
diff --git a/libpng/libpng-1.5.1.patch b/libpng/libpng-1.5.1.patch
new file mode 100644
index 000000000000..b64d92430f55
--- /dev/null
+++ b/libpng/libpng-1.5.1.patch
@@ -0,0 +1,277 @@
+--- misc/libpng-1.5.1/makefile.mk 2011-03-24 21:49:50.911397154 +0100
++++ misc/build/libpng-1.5.1/makefile.mk 2011-03-24 21:47:23.379397048 +0100
+@@ -1 +1,49 @@
+-dummy
++#*************************************************************************
++#
++# Copyright according the GNU Public License.
++#
++#*************************************************************************
++
++PRJ=..$/..$/..$/..
++
++PRJNAME=libpng
++TARGET=libpng
++LIBTARGET=NO
++EXTERNAL_WARNINGS_NOT_ERRORS=TRUE
++VISIBILITY_HIDDEN=TRUE
++
++# --- Settings -----------------------------------------------------------
++
++.INCLUDE : settings.mk
++
++
++.IF "$(GUI)$(CPU)"=="WNTP"
++CFLAGS=$(CFLAGS) -Od
++.ENDIF
++
++# --- Files --------------------------------------------------------
++
++SLOFILES= $(SLO)$/png.obj \
++ $(SLO)$/pngerror.obj \
++ $(SLO)$/pngget.obj \
++ $(SLO)$/pngmem.obj \
++ $(SLO)$/pngpread.obj \
++ $(SLO)$/pngread.obj \
++ $(SLO)$/pngrio.obj \
++ $(SLO)$/pngrtran.obj \
++ $(SLO)$/pngrutil.obj \
++ $(SLO)$/pngset.obj \
++ $(SLO)$/pngtest.obj \
++ $(SLO)$/pngtrans.obj \
++ $(SLO)$/pngvalid.obj \
++ $(SLO)$/pngwio.obj \
++ $(SLO)$/pngwrite.obj \
++ $(SLO)$/pngwtran.obj \
++ $(SLO)$/pngwutil.obj
++
++LIB1TARGET=$(SLB)$/$(TARGET).lib
++LIB1ARCHIV=$(LB)$/$(TARGET).a
++LIB1OBJFILES=$(SLOFILES)
++
++.INCLUDE : target.mk
++
+--- misc/libpng-1.5.1/pnglibconf.h 2011-03-24 21:49:50.913397154 +0100
++++ misc/build/libpng-1.5.1/pnglibconf.h 2011-03-24 21:47:23.380397048 +0100
+@@ -1 +1,176 @@
+-dummy
++
++/* libpng STANDARD API DEFINITION */
++
++/* pnglibconf.h - library build configuration */
++
++/* libpng version 1.5.0 - last changed on January 6, 2011 */
++
++/* Copyright (c) 1998-2011 Glenn Randers-Pehrson */
++
++/* This code is released under the libpng license. */
++/* For conditions of distribution and use, see the disclaimer */
++/* and license in png.h */
++
++/* pnglibconf.h */
++/* Machine generated file: DO NOT EDIT */
++/* Derived from: scripts/pnglibconf.dfa */
++#ifndef PNGLCONF_H
++#define PNGLCONF_H
++/* settings */
++#define PNG_MAX_GAMMA_8 11
++#define PNG_CALLOC_SUPPORTED
++#define PNG_QUANTIZE_RED_BITS 5
++#define PNG_USER_WIDTH_MAX 1000000L
++#define PNG_QUANTIZE_GREEN_BITS 5
++#define PNG_API_RULE 0
++#define PNG_QUANTIZE_BLUE_BITS 5
++#define PNG_USER_CHUNK_CACHE_MAX 0
++#define PNG_USER_HEIGHT_MAX 1000000L
++#define PNG_sCAL_PRECISION 5
++#define PNG_COST_SHIFT 3
++#define PNG_WEIGHT_SHIFT 8
++#define PNG_USER_CHUNK_MALLOC_MAX 0
++#define PNG_DEFAULT_READ_MACROS 1
++#define PNG_ZBUF_SIZE 8192
++#define PNG_GAMMA_THRESHOLD_FIXED 5000
++/* end of settings */
++/* options */
++#define PNG_INFO_IMAGE_SUPPORTED
++#define PNG_HANDLE_AS_UNKNOWN_SUPPORTED
++#define PNG_POINTER_INDEXING_SUPPORTED
++#define PNG_WARNINGS_SUPPORTED
++#define PNG_FLOATING_ARITHMETIC_SUPPORTED
++#define PNG_WRITE_SUPPORTED
++#define PNG_WRITE_INTERLACING_SUPPORTED
++#define PNG_WRITE_16BIT_SUPPORTED
++#define PNG_EASY_ACCESS_SUPPORTED
++#define PNG_ALIGN_MEMORY_SUPPORTED
++#define PNG_WRITE_WEIGHTED_FILTER_SUPPORTED
++#define PNG_WRITE_UNKNOWN_CHUNKS_SUPPORTED
++#define PNG_USER_LIMITS_SUPPORTED
++#define PNG_FIXED_POINT_SUPPORTED
++/*#undef PNG_ERROR_NUMBERS_SUPPORTED*/
++#define PNG_ERROR_TEXT_SUPPORTED
++#define PNG_READ_SUPPORTED
++/*#undef PNG_READ_16_TO_8_ACCURATE_SCALE_SUPPORTED*/
++#define PNG_BENIGN_ERRORS_SUPPORTED
++#define PNG_SETJMP_SUPPORTED
++#define PNG_WRITE_FLUSH_SUPPORTED
++#define PNG_MNG_FEATURES_SUPPORTED
++#define PNG_FLOATING_POINT_SUPPORTED
++#define PNG_INCH_CONVERSIONS_SUPPORTED
++#define PNG_STDIO_SUPPORTED
++#define PNG_READ_UNKNOWN_CHUNKS_SUPPORTED
++#define PNG_USER_MEM_SUPPORTED
++#define PNG_IO_STATE_SUPPORTED
++#define PNG_SET_USER_LIMITS_SUPPORTED
++#define PNG_READ_ANCILLARY_CHUNKS_SUPPORTED
++#define PNG_WRITE_INT_FUNCTIONS_SUPPORTED
++#define PNG_WRITE_ANCILLARY_CHUNKS_SUPPORTED
++#define PNG_WRITE_FILTER_SUPPORTED
++#define PNG_SET_CHUNK_CACHE_LIMIT_SUPPORTED
++#define PNG_WRITE_iCCP_SUPPORTED
++#define PNG_READ_TRANSFORMS_SUPPORTED
++#define PNG_READ_GAMMA_SUPPORTED
++#define PNG_READ_bKGD_SUPPORTED
++#define PNG_UNKNOWN_CHUNKS_SUPPORTED
++#define PNG_READ_sCAL_SUPPORTED
++#define PNG_WRITE_hIST_SUPPORTED
++#define PNG_READ_OPT_PLTE_SUPPORTED
++#define PNG_SET_CHUNK_MALLOC_LIMIT_SUPPORTED
++#define PNG_WRITE_gAMA_SUPPORTED
++#define PNG_READ_GRAY_TO_RGB_SUPPORTED
++#define PNG_WRITE_pCAL_SUPPORTED
++#define PNG_READ_INVERT_ALPHA_SUPPORTED
++#define PNG_WRITE_TRANSFORMS_SUPPORTED
++#define PNG_READ_sBIT_SUPPORTED
++#define PNG_READ_PACK_SUPPORTED
++#define PNG_WRITE_SWAP_SUPPORTED
++#define PNG_READ_cHRM_SUPPORTED
++#define PNG_WRITE_tIME_SUPPORTED
++#define PNG_READ_INTERLACING_SUPPORTED
++#define PNG_READ_tRNS_SUPPORTED
++#define PNG_WRITE_pHYs_SUPPORTED
++#define PNG_WRITE_INVERT_SUPPORTED
++#define PNG_READ_RGB_TO_GRAY_SUPPORTED
++#define PNG_WRITE_sRGB_SUPPORTED
++#define PNG_READ_oFFs_SUPPORTED
++#define PNG_WRITE_FILLER_SUPPORTED
++#define PNG_WRITE_TEXT_SUPPORTED
++#define PNG_WRITE_SHIFT_SUPPORTED
++#define PNG_PROGRESSIVE_READ_SUPPORTED
++#define PNG_READ_SHIFT_SUPPORTED
++#define PNG_CONVERT_tIME_SUPPORTED
++#define PNG_READ_USER_TRANSFORM_SUPPORTED
++#define PNG_READ_INT_FUNCTIONS_SUPPORTED
++#define PNG_READ_USER_CHUNKS_SUPPORTED
++#define PNG_READ_hIST_SUPPORTED
++#define PNG_READ_16BIT_SUPPORTED
++#define PNG_READ_SWAP_ALPHA_SUPPORTED
++#define PNG_READ_COMPOSITE_NODIV_SUPPORTED
++#define PNG_SEQUENTIAL_READ_SUPPORTED
++#define PNG_READ_BACKGROUND_SUPPORTED
++#define PNG_READ_QUANTIZE_SUPPORTED
++#define PNG_READ_iCCP_SUPPORTED
++#define PNG_READ_STRIP_ALPHA_SUPPORTED
++#define PNG_READ_PACKSWAP_SUPPORTED
++#define PNG_READ_sRGB_SUPPORTED
++#define PNG_WRITE_tEXt_SUPPORTED
++#define PNG_READ_gAMA_SUPPORTED
++#define PNG_READ_pCAL_SUPPORTED
++#define PNG_READ_EXPAND_SUPPORTED
++#define PNG_WRITE_sPLT_SUPPORTED
++#define PNG_READ_SWAP_SUPPORTED
++#define PNG_READ_tIME_SUPPORTED
++#define PNG_READ_pHYs_SUPPORTED
++#define PNG_WRITE_SWAP_ALPHA_SUPPORTED
++#define PNG_TIME_RFC1123_SUPPORTED
++#define PNG_READ_TEXT_SUPPORTED
++#define PNG_WRITE_BGR_SUPPORTED
++#define PNG_USER_CHUNKS_SUPPORTED
++#define PNG_CONSOLE_IO_SUPPORTED
++#define PNG_WRITE_PACK_SUPPORTED
++#define PNG_READ_FILLER_SUPPORTED
++#define PNG_WRITE_bKGD_SUPPORTED
++#define PNG_WRITE_tRNS_SUPPORTED
++#define PNG_READ_sPLT_SUPPORTED
++#define PNG_WRITE_sCAL_SUPPORTED
++#define PNG_WRITE_oFFs_SUPPORTED
++#define PNG_READ_tEXt_SUPPORTED
++#define PNG_WRITE_sBIT_SUPPORTED
++#define PNG_READ_INVERT_SUPPORTED
++#define PNG_READ_16_TO_8_SUPPORTED
++#define PNG_WRITE_cHRM_SUPPORTED
++#define PNG_16BIT_SUPPORTED
++#define PNG_WRITE_USER_TRANSFORM_SUPPORTED
++#define PNG_READ_BGR_SUPPORTED
++#define PNG_WRITE_PACKSWAP_SUPPORTED
++#define PNG_WRITE_INVERT_ALPHA_SUPPORTED
++#define PNG_sCAL_SUPPORTED
++#define PNG_WRITE_zTXt_SUPPORTED
++#define PNG_sBIT_SUPPORTED
++#define PNG_cHRM_SUPPORTED
++#define PNG_bKGD_SUPPORTED
++#define PNG_tRNS_SUPPORTED
++#define PNG_WRITE_iTXt_SUPPORTED
++#define PNG_oFFs_SUPPORTED
++#define PNG_USER_TRANSFORM_PTR_SUPPORTED
++#define PNG_USER_TRANSFORM_INFO_SUPPORTED
++#define PNG_hIST_SUPPORTED
++#define PNG_iCCP_SUPPORTED
++#define PNG_sRGB_SUPPORTED
++#define PNG_READ_zTXt_SUPPORTED
++#define PNG_gAMA_SUPPORTED
++#define PNG_pCAL_SUPPORTED
++#define PNG_CHECK_cHRM_SUPPORTED
++#define PNG_tIME_SUPPORTED
++#define PNG_pHYs_SUPPORTED
++#define PNG_READ_iTXt_SUPPORTED
++#define PNG_TEXT_SUPPORTED
++#define PNG_SAVE_INT_32_SUPPORTED
++#define PNG_sPLT_SUPPORTED
++#define PNG_tEXt_SUPPORTED
++#define PNG_zTXt_SUPPORTED
++#define PNG_iTXt_SUPPORTED
++/* end of options */
++#endif /* PNGLCONF_H */
+--- misc/libpng-1.5.1/pngstruct.h 2011-02-03 05:58:17.000000000 +0100
++++ misc/build/libpng-1.5.1/pngstruct.h 2011-03-24 21:47:23.380397048 +0100
+@@ -24,7 +24,11 @@
+ * in this structure and is required for decompressing the LZ compressed
+ * data in PNG files.
+ */
++#if defined MACOSX
+ #include "zlib.h"
++#else
++#include <external/zlib/zlib.h>
++#endif
+
+ struct png_struct_def
+ {
+--- misc/libpng-1.5.1/pngtest.c 2011-02-03 05:58:17.000000000 +0100
++++ misc/build/libpng-1.5.1/pngtest.c 2011-03-24 21:47:23.380397048 +0100
+@@ -31,7 +31,12 @@
+ * of files at once by typing "pngtest -m file1.png file2.png ..."
+ */
+
++#if defined MACOSX
+ #include "zlib.h"
++#else
++#include <external/zlib/zlib.h>
++#endif
++
+ #include "png.h"
+ /* Copied from pngpriv.h but only used in error messages below. */
+ #ifndef PNG_ZBUF_SIZE
+--- misc/libpng-1.5.1/pngvalid.c 2011-02-03 05:58:17.000000000 +0100
++++ misc/build/libpng-1.5.1/pngvalid.c 2011-03-24 21:47:23.381397048 +0100
+@@ -51,7 +51,11 @@
+ #define PNG_READ_16BIT_SUPPORTED
+ #endif
+
+-#include "zlib.h" /* For crc32 */
++#if defined MACOSX
++#include "zlib.h"
++#else
++#include <external/zlib/zlib.h>
++#endif
+
+ #include <float.h> /* For floating point constants */
+ #include <stdlib.h> /* For malloc */
diff --git a/libpng/makefile.mk b/libpng/makefile.mk
new file mode 100755
index 000000000000..f40e3a72921c
--- /dev/null
+++ b/libpng/makefile.mk
@@ -0,0 +1,63 @@
+#*************************************************************************
+#
+# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+#
+# Copyright 2000, 2010 Oracle and/or its affiliates.
+#
+# OpenOffice.org - a multi-platform office productivity suite
+#
+# This file is part of OpenOffice.org.
+#
+# OpenOffice.org is free software: you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License version 3
+# only, as published by the Free Software Foundation.
+#
+# OpenOffice.org is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU Lesser General Public License version 3 for more details
+# (a copy is included in the LICENSE file that accompanied this code).
+#
+# You should have received a copy of the GNU Lesser General Public License
+# version 3 along with OpenOffice.org. If not, see
+# <http://www.openoffice.org/license.html>
+# for a copy of the LGPLv3 License.
+#
+#*************************************************************************
+
+PRJ=.
+
+PRJNAME=libpng
+TARGET=libpng
+
+# --- Settings -----------------------------------------------------
+
+.INCLUDE : settings.mk
+
+.IF "$(SYSTEM_LIBPNG)" == "YES"
+all:
+ @echo "An already available installation of libpng should exist on your system."
+ @echo "Therefore the version provided here does not need to be built in addition."
+.ENDIF
+
+# --- Files --------------------------------------------------------
+
+LIBPNGVERSION=1.5.1
+
+TARFILE_NAME=$(PRJNAME)-$(LIBPNGVERSION)
+TARFILE_MD5=220035f111ea045a51e290906025e8b5
+
+PATCH_FILES=$(PRJNAME)-$(LIBPNGVERSION).patch
+ADDITIONAL_FILES=makefile.mk pnglibconf.h
+
+#relative to CONFIGURE_DIR
+
+BUILD_DIR=$(CONFIGURE_DIR)
+BUILD_ACTION=dmake $(MFLAGS) $(CALLMACROS)
+
+OUT2INC=png.h pnglibconf.h pngconf.h pngstruct.h
+# --- Targets ------------------------------------------------------
+
+.INCLUDE : set_ext.mk
+.INCLUDE : target.mk
+.INCLUDE : tg_ext.mk
diff --git a/libpng/prj/build.lst b/libpng/prj/build.lst
new file mode 100644
index 000000000000..2b1bdf719e74
--- /dev/null
+++ b/libpng/prj/build.lst
@@ -0,0 +1,3 @@
+lpng libpng : ZLIB:zlib soltools NULL
+lpng libpng usr1 - all lpng_mkout NULL
+lpng libpng nmake - all lpng_libpng NULL
diff --git a/libpng/prj/d.lst b/libpng/prj/d.lst
new file mode 100755
index 000000000000..80148b7e8f86
--- /dev/null
+++ b/libpng/prj/d.lst
@@ -0,0 +1,11 @@
+mkdir: %_DEST%\inc%_EXT%\external
+mkdir: %_DEST%\inc%_EXT%\external\libpng
+
+..\%__SRC%\slb\libpng.lib %_DEST%\lib%_EXT%\libpng.lib
+..\%__SRC%\lib\libpng.a %_DEST%\lib%_EXT%\libpng.a
+
+..\%__SRC%\inc\png.h %_DEST%\inc%_EXT%\external\libpng\png.h
+..\%__SRC%\inc\pnglibconf.h %_DEST%\inc%_EXT%\external\libpng\pnglibconf.h
+..\%__SRC%\inc\pngconf.h %_DEST%\inc%_EXT%\external\libpng\pngconf.h
+..\%__SRC%\inc\pngstruct.h %_DEST%\inc%_EXT%\external\libpng\pngstruct.h
+
diff --git a/librsvg/librsvg-2.32.1-win32.patch b/librsvg/librsvg-2.32.1-win32.patch
new file mode 100644
index 000000000000..0bdf11d57184
--- /dev/null
+++ b/librsvg/librsvg-2.32.1-win32.patch
@@ -0,0 +1,526 @@
+--- misc/librsvg-2.32.1/librsvg-features.h 2010-11-13 11:52:49.000000000 +0100
++++ misc/build/librsvg-2.32.1/librsvg-features.h 2011-03-28 16:29:01.357827800 +0200
+@@ -11,7 +11,7 @@
+ (LIBRSVG_MAJOR_VERSION == (major) && LIBRSVG_MINOR_VERSION > (minor)) || \
+ (LIBRSVG_MAJOR_VERSION == (major) && LIBRSVG_MINOR_VERSION == (minor) && LIBRSVG_MICRO_VERSION >= (micro)))
+
+-#define LIBRSVG_HAVE_SVGZ (1)
++#define LIBRSVG_HAVE_SVGZ (0)
+ #define LIBRSVG_HAVE_CSS (1)
+
+ #define LIBRSVG_CHECK_FEATURE(FEATURE) (defined(LIBRSVG_HAVE_##FEATURE) && LIBRSVG_HAVE_##FEATURE)
+--- misc/librsvg-2.32.1/rsvg-image.c 2010-09-27 19:18:35.000000000 +0200
++++ misc/build/librsvg-2.32.1/rsvg-image.c 2011-03-28 20:14:53.630005800 +0200
+@@ -22,8 +22,8 @@
+ Free Software Foundation, Inc., 59 Temple Place - Suite 330,
+ Boston, MA 02111-1307, USA.
+
+- Authors: Raph Levien <raph@artofcode.com>,
+- Dom Lachowicz <cinamod@hotmail.com>,
++ Authors: Raph Levien <raph@artofcode.com>,
++ Dom Lachowicz <cinamod@hotmail.com>,
+ Caleb Moore <c.moore@student.unsw.edu.au>
+ */
+
+@@ -34,15 +34,167 @@
+ #include <math.h>
+ #include <errno.h>
+ #include "rsvg-css.h"
++#ifdef HAVE_GIO
+ #include <gio/gio.h>
++#endif
++
++static const char s_UTF8_B64Alphabet[64] = {
++ 0x41, 0x42, 0x43, 0x44, 0x45, 0x46, 0x47, 0x48, 0x49, 0x4a, 0x4b, 0x4c, 0x4d, 0x4e, 0x4f,
++ 0x50, 0x51, 0x52, 0x53, 0x54, 0x55, 0x56, 0x57, 0x58, 0x59, 0x5a, /* A-Z */
++ 0x61, 0x62, 0x63, 0x64, 0x65, 0x66, 0x67, 0x68, 0x69, 0x6a, 0x6b, 0x6c, 0x6d, 0x6e, 0x6f,
++ 0x70, 0x71, 0x72, 0x73, 0x74, 0x75, 0x76, 0x77, 0x78, 0x79, 0x7a, /* a-z */
++ 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x39, /* 0-9 */
++ 0x2b, /* + */
++ 0x2f /* / */
++};
++static const char utf8_b64_pad = 0x3d;
++
++static gboolean
++b64_decode_char (char c, int *b64)
++{
++ if ((c >= 0x41) && (c <= 0x5a)) {
++ *b64 = c - 0x41;
++ return TRUE;
++ }
++ if ((c >= 0x61) && (c <= 0x7a)) {
++ *b64 = c - (0x61 - 26);
++ return TRUE;
++ }
++ if ((c >= 0x30) && (c <= 0x39)) {
++ *b64 = c + (52 - 0x30);
++ return TRUE;
++ }
++ if (c == 0x2b) {
++ *b64 = 62;
++ return TRUE;
++ }
++ if (c == 0x2f) {
++ *b64 = 63;
++ return TRUE;
++ }
++ return FALSE;
++}
++
++static gboolean
++utf8_base64_decode (guchar ** binptr, size_t * binlen, const char *b64ptr, size_t b64len)
++{
++ gboolean decoded = TRUE;
++ gboolean padding = FALSE;
++
++ int i = 0;
++ glong ucs4_len, j;
++
++ unsigned char byte1 = 0;
++ unsigned char byte2;
++
++ gunichar ucs4, *ucs4_str;
++
++ if (b64len == 0)
++ return TRUE;
++
++ if ((binptr == 0) || (b64ptr == 0))
++ return FALSE;
++
++ ucs4_str = g_utf8_to_ucs4_fast (b64ptr, b64len, &ucs4_len);
++
++ for (j = 0; j < ucs4_len; j++) {
++ ucs4 = ucs4_str[j];
++ if ((ucs4 & 0x7f) == ucs4) {
++ int b64;
++ char c = (char) (ucs4);
++
++ if (b64_decode_char (c, &b64)) {
++ if (padding || (*binlen == 0)) {
++ decoded = FALSE;
++ break;
++ }
++
++ switch (i) {
++ case 0:
++ byte1 = (unsigned char) (b64) << 2;
++ i++;
++ break;
++ case 1:
++ byte2 = (unsigned char) (b64);
++ byte1 |= byte2 >> 4;
++ *(*binptr)++ = (char) (byte1);
++ (*binlen)--;
++ byte1 = (byte2 & 0x0f) << 4;
++ i++;
++ break;
++ case 2:
++ byte2 = (unsigned char) (b64);
++ byte1 |= byte2 >> 2;
++ *(*binptr)++ = (char) (byte1);
++ (*binlen)--;
++ byte1 = (byte2 & 0x03) << 6;
++ i++;
++ break;
++ default:
++ byte1 |= (unsigned char) (b64);
++ *(*binptr)++ = (char) (byte1);
++ (*binlen)--;
++ i = 0;
++ break;
++ }
++
++ if (!decoded)
++ break;
++
++ continue;
++ } else if (c == utf8_b64_pad) {
++ switch (i) {
++ case 0:
++ case 1:
++ decoded = FALSE;
++ break;
++ case 2:
++ if (*binlen == 0)
++ decoded = FALSE;
++ else {
++ *(*binptr)++ = (char) (byte1);
++ (*binlen)--;
++ padding = TRUE;
++ }
++ i++;
++ break;
++ default:
++ if (!padding) {
++ if (*binlen == 0)
++ decoded = FALSE;
++ else {
++ *(*binptr)++ = (char) (byte1);
++ (*binlen)--;
++ padding = TRUE;
++ }
++ }
++ i = 0;
++ break;
++ }
++ if (!decoded)
++ break;
++
++ continue;
++ }
++ }
++ if (g_unichar_isspace (ucs4))
++ continue;
++
++ decoded = FALSE;
++ break;
++ }
++
++ g_free (ucs4_str);
++ return decoded;
++}
+
+ static GByteArray *
+ rsvg_acquire_base64_resource (const char *data, GError ** error)
+ {
+- GByteArray *array = NULL;
+- gsize data_len, written_len;
+- int state = 0;
+- guint save = 0;
++ GByteArray *array;
++
++ guchar *bufptr;
++ size_t buffer_len, buffer_max_len, data_len;
+
+ rsvg_return_val_if_fail (data != NULL, NULL, error);
+
+@@ -51,10 +203,19 @@
+ break;
+
+ data_len = strlen (data);
+- array = g_byte_array_sized_new (data_len / 4 * 3);
+- written_len = g_base64_decode_step (data, data_len, array->data,
+- &state, &save);
+- g_byte_array_set_size (array, written_len);
++
++ buffer_max_len = ((data_len >> 2) + 1) * 3;
++ buffer_len = buffer_max_len;
++
++ array = g_byte_array_sized_new (buffer_max_len);
++ bufptr = array->data;
++
++ if (!utf8_base64_decode (&bufptr, &buffer_len, data, data_len)) {
++ g_byte_array_free (array, TRUE);
++ return NULL;
++ }
++
++ array->len = buffer_max_len - buffer_len;
+
+ return array;
+ }
+@@ -75,7 +236,7 @@
+ if (base_filename != NULL) {
+ tmpcdir = g_path_get_dirname (base_filename);
+ g_free (base_filename);
+- } else
++ } else
+ return NULL;
+ } else
+ tmpcdir = g_get_current_dir ();
+@@ -92,8 +253,10 @@
+ {
+ GByteArray *array;
+ gchar *path;
+- gchar *data = NULL;
+- gsize length;
++
++ guchar buffer[4096];
++ int length;
++ FILE *f;
+
+ rsvg_return_val_if_fail (filename != NULL, NULL, error);
+
+@@ -101,20 +264,53 @@
+ if (path == NULL)
+ return NULL;
+
+- if (!g_file_get_contents (path, &data, &length, error)) {
+- g_free (path);
++ f = fopen (path, "rb");
++ g_free (path);
++
++ if (!f) {
++ g_set_error (error,
++ G_FILE_ERROR,
++ g_file_error_from_errno (errno),
++ _("Failed to open file '%s': %s"), filename, g_strerror (errno));
+ return NULL;
+ }
+
++ /* TODO: an optimization is to use the file's size */
+ array = g_byte_array_new ();
+
+- g_byte_array_append (array, (guint8 *)data, length);
+- g_free (data);
+- g_free (path);
++ while (!feof (f)) {
++ length = fread (buffer, 1, sizeof (buffer), f);
++ if (length > 0) {
++ if (g_byte_array_append (array, buffer, length) == NULL) {
++ fclose (f);
++ g_byte_array_free (array, TRUE);
++ return NULL;
++ }
++ } else if (ferror (f)) {
++ fclose (f);
++ g_byte_array_free (array, TRUE);
++ return NULL;
++ }
++ }
++
++ fclose (f);
+
+ return array;
+ }
+
++#ifdef HAVE_GIO
++
++static void
++rsvg_free_error (GError ** err)
++{
++ if (err) {
++ if (*err) {
++ g_error_free (*err);
++ *err = NULL;
++ }
++ }
++}
++
+ static GByteArray *
+ rsvg_acquire_vfs_resource (const char *filename, const char *base_uri, GError ** error)
+ {
+@@ -133,19 +329,19 @@
+ if (base_uri != NULL) {
+ GFile *base;
+
+- g_clear_error (error);
+-
+- g_object_unref (file);
++ rsvg_free_error(error);
++
++ g_object_unref (file);
+
+ base = g_file_new_for_uri (base_uri);
+ file = g_file_resolve_relative_path (base, filename);
+ g_object_unref (base);
+
+- res = g_file_load_contents (file, NULL, &data, &size, NULL, error);
++ res = g_file_load_contents (file, NULL, &data, &size, NULL, error);
+ }
+ }
+
+- g_object_unref (file);
++ g_object_unref (file);
+
+ if (res) {
+ array = g_byte_array_new ();
+@@ -158,6 +354,7 @@
+
+ return array;
+ }
++#endif
+
+ GByteArray *
+ _rsvg_acquire_xlink_href_resource (const char *href, const char *base_uri, GError ** err)
+@@ -173,8 +370,10 @@
+ if (!arr)
+ arr = rsvg_acquire_file_resource (href, base_uri, NULL);
+
++#ifdef HAVE_GIO
+ if (!arr)
+ arr = rsvg_acquire_vfs_resource (href, base_uri, NULL);
++#endif
+
+ return arr;
+ }
+@@ -274,10 +473,9 @@
+ RsvgNodeImage *z = (RsvgNodeImage *) self;
+ rsvg_state_finalize (z->super.state);
+ g_free (z->super.state);
+- z->super.state = NULL;
+ if (z->img)
+- g_object_unref (z->img);
+- _rsvg_node_free(self);
++ g_object_unref (G_OBJECT (z->img));
++ g_free (z);
+ }
+
+ static void
+@@ -300,7 +498,7 @@
+
+ rsvg_push_discrete_layer (ctx);
+
+- if (!rsvg_current_state (ctx)->overflow && (aspect_ratio & RSVG_ASPECT_RATIO_SLICE)) {
++ if (!rsvg_current_state(ctx)->overflow && (aspect_ratio & RSVG_ASPECT_RATIO_SLICE)) {
+ rsvg_add_clipping_rect (ctx, x, y, w, h);
+ }
+
+@@ -357,10 +555,11 @@
+ RsvgNodeImage *image;
+ image = g_new (RsvgNodeImage, 1);
+ _rsvg_node_init (&image->super);
+- g_assert (image->super.state);
+ image->img = NULL;
+ image->preserve_aspect_ratio = RSVG_ASPECT_RATIO_XMID_YMID;
+ image->x = image->y = image->w = image->h = _rsvg_css_parse_length ("0");
++ image->super.state = g_new (RsvgState, 1);
++ rsvg_state_init (image->super.state);
+ image->super.free = rsvg_node_image_free;
+ image->super.draw = rsvg_node_image_draw;
+ image->super.set_atts = rsvg_node_image_set_atts;
+--- misc/librsvg-2.32.1/config.h 2011-03-28 20:38:20.301880800 +0200
++++ misc/build/librsvg-2.32.1/config.h 2011-03-28 20:40:54.958130800 +0200
+@@ -1 +1,27 @@
+-dummy
++#define HAVE_FLOAT_H 1
++/* #undef ENABLE_XEMBED */
++/* #undef HAVE_BASENAME */
++/* #undef HAVE_DLFCN_H */
++#define HAVE_GIO 1
++/* #undef HAVE_INTTYPES_H */
++/* #undef HAVE_LC_MESSAGES */
++#define HAVE_LOCALE_H 1
++#define HAVE_MEMORY_H 1
++/* #undef HAVE_STDINT_H */
++#define HAVE_STDLIB_H 1
++/* #undef HAVE_STRINGS_H */
++#define HAVE_STRING_H 1
++/* #undef HAVE_STRTOK_R */
++#define HAVE_SYS_STAT_H 1
++#define HAVE_SYS_TYPES_H 1
++/* #undef HAVE_UNISTD_H */
++
++#define PACKAGE "librsvg"
++#define PACKAGE_BUGREPORT ""
++#define PACKAGE_NAME ""
++#define PACKAGE_STRING ""
++#define PACKAGE_TARNAME ""
++#define PACKAGE_VERSION ""
++#define VERSION "2.32.1"
++#define STDC_HEADERS 1
++#define X_DISPLAY_MISSING 1
+--- misc/librsvg-2.32.1/makefile.mk 2011-03-28 20:38:20.489380800 +0200
++++ misc/build/librsvg-2.32.1/makefile.mk 2011-03-28 20:40:38.786255800 +0200
+@@ -1 +1,111 @@
+-dummy
++#*************************************************************************
++#
++# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
++#
++# Copyright 2000, 2010 Oracle and/or its affiliates.
++#
++# OpenOffice.org - a multi-platform office productivity suite
++#
++# This file is part of OpenOffice.org.
++#
++# OpenOffice.org is free software: you can redistribute it and/or modify
++# it under the terms of the GNU Lesser General Public License version 3
++# only, as published by the Free Software Foundation.
++#
++# OpenOffice.org is distributed in the hope that it will be useful,
++# but WITHOUT ANY WARRANTY; without even the implied warranty of
++# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
++# GNU Lesser General Public License version 3 for more details
++# (a copy is included in the LICENSE file that accompanied this code).
++#
++# You should have received a copy of the GNU Lesser General Public License
++# version 3 along with OpenOffice.org. If not, see
++# <http://www.openoffice.org/license.html>
++# for a copy of the LGPLv3 License.
++#
++#*************************************************************************
++
++PRJ=..$/..$/..$/..
++PRJINC=.
++PRJNAME=librsvg
++TARGET=librsvg-2-2
++
++VISIBILITY_HIDDEN=TRUE
++EXTERNAL_WARNINGS_NOT_ERRORS=TRUE
++
++# --- Settings ----------------------------------
++
++.INCLUDE : settings.mk
++
++CFLAGS+= -DHAVE_GSF -DHAVE_LIBCROCO \
++ -I. -I$(SOLARINCDIR)$/external/glib-2.0 \
++ -I. -I$(SOLARINCDIR)$/external/gdk-pixbuf-2.0 \
++ -I$(SOLARINCDIR)$/external/pango-1.0 \
++ -I$(SOLARINCDIR)$/external/cairo \
++ -I$(SOLARINCDIR)$/external/libgsf-1 \
++ -I$(SOLARINCDIR)$/external/libcroco-0.6
++
++# --- Files -------------------------------------
++
++SLOFILES=\
++ $(SLO)$/librsvg-enum-types.obj \
++ $(SLO)$/librsvg-features.obj \
++ $(SLO)$/rsvg-affine.obj \
++ $(SLO)$/rsvg-base-file-util.obj \
++ $(SLO)$/rsvg-base.obj \
++ $(SLO)$/rsvg-bpath-util.obj \
++ $(SLO)$/rsvg-cairo-clip.obj \
++ $(SLO)$/rsvg-cairo-draw.obj \
++ $(SLO)$/rsvg-cairo-render.obj \
++ $(SLO)$/rsvg-cond.obj \
++ $(SLO)$/rsvg-convert.obj \
++ $(SLO)$/rsvg-css.obj \
++ $(SLO)$/rsvg-defs.obj \
++ $(SLO)$/rsvg-file-util.obj \
++ $(SLO)$/rsvg-filter.obj \
++ $(SLO)$/rsvg-gobject.obj \
++ $(SLO)$/rsvg-image.obj \
++ $(SLO)$/rsvg-marker.obj \
++ $(SLO)$/rsvg-mask.obj \
++ $(SLO)$/rsvg-paint-server.obj \
++ $(SLO)$/rsvg-path.obj \
++ $(SLO)$/rsvg-shapes.obj \
++ $(SLO)$/rsvg-structure.obj \
++ $(SLO)$/rsvg-styles.obj \
++ $(SLO)$/rsvg-text.obj \
++ $(SLO)$/rsvg-xml.obj \
++ $(SLO)$/rsvg.obj
++
++# --- Library -----------------------------------
++
++SHL1TARGET= $(TARGET)
++SHL1OBJS=$(SLOFILES)
++SHL1STDLIBS=\
++ intl.lib \
++ gobject-2.0.lib \
++ gmodule-2.0.lib \
++ glib-2.0.lib \
++ gio-2.0.lib \
++ gthread-2.0.lib \
++ gdk_pixbuf-2.0.lib \
++ cairo.lib \
++ libxml2.lib \
++ igsf-1.lib \
++ libcroco-0.6-3.lib \
++ pango-1.0.lib \
++ pangocairo-1.0.lib
++
++SHL1IMPLIB= i$(TARGET)
++SHL1DEF= $(MISC)$/$(SHL1TARGET).def
++DEF1NAME= $(SHL1TARGET)
++DEF1DEPN= $(MISC)$/$(SHL1TARGET).flt $(SLB)$/$(TARGET).lib
++DEFLIB1NAME= $(TARGET)
++
++# --- Targets ----------------------------------
++
++.INCLUDE : target.mk
++
++# --- filter file ------------------------------
++
++$(MISC)$/$(SHL1TARGET).flt: makefile.mk
++ @echo CLEAR_THE_FILE > $@
diff --git a/librsvg/librsvg-2.32.1.patch b/librsvg/librsvg-2.32.1.patch
new file mode 100644
index 000000000000..8d2368e11e39
--- /dev/null
+++ b/librsvg/librsvg-2.32.1.patch
@@ -0,0 +1,43 @@
+--- misc/librsvg-2.32.1/configure 2010-11-13 11:52:19.000000000 +0100
++++ misc/build/librsvg-2.32.1/configure 2011-03-03 14:28:12.000000000 +0100
+@@ -12288,8 +12288,8 @@
+
+
+
+-GLIB_MKENUMS=`$PKG_CONFIG --variable=glib_mkenums glib-2.0`
+-
++#GLIB_MKENUMS=`$PKG_CONFIG --variable=glib_mkenums glib-2.0`
++GLIB_MKENUMS=glib-mkenums
+
+
+ pkg_failed=no
+@@ -12562,6 +12562,7 @@
+
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether gio 2.24 is available" >&5
+ $as_echo_n "checking whether gio 2.24 is available... " >&6; }
++if 0 ; then
+ if test -n "$PKG_CONFIG" && \
+ { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"gio-2.0 >= 2.24.0\""; } >&5
+ ($PKG_CONFIG --exists --print-errors "gio-2.0 >= 2.24.0") 2>&5
+@@ -12572,6 +12573,9 @@
+ else
+ have_gio_2_24=no
+ fi
++else
++ have_gio_2_24=yes
++fi
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: $have_gio_2_24" >&5
+ $as_echo "$have_gio_2_24" >&6; }
+
+@@ -12695,8 +12699,8 @@
+
+
+
+-LIBCROCO_CFLAGS=""
+-LIBCROCO_LIBS=""
++#LIBCROCO_CFLAGS=""
++#LIBCROCO_LIBS=""
+ LIBCROCOPKG=""
+
+ test_croco=true
+
diff --git a/librsvg/makefile.mk b/librsvg/makefile.mk
new file mode 100755
index 000000000000..5744dc73d6ff
--- /dev/null
+++ b/librsvg/makefile.mk
@@ -0,0 +1,111 @@
+#*************************************************************************
+#
+# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+#
+# Copyright 2000, 2010 Oracle and/or its affiliates.
+#
+# OpenOffice.org - a multi-platform office productivity suite
+#
+# This file is part of OpenOffice.org.
+#
+# OpenOffice.org is free software: you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License version 3
+# only, as published by the Free Software Foundation.
+#
+# OpenOffice.org is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU Lesser General Public License version 3 for more details
+# (a copy is included in the LICENSE file that accompanied this code).
+#
+# You should have received a copy of the GNU Lesser General Public License
+# version 3 along with OpenOffice.org. If not, see
+# <http://www.openoffice.org/license.html>
+# for a copy of the LGPLv3 License.
+#
+#*************************************************************************
+
+PRJ=.
+
+PRJNAME=librsvg
+TARGET=so_librsvg
+
+# --- Settings -----------------------------------------------------
+
+.INCLUDE : settings.mk
+
+.IF "$(SYSTEM_LIBRSVG)" == "YES"
+all:
+ @echo "An already available installation of librsvg should exist on your system."
+ @echo "Therefore the version provided here does not need to be built in addition."
+.ENDIF
+
+# --- Files --------------------------------------------------------
+
+LIBRSVGVERSION=2.32.1
+
+TARFILE_NAME=$(PRJNAME)-$(LIBRSVGVERSION)
+TARFILE_MD5=d7a242ca43e33e1b63d3073f9d46a6a8
+
+.IF "$(OS)" == "MACOSX" || "$(OS)" == "WNT"
+
+.IF "$(OS)" == "MACOSX"
+
+PATCH_FILES=librsvg-2.32.1.patch
+
+.IF "$(LIBXML_LIBS)" == ""
+LIBXML_LIBS=-lxml2
+.ENDIF
+
+CONFIGURE_LDFLAGS="-L$(SOLARLIBDIR)"
+CONFIGURE_DIR=
+CONFIGURE_ACTION=$(AUGMENT_LIBRARY_PATH) .$/configure \
+ --prefix=$(SRC_ROOT)$/$(PRJNAME)$/$(MISC)
+CONFIGURE_FLAGS=--disable-gtk-theme --disable-tools --with-croco --with-svgz \
+ LIBRSVG_CFLAGS="-I$(SOLARINCDIR)$/external$/glib-2.0 -I$(SOLARINCDIR)$/external$/gdk-pixbuf-2.0 -I$(SOLARINCDIR)$/external$/pango-1.0 -I$(SOLARINCDIR)$/cairo $(LIBXML_CFLAGS)" \
+ LIBRSVG_LIBS="-L$(SOLARLIBDIR) -lgdk_pixbuf-2.0 -lpango-1.0 -lpangocairo-1.0 -lgthread-2.0 -lgio-2.0 -lgmodule-2.0 -lgobject-2.0 -lglib-2.0 $(LIBXML_LIBS) -lcairo -lintl" \
+ GDK_PIXBUF_CFLAGS="-I$(SOLARINCDIR)$/external$/gdk-pixbuf-2.0" \
+ GDK_PIXBUF_LIBS=-lgdk_pixbuf-2.0 \
+ GTHREAD_CFLAGS=-I$(SOLARINCDIR)$/external/$glib-2.0 \
+ GTHREAD_LIBS=-lgthread-2.0 \
+ LIBCROCO_CFLAGS="-I$(SOLARINCDIR)$/external$/libcroco-0.6" \
+ LIBCROCO_LIBS=-lcroco-0.6 \
+ CFLAGS="$(ARCH_FLAGS) $(EXTRA_CFLAGS) -I$(SOLARINCDIR)$/external -I$(SOLARINCDIR)$/external$/glib-2.0 -I$(SOLARINCDIR)$/external$/gdk-pixbuf-2.0 -I$(SOLARINCDIR)$/external$/pango-1.0 -I$(SOLARINCDIR)$/cairo" \
+ LDFLAGS="$(CONFIGURE_LDFLAGS)"
+
+CONFIGURE_FLAGS+= CPPFLAGS="$(ARCH_FLAGS) $(EXTRA_CDEFS)"
+
+BUILD_ACTION=$(AUGMENT_LIBRARY_PATH) \
+ $(GNUMAKE)
+BUILD_DIR=$(CONFIGURE_DIR)
+
+EXTRPATH=LOADER
+OUT2LIB+=.libs$/librsvg-2.2.dylib
+
+OUT2INC+=librsvg-enum-types.h
+OUT2INC+=librsvg-features.h
+OUT2INC+=rsvg-cairo.h
+OUT2INC+=rsvg.h
+
+.ELIF "$(OS)"=="WNT"
+
+PATCH_FILES=librsvg-2.32.1-win32.patch
+ADDITIONAL_FILES=config.h makefile.mk
+
+BUILD_DIR=.
+BUILD_ACTION=dmake
+
+OUT2INC+=librsvg-enum-types.h
+OUT2INC+=librsvg-features.h
+OUT2INC+=rsvg-cairo.h
+OUT2INC+=rsvg.h
+
+.ENDIF
+
+.ENDIF
+
+# --- Targets ------------------------------------------------------
+
+.INCLUDE : set_ext.mk
+.INCLUDE : target.mk
+.INCLUDE : tg_ext.mk
diff --git a/librsvg/prj/build.lst b/librsvg/prj/build.lst
new file mode 100644
index 000000000000..d667da5c7b0b
--- /dev/null
+++ b/librsvg/prj/build.lst
@@ -0,0 +1,3 @@
+rg librsvg : libxml2 pango libcroco libgsf cairo gdk-pixbuf glib gettext soltools NULL
+rg librsvg usr1 - all rg_mkout NULL
+rg librsvg nmake - all rg_librsvg NULL
diff --git a/librsvg/prj/d.lst b/librsvg/prj/d.lst
new file mode 100755
index 000000000000..3e6f5de98364
--- /dev/null
+++ b/librsvg/prj/d.lst
@@ -0,0 +1,14 @@
+mkdir: %_DEST%\inc%_EXT%\external
+mkdir: %_DEST%\inc%_EXT%\external\librsvg-2.0
+mkdir: %_DEST%\inc%_EXT%\external\librsvg-2.0\librsvg
+
+..\%__SRC%\inc\rsvg.h %_DEST%\inc%_EXT%\external\librsvg-2.0\librsvg\rsvg.h
+..\%__SRC%\inc\rsvg-cairo.h %_DEST%\inc%_EXT%\external\librsvg-2.0\librsvg\rsvg-cairo.h
+..\%__SRC%\inc\rsvg-features.h %_DEST%\inc%_EXT%\external\librsvg-2.0\librsvg\rsvg-features.h
+..\%__SRC%\inc\rsvg-enum-types.h %_DEST%\inc%_EXT%\external\librsvg-2.0\librsvg\rsvg-enum-types.h
+
+..\%__SRC%\lib\librsvg-2.2.dylib %_DEST%\lib%_EXT%\librsvg-2.2.dylib
+symlink: %_DEST%\lib%_EXT%\librsvg-2.2.dylib %_DEST%\lib%_EXT%\librsvg-2.dylib
+
+..\%__SRC%\lib\ilibrsvg-2-2.lib %_DEST%\lib%_EXT%\librsvg-2-2.lib
+..\%__SRC%\bin\librsvg-2-2.dll %_DEST%\bin%_EXT%\librsvg-2-2.dll
diff --git a/pango/makefile.mk b/pango/makefile.mk
new file mode 100644
index 000000000000..fddbbecf83a1
--- /dev/null
+++ b/pango/makefile.mk
@@ -0,0 +1,161 @@
+#*************************************************************************
+#
+# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+#
+# Copyright 2000, 2010 Oracle and/or its affiliates.
+#
+# OpenOffice.org - a multi-platform office productivity suite
+#
+# This file is part of OpenOffice.org.
+#
+# OpenOffice.org is free software: you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License version 3
+# only, as published by the Free Software Foundation.
+#
+# OpenOffice.org is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU Lesser General Public License version 3 for more details
+# (a copy is included in the LICENSE file that accompanied this code).
+#
+# You should have received a copy of the GNU Lesser General Public License
+# version 3 along with OpenOffice.org. If not, see
+# <http://www.openoffice.org/license.html>
+# for a copy of the LGPLv3 License.
+#
+#*************************************************************************
+
+PRJ=.
+
+PRJNAME=pango
+TARGET=so_pango
+
+# --- Settings -----------------------------------------------------
+
+.INCLUDE : settings.mk
+
+.IF "$(SYSTEM_PANGO)" == "YES"
+all:
+ @echo "An already available installation of pango should exist on your system."
+ @echo "Therefore the version provided here does not need to be built in addition."
+.ENDIF
+
+# --- Files --------------------------------------------------------
+
+PANGOVERSION=1.28.3
+
+TARFILE_NAME=$(PRJNAME)-$(PANGOVERSION)
+TARFILE_MD5=22ad1c8d3fda7e73b0798035f3dd96bc
+
+.IF "$(OS)"=="MACOSX" || "$(OS)"=="WNT"
+
+.IF "$(OS)" == "MACOSX"
+
+PATCH_FILES=pango-1.28.3.patch
+
+CONFIGURE_LDFLAGS="-L$(SOLARLIBDIR)"
+CONFIGURE_DIR=
+CONFIGURE_ACTION=$(AUGMENT_LIBRARY_PATH) \
+ .$/configure --prefix=$(SRC_ROOT)$/$(PRJNAME)$/$(MISC) \
+ CFLAGS="$(ARCH_FLAGS) $(EXTRA_CFLAGS) $(EXTRA_CDEFS) -I$(SOLARINCDIR) -I$(SOLARINCDIR)$/external -I$(SOLARINCDIR)$/external$/glib-2.0" \
+ LDFLAGS="$(CONFIGURE_LDFLAGS)" \
+ CAIRO_CFLAGS="-I$(SOLARINCDIR) -I$(SOLARINCDIR)$/cairo" \
+ CAIRO_LIBS="-lcairo" \
+ GLIB_CFLAGS="-I$(SOLARINCDIR)$/external$/glib-2.0" \
+ GLIB_LIBS="-lgthread-2.0 -lgmodule-2.0 -lgobject-2.0 -lglib-2.0 -lintl"
+CONFIGURE_FLAGS=--with-included-modules=yes
+CONFIGURE_FLAGS+= CPPFLAGS="$(ARCH_FLAGS) $(EXTRA_CDEFS)"
+CONFIGURE_ACTION+="--without-x"
+
+BUILD_ACTION=$(AUGMENT_LIBRARY_PATH) $(GNUMAKE)
+BUILD_DIR=$(CONFIGURE_DIR)
+
+EXTRPATH=LOADER
+
+OUT2LIB+=pango/.libs/libpango-1.0.0.dylib
+OUT2LIB+=pango/.libs/libpangocairo-1.0.0.dylib
+
+OUT2BIN+=pango/.libs/pango-querymodules
+
+OUT2INC+=pango/pango-attributes.h
+OUT2INC+=pango/pango-enum-types.h
+OUT2INC+=pango/pango-glyph.h
+OUT2INC+=pango/pango-modules.h
+OUT2INC+=pango/pango.h
+OUT2INC+=pango/pango-bidi-type.h
+OUT2INC+=pango/pango-features.h
+OUT2INC+=pango/pango-gravity.h
+OUT2INC+=pango/pango-renderer.h
+OUT2INC+=pango/pangoatsui.h
+OUT2INC+=pango/pango-break.h
+OUT2INC+=pango/pango-font.h
+OUT2INC+=pango/pango-item.h
+OUT2INC+=pango/pango-script.h
+OUT2INC+=pango/pangocairo.h
+OUT2INC+=pango/pango-context.h
+OUT2INC+=pango/pango-fontmap.h
+OUT2INC+=pango/pango-language.h
+OUT2INC+=pango/pango-tabs.h
+OUT2INC+=pango/pango-coverage.h
+OUT2INC+=pango/pango-fontset.h
+OUT2INC+=pango/pango-layout.h
+OUT2INC+=pango/pango-types.h
+OUT2INC+=pango/pango-engine.h
+OUT2INC+=pango/pango-glyph-item.h
+OUT2INC+=pango/pango-matrix.h
+OUT2INC+=pango/pango-utils.h
+
+.ELIF "$(OS)"=="WNT"
+
+PATCH_FILES=pango-1.28.3-win32.patch
+ADDITIONAL_FILES=config.h msvc_recommended_pragmas.h
+CONFIGURE_DIR=
+CONFIGURE_ACTION=
+BUILD_DIR=./pango
+BUILD_ACTION=nmake -f makefile.msc
+
+OUT2LIB+=pango/pango-1.0.lib
+OUT2LIB+=pango/pangocairo-1.0.lib
+OUT2LIB+=pango/pangowin32-1.0.lib
+
+OUT2BIN+=pango/libpango-1.0-0.dll
+OUT2BIN+=pango/libpangocairo-1.0-0.dll
+OUT2BIN+=pango/libpangowin32-1.0-0.dll
+OUT2BIN+=pango/querymodules.exe
+
+OUT2INC+=pango/pango.h
+OUT2INC+=pango/pangocairo.h
+OUT2INC+=pango/pango-attributes.h
+OUT2INC+=pango/pango-bidi-type.h
+OUT2INC+=pango/pango-break.h
+OUT2INC+=pango/pango-context.h
+OUT2INC+=pango/pango-coverage.h
+OUT2INC+=pango/pango-engine.h
+OUT2INC+=pango/pango-enum-types.h
+OUT2INC+=pango/pango-features.h
+OUT2INC+=pango/pango-font.h
+OUT2INC+=pango/pango-fontmap.h
+OUT2INC+=pango/pango-fontset.h
+OUT2INC+=pango/pango-glyph.h
+OUT2INC+=pango/pango-glyph-item.h
+OUT2INC+=pango/pango-gravity.h
+OUT2INC+=pango/pango-item.h
+OUT2INC+=pango/pango-language.h
+OUT2INC+=pango/pango-layout.h
+OUT2INC+=pango/pango-matrix.h
+OUT2INC+=pango/pango-renderer.h
+OUT2INC+=pango/pango-script.h
+OUT2INC+=pango/pango-tabs.h
+OUT2INC+=pango/pango-types.h
+OUT2INC+=pango/pango-utils.h
+
+.ELSE
+.ENDIF
+
+.ENDIF
+
+# --- Targets ------------------------------------------------------
+
+.INCLUDE : set_ext.mk
+.INCLUDE : target.mk
+.INCLUDE : tg_ext.mk
diff --git a/pango/pango-1.28.3-win32.patch b/pango/pango-1.28.3-win32.patch
new file mode 100644
index 000000000000..0aa1155c3a2f
--- /dev/null
+++ b/pango/pango-1.28.3-win32.patch
@@ -0,0 +1,632 @@
+--- misc/pango-1.28.3/configure 2010-09-29 13:02:33.000000000 +0200
++++ misc/build/pango-1.28.3/configure 2011-03-26 06:09:01.021181200 +0100
+@@ -18596,16 +18596,16 @@
+ fi
+
+ if $have_atsui; then
+- if test -n "$PKG_CONFIG" && \
+- { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"cairo-quartz-font >= \$cairo_required\""; } >&5
+- ($PKG_CONFIG --exists --print-errors "cairo-quartz-font >= $cairo_required") 2>&5
+- ac_status=$?
+- $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+- test $ac_status = 0; }; then
++# if test -n "$PKG_CONFIG" && \
++# { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"cairo-quartz-font >= \$cairo_required\""; } >&5
++# ($PKG_CONFIG --exists --print-errors "cairo-quartz-font >= $cairo_required") 2>&5
++# ac_status=$?
++# $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
++# test $ac_status = 0; }; then
+ have_cairo_atsui=true
+-else
+- :
+-fi
++#else
++# :
++#fi
+ fi
+ if $have_cairo_atsui; then
+
+@@ -18859,7 +18859,7 @@
+
+ # Setup GLIB_MKENUMS to use glib-mkenums even if GLib is uninstalled.
+ GLIB_MKENUMS=`$PKG_CONFIG --variable=glib_mkenums glib-2.0`
+-
++GLIB_MKENUMS=glib-mkenums
+
+
+ # Add in gthread-2.0 to CFLAGS but not to LIBS so we get any
+--- misc/pango-1.28.3/pango/makefile.msc 2010-02-09 13:06:28.000000000 +0100
++++ misc/build/pango-1.28.3/pango/makefile.msc 2011-03-26 15:41:45.375966400 +0100
+@@ -1,5 +1,15 @@
+-TOP = ../..
+-!INCLUDE $(TOP)/glib/build/win32/make.msc
++PRJ_TOP = ..
++GLIB_INC = -I$(OUTDIR)\inc\external\glib-2.0
++CAIRO_INC = -I$(OUTDIR)\inc\external\cairo
++
++INTL_LIB = $(OUTDIR)\lib\intl.lib
++GLIB_LIB = $(OUTDIR)\lib\glib-2.0.lib \
++ $(OUTDIR)\lib\gobject-2.0.lib \
++ $(OUTDIR)\lib\gmodule-2.0.lib
++CAIRO_LIB = $(OUTDIR)\lib\cairo.lib
++USP10_LIB = USP10.lib
++
++!INCLUDE $(OUTDIR)\inc\external\glib-2.0\make.msc
+
+ !IFNDEF PERL
+ PERL = perl
+@@ -16,7 +26,7 @@
+
+ !IFNDEF PACKAGE
+
+-DLLS = pango pangowin32 pangoft2 pangocairo # pangox
++DLLS = pango pangowin32 pangocairo # pangox pangoft2
+ EXES = querymodules testfonts
+ #? test1 test2 test3 test4 test5
+
+@@ -40,28 +50,28 @@
+
+ !ELSE
+
+-PRJ_TOP = ..
++CFLAGS = -I. -I$(PRJ_TOP) $(SOLARINC) $(GLIB_INC) $(CAIRO_INC)
++
+ PKG_VER = $(PANGO_VER)
+ PKG_DEF = $(PACKAGE).def
+-
+-PKG_CFLAGS = -FImsvc_recommended_pragmas.h -I.. -I. -I$(PRJ_TOP) \
++PKG_CFLAGS = -FI$(PRJ_TOP)\msvc_recommended_pragmas.h $(CFLAGS) \
+ -DPACKAGE=\"Pango\" -DVERSION=\"$(PANGO_VER)\" \
+ -DPANGO_ENABLE_BACKEND -DPANGO_ENABLE_ENGINE \
+ -DMODULE_VERSION=\"$(PANGO_MODULE_VERSION)\" \
+ $(GLIB_CFLAGS) $(LIBICONV_CFLAGS) \
+ $(X11_CFLAGS) -DSYSCONFDIR=\"/etc\" \
+- -DPANGO_BINARY_AGE=0
++ -DPANGO_BINARY_AGE=0 \
++ -DLIBDIR=\".\\\\\"
+
+ #-DHAVE_USP10_H
+-
+
+ !IFDEF OBJS_pango
+ # don't link with itself
+-PKG_LINK = $(GLIB_LIBS) $(FONTCONFIG_LIBS)
++PKG_LINK = $(GLIB_LIB)
+ !ENDIF
+
+ !IFDEF OBJS_pangowin32
+-PKG_LINK = $(GLIB_LIBS) $(LIBICONV_LIBS) \
++PKG_LINK = $(GLIB_LIB) $(INTL_LIB) $(USP10_LIB) \
+ pango-$(PANGO_VER).lib
+ !ENDIF
+
+@@ -69,23 +79,24 @@
+ PKG_CFLAGS = $(PKG_CFLAGS) $(FREETYPE2_CFLAGS) $(FONTCONFIG_CFLAGS) \
+ -DPANGO_MODULE_PREFIX=_pango_basic_ft2
+
+-PKG_LINK = $(GLIB_LIBS) $(LIBICONV_LIBS) $(FREETYPE2_LIBS) $(FONTCONFIG_LIBS) \
++PKG_LINK = $(GLIB_LIB) $(INTL_LIB) $(FREETYPE2_LIBS) $(FONTCONFIG_LIBS) \
+ pango-$(PANGO_VER).lib opentype\pango-ot.lib
+ !ENDIF
+
+ !IFDEF OBJS_pangox
+-PKG_LINK = $(GLIB_LIBS) $(LIBICONV_LIBS) \
++PKG_LINK = $(GLIB_LIB) $(INTL_LIB) \
+ pango-$(PANGO_VER).lib $(X11_LIBS)
+ !ENDIF
+
+ !IFDEF OBJS_pangocairo
+-PKG_LINK = $(GLIB_LIBS) $(LIBICONV_LIBS) \
+- pango-$(PANGO_VER).lib $(CAIRO_LIBS) \
+- pangowin32-$(PANGO_VER).lib $(FONTCONFIG_LIBS)
++PKG_CFLAGS = $(PKG_CFLAGS)
++PKG_LINK = $(GLIB_LIB) $(INTL_LIB) \
++ pango-$(PANGO_VER).lib $(CAIRO_LIB) \
++ pangowin32-$(PANGO_VER).lib
+ !ENDIF
+
+ !IF DEFINED (OBJS_querymodules) || DEFINED (OBJS_testfonts)
+-PKG_LINK = $(GLIB_LIBS) $(LIBICONV_LIBS) \
++PKG_LINK = $(GLIB_LIB) $(INTL_LIB) \
+ pango-$(PANGO_VER).lib pangowin32-$(PANGO_VER).lib
+ !ENDIF
+
+@@ -99,9 +110,10 @@
+ ellipsize.obj \
+ fonts.obj \
+ glyphstring.obj \
+- mapping.obj \
++# mapping.obj \
+ modules.obj \
+ pango-attributes.obj \
++ pango-bidi-type.obj \
+ pango-engine.obj \
+ pango-color.obj \
+ pango-context.obj \
+@@ -121,7 +133,6 @@
+ pango-utils.obj \
+ reorder-items.obj \
+ shape.obj \
+- \
+ fribidi.obj \
+ fribidi_types.obj \
+ fribidi_char_type.obj
+@@ -215,15 +226,6 @@
+ OBJECTS = $(PACKAGE).obj
+ !ENDIF
+
+-module-defs-win32.c : module-defs-win32.c.win32
+- copy module-defs-win32.c.win32 module-defs-win32.c
+-
+-module-defs-fc.c : module-defs-fc.c.win32
+- copy module-defs-fc.c.win32 module-defs-fc.c
+-
+-module-defs-lang.c : module-defs-lang.c.win32
+- copy module-defs-lang.c.win32 module-defs-lang.c
+-
+ pango_headers= \
+ pango.h \
+ pango-attributes.h \
+@@ -249,7 +251,7 @@
+ pangofc-fontmap.h
+
+ pango-enum-types.h: $(pango_headers) makefile.msc
+- $(PERL) $(GLIB)\gobject\glib-mkenums \
++ $(PERL) $(OUTDIR)\bin\glib-mkenums \
+ --fhead "#ifndef __PANGO_ENUM_TYPES_H__\n#define __PANGO_ENUM_TYPES_H__\n\n#include <glib-object.h>\n\nG_BEGIN_DECLS\n" \
+ --fprod "/* enumerations from \"@filename@\" */\n" \
+ --vhead "GType @enum_name@_get_type (void);\n#define PANGO_TYPE_@ENUMSHORT@ (@enum_name@_get_type())\n" \
+@@ -257,7 +259,7 @@
+ $(pango_headers) > pango-enum-types.h
+
+ pango-enum-types.c: $(pango_headers) pango-enum-types.h makefile.msc
+- $(PERL) $(GLIB)\gobject\glib-mkenums \
++ $(PERL) $(OUTDIR)\bin\glib-mkenums \
+ --fhead "#include <pango.h>" \
+ --fprod "\n/* enumerations from \"@filename@\" */" \
+ --vhead "GType\n@enum_name@_get_type (void)\n{\n static GType etype = 0;\n if (etype == 0) {\n static const G@Type@Value values[] = {" \
+@@ -275,15 +277,6 @@
+ $(PACKAGE).exe : $(PKG_LINK) $(OBJECTS)
+ $(CC) $(CFLAGS) -Fe$(PACKAGE).exe $(OBJECTS) $(PKG_LINK) gdi32.lib user32.lib
+
+-$(PRJ_TOP)\config.h.win32 : makefile.msc
+- echo /*almostempty*/ > $(PRJ_TOP)\config.h.win32
+- echo #define PANGO_BINARY_AGE 0 >> $(PRJ_TOP)\config.h.win32
+- echo #define DHAVE_USP10_H 1 >> $(PRJ_TOP)\config.h.win32
+-
+-$(PRJ_TOP)\config.h: $(PRJ_TOP)\config.h.win32
+- copy $(PRJ_TOP)\config.h.win32 $(PRJ_TOP)\config.h
+-
+-
+ .c.obj :
+ $(CC) $(CFLAGS) -GD -c $(PKG_CFLAGS) $<
+
+--- misc/pango-1.28.3/pango/module-defs-win32.c 2010-09-29 13:02:42.000000000 +0200
++++ misc/build/pango-1.28.3/pango/module-defs-win32.c 2011-03-26 08:57:53.088370000 +0100
+@@ -1,7 +1,25 @@
+-/* Autogenerated by configure. Do not edit */
++/* Hand-written, for builds using Microsoft's compiler and makefile.msc,
++ * where the configure mechanism isn't used.
++ */
+
+-#include "module-defs.h"
++#include "modules.h"
++
++#ifdef PANGO_MODULE_PREFIX
++void _pango_basic_win32_script_engine_list (PangoEngineInfo **engines,
++ gint *n_engines);
++void _pango_basic_win32_script_engine_init (GTypeModule *module);
++void _pango_basic_win32_script_engine_exit (void);
++PangoEngine *_pango_basic_win32_script_engine_create (const char *id);
++#endif
+
+ PangoIncludedModule _pango_included_win32_modules[] = {
+- { NULL, NULL, NULL, NULL },
++#ifdef PANGO_MODULE_PREFIX
++ {
++ _pango_basic_win32_script_engine_list,
++ _pango_basic_win32_script_engine_init,
++ _pango_basic_win32_script_engine_exit,
++ _pango_basic_win32_script_engine_create
++ },
++#endif
++ { NULL, NULL, NULL },
+ };
+--- misc/pango-1.28.3/pango/pango-enum-types.c 2010-09-29 13:02:42.000000000 +0200
++++ misc/build/pango-1.28.3/pango/pango-enum-types.c 2011-03-26 15:41:51.313542400 +0100
+@@ -35,7 +35,7 @@
+ { PANGO_ATTR_GRAVITY_HINT, "PANGO_ATTR_GRAVITY_HINT", "gravity-hint" },
+ { 0, NULL, NULL }
+ };
+- etype = g_enum_register_static (g_intern_static_string ("PangoAttrType"), values);
++ etype = g_enum_register_static ("PangoAttrType", values);
+ }
+ return etype;
+ }
+@@ -52,59 +52,7 @@
+ { PANGO_UNDERLINE_ERROR, "PANGO_UNDERLINE_ERROR", "error" },
+ { 0, NULL, NULL }
+ };
+- etype = g_enum_register_static (g_intern_static_string ("PangoUnderline"), values);
+- }
+- return etype;
+-}
+-
+-/* enumerations from "pango-bidi-type.h" */
+-GType
+-pango_bidi_type_get_type (void)
+-{
+- static GType etype = 0;
+- if (etype == 0) {
+- static const GEnumValue values[] = {
+- { PANGO_BIDI_TYPE_L, "PANGO_BIDI_TYPE_L", "l" },
+- { PANGO_BIDI_TYPE_LRE, "PANGO_BIDI_TYPE_LRE", "lre" },
+- { PANGO_BIDI_TYPE_LRO, "PANGO_BIDI_TYPE_LRO", "lro" },
+- { PANGO_BIDI_TYPE_R, "PANGO_BIDI_TYPE_R", "r" },
+- { PANGO_BIDI_TYPE_AL, "PANGO_BIDI_TYPE_AL", "al" },
+- { PANGO_BIDI_TYPE_RLE, "PANGO_BIDI_TYPE_RLE", "rle" },
+- { PANGO_BIDI_TYPE_RLO, "PANGO_BIDI_TYPE_RLO", "rlo" },
+- { PANGO_BIDI_TYPE_PDF, "PANGO_BIDI_TYPE_PDF", "pdf" },
+- { PANGO_BIDI_TYPE_EN, "PANGO_BIDI_TYPE_EN", "en" },
+- { PANGO_BIDI_TYPE_ES, "PANGO_BIDI_TYPE_ES", "es" },
+- { PANGO_BIDI_TYPE_ET, "PANGO_BIDI_TYPE_ET", "et" },
+- { PANGO_BIDI_TYPE_AN, "PANGO_BIDI_TYPE_AN", "an" },
+- { PANGO_BIDI_TYPE_CS, "PANGO_BIDI_TYPE_CS", "cs" },
+- { PANGO_BIDI_TYPE_NSM, "PANGO_BIDI_TYPE_NSM", "nsm" },
+- { PANGO_BIDI_TYPE_BN, "PANGO_BIDI_TYPE_BN", "bn" },
+- { PANGO_BIDI_TYPE_B, "PANGO_BIDI_TYPE_B", "b" },
+- { PANGO_BIDI_TYPE_S, "PANGO_BIDI_TYPE_S", "s" },
+- { PANGO_BIDI_TYPE_WS, "PANGO_BIDI_TYPE_WS", "ws" },
+- { PANGO_BIDI_TYPE_ON, "PANGO_BIDI_TYPE_ON", "on" },
+- { 0, NULL, NULL }
+- };
+- etype = g_enum_register_static (g_intern_static_string ("PangoBidiType"), values);
+- }
+- return etype;
+-}
+-GType
+-pango_direction_get_type (void)
+-{
+- static GType etype = 0;
+- if (etype == 0) {
+- static const GEnumValue values[] = {
+- { PANGO_DIRECTION_LTR, "PANGO_DIRECTION_LTR", "ltr" },
+- { PANGO_DIRECTION_RTL, "PANGO_DIRECTION_RTL", "rtl" },
+- { PANGO_DIRECTION_TTB_LTR, "PANGO_DIRECTION_TTB_LTR", "ttb-ltr" },
+- { PANGO_DIRECTION_TTB_RTL, "PANGO_DIRECTION_TTB_RTL", "ttb-rtl" },
+- { PANGO_DIRECTION_WEAK_LTR, "PANGO_DIRECTION_WEAK_LTR", "weak-ltr" },
+- { PANGO_DIRECTION_WEAK_RTL, "PANGO_DIRECTION_WEAK_RTL", "weak-rtl" },
+- { PANGO_DIRECTION_NEUTRAL, "PANGO_DIRECTION_NEUTRAL", "neutral" },
+- { 0, NULL, NULL }
+- };
+- etype = g_enum_register_static (g_intern_static_string ("PangoDirection"), values);
++ etype = g_enum_register_static ("PangoUnderline", values);
+ }
+ return etype;
+ }
+@@ -122,7 +70,7 @@
+ { PANGO_COVERAGE_EXACT, "PANGO_COVERAGE_EXACT", "exact" },
+ { 0, NULL, NULL }
+ };
+- etype = g_enum_register_static (g_intern_static_string ("PangoCoverageLevel"), values);
++ etype = g_enum_register_static ("PangoCoverageLevel", values);
+ }
+ return etype;
+ }
+@@ -139,7 +87,7 @@
+ { PANGO_STYLE_ITALIC, "PANGO_STYLE_ITALIC", "italic" },
+ { 0, NULL, NULL }
+ };
+- etype = g_enum_register_static (g_intern_static_string ("PangoStyle"), values);
++ etype = g_enum_register_static ("PangoStyle", values);
+ }
+ return etype;
+ }
+@@ -153,7 +101,7 @@
+ { PANGO_VARIANT_SMALL_CAPS, "PANGO_VARIANT_SMALL_CAPS", "small-caps" },
+ { 0, NULL, NULL }
+ };
+- etype = g_enum_register_static (g_intern_static_string ("PangoVariant"), values);
++ etype = g_enum_register_static ("PangoVariant", values);
+ }
+ return etype;
+ }
+@@ -176,7 +124,7 @@
+ { PANGO_WEIGHT_ULTRAHEAVY, "PANGO_WEIGHT_ULTRAHEAVY", "ultraheavy" },
+ { 0, NULL, NULL }
+ };
+- etype = g_enum_register_static (g_intern_static_string ("PangoWeight"), values);
++ etype = g_enum_register_static ("PangoWeight", values);
+ }
+ return etype;
+ }
+@@ -197,7 +145,7 @@
+ { PANGO_STRETCH_ULTRA_EXPANDED, "PANGO_STRETCH_ULTRA_EXPANDED", "ultra-expanded" },
+ { 0, NULL, NULL }
+ };
+- etype = g_enum_register_static (g_intern_static_string ("PangoStretch"), values);
++ etype = g_enum_register_static ("PangoStretch", values);
+ }
+ return etype;
+ }
+@@ -216,7 +164,7 @@
+ { PANGO_FONT_MASK_GRAVITY, "PANGO_FONT_MASK_GRAVITY", "gravity" },
+ { 0, NULL, NULL }
+ };
+- etype = g_flags_register_static (g_intern_static_string ("PangoFontMask"), values);
++ etype = g_flags_register_static ("PangoFontMask", values);
+ }
+ return etype;
+ }
+@@ -235,7 +183,7 @@
+ { PANGO_GRAVITY_AUTO, "PANGO_GRAVITY_AUTO", "auto" },
+ { 0, NULL, NULL }
+ };
+- etype = g_enum_register_static (g_intern_static_string ("PangoGravity"), values);
++ etype = g_enum_register_static ("PangoGravity", values);
+ }
+ return etype;
+ }
+@@ -250,7 +198,7 @@
+ { PANGO_GRAVITY_HINT_LINE, "PANGO_GRAVITY_HINT_LINE", "line" },
+ { 0, NULL, NULL }
+ };
+- etype = g_enum_register_static (g_intern_static_string ("PangoGravityHint"), values);
++ etype = g_enum_register_static ("PangoGravityHint", values);
+ }
+ return etype;
+ }
+@@ -267,7 +215,7 @@
+ { PANGO_ALIGN_RIGHT, "PANGO_ALIGN_RIGHT", "right" },
+ { 0, NULL, NULL }
+ };
+- etype = g_enum_register_static (g_intern_static_string ("PangoAlignment"), values);
++ etype = g_enum_register_static ("PangoAlignment", values);
+ }
+ return etype;
+ }
+@@ -282,7 +230,7 @@
+ { PANGO_WRAP_WORD_CHAR, "PANGO_WRAP_WORD_CHAR", "word-char" },
+ { 0, NULL, NULL }
+ };
+- etype = g_enum_register_static (g_intern_static_string ("PangoWrapMode"), values);
++ etype = g_enum_register_static ("PangoWrapMode", values);
+ }
+ return etype;
+ }
+@@ -298,7 +246,7 @@
+ { PANGO_ELLIPSIZE_END, "PANGO_ELLIPSIZE_END", "end" },
+ { 0, NULL, NULL }
+ };
+- etype = g_enum_register_static (g_intern_static_string ("PangoEllipsizeMode"), values);
++ etype = g_enum_register_static ("PangoEllipsizeMode", values);
+ }
+ return etype;
+ }
+@@ -316,7 +264,7 @@
+ { PANGO_RENDER_PART_STRIKETHROUGH, "PANGO_RENDER_PART_STRIKETHROUGH", "strikethrough" },
+ { 0, NULL, NULL }
+ };
+- etype = g_enum_register_static (g_intern_static_string ("PangoRenderPart"), values);
++ etype = g_enum_register_static ("PangoRenderPart", values);
+ }
+ return etype;
+ }
+@@ -409,7 +357,7 @@
+ { PANGO_SCRIPT_LYDIAN, "PANGO_SCRIPT_LYDIAN", "lydian" },
+ { 0, NULL, NULL }
+ };
+- etype = g_enum_register_static (g_intern_static_string ("PangoScript"), values);
++ etype = g_enum_register_static ("PangoScript", values);
+ }
+ return etype;
+ }
+@@ -424,7 +372,7 @@
+ { PANGO_TAB_LEFT, "PANGO_TAB_LEFT", "left" },
+ { 0, NULL, NULL }
+ };
+- etype = g_enum_register_static (g_intern_static_string ("PangoTabAlign"), values);
++ etype = g_enum_register_static ("PangoTabAlign", values);
+ }
+ return etype;
+ }
+--- misc/pango-1.28.3/pango/pango-enum-types.h 2010-09-29 13:02:42.000000000 +0200
++++ misc/build/pango-1.28.3/pango/pango-enum-types.h 2011-03-26 15:41:50.922912400 +0100
+@@ -12,11 +12,6 @@
+ #define PANGO_TYPE_ATTR_TYPE (pango_attr_type_get_type())
+ GType pango_underline_get_type (void);
+ #define PANGO_TYPE_UNDERLINE (pango_underline_get_type())
+-/* enumerations from "pango-bidi-type.h" */
+-GType pango_bidi_type_get_type (void);
+-#define PANGO_TYPE_BIDI_TYPE (pango_bidi_type_get_type())
+-GType pango_direction_get_type (void);
+-#define PANGO_TYPE_DIRECTION (pango_direction_get_type())
+ /* enumerations from "pango-coverage.h" */
+ GType pango_coverage_level_get_type (void);
+ #define PANGO_TYPE_COVERAGE_LEVEL (pango_coverage_level_get_type())
+@@ -53,7 +48,6 @@
+ GType pango_tab_align_get_type (void);
+ #define PANGO_TYPE_TAB_ALIGN (pango_tab_align_get_type())
+ G_END_DECLS
+-
+ #endif /* __PANGO_ENUM_TYPES_H__ */
+
+
+--- misc/pango-1.28.3/pango/pango-language.c 2010-02-09 13:06:28.000000000 +0100
++++ misc/build/pango-1.28.3/pango/pango-language.c 2011-03-26 10:25:32.858819200 +0100
+@@ -169,7 +169,6 @@
+ static gchar *
+ _pango_get_lc_ctype (void)
+ {
+-#ifdef G_OS_WIN32
+ /* Somebody might try to set the locale for this process using the
+ * LANG or LC_ environment variables. The Microsoft C library
+ * doesn't know anything about them. You set the locale in the
+@@ -196,9 +195,6 @@
+ return g_strdup (p);
+
+ return g_win32_getlocale ();
+-#else
+- return g_strdup (setlocale (LC_CTYPE, NULL));
+-#endif
+ }
+
+ /**
+--- misc/pango-1.28.3/pango/pango-utils.c 2010-09-29 12:39:16.000000000 +0200
++++ misc/build/pango-1.28.3/pango/pango-utils.c 2011-03-26 11:07:49.125658000 +0100
+@@ -38,15 +38,11 @@
+ # define getc_unlocked(f) getc(f)
+ #endif /* !HAVE_FLOCKFILE */
+
+-#ifdef G_OS_WIN32
+-
+ #include <sys/types.h>
+
+ #define STRICT
+ #include <windows.h>
+
+-#endif
+-
+ struct PangoAlias
+ {
+ char *alias;
+@@ -204,25 +200,6 @@
+
+ continue;
+ }
+-#ifndef G_OS_WIN32
+- /* '~' is a quite normal and common character in file names on
+- * Windows, especially in the 8.3 versions of long file names, which
+- * still occur now and then. Also, few Windows user are aware of the
+- * Unix shell convention that '~' stands for the home directory,
+- * even if they happen to have a home directory.
+- */
+- if (file[0] == '~' && file[1] == G_DIR_SEPARATOR)
+- {
+- char *tmp = g_strconcat (g_get_home_dir(), file + 1, NULL);
+- g_free (file);
+- file = tmp;
+- }
+- else if (file[0] == '~' && file[1] == '\0')
+- {
+- g_free (file);
+- file = g_strdup (g_get_home_dir());
+- }
+-#endif
+ g_free (files[i]);
+ files[i] = file;
+
+@@ -655,8 +632,6 @@
+ return g_strdup (g_hash_table_lookup (config_hash, key));
+ }
+
+-#ifdef G_OS_WIN32
+-
+ /* DllMain function needed to tuck away the DLL handle */
+
+ static HMODULE pango_dll;
+@@ -676,8 +651,6 @@
+ return TRUE;
+ }
+
+-#endif
+-
+ /**
+ * pango_get_sysconf_subdirectory:
+ *
+@@ -692,7 +665,6 @@
+ G_CONST_RETURN char *
+ pango_get_sysconf_subdirectory (void)
+ {
+-#ifdef G_OS_WIN32
+ static gchar *result = NULL;
+
+ if (result == NULL)
+@@ -702,9 +674,6 @@
+ g_free (root);
+ }
+ return result;
+-#else
+- return SYSCONFDIR "/pango";
+-#endif
+ }
+
+ /**
+@@ -721,7 +690,6 @@
+ G_CONST_RETURN char *
+ pango_get_lib_subdirectory (void)
+ {
+-#ifdef G_OS_WIN32
+ static gchar *result = NULL;
+
+ if (result == NULL)
+@@ -737,9 +705,6 @@
+ g_free (root);
+ }
+ return result;
+-#else
+- return LIBDIR "/pango";
+-#endif
+ }
+
+
+--- misc/pango-1.28.3/pango/pango.def 2010-02-09 13:06:28.000000000 +0100
++++ misc/build/pango-1.28.3/pango/pango.def 2011-03-26 11:10:51.284239600 +0100
+@@ -49,7 +49,6 @@
+ pango_attribute_destroy
+ pango_attribute_equal
+ pango_bidi_type_for_unichar
+- pango_bidi_type_get_type
+ pango_break
+ pango_color_copy
+ pango_color_free
+@@ -89,7 +88,6 @@
+ pango_coverage_to_bytes
+ pango_coverage_unref
+ pango_default_break
+- pango_direction_get_type
+ pango_ellipsize_mode_get_type
+ pango_engine_get_type
+ pango_engine_lang_get_type
+--- misc/pango-1.28.3/config.h 2011-03-26 08:43:30.577330000 +0100
++++ misc/build/pango-1.28.3/config.h 2011-03-26 08:42:01.216811200 +0100
+@@ -1 +1,3 @@
+-dummy
++/*almostempty*/
++#define PANGO_BINARY_AGE 0
++#define DHAVE_USP10_H 1
+--- misc/pango-1.28.3/msvc_recommended_pragmas.h 2011-03-26 07:30:07.692848800 +0100
++++ misc/build/pango-1.28.3/msvc_recommended_pragmas.h 2011-03-26 07:34:43.524504400 +0100
+@@ -1 +1,31 @@
+-dummy
++#ifndef _MSC_VER
++#pragma error "This header is for Microsoft VC only."
++#endif /* _MSC_VER */
++
++/* Make MSVC more pedantic, this is a recommended pragma list
++ * from _Win32_Programming_ by Rector and Newcomer.
++ */
++#pragma warning(error:4002) /* too many actual parameters for macro */
++#pragma warning(error:4003) /* not enough actual parameters for macro */
++#pragma warning(1:4010) /* single-line comment contains line-continuation character */
++#pragma warning(error:4013) /* 'function' undefined; assuming extern returning int */
++#pragma warning(1:4016) /* no function return type; using int as default */
++#pragma warning(error:4020) /* too many actual parameters */
++#pragma warning(error:4021) /* too few actual parameters */
++#pragma warning(error:4027) /* function declared without formal parameter list */
++#pragma warning(error:4029) /* declared formal parameter list different from definition */
++#pragma warning(error:4033) /* 'function' must return a value */
++#pragma warning(error:4035) /* 'function' : no return value */
++#pragma warning(error:4045) /* array bounds overflow */
++#pragma warning(error:4047) /* different levels of indirection */
++#pragma warning(error:4049) /* terminating line number emission */
++#pragma warning(error:4053) /* An expression of type void was used as an operand */
++#pragma warning(error:4071) /* no function prototype given */
++#pragma warning(disable:4101) /* unreferenced local variable */
++#pragma warning(error:4150)
++
++#pragma warning(disable:4244) /* No possible loss of data warnings */
++#pragma warning(disable:4305) /* No truncation from int to char warnings */
++
++/* work around Microsoft's premature attempt to deprecate the C-Library */
++#pragma warning(disable:4996) /* This function or variable may be unsafe. */
diff --git a/pango/pango-1.28.3.patch b/pango/pango-1.28.3.patch
new file mode 100644
index 000000000000..7da953f28311
--- /dev/null
+++ b/pango/pango-1.28.3.patch
@@ -0,0 +1,37 @@
+--- misc/pango-1.28.3/configure 2010-09-29 13:02:33.000000000 +0200
++++ misc/build/pango-1.28.3/configure 2011-03-01 17:56:26.000000000 +0100
+@@ -18596,16 +18596,16 @@
+ fi
+
+ if $have_atsui; then
+- if test -n "$PKG_CONFIG" && \
+- { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"cairo-quartz-font >= \$cairo_required\""; } >&5
+- ($PKG_CONFIG --exists --print-errors "cairo-quartz-font >= $cairo_required") 2>&5
+- ac_status=$?
+- $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+- test $ac_status = 0; }; then
++# if test -n "$PKG_CONFIG" && \
++# { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"cairo-quartz-font >= \$cairo_required\""; } >&5
++# ($PKG_CONFIG --exists --print-errors "cairo-quartz-font >= $cairo_required") 2>&5
++# ac_status=$?
++# $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
++# test $ac_status = 0; }; then
+ have_cairo_atsui=true
+-else
+- :
+-fi
++#else
++# :
++#fi
+ fi
+ if $have_cairo_atsui; then
+
+@@ -18859,7 +18859,7 @@
+
+ # Setup GLIB_MKENUMS to use glib-mkenums even if GLib is uninstalled.
+ GLIB_MKENUMS=`$PKG_CONFIG --variable=glib_mkenums glib-2.0`
+-
++GLIB_MKENUMS=glib-mkenums
+
+
+ # Add in gthread-2.0 to CFLAGS but not to LIBS so we get any
diff --git a/pango/prj/build.lst b/pango/prj/build.lst
new file mode 100644
index 000000000000..692ab2c2e592
--- /dev/null
+++ b/pango/prj/build.lst
@@ -0,0 +1,3 @@
+pg pango : gettext glib soltools cairo NULL
+pg pango usr1 - all pg_mkout NULL
+pg pango nmake - all pg_pango NULL
diff --git a/pango/prj/d.lst b/pango/prj/d.lst
new file mode 100755
index 000000000000..c80568a0df01
--- /dev/null
+++ b/pango/prj/d.lst
@@ -0,0 +1,44 @@
+mkdir: %_DEST%\inc%_EXT%\external
+mkdir: %_DEST%\inc%_EXT%\external\pango-1.0
+mkdir: %_DEST%\inc%_EXT%\external\pango-1.0\pango
+
+..\%__SRC%\inc\pango.h %_DEST%\inc%_EXT%\external\pango-1.0\pango\pango.h
+..\%__SRC%\inc\pangocairo.h %_DEST%\inc%_EXT%\external\pango-1.0\pango\pangocairo.h
+..\%__SRC%\inc\pangoatsui.h %_DEST%\inc%_EXT%\external\pango-1.0\pango\pangoatsui.h
+..\%__SRC%\inc\pango-attributes.h %_DEST%\inc%_EXT%\external\pango-1.0\pango\pango-attributes.h
+..\%__SRC%\inc\pango-bidi-type.h %_DEST%\inc%_EXT%\external\pango-1.0\pango\pango-bidi-type.h
+..\%__SRC%\inc\pango-break.h %_DEST%\inc%_EXT%\external\pango-1.0\pango\pango-break.h
+..\%__SRC%\inc\pango-context.h %_DEST%\inc%_EXT%\external\pango-1.0\pango\pango-context.h
+..\%__SRC%\inc\pango-coverage.h %_DEST%\inc%_EXT%\external\pango-1.0\pango\pango-coverage.h
+..\%__SRC%\inc\pango-engine.h %_DEST%\inc%_EXT%\external\pango-1.0\pango\pango-engine.h
+..\%__SRC%\inc\pango-enum-types.h %_DEST%\inc%_EXT%\external\pango-1.0\pango\pango-enum-types.h
+..\%__SRC%\inc\pango-features.h %_DEST%\inc%_EXT%\external\pango-1.0\pango\pango-features.h
+..\%__SRC%\inc\pango-font.h %_DEST%\inc%_EXT%\external\pango-1.0\pango\pango-font.h
+..\%__SRC%\inc\pango-fontmap.h %_DEST%\inc%_EXT%\external\pango-1.0\pango\pango-fontmap.h
+..\%__SRC%\inc\pango-fontset.h %_DEST%\inc%_EXT%\external\pango-1.0\pango\pango-fontset.h
+..\%__SRC%\inc\pango-glyph.h %_DEST%\inc%_EXT%\external\pango-1.0\pango\pango-glyph.h
+..\%__SRC%\inc\pango-glyph-item.h %_DEST%\inc%_EXT%\external\pango-1.0\pango\pango-glyph-item.h
+..\%__SRC%\inc\pango-gravity.h %_DEST%\inc%_EXT%\external\pango-1.0\pango\pango-gravity.h
+..\%__SRC%\inc\pango-item.h %_DEST%\inc%_EXT%\external\pango-1.0\pango\pango-item.h
+..\%__SRC%\inc\pango-language.h %_DEST%\inc%_EXT%\external\pango-1.0\pango\pango-language.h
+..\%__SRC%\inc\pango-layout.h %_DEST%\inc%_EXT%\external\pango-1.0\pango\pango-layout.h
+..\%__SRC%\inc\pango-matrix.h %_DEST%\inc%_EXT%\external\pango-1.0\pango\pango-matrix.h
+..\%__SRC%\inc\pango-modules.h %_DEST%\inc%_EXT%\external\pango-1.0\pango\pango-modules.h
+..\%__SRC%\inc\pango-renderer.h %_DEST%\inc%_EXT%\external\pango-1.0\pango\pango-renderer.h
+..\%__SRC%\inc\pango-script.h %_DEST%\inc%_EXT%\external\pango-1.0\pango\pango-script.h
+..\%__SRC%\inc\pango-tabs.h %_DEST%\inc%_EXT%\external\pango-1.0\pango\pango-tabs.h
+..\%__SRC%\inc\pango-types.h %_DEST%\inc%_EXT%\external\pango-1.0\pango\pango-types.h
+..\%__SRC%\inc\pango-utils.h %_DEST%\inc%_EXT%\external\pango-1.0\pango\pango-utils.h
+
+..\%__SRC%\lib\libpango-1.0.0.dylib %_DEST%\lib%_EXT%\libpango-1.0.0.dylib
+symlink: %_DEST%\lib%_EXT%\libpango-1.0.0.dylib %_DEST%\lib%_EXT%\libpango-1.0.dylib
+..\%__SRC%\lib\libpangocairo-1.0.0.dylib %_DEST%\lib%_EXT%\libpangocairo-1.0.0.dylib
+symlink: %_DEST%\lib%_EXT%\libpangocairo-1.0.0.dylib %_DEST%\lib%_EXT%\libpangocairo-1.0.dylib
+
+..\%__SRC%\lib\pango-1.0.lib %_DEST%\lib%_EXT%\pango-1.0.lib
+..\%__SRC%\lib\pangocairo-1.0.lib %_DEST%\lib%_EXT%\pangocairo-1.0.lib
+..\%__SRC%\lib\pangowin32-1.0.lib %_DEST%\lib%_EXT%\pangowin32-1.0.lib
+
+..\%__SRC%\bin\*.dll %_DEST%\bin%_EXT%
+..\%__SRC%\bin\pango-querymodules %_DEST%\bin%_EXT%\pango-querymodules
+..\%__SRC%\bin\querymodules.exe %_DEST%\bin%_EXT%\pango-querymodules.exe
diff --git a/python/Python-2.6.1-nohardlink.patch b/python/Python-2.6.1-nohardlink.patch
new file mode 100644
index 000000000000..c552b1a0e126
--- /dev/null
+++ b/python/Python-2.6.1-nohardlink.patch
@@ -0,0 +1,20 @@
+--- misc/Python-2.6.1/Makefile.pre.in 2011-03-08 18:23:37.230410480 +0100
++++ misc/build/Python-2.6.1/Makefile.pre.in 2011-03-08 18:22:57.935746999 +0100
+@@ -414,7 +414,7 @@
+ libpython$(VERSION).so: $(LIBRARY_OBJS)
+ if test $(INSTSONAME) != $(LDLIBRARY); then \
+ $(LDSHARED) $(LDFLAGS) -Wl,-h$(INSTSONAME) -o $(INSTSONAME) $(LIBRARY_OBJS) $(SHLIBS) $(LIBC) $(LIBM) $(LDLAST); \
+- $(LN) -f $(INSTSONAME) $@; \
++ $(LN) -fs $(INSTSONAME) $@; \
+ else\
+ $(LDSHARED) $(LDFLAGS) -o $@ $(LIBRARY_OBJS) $(SHLIBS) $(LIBC) $(LIBM) $(LDLAST); \
+ fi
+@@ -767,7 +767,7 @@
+ then rm -f $(DESTDIR)$(BINDIR)/$(PYTHON); \
+ else true; \
+ fi
+- (cd $(DESTDIR)$(BINDIR); $(LN) python$(VERSION)$(EXE) $(PYTHON))
++ (cd $(DESTDIR)$(BINDIR); $(LN) -s python$(VERSION)$(EXE) $(PYTHON))
+ -rm -f $(DESTDIR)$(BINDIR)/python-config
+ (cd $(DESTDIR)$(BINDIR); $(LN) -s python$(VERSION)-config python-config)
+
diff --git a/python/Python-2.6.1-sysbase.patch b/python/Python-2.6.1-sysbase.patch
new file mode 100644
index 000000000000..fb81056c1595
--- /dev/null
+++ b/python/Python-2.6.1-sysbase.patch
@@ -0,0 +1,13 @@
+--- misc/Python-2.6.1/configure Thu Mar 17 13:00:41 2011
++++ misc/build/Python-2.6.1/configure Thu Mar 17 12:58:50 2011
+@@ -2042,7 +2042,9 @@
+ if test -z "$MACHDEP"
+ then
+ ac_sys_system=`uname -s`
+- if test "$ac_sys_system" = "AIX" -o "$ac_sys_system" = "Monterey64" \
++ if test -n "$OOO_SYSBASE_SYS_RELEASE"; then
++ ac_sys_release=$OOO_SYSBASE_SYS_RELEASE
++ elif test "$ac_sys_system" = "AIX" -o "$ac_sys_system" = "Monterey64" \
+ -o "$ac_sys_system" = "UnixWare" -o "$ac_sys_system" = "OpenUNIX"; then
+ ac_sys_release=`uname -v`
+ else
diff --git a/python/makefile.mk b/python/makefile.mk
index eb72a267ca88..fb729bda8db5 100644
--- a/python/makefile.mk
+++ b/python/makefile.mk
@@ -50,7 +50,9 @@ PATCH_FILES=\
Python-parallel-make.patch \
Python-ssl.patch \
Python-aix.patch \
- Python-2.6.1-urllib.patch
+ Python-2.6.1-urllib.patch \
+ Python-2.6.1-sysbase.patch \
+ Python-2.6.1-nohardlink.patch
CONFIGURE_DIR=
diff --git a/zlib/makefile.mk b/zlib/makefile.mk
index b928c82ddae1..6165ccc8ddbf 100644
--- a/zlib/makefile.mk
+++ b/zlib/makefile.mk
@@ -44,10 +44,10 @@ all:
# --- Files --------------------------------------------------------
-TARFILE_NAME=zlib-1.2.3
-TARFILE_MD5=debc62758716a169df9f62e6ab2bc634
+TARFILE_NAME=zlib-1.2.5
+TARFILE_MD5=c735eab2d659a96e5a594c9e8541ad63
-PATCH_FILES=zlib-1.2.3.patch
+PATCH_FILES=zlib-1.2.5.patch
ADDITIONAL_FILES=makefile.mk
#relative to CONFIGURE_DIR
diff --git a/zlib/zlib-1.2.5.patch b/zlib/zlib-1.2.5.patch
new file mode 100644
index 000000000000..7021a2ca4ba0
--- /dev/null
+++ b/zlib/zlib-1.2.5.patch
@@ -0,0 +1,71 @@
+--- misc/zlib-1.2.5/makefile.mk Fri Mar 14 10:17:06 2008
++++ misc/build/zlib-1.2.5/makefile.mk Fri Mar 14 10:16:56 2008
+@@ -1 +1,67 @@
+-dummy
++#*************************************************************************
++#
++# Copyright according the GNU Public License.
++#
++#*************************************************************************
++
++PRJ=..$/..$/..$/..
++
++PRJNAME=zlib
++TARGET=zlib
++LIBTARGET=NO
++EXTERNAL_WARNINGS_NOT_ERRORS=TRUE
++
++# --- Settings -----------------------------------------------------
++
++.INCLUDE : settings.mk
++
++# --- Files --------------------------------------------------------
++
++INCEXT=contrib$/minizip
++
++SLOFILES= $(SLO)$/adler32.obj \
++ $(SLO)$/compress.obj \
++ $(SLO)$/deflate.obj \
++ $(SLO)$/crc32.obj \
++ $(SLO)$/inffast.obj \
++ $(SLO)$/inflate.obj \
++ $(SLO)$/inftrees.obj \
++ $(SLO)$/trees.obj \
++ $(SLO)$/zutil.obj \
++ $(SLO)$/unzip.obj \
++ $(SLO)$/ioapi.obj
++
++
++LIB1TARGET=$(SLB)$/$(TARGET).lib
++LIB1ARCHIV=$(LB)$/lib$(TARGET).a
++LIB1OBJFILES=$(SLOFILES)
++
++.IF "$(BUILD_X64)"!=""
++SLOFILES_X64= $(SLO_X64)$/adler32.obj \
++ $(SLO_X64)$/compress.obj \
++ $(SLO_X64)$/deflate.obj \
++ $(SLO_X64)$/crc32.obj \
++ $(SLO_X64)$/inffast.obj \
++ $(SLO_X64)$/inflate.obj \
++ $(SLO_X64)$/inftrees.obj \
++ $(SLO_X64)$/trees.obj \
++ $(SLO_X64)$/zutil.obj \
++ $(SLO_X64)$/unzip.obj \
++ $(SLO_X64)$/ioapi.obj
++
++LIB1TARGET_X64=$(SLB_X64)$/$(TARGET).lib
++LIB1OBJFILES_X64=$(SLOFILES_X64)
++.ENDIF # "$(BUILD_X64)"!=""
++
++
++# --- Targets ------------------------------------------------------
++
++$(MISC)$/%.c : contrib$/minizip$/%.c
++ @echo ------------------------------
++ @echo Making: $@
++ @$(COPY) $< $@
++
++.INCLUDE : set_wntx64.mk
++.INCLUDE : target.mk
++.INCLUDE : tg_wntx64.mk
++