summaryrefslogtreecommitdiff
path: root/packages/gettext
diff options
context:
space:
mode:
authorAlexey Neyman <stilor@att.net>2017-05-20 04:58:46 (GMT)
committerAlexey Neyman <stilor@att.net>2017-07-08 17:57:56 (GMT)
commite7deac3aad394325f9e6fc6fda41d34ec94a59e0 (patch)
tree6ad88362f0bfa8385a91eb494009a4646aeb74b6 /packages/gettext
parentb9af225f58e45c7fae7eb9d3689fe939243e7578 (diff)
Switch comp.libs/tools and debug to new framework.
Signed-off-by: Alexey Neyman <stilor@att.net>
Diffstat (limited to 'packages/gettext')
-rw-r--r--packages/gettext/0.19.7/110-Fix-linker-error-redefinition-of-vasprintf.patch31
-rw-r--r--packages/gettext/0.19.7/120-Fix-Woe32-link-errors-when-compiling-with-O0.patch369
-rw-r--r--packages/gettext/0.19.7/130-Fix-static-Cygwin-x86_64-build-environ-is-always-dllimport.patch72
-rw-r--r--packages/gettext/0.19.7/140-Fix-Cygwin-sys-select.patch44
-rw-r--r--packages/gettext/0.19.7/150-Fix-Cygwin-sys-select-2.patch26
-rw-r--r--packages/gettext/0.19.7/version.desc1
-rw-r--r--packages/gettext/0.19.8.1/110-Fix-linker-error-redefinition-of-vasprintf.patch31
-rw-r--r--packages/gettext/0.19.8.1/120-Fix-Woe32-link-errors-when-compiling-with-O0.patch199
-rw-r--r--packages/gettext/0.19.8.1/130-Fix-static-Cygwin-x86_64-build-environ-is-always-dllimport.patch72
-rw-r--r--packages/gettext/0.19.8.1/version.desc0
-rw-r--r--packages/gettext/package.desc1
11 files changed, 846 insertions, 0 deletions
diff --git a/packages/gettext/0.19.7/110-Fix-linker-error-redefinition-of-vasprintf.patch b/packages/gettext/0.19.7/110-Fix-linker-error-redefinition-of-vasprintf.patch
new file mode 100644
index 0000000..dacdfb1
--- /dev/null
+++ b/packages/gettext/0.19.7/110-Fix-linker-error-redefinition-of-vasprintf.patch
@@ -0,0 +1,31 @@
+From a76649dae62768d0af7017b3fc0ca5f891588c78 Mon Sep 17 00:00:00 2001
+From: Andoni Morales Alastruey <ylatuya@gmail.com>
+Date: Wed, 29 Feb 2012 10:44:43 +0100
+Subject: [PATCH] Fix linker error: redefinition of vasprintf
+
+This might not be the best patch, but it works for us
+The link error was:
+.libs/autosprintf.o:autosprintf.cc:(.text$vasprintf[_vasprintf]+0x0): multiple definition of `_vasprintf'
+.libs/lib-asprintf.o:lib-asprintf.c:(.text+0x4621): first defined here
+---
+ gettext-runtime/libasprintf/autosprintf.cc | 2 ++
+ 1 file changed, 2 insertions(+)
+
+diff --git a/gettext-runtime/libasprintf/autosprintf.cc b/gettext-runtime/libasprintf/autosprintf.cc
+index ca318f7..2526210 100644
+--- a/gettext-runtime/libasprintf/autosprintf.cc
++++ b/gettext-runtime/libasprintf/autosprintf.cc
+@@ -19,8 +19,10 @@
+ This must come before <config.h> because <config.h> may include
+ <features.h>, and once <features.h> has been included, it's too late. */
+ #ifndef _GNU_SOURCE
++#ifndef _WIN32
+ # define _GNU_SOURCE 1
+ #endif
++#endif
+
+ /* Specification. */
+ #include "autosprintf.h"
+--
+1.8.4
+
diff --git a/packages/gettext/0.19.7/120-Fix-Woe32-link-errors-when-compiling-with-O0.patch b/packages/gettext/0.19.7/120-Fix-Woe32-link-errors-when-compiling-with-O0.patch
new file mode 100644
index 0000000..4624cb5
--- /dev/null
+++ b/packages/gettext/0.19.7/120-Fix-Woe32-link-errors-when-compiling-with-O0.patch
@@ -0,0 +1,369 @@
+From d4ecf6f15ad7a428786df2efdc88b03be0a4fdbb Mon Sep 17 00:00:00 2001
+From: Daiki Ueno <ueno@gnu.org>
+Date: Thu, 17 Jan 2013 18:33:40 +0900
+Subject: [PATCH] Fix Woe32 link errors when compiling with -O0.
+
+---
+ gettext-tools/src/Makefile.am | 24 ++++++++++++++++++++++--
+ gettext-tools/src/color.c | 1 +
+ gettext-tools/woe32dll/c++color.cc | 1 +
+ gettext-tools/woe32dll/c++file-ostream.cc | 2 ++
+ gettext-tools/woe32dll/c++html-ostream.cc | 1 +
+ gettext-tools/woe32dll/c++styled-ostream.cc | 1 +
+ gettext-tools/woe32dll/c++term-ostream.cc | 1 +
+ gettext-tools/woe32dll/c++write-catalog.cc | 1 +
+ gettext-tools/woe32dll/c++write-po.cc | 1 +
+ gettext-tools/woe32dll/c++write-properties.cc | 1 +
+ gettext-tools/woe32dll/c++write-stringtable.cc | 1 +
+ gnulib-local/modules/file-ostream | 4 ++++
+ gnulib-local/modules/html-ostream | 4 ++++
+ gnulib-local/modules/ostream | 4 ++++
+ gnulib-local/modules/styled-ostream | 4 ++++
+ gnulib-local/modules/term-ostream | 4 ++++
+ 16 files changed, 53 insertions(+), 2 deletions(-)
+ create mode 100644 gettext-tools/woe32dll/c++color.cc
+ create mode 100644 gettext-tools/woe32dll/c++file-ostream.cc
+ create mode 100644 gettext-tools/woe32dll/c++html-ostream.cc
+ create mode 100644 gettext-tools/woe32dll/c++styled-ostream.cc
+ create mode 100644 gettext-tools/woe32dll/c++term-ostream.cc
+ create mode 100644 gettext-tools/woe32dll/c++write-catalog.cc
+ create mode 100644 gettext-tools/woe32dll/c++write-po.cc
+ create mode 100644 gettext-tools/woe32dll/c++write-properties.cc
+ create mode 100644 gettext-tools/woe32dll/c++write-stringtable.cc
+
+Additional fix (COLOR_SOURCE) by Ray Donnelly <mingw.android@gmail.com>
+
+diff -urN a/gettext-tools/src/Makefile.am b/gettext-tools/src/Makefile.am
+--- a/gettext-tools/src/Makefile.am 2015-09-11 01:54:21.000000000 +0100
++++ b/gettext-tools/src/Makefile.am 2015-10-22 00:41:49.601786700 +0100
+@@ -145,10 +145,26 @@
+ format-lua.c \
+ format-javascript.c
+
++if !WOE32DLL
++COLOR_SOURCE = color.c
++OUTPUT_SOURCE = \
++ write-catalog.c \
++ write-properties.c \
++ write-stringtable.c \
++ write-po.c
++else
++COLOR_SOURCE = ../woe32dll/c++color.cc
++OUTPUT_SOURCE = \
++ ../woe32dll/c++write-catalog.cc \
++ ../woe32dll/c++write-properties.cc \
++ ../woe32dll/c++write-stringtable.cc \
++ ../woe32dll/c++write-po.cc
++endif
++
+ # libgettextsrc contains all code that is needed by at least two programs.
+ libgettextsrc_la_SOURCES = \
+ $(COMMON_SOURCE) read-catalog.c \
+-color.c write-catalog.c write-properties.c write-stringtable.c write-po.c \
++$(COLOR_SOURCE) $(OUTPUT_SOURCE) \
+ msgl-ascii.c msgl-iconv.c msgl-equal.c msgl-cat.c msgl-header.c msgl-english.c \
+ msgl-check.c file-list.c msgl-charset.c po-time.c plural-exp.c plural-eval.c \
+ plural-table.c quote.h sentence.h sentence.c \
+diff -urN a/gettext-tools/src/Makefile.in b/gettext-tools/src/Makefile.in
+--- a/gettext-tools/src/Makefile.in 2015-09-11 04:05:11.000000000 +0100
++++ b/gettext-tools/src/Makefile.in 2015-10-22 00:42:26.253852000 +0100
+@@ -387,19 +387,22 @@
+ am__libgettextsrc_la_SOURCES_DIST = message.c po-error.c po-xerror.c \
+ read-catalog-abstract.c po-lex.c po-gram-gen.y po-charset.c \
+ read-po.c read-properties.c read-stringtable.c open-catalog.c \
+- dir-list.c str-list.c read-catalog.c color.c write-catalog.c \
+- write-properties.c write-stringtable.c write-po.c msgl-ascii.c \
+- msgl-iconv.c msgl-equal.c msgl-cat.c msgl-header.c \
+- msgl-english.c msgl-check.c file-list.c msgl-charset.c \
+- po-time.c plural-exp.c plural-eval.c plural-table.c quote.h \
+- sentence.h sentence.c format.c format-invalid.h format-c.c \
+- format-c-parse.h format-sh.c format-python.c \
+- format-python-brace.c format-lisp.c format-elisp.c \
+- format-librep.c format-scheme.c format-java.c format-csharp.c \
+- format-awk.c format-pascal.c format-ycp.c format-tcl.c \
+- format-perl.c format-perl-brace.c format-php.c \
+- format-gcc-internal.c format-gfc-internal.c format-qt.c \
+- format-qt-plural.c format-kde.c format-kde-kuit.c \
++ dir-list.c str-list.c read-catalog.c color.c \
++ ../woe32dll/c++color.cc write-catalog.c write-properties.c \
++ write-stringtable.c write-po.c ../woe32dll/c++write-catalog.cc \
++ ../woe32dll/c++write-properties.cc \
++ ../woe32dll/c++write-stringtable.cc ../woe32dll/c++write-po.cc \
++ msgl-ascii.c msgl-iconv.c msgl-equal.c msgl-cat.c \
++ msgl-header.c msgl-english.c msgl-check.c file-list.c \
++ msgl-charset.c po-time.c plural-exp.c plural-eval.c \
++ plural-table.c quote.h sentence.h sentence.c \
++ format.c format-invalid.h format-c.c format-c-parse.h \
++ format-sh.c format-python.c format-python-brace.c \
++ format-lisp.c format-elisp.c format-librep.c format-scheme.c \
++ format-java.c format-csharp.c format-awk.c format-pascal.c \
++ format-ycp.c format-tcl.c format-perl.c format-perl-brace.c \
++ format-php.c format-gcc-internal.c format-gfc-internal.c \
++ format-qt.c format-qt-plural.c format-kde.c format-kde-kuit.c \
+ format-boost.c format-lua.c format-javascript.c \
+ ../woe32dll/c++format.cc read-desktop.c locating-rule.c its.c \
+ ../woe32dll/gettextsrc-exports.c
+@@ -413,7 +416,18 @@
+ libgettextsrc_la-open-catalog.lo libgettextsrc_la-dir-list.lo \
+ libgettextsrc_la-str-list.lo
+ am__dirstamp = $(am__leading_dot)dirstamp
+-@WOE32DLL_FALSE@am__objects_2 = libgettextsrc_la-format.lo \
++@WOE32DLL_FALSE@am__objects_2 = libgettextsrc_la-color.lo
++@WOE32DLL_TRUE@am__objects_2 = \
++@WOE32DLL_TRUE@ ../woe32dll/libgettextsrc_la-c++color.lo
++@WOE32DLL_FALSE@am__objects_3 = libgettextsrc_la-write-catalog.lo \
++@WOE32DLL_FALSE@ libgettextsrc_la-write-properties.lo \
++@WOE32DLL_FALSE@ libgettextsrc_la-write-stringtable.lo \
++@WOE32DLL_FALSE@ libgettextsrc_la-write-po.lo
++@WOE32DLL_TRUE@am__objects_3 = ../woe32dll/libgettextsrc_la-c++write-catalog.lo \
++@WOE32DLL_TRUE@ ../woe32dll/libgettextsrc_la-c++write-properties.lo \
++@WOE32DLL_TRUE@ ../woe32dll/libgettextsrc_la-c++write-stringtable.lo \
++@WOE32DLL_TRUE@ ../woe32dll/libgettextsrc_la-c++write-po.lo
++@WOE32DLL_FALSE@am__objects_4 = libgettextsrc_la-format.lo \
+ @WOE32DLL_FALSE@ libgettextsrc_la-format-c.lo \
+ @WOE32DLL_FALSE@ libgettextsrc_la-format-sh.lo \
+ @WOE32DLL_FALSE@ libgettextsrc_la-format-python.lo \
+@@ -440,7 +454,7 @@
+ @WOE32DLL_FALSE@ libgettextsrc_la-format-boost.lo \
+ @WOE32DLL_FALSE@ libgettextsrc_la-format-lua.lo \
+ @WOE32DLL_FALSE@ libgettextsrc_la-format-javascript.lo
+-@WOE32DLL_TRUE@am__objects_2 = \
++@WOE32DLL_TRUE@am__objects_4 = \
+ @WOE32DLL_TRUE@ ../woe32dll/libgettextsrc_la-c++format.lo \
+ @WOE32DLL_TRUE@ libgettextsrc_la-format-c.lo \
+ @WOE32DLL_TRUE@ libgettextsrc_la-format-sh.lo \
+@@ -468,13 +482,10 @@
+ @WOE32DLL_TRUE@ libgettextsrc_la-format-boost.lo \
+ @WOE32DLL_TRUE@ libgettextsrc_la-format-lua.lo \
+ @WOE32DLL_TRUE@ libgettextsrc_la-format-javascript.lo
+-@WOE32DLL_TRUE@am__objects_3 = ../woe32dll/libgettextsrc_la-gettextsrc-exports.lo
++@WOE32DLL_TRUE@am__objects_5 = ../woe32dll/libgettextsrc_la-gettextsrc-exports.lo
+ am_libgettextsrc_la_OBJECTS = $(am__objects_1) \
+- libgettextsrc_la-read-catalog.lo libgettextsrc_la-color.lo \
+- libgettextsrc_la-write-catalog.lo \
+- libgettextsrc_la-write-properties.lo \
+- libgettextsrc_la-write-stringtable.lo \
+- libgettextsrc_la-write-po.lo libgettextsrc_la-msgl-ascii.lo \
++ libgettextsrc_la-read-catalog.lo $(am__objects_2) \
++ $(am__objects_3) libgettextsrc_la-msgl-ascii.lo \
+ libgettextsrc_la-msgl-iconv.lo libgettextsrc_la-msgl-equal.lo \
+ libgettextsrc_la-msgl-cat.lo libgettextsrc_la-msgl-header.lo \
+ libgettextsrc_la-msgl-english.lo \
+@@ -482,9 +493,9 @@
+ libgettextsrc_la-msgl-charset.lo libgettextsrc_la-po-time.lo \
+ libgettextsrc_la-plural-exp.lo libgettextsrc_la-plural-eval.lo \
+ libgettextsrc_la-plural-table.lo libgettextsrc_la-sentence.lo \
+- $(am__objects_2) libgettextsrc_la-read-desktop.lo \
++ $(am__objects_4) libgettextsrc_la-read-desktop.lo \
+ libgettextsrc_la-locating-rule.lo libgettextsrc_la-its.lo \
+- $(am__objects_3)
++ $(am__objects_5)
+ libgettextsrc_la_OBJECTS = $(am_libgettextsrc_la_OBJECTS)
+ PROGRAMS = $(bin_PROGRAMS) $(noinst_PROGRAMS)
+ am_cldr_plurals_OBJECTS = cldr_plurals-cldr-plural.$(OBJEXT) \
+@@ -1975,15 +1986,28 @@
+ @WOE32DLL_TRUE@ format-qt.c format-qt-plural.c format-kde.c \
+ @WOE32DLL_TRUE@ format-kde-kuit.c format-boost.c format-lua.c \
+ @WOE32DLL_TRUE@ format-javascript.c
++@WOE32DLL_FALSE@COLOR_SOURCE = color.c
++@WOE32DLL_TRUE@COLOR_SOURCE = ../woe32dll/c++color.cc
++@WOE32DLL_FALSE@OUTPUT_SOURCE = \
++@WOE32DLL_FALSE@ write-catalog.c \
++@WOE32DLL_FALSE@ write-properties.c \
++@WOE32DLL_FALSE@ write-stringtable.c \
++@WOE32DLL_FALSE@ write-po.c
++
++@WOE32DLL_TRUE@OUTPUT_SOURCE = \
++@WOE32DLL_TRUE@ ../woe32dll/c++write-catalog.cc \
++@WOE32DLL_TRUE@ ../woe32dll/c++write-properties.cc \
++@WOE32DLL_TRUE@ ../woe32dll/c++write-stringtable.cc \
++@WOE32DLL_TRUE@ ../woe32dll/c++write-po.cc
++
+
+ # libgettextsrc contains all code that is needed by at least two programs.
+-libgettextsrc_la_SOURCES = $(COMMON_SOURCE) read-catalog.c color.c \
+- write-catalog.c write-properties.c write-stringtable.c \
+- write-po.c msgl-ascii.c msgl-iconv.c msgl-equal.c msgl-cat.c \
+- msgl-header.c msgl-english.c msgl-check.c file-list.c \
+- msgl-charset.c po-time.c plural-exp.c plural-eval.c \
+- plural-table.c quote.h sentence.h sentence.c $(FORMAT_SOURCE) \
+- read-desktop.c locating-rule.c its.c $(am__append_1)
++libgettextsrc_la_SOURCES = $(COMMON_SOURCE) read-catalog.c \
++ $(COLOR_SOURCE) $(OUTPUT_SOURCE) msgl-ascii.c msgl-iconv.c \
++ msgl-equal.c msgl-cat.c msgl-header.c msgl-english.c \
++ msgl-check.c file-list.c msgl-charset.c po-time.c plural-exp.c \
++ plural-eval.c plural-table.c quote.h sentence.h sentence.c \
++ $(FORMAT_SOURCE) read-desktop.c locating-rule.c its.c $(am__append_1)
+
+ # msggrep needs pattern matching.
+ LIBGREP = ../libgrep/libgrep.a
+@@ -2345,6 +2370,15 @@
+ ../woe32dll/$(am__dirstamp):
+ @$(MKDIR_P) ../woe32dll
+ @: > ../woe32dll/$(am__dirstamp)
++../woe32dll/libgettextsrc_la-c++color.lo: ../woe32dll/$(am__dirstamp)
++../woe32dll/libgettextsrc_la-c++write-catalog.lo: \
++ ../woe32dll/$(am__dirstamp)
++../woe32dll/libgettextsrc_la-c++write-properties.lo: \
++ ../woe32dll/$(am__dirstamp)
++../woe32dll/libgettextsrc_la-c++write-stringtable.lo: \
++ ../woe32dll/$(am__dirstamp)
++../woe32dll/libgettextsrc_la-c++write-po.lo: \
++ ../woe32dll/$(am__dirstamp)
+ ../woe32dll/libgettextsrc_la-c++format.lo: \
+ ../woe32dll/$(am__dirstamp)
+ ../woe32dll/libgettextsrc_la-gettextsrc-exports.lo: \
+@@ -3156,6 +3190,21 @@
+ .cc.lo:
+ $(AM_V_CXX)$(LTCXXCOMPILE) -c -o $@ $<
+
++../woe32dll/libgettextsrc_la-c++color.lo: ../woe32dll/c++color.cc
++ $(AM_V_CXX)$(LIBTOOL) $(AM_V_lt) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgettextsrc_la_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o ../woe32dll/libgettextsrc_la-c++color.lo `test -f '../woe32dll/c++color.cc' || echo '$(srcdir)/'`../woe32dll/c++color.cc
++
++../woe32dll/libgettextsrc_la-c++write-catalog.lo: ../woe32dll/c++write-catalog.cc
++ $(AM_V_CXX)$(LIBTOOL) $(AM_V_lt) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgettextsrc_la_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o ../woe32dll/libgettextsrc_la-c++write-catalog.lo `test -f '../woe32dll/c++write-catalog.cc' || echo '$(srcdir)/'`../woe32dll/c++write-catalog.cc
++
++../woe32dll/libgettextsrc_la-c++write-properties.lo: ../woe32dll/c++write-properties.cc
++ $(AM_V_CXX)$(LIBTOOL) $(AM_V_lt) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgettextsrc_la_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o ../woe32dll/libgettextsrc_la-c++write-properties.lo `test -f '../woe32dll/c++write-properties.cc' || echo '$(srcdir)/'`../woe32dll/c++write-properties.cc
++
++../woe32dll/libgettextsrc_la-c++write-stringtable.lo: ../woe32dll/c++write-stringtable.cc
++ $(AM_V_CXX)$(LIBTOOL) $(AM_V_lt) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgettextsrc_la_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o ../woe32dll/libgettextsrc_la-c++write-stringtable.lo `test -f '../woe32dll/c++write-stringtable.cc' || echo '$(srcdir)/'`../woe32dll/c++write-stringtable.cc
++
++../woe32dll/libgettextsrc_la-c++write-po.lo: ../woe32dll/c++write-po.cc
++ $(AM_V_CXX)$(LIBTOOL) $(AM_V_lt) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgettextsrc_la_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o ../woe32dll/libgettextsrc_la-c++write-po.lo `test -f '../woe32dll/c++write-po.cc' || echo '$(srcdir)/'`../woe32dll/c++write-po.cc
++
+ ../woe32dll/libgettextsrc_la-c++format.lo: ../woe32dll/c++format.cc
+ $(AM_V_CXX)$(LIBTOOL) $(AM_V_lt) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgettextsrc_la_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o ../woe32dll/libgettextsrc_la-c++format.lo `test -f '../woe32dll/c++format.cc' || echo '$(srcdir)/'`../woe32dll/c++format.cc
+
+diff -urN a/gettext-tools/src/color.c b/gettext-tools/src/color.c
+--- a/gettext-tools/src/color.c 2015-08-21 08:18:27.000000000 +0100
++++ b/gettext-tools/src/color.c 2015-10-22 00:31:33.326659600 +0100
+@@ -28,6 +28,7 @@
+ #include <sys/types.h>
+ #include <sys/stat.h>
+
++#include "ostream.h"
+ #include "term-ostream.h"
+ #include "xalloc.h"
+ #include "relocatable.h"
+diff -urN a/gettext-tools/woe32dll/c++color.cc b/gettext-tools/woe32dll/c++color.cc
+--- a/gettext-tools/woe32dll/c++color.cc 1970-01-01 01:00:00.000000000 +0100
++++ b/gettext-tools/woe32dll/c++color.cc 2015-10-22 00:31:33.326659600 +0100
+@@ -0,0 +1 @@
++#include "../src/color.c"
+diff -urN a/gettext-tools/woe32dll/c++file-ostream.cc b/gettext-tools/woe32dll/c++file-ostream.cc
+--- a/gettext-tools/woe32dll/c++file-ostream.cc 1970-01-01 01:00:00.000000000 +0100
++++ b/gettext-tools/woe32dll/c++file-ostream.cc 2015-10-22 00:31:33.326659600 +0100
+@@ -0,0 +1,2 @@
++#include "../gnulib-lib/file-ostream.c"
++
+diff -urN a/gettext-tools/woe32dll/c++html-ostream.cc b/gettext-tools/woe32dll/c++html-ostream.cc
+--- a/gettext-tools/woe32dll/c++html-ostream.cc 1970-01-01 01:00:00.000000000 +0100
++++ b/gettext-tools/woe32dll/c++html-ostream.cc 2015-10-22 00:31:33.326659600 +0100
+@@ -0,0 +1 @@
++#include "../gnulib-lib/html-ostream.c"
+diff -urN a/gettext-tools/woe32dll/c++styled-ostream.cc b/gettext-tools/woe32dll/c++styled-ostream.cc
+--- a/gettext-tools/woe32dll/c++styled-ostream.cc 1970-01-01 01:00:00.000000000 +0100
++++ b/gettext-tools/woe32dll/c++styled-ostream.cc 2015-10-22 00:31:33.326659600 +0100
+@@ -0,0 +1 @@
++#include "../gnulib-lib/styled-ostream.c"
+diff -urN a/gettext-tools/woe32dll/c++term-ostream.cc b/gettext-tools/woe32dll/c++term-ostream.cc
+--- a/gettext-tools/woe32dll/c++term-ostream.cc 1970-01-01 01:00:00.000000000 +0100
++++ b/gettext-tools/woe32dll/c++term-ostream.cc 2015-10-22 00:31:33.326659600 +0100
+@@ -0,0 +1 @@
++#include "../gnulib-lib/term-ostream.c"
+diff -urN a/gettext-tools/woe32dll/c++write-catalog.cc b/gettext-tools/woe32dll/c++write-catalog.cc
+--- a/gettext-tools/woe32dll/c++write-catalog.cc 1970-01-01 01:00:00.000000000 +0100
++++ b/gettext-tools/woe32dll/c++write-catalog.cc 2015-10-22 00:31:33.326659600 +0100
+@@ -0,0 +1 @@
++#include "../src/write-catalog.c"
+diff -urN a/gettext-tools/woe32dll/c++write-po.cc b/gettext-tools/woe32dll/c++write-po.cc
+--- a/gettext-tools/woe32dll/c++write-po.cc 1970-01-01 01:00:00.000000000 +0100
++++ b/gettext-tools/woe32dll/c++write-po.cc 2015-10-22 00:31:33.326659600 +0100
+@@ -0,0 +1 @@
++#include "../src/write-po.c"
+diff -urN a/gettext-tools/woe32dll/c++write-properties.cc b/gettext-tools/woe32dll/c++write-properties.cc
+--- a/gettext-tools/woe32dll/c++write-properties.cc 1970-01-01 01:00:00.000000000 +0100
++++ b/gettext-tools/woe32dll/c++write-properties.cc 2015-10-22 00:31:33.326659600 +0100
+@@ -0,0 +1 @@
++#include "../src/write-properties.c"
+diff -urN a/gettext-tools/woe32dll/c++write-stringtable.cc b/gettext-tools/woe32dll/c++write-stringtable.cc
+--- a/gettext-tools/woe32dll/c++write-stringtable.cc 1970-01-01 01:00:00.000000000 +0100
++++ b/gettext-tools/woe32dll/c++write-stringtable.cc 2015-10-22 00:31:33.326659600 +0100
+@@ -0,0 +1 @@
++#include "../src/write-stringtable.c"
+diff -urN a/gnulib-local/modules/file-ostream b/gnulib-local/modules/file-ostream
+--- a/gnulib-local/modules/file-ostream 2015-08-21 06:48:27.000000000 +0100
++++ b/gnulib-local/modules/file-ostream 2015-10-22 00:31:33.326659600 +0100
+@@ -12,7 +12,11 @@
+ configure.ac:
+
+ Makefile.am:
++if !WOE32DLL
+ lib_SOURCES += file-ostream.c
++else
++lib_SOURCES += ../woe32dll/c++file-ostream.cc
++endif
+ # This is a Makefile rule that generates multiple files at once; see the
+ # automake documentation, node "Multiple Outputs", for details.
+ file-ostream.h : $(top_srcdir)/build-aux/moopp file-ostream.oo.h file-ostream.oo.c ostream.oo.h
+diff -urN a/gnulib-local/modules/html-ostream b/gnulib-local/modules/html-ostream
+--- a/gnulib-local/modules/html-ostream 2015-08-21 06:48:27.000000000 +0100
++++ b/gnulib-local/modules/html-ostream 2015-10-22 00:31:33.326659600 +0100
+@@ -15,7 +15,11 @@
+ configure.ac:
+
+ Makefile.am:
++if !WOE32DLL
+ lib_SOURCES += html-ostream.c
++else
++lib_SOURCES += ../woe32dll/c++html-ostream.cc
++endif
+ # This is a Makefile rule that generates multiple files at once; see the
+ # automake documentation, node "Multiple Outputs", for details.
+ html-ostream.h : $(top_srcdir)/build-aux/moopp html-ostream.oo.h html-ostream.oo.c ostream.oo.h
+diff -urN a/gnulib-local/modules/ostream b/gnulib-local/modules/ostream
+--- a/gnulib-local/modules/ostream 2015-08-21 06:48:27.000000000 +0100
++++ b/gnulib-local/modules/ostream 2015-10-22 00:31:33.342259600 +0100
+@@ -11,7 +11,11 @@
+ configure.ac:
+
+ Makefile.am:
++if !WOE32DLL
+ lib_SOURCES += ostream.c
++else
++lib_SOURCES += ../woe32dll/c++ostream.cc
++endif
+ # This is a Makefile rule that generates multiple files at once; see the
+ # automake documentation, node "Multiple Outputs", for details.
+ ostream.h : $(top_srcdir)/build-aux/moopp ostream.oo.h ostream.oo.c
+diff -urN a/gnulib-local/modules/styled-ostream b/gnulib-local/modules/styled-ostream
+--- a/gnulib-local/modules/styled-ostream 2015-08-21 06:48:27.000000000 +0100
++++ b/gnulib-local/modules/styled-ostream 2015-10-22 00:31:33.342259600 +0100
+@@ -11,7 +11,11 @@
+ configure.ac:
+
+ Makefile.am:
++if !WOE32DLL
+ lib_SOURCES += styled-ostream.c
++else
++lib_SOURCES += ../woe32dll/c++styled-ostream.cc
++endif
+ # This is a Makefile rule that generates multiple files at once; see the
+ # automake documentation, node "Multiple Outputs", for details.
+ styled-ostream.h : $(top_srcdir)/build-aux/moopp styled-ostream.oo.h styled-ostream.oo.c ostream.oo.h
+diff -urN a/gnulib-local/modules/term-ostream b/gnulib-local/modules/term-ostream
+--- a/gnulib-local/modules/term-ostream 2015-08-21 06:48:27.000000000 +0100
++++ b/gnulib-local/modules/term-ostream 2015-10-22 00:31:33.342259600 +0100
+@@ -22,7 +22,11 @@
+ gl_TERM_OSTREAM
+
+ Makefile.am:
++if !WOE32DLL
+ lib_SOURCES += term-ostream.c
++else
++lib_SOURCES += ../woe32dll/c++term-ostream.cc
++endif
+ # This is a Makefile rule that generates multiple files at once; see the
+ # automake documentation, node "Multiple Outputs", for details.
+ term-ostream.h : $(top_srcdir)/build-aux/moopp term-ostream.oo.h term-ostream.oo.c ostream.oo.h
diff --git a/packages/gettext/0.19.7/130-Fix-static-Cygwin-x86_64-build-environ-is-always-dllimport.patch b/packages/gettext/0.19.7/130-Fix-static-Cygwin-x86_64-build-environ-is-always-dllimport.patch
new file mode 100644
index 0000000..3487302
--- /dev/null
+++ b/packages/gettext/0.19.7/130-Fix-static-Cygwin-x86_64-build-environ-is-always-dllimport.patch
@@ -0,0 +1,72 @@
+diff -urN gettext-0.19.6.orig/gettext-tools/gnulib-lib/execute.c gettext-0.19.6/gettext-tools/gnulib-lib/execute.c
+--- gettext-0.19.6.orig/gettext-tools/gnulib-lib/execute.c 2015-10-24 16:54:39.310372500 +0100
++++ gettext-0.19.6/gettext-tools/gnulib-lib/execute.c 2015-10-24 16:55:35.261954100 +0100
+@@ -52,7 +52,7 @@
+ __cygwin_environ variable on cygwin64:
+ <https://cygwin.com/ml/cygwin/2013-06/msg00228.html>. */
+ #if defined __CYGWIN__ && defined __x86_64__
+-extern DLL_VARIABLE char **environ;
++extern __attribute__((dllimport)) char **environ;
+ #endif
+
+
+diff -urN gettext-0.19.6.orig/gettext-tools/gnulib-lib/spawn-pipe.c gettext-0.19.6/gettext-tools/gnulib-lib/spawn-pipe.c
+--- gettext-0.19.6.orig/gettext-tools/gnulib-lib/spawn-pipe.c 2015-09-11 04:03:56.000000000 +0100
++++ gettext-0.19.6/gettext-tools/gnulib-lib/spawn-pipe.c 2015-10-24 16:56:00.885918100 +0100
+@@ -52,7 +52,7 @@
+ __cygwin_environ variable on cygwin64:
+ <https://cygwin.com/ml/cygwin/2013-06/msg00228.html>. */
+ #if defined __CYGWIN__ && defined __x86_64__
+-extern DLL_VARIABLE char **environ;
++extern __attribute__((dllimport)) char **environ;
+ #endif
+
+
+diff -urN gettext-0.19.6.orig/gettext-tools/gnulib-tests/test-environ.c gettext-0.19.6/gettext-tools/gnulib-tests/test-environ.c
+--- gettext-0.19.6.orig/gettext-tools/gnulib-tests/test-environ.c 2015-09-11 04:03:58.000000000 +0100
++++ gettext-0.19.6/gettext-tools/gnulib-tests/test-environ.c 2015-10-24 16:56:51.519198900 +0100
+@@ -26,7 +26,7 @@
+ __cygwin_environ variable on cygwin64:
+ <https://cygwin.com/ml/cygwin/2013-06/msg00228.html>. */
+ #if defined __CYGWIN__ && defined __x86_64__
+-extern DLL_VARIABLE char **environ;
++extern __attribute__((dllimport)) char **environ;
+ #endif
+
+ int
+diff -urN gettext-0.19.6.orig/gnulib-local/lib/execute.c.diff gettext-0.19.6/gnulib-local/lib/execute.c.diff
+--- gettext-0.19.6.orig/gnulib-local/lib/execute.c.diff 2015-08-21 08:18:28.000000000 +0100
++++ gettext-0.19.6/gnulib-local/lib/execute.c.diff 2015-10-24 16:58:17.182285000 +0100
+@@ -10,7 +10,7 @@
+ + __cygwin_environ variable on cygwin64:
+ + <https://cygwin.com/ml/cygwin/2013-06/msg00228.html>. */
+ +#if defined __CYGWIN__ && defined __x86_64__
+-+extern DLL_VARIABLE char **environ;
+++extern __attribute__((dllimport)) char **environ;
+ +#endif
+ +
+
+diff -urN gettext-0.19.6.orig/gnulib-local/lib/spawn-pipe.c.diff gettext-0.19.6/gnulib-local/lib/spawn-pipe.c.diff
+--- gettext-0.19.6.orig/gnulib-local/lib/spawn-pipe.c.diff 2015-08-21 08:18:28.000000000 +0100
++++ gettext-0.19.6/gnulib-local/lib/spawn-pipe.c.diff 2015-10-24 16:58:11.741447300 +0100
+@@ -10,7 +10,7 @@
+ + __cygwin_environ variable on cygwin64:
+ + <https://cygwin.com/ml/cygwin/2013-06/msg00228.html>. */
+ +#if defined __CYGWIN__ && defined __x86_64__
+-+extern DLL_VARIABLE char **environ;
+++extern __attribute__((dllimport)) char **environ;
+ +#endif
+ +
+
+diff -urN gettext-0.19.6.orig/gnulib-local/tests/test-environ.c.diff gettext-0.19.6/gnulib-local/tests/test-environ.c.diff
+--- gettext-0.19.6.orig/gnulib-local/tests/test-environ.c.diff 2015-08-21 08:18:28.000000000 +0100
++++ gettext-0.19.6/gnulib-local/tests/test-environ.c.diff 2015-10-24 16:58:35.915765100 +0100
+@@ -10,7 +10,7 @@
+ + __cygwin_environ variable on cygwin64:
+ + <https://cygwin.com/ml/cygwin/2013-06/msg00228.html>. */
+ +#if defined __CYGWIN__ && defined __x86_64__
+-+extern DLL_VARIABLE char **environ;
+++extern __attribute__((dllimport)) char **environ;
+ +#endif
+ +
+ int
diff --git a/packages/gettext/0.19.7/140-Fix-Cygwin-sys-select.patch b/packages/gettext/0.19.7/140-Fix-Cygwin-sys-select.patch
new file mode 100644
index 0000000..7f980ac
--- /dev/null
+++ b/packages/gettext/0.19.7/140-Fix-Cygwin-sys-select.patch
@@ -0,0 +1,44 @@
+>From cfbc1c62a1ea5c5809d11b957ad29cd820db15b8 Mon Sep 17 00:00:00 2001
+From: Paul Eggert <address@hidden>
+Date: Mon, 21 Mar 2016 00:49:17 -0700
+Subject: [PATCH] sys_select: port to new Cygwin
+
+Problem reported by Ken Brown in:
+https://lists.gnu.org/archive/html/bug-gnulib/2016-03/msg00054.html
+* lib/sys_select.in.h [__CYGWIN__]: Avoid "unknown type name"
+diagnostics.
+---
+ ChangeLog | 8 ++++++++
+ lib/sys_select.in.h | 10 ++++++----
+ 2 files changed, 14 insertions(+), 4 deletions(-)
+
+diff --git a/gettext-tools/gnulib-lib/sys_select.in.h b/gettext-tools/gnulib-lib/sys_select.in.h
+index d6d3f9f..7281144 100644
+--- a/gettext-tools/gnulib-lib/sys_select.in.h
++++ b/gettext-tools/gnulib-lib/sys_select.in.h
+@@ -81,8 +81,9 @@
+ of 'struct timeval', and no definition of this type.
+ Also, Mac OS X, AIX, HP-UX, IRIX, Solaris, Interix declare select()
+ in <sys/time.h>.
+- But avoid namespace pollution on glibc systems. */
+-# ifndef __GLIBC__
++ But avoid namespace pollution on glibc systems and "unknown type
++ name" problems on Cygwin. */
++# if !(defined __GLIBC__ || defined __CYGWIN__)
+ # include <sys/time.h>
+ # endif
+
+@@ -100,10 +101,11 @@
+ #endif
+
+ /* Get definition of 'sigset_t'.
+- But avoid namespace pollution on glibc systems.
++ But avoid namespace pollution on glibc systems and "unknown type
++ name" problems on Cygwin.
+ Do this after the include_next (for the sake of OpenBSD 5.0) but before
+ the split double-inclusion guard (for the sake of Solaris). */
+-#if !(defined __GLIBC__ && !defined __UCLIBC__)
++#if !((defined __GLIBC__ || defined __CYGWIN__) && !defined __UCLIBC__)
+ # include <signal.h>
+ #endif
+
diff --git a/packages/gettext/0.19.7/150-Fix-Cygwin-sys-select-2.patch b/packages/gettext/0.19.7/150-Fix-Cygwin-sys-select-2.patch
new file mode 100644
index 0000000..caaf0a0
--- /dev/null
+++ b/packages/gettext/0.19.7/150-Fix-Cygwin-sys-select-2.patch
@@ -0,0 +1,26 @@
+--- a/gettext-tools/gnulib-lib/sys_select.in.h
++++ b/gettext-tools/gnulib-lib/sys_select.in.h
+@@ -82,8 +82,8 @@
+ Also, Mac OS X, AIX, HP-UX, IRIX, Solaris, Interix declare select()
+ in <sys/time.h>.
+ But avoid namespace pollution on glibc systems and "unknown type
+- name" problems on Cygwin. */
+-# if !(defined __GLIBC__ || defined __CYGWIN__)
++ name" problems on newlib systems. */
++# if !(defined __GLIBC__ || defined __NEWLIB__)
+ # include <sys/time.h>
+ # endif
+
+@@ -102,10 +102,10 @@
+
+ /* Get definition of 'sigset_t'.
+ But avoid namespace pollution on glibc systems and "unknown type
+- name" problems on Cygwin.
++ name" problems on newlib systems..
+ Do this after the include_next (for the sake of OpenBSD 5.0) but before
+ the split double-inclusion guard (for the sake of Solaris). */
+-#if !((defined __GLIBC__ || defined __CYGWIN__) && !defined __UCLIBC__)
++#if !((defined __GLIBC__ || defined __NEWLIB__) && !defined __UCLIBC__)
+ # include <signal.h>
+ #endif
+
diff --git a/packages/gettext/0.19.7/version.desc b/packages/gettext/0.19.7/version.desc
new file mode 100644
index 0000000..026d275
--- /dev/null
+++ b/packages/gettext/0.19.7/version.desc
@@ -0,0 +1 @@
+obsolete="yes"
diff --git a/packages/gettext/0.19.8.1/110-Fix-linker-error-redefinition-of-vasprintf.patch b/packages/gettext/0.19.8.1/110-Fix-linker-error-redefinition-of-vasprintf.patch
new file mode 100644
index 0000000..dacdfb1
--- /dev/null
+++ b/packages/gettext/0.19.8.1/110-Fix-linker-error-redefinition-of-vasprintf.patch
@@ -0,0 +1,31 @@
+From a76649dae62768d0af7017b3fc0ca5f891588c78 Mon Sep 17 00:00:00 2001
+From: Andoni Morales Alastruey <ylatuya@gmail.com>
+Date: Wed, 29 Feb 2012 10:44:43 +0100
+Subject: [PATCH] Fix linker error: redefinition of vasprintf
+
+This might not be the best patch, but it works for us
+The link error was:
+.libs/autosprintf.o:autosprintf.cc:(.text$vasprintf[_vasprintf]+0x0): multiple definition of `_vasprintf'
+.libs/lib-asprintf.o:lib-asprintf.c:(.text+0x4621): first defined here
+---
+ gettext-runtime/libasprintf/autosprintf.cc | 2 ++
+ 1 file changed, 2 insertions(+)
+
+diff --git a/gettext-runtime/libasprintf/autosprintf.cc b/gettext-runtime/libasprintf/autosprintf.cc
+index ca318f7..2526210 100644
+--- a/gettext-runtime/libasprintf/autosprintf.cc
++++ b/gettext-runtime/libasprintf/autosprintf.cc
+@@ -19,8 +19,10 @@
+ This must come before <config.h> because <config.h> may include
+ <features.h>, and once <features.h> has been included, it's too late. */
+ #ifndef _GNU_SOURCE
++#ifndef _WIN32
+ # define _GNU_SOURCE 1
+ #endif
++#endif
+
+ /* Specification. */
+ #include "autosprintf.h"
+--
+1.8.4
+
diff --git a/packages/gettext/0.19.8.1/120-Fix-Woe32-link-errors-when-compiling-with-O0.patch b/packages/gettext/0.19.8.1/120-Fix-Woe32-link-errors-when-compiling-with-O0.patch
new file mode 100644
index 0000000..8c6b94f
--- /dev/null
+++ b/packages/gettext/0.19.8.1/120-Fix-Woe32-link-errors-when-compiling-with-O0.patch
@@ -0,0 +1,199 @@
+From d4ecf6f15ad7a428786df2efdc88b03be0a4fdbb Mon Sep 17 00:00:00 2001
+From: Daiki Ueno <ueno@gnu.org>
+Date: Thu, 17 Jan 2013 18:33:40 +0900
+Subject: [PATCH] Fix Woe32 link errors when compiling with -O0.
+
+---
+ gettext-tools/src/Makefile.am | 24 ++++++++++++++++++++++--
+ gettext-tools/src/color.c | 1 +
+ gettext-tools/woe32dll/c++color.cc | 1 +
+ gettext-tools/woe32dll/c++file-ostream.cc | 2 ++
+ gettext-tools/woe32dll/c++html-ostream.cc | 1 +
+ gettext-tools/woe32dll/c++styled-ostream.cc | 1 +
+ gettext-tools/woe32dll/c++term-ostream.cc | 1 +
+ gettext-tools/woe32dll/c++write-catalog.cc | 1 +
+ gettext-tools/woe32dll/c++write-po.cc | 1 +
+ gettext-tools/woe32dll/c++write-properties.cc | 1 +
+ gettext-tools/woe32dll/c++write-stringtable.cc | 1 +
+ gnulib-local/modules/file-ostream | 4 ++++
+ gnulib-local/modules/html-ostream | 4 ++++
+ gnulib-local/modules/ostream | 4 ++++
+ gnulib-local/modules/styled-ostream | 4 ++++
+ gnulib-local/modules/term-ostream | 4 ++++
+ 16 files changed, 53 insertions(+), 2 deletions(-)
+ create mode 100644 gettext-tools/woe32dll/c++color.cc
+ create mode 100644 gettext-tools/woe32dll/c++file-ostream.cc
+ create mode 100644 gettext-tools/woe32dll/c++html-ostream.cc
+ create mode 100644 gettext-tools/woe32dll/c++styled-ostream.cc
+ create mode 100644 gettext-tools/woe32dll/c++term-ostream.cc
+ create mode 100644 gettext-tools/woe32dll/c++write-catalog.cc
+ create mode 100644 gettext-tools/woe32dll/c++write-po.cc
+ create mode 100644 gettext-tools/woe32dll/c++write-properties.cc
+ create mode 100644 gettext-tools/woe32dll/c++write-stringtable.cc
+
+Additional fix (COLOR_SOURCE) by Ray Donnelly <mingw.android@gmail.com>
+Regenerated for 0.19.8.1 by Alexey Neyman <stilor@att.net>
+
+diff -urpN gettext-0.19.8.1.orig/gettext-tools/src/color.c gettext-0.19.8.1/gettext-tools/src/color.c
+--- gettext-0.19.8.1.orig/gettext-tools/src/color.c 2017-01-23 15:13:25.448209511 -0800
++++ gettext-0.19.8.1/gettext-tools/src/color.c 2017-01-23 15:13:53.168490941 -0800
+@@ -28,6 +28,7 @@
+ #include <sys/types.h>
+ #include <sys/stat.h>
+
++#include "ostream.h"
+ #include "term-ostream.h"
+ #include "xalloc.h"
+ #include "relocatable.h"
+diff -urpN gettext-0.19.8.1.orig/gettext-tools/src/Makefile.am gettext-0.19.8.1/gettext-tools/src/Makefile.am
+--- gettext-0.19.8.1.orig/gettext-tools/src/Makefile.am 2017-01-23 15:13:25.452209551 -0800
++++ gettext-0.19.8.1/gettext-tools/src/Makefile.am 2017-01-23 15:13:53.168490941 -0800
+@@ -145,10 +145,26 @@ FORMAT_SOURCE += \
+ format-lua.c \
+ format-javascript.c
+
++if !WOE32DLL
++COLOR_SOURCE = color.c
++OUTPUT_SOURCE = \
++ write-catalog.c \
++ write-properties.c \
++ write-stringtable.c \
++ write-po.c
++else
++COLOR_SOURCE = ../woe32dll/c++color.cc
++OUTPUT_SOURCE = \
++ ../woe32dll/c++write-catalog.cc \
++ ../woe32dll/c++write-properties.cc \
++ ../woe32dll/c++write-stringtable.cc \
++ ../woe32dll/c++write-po.cc
++endif
++
+ # libgettextsrc contains all code that is needed by at least two programs.
+ libgettextsrc_la_SOURCES = \
+ $(COMMON_SOURCE) read-catalog.c \
+-color.c write-catalog.c write-properties.c write-stringtable.c write-po.c \
++$(COLOR_SOURCE) $(OUTPUT_SOURCE) \
+ msgl-ascii.c msgl-iconv.c msgl-equal.c msgl-cat.c msgl-header.c msgl-english.c \
+ msgl-check.c file-list.c msgl-charset.c po-time.c plural-exp.c plural-eval.c \
+ plural-table.c quote.h sentence.h sentence.c \
+diff -urpN gettext-0.19.8.1.orig/gettext-tools/woe32dll/c++color.cc gettext-0.19.8.1/gettext-tools/woe32dll/c++color.cc
+--- gettext-0.19.8.1.orig/gettext-tools/woe32dll/c++color.cc 1969-12-31 16:00:00.000000000 -0800
++++ gettext-0.19.8.1/gettext-tools/woe32dll/c++color.cc 2017-01-23 15:13:53.168490941 -0800
+@@ -0,0 +1 @@
++#include "../src/color.c"
+diff -urpN gettext-0.19.8.1.orig/gettext-tools/woe32dll/c++file-ostream.cc gettext-0.19.8.1/gettext-tools/woe32dll/c++file-ostream.cc
+--- gettext-0.19.8.1.orig/gettext-tools/woe32dll/c++file-ostream.cc 1969-12-31 16:00:00.000000000 -0800
++++ gettext-0.19.8.1/gettext-tools/woe32dll/c++file-ostream.cc 2017-01-23 15:13:53.168490941 -0800
+@@ -0,0 +1,2 @@
++#include "../gnulib-lib/file-ostream.c"
++
+diff -urpN gettext-0.19.8.1.orig/gettext-tools/woe32dll/c++html-ostream.cc gettext-0.19.8.1/gettext-tools/woe32dll/c++html-ostream.cc
+--- gettext-0.19.8.1.orig/gettext-tools/woe32dll/c++html-ostream.cc 1969-12-31 16:00:00.000000000 -0800
++++ gettext-0.19.8.1/gettext-tools/woe32dll/c++html-ostream.cc 2017-01-23 15:13:53.168490941 -0800
+@@ -0,0 +1 @@
++#include "../gnulib-lib/html-ostream.c"
+diff -urpN gettext-0.19.8.1.orig/gettext-tools/woe32dll/c++styled-ostream.cc gettext-0.19.8.1/gettext-tools/woe32dll/c++styled-ostream.cc
+--- gettext-0.19.8.1.orig/gettext-tools/woe32dll/c++styled-ostream.cc 1969-12-31 16:00:00.000000000 -0800
++++ gettext-0.19.8.1/gettext-tools/woe32dll/c++styled-ostream.cc 2017-01-23 15:13:53.168490941 -0800
+@@ -0,0 +1 @@
++#include "../gnulib-lib/styled-ostream.c"
+diff -urpN gettext-0.19.8.1.orig/gettext-tools/woe32dll/c++term-ostream.cc gettext-0.19.8.1/gettext-tools/woe32dll/c++term-ostream.cc
+--- gettext-0.19.8.1.orig/gettext-tools/woe32dll/c++term-ostream.cc 1969-12-31 16:00:00.000000000 -0800
++++ gettext-0.19.8.1/gettext-tools/woe32dll/c++term-ostream.cc 2017-01-23 15:13:53.168490941 -0800
+@@ -0,0 +1 @@
++#include "../gnulib-lib/term-ostream.c"
+diff -urpN gettext-0.19.8.1.orig/gettext-tools/woe32dll/c++write-catalog.cc gettext-0.19.8.1/gettext-tools/woe32dll/c++write-catalog.cc
+--- gettext-0.19.8.1.orig/gettext-tools/woe32dll/c++write-catalog.cc 1969-12-31 16:00:00.000000000 -0800
++++ gettext-0.19.8.1/gettext-tools/woe32dll/c++write-catalog.cc 2017-01-23 15:13:53.168490941 -0800
+@@ -0,0 +1 @@
++#include "../src/write-catalog.c"
+diff -urpN gettext-0.19.8.1.orig/gettext-tools/woe32dll/c++write-po.cc gettext-0.19.8.1/gettext-tools/woe32dll/c++write-po.cc
+--- gettext-0.19.8.1.orig/gettext-tools/woe32dll/c++write-po.cc 1969-12-31 16:00:00.000000000 -0800
++++ gettext-0.19.8.1/gettext-tools/woe32dll/c++write-po.cc 2017-01-23 15:13:53.168490941 -0800
+@@ -0,0 +1 @@
++#include "../src/write-po.c"
+diff -urpN gettext-0.19.8.1.orig/gettext-tools/woe32dll/c++write-properties.cc gettext-0.19.8.1/gettext-tools/woe32dll/c++write-properties.cc
+--- gettext-0.19.8.1.orig/gettext-tools/woe32dll/c++write-properties.cc 1969-12-31 16:00:00.000000000 -0800
++++ gettext-0.19.8.1/gettext-tools/woe32dll/c++write-properties.cc 2017-01-23 15:13:53.168490941 -0800
+@@ -0,0 +1 @@
++#include "../src/write-properties.c"
+diff -urpN gettext-0.19.8.1.orig/gettext-tools/woe32dll/c++write-stringtable.cc gettext-0.19.8.1/gettext-tools/woe32dll/c++write-stringtable.cc
+--- gettext-0.19.8.1.orig/gettext-tools/woe32dll/c++write-stringtable.cc 1969-12-31 16:00:00.000000000 -0800
++++ gettext-0.19.8.1/gettext-tools/woe32dll/c++write-stringtable.cc 2017-01-23 15:13:53.168490941 -0800
+@@ -0,0 +1 @@
++#include "../src/write-stringtable.c"
+diff -urpN gettext-0.19.8.1.orig/gnulib-local/modules/file-ostream gettext-0.19.8.1/gnulib-local/modules/file-ostream
+--- gettext-0.19.8.1.orig/gnulib-local/modules/file-ostream 2017-01-23 15:13:25.060205571 -0800
++++ gettext-0.19.8.1/gnulib-local/modules/file-ostream 2017-01-23 15:13:53.168490941 -0800
+@@ -12,7 +12,11 @@ xalloc
+ configure.ac:
+
+ Makefile.am:
++if !WOE32DLL
+ lib_SOURCES += file-ostream.c
++else
++lib_SOURCES += ../woe32dll/c++file-ostream.cc
++endif
+ # This is a Makefile rule that generates multiple files at once; see the
+ # automake documentation, node "Multiple Outputs", for details.
+ file-ostream.h : $(top_srcdir)/build-aux/moopp file-ostream.oo.h file-ostream.oo.c ostream.oo.h
+diff -urpN gettext-0.19.8.1.orig/gnulib-local/modules/html-ostream gettext-0.19.8.1/gnulib-local/modules/html-ostream
+--- gettext-0.19.8.1.orig/gnulib-local/modules/html-ostream 2017-01-23 15:13:25.060205571 -0800
++++ gettext-0.19.8.1/gnulib-local/modules/html-ostream 2017-01-23 15:13:53.168490941 -0800
+@@ -15,7 +15,11 @@ xalloc
+ configure.ac:
+
+ Makefile.am:
++if !WOE32DLL
+ lib_SOURCES += html-ostream.c
++else
++lib_SOURCES += ../woe32dll/c++html-ostream.cc
++endif
+ # This is a Makefile rule that generates multiple files at once; see the
+ # automake documentation, node "Multiple Outputs", for details.
+ html-ostream.h : $(top_srcdir)/build-aux/moopp html-ostream.oo.h html-ostream.oo.c ostream.oo.h
+diff -urpN gettext-0.19.8.1.orig/gnulib-local/modules/ostream gettext-0.19.8.1/gnulib-local/modules/ostream
+--- gettext-0.19.8.1.orig/gnulib-local/modules/ostream 2017-01-23 15:13:25.060205571 -0800
++++ gettext-0.19.8.1/gnulib-local/modules/ostream 2017-01-23 15:13:53.168490941 -0800
+@@ -11,7 +11,11 @@ moo
+ configure.ac:
+
+ Makefile.am:
++if !WOE32DLL
+ lib_SOURCES += ostream.c
++else
++lib_SOURCES += ../woe32dll/c++ostream.cc
++endif
+ # This is a Makefile rule that generates multiple files at once; see the
+ # automake documentation, node "Multiple Outputs", for details.
+ ostream.h : $(top_srcdir)/build-aux/moopp ostream.oo.h ostream.oo.c
+diff -urpN gettext-0.19.8.1.orig/gnulib-local/modules/styled-ostream gettext-0.19.8.1/gnulib-local/modules/styled-ostream
+--- gettext-0.19.8.1.orig/gnulib-local/modules/styled-ostream 2017-01-23 15:13:25.060205571 -0800
++++ gettext-0.19.8.1/gnulib-local/modules/styled-ostream 2017-01-23 15:13:53.168490941 -0800
+@@ -11,7 +11,11 @@ ostream
+ configure.ac:
+
+ Makefile.am:
++if !WOE32DLL
+ lib_SOURCES += styled-ostream.c
++else
++lib_SOURCES += ../woe32dll/c++styled-ostream.cc
++endif
+ # This is a Makefile rule that generates multiple files at once; see the
+ # automake documentation, node "Multiple Outputs", for details.
+ styled-ostream.h : $(top_srcdir)/build-aux/moopp styled-ostream.oo.h styled-ostream.oo.c ostream.oo.h
+diff -urpN gettext-0.19.8.1.orig/gnulib-local/modules/term-ostream gettext-0.19.8.1/gnulib-local/modules/term-ostream
+--- gettext-0.19.8.1.orig/gnulib-local/modules/term-ostream 2017-01-23 15:13:25.060205571 -0800
++++ gettext-0.19.8.1/gnulib-local/modules/term-ostream 2017-01-23 15:13:53.172490983 -0800
+@@ -22,7 +22,11 @@ configure.ac:
+ gl_TERM_OSTREAM
+
+ Makefile.am:
++if !WOE32DLL
+ lib_SOURCES += term-ostream.c
++else
++lib_SOURCES += ../woe32dll/c++term-ostream.cc
++endif
+ # This is a Makefile rule that generates multiple files at once; see the
+ # automake documentation, node "Multiple Outputs", for details.
+ term-ostream.h : $(top_srcdir)/build-aux/moopp term-ostream.oo.h term-ostream.oo.c ostream.oo.h
diff --git a/packages/gettext/0.19.8.1/130-Fix-static-Cygwin-x86_64-build-environ-is-always-dllimport.patch b/packages/gettext/0.19.8.1/130-Fix-static-Cygwin-x86_64-build-environ-is-always-dllimport.patch
new file mode 100644
index 0000000..3487302
--- /dev/null
+++ b/packages/gettext/0.19.8.1/130-Fix-static-Cygwin-x86_64-build-environ-is-always-dllimport.patch
@@ -0,0 +1,72 @@
+diff -urN gettext-0.19.6.orig/gettext-tools/gnulib-lib/execute.c gettext-0.19.6/gettext-tools/gnulib-lib/execute.c
+--- gettext-0.19.6.orig/gettext-tools/gnulib-lib/execute.c 2015-10-24 16:54:39.310372500 +0100
++++ gettext-0.19.6/gettext-tools/gnulib-lib/execute.c 2015-10-24 16:55:35.261954100 +0100
+@@ -52,7 +52,7 @@
+ __cygwin_environ variable on cygwin64:
+ <https://cygwin.com/ml/cygwin/2013-06/msg00228.html>. */
+ #if defined __CYGWIN__ && defined __x86_64__
+-extern DLL_VARIABLE char **environ;
++extern __attribute__((dllimport)) char **environ;
+ #endif
+
+
+diff -urN gettext-0.19.6.orig/gettext-tools/gnulib-lib/spawn-pipe.c gettext-0.19.6/gettext-tools/gnulib-lib/spawn-pipe.c
+--- gettext-0.19.6.orig/gettext-tools/gnulib-lib/spawn-pipe.c 2015-09-11 04:03:56.000000000 +0100
++++ gettext-0.19.6/gettext-tools/gnulib-lib/spawn-pipe.c 2015-10-24 16:56:00.885918100 +0100
+@@ -52,7 +52,7 @@
+ __cygwin_environ variable on cygwin64:
+ <https://cygwin.com/ml/cygwin/2013-06/msg00228.html>. */
+ #if defined __CYGWIN__ && defined __x86_64__
+-extern DLL_VARIABLE char **environ;
++extern __attribute__((dllimport)) char **environ;
+ #endif
+
+
+diff -urN gettext-0.19.6.orig/gettext-tools/gnulib-tests/test-environ.c gettext-0.19.6/gettext-tools/gnulib-tests/test-environ.c
+--- gettext-0.19.6.orig/gettext-tools/gnulib-tests/test-environ.c 2015-09-11 04:03:58.000000000 +0100
++++ gettext-0.19.6/gettext-tools/gnulib-tests/test-environ.c 2015-10-24 16:56:51.519198900 +0100
+@@ -26,7 +26,7 @@
+ __cygwin_environ variable on cygwin64:
+ <https://cygwin.com/ml/cygwin/2013-06/msg00228.html>. */
+ #if defined __CYGWIN__ && defined __x86_64__
+-extern DLL_VARIABLE char **environ;
++extern __attribute__((dllimport)) char **environ;
+ #endif
+
+ int
+diff -urN gettext-0.19.6.orig/gnulib-local/lib/execute.c.diff gettext-0.19.6/gnulib-local/lib/execute.c.diff
+--- gettext-0.19.6.orig/gnulib-local/lib/execute.c.diff 2015-08-21 08:18:28.000000000 +0100
++++ gettext-0.19.6/gnulib-local/lib/execute.c.diff 2015-10-24 16:58:17.182285000 +0100
+@@ -10,7 +10,7 @@
+ + __cygwin_environ variable on cygwin64:
+ + <https://cygwin.com/ml/cygwin/2013-06/msg00228.html>. */
+ +#if defined __CYGWIN__ && defined __x86_64__
+-+extern DLL_VARIABLE char **environ;
+++extern __attribute__((dllimport)) char **environ;
+ +#endif
+ +
+
+diff -urN gettext-0.19.6.orig/gnulib-local/lib/spawn-pipe.c.diff gettext-0.19.6/gnulib-local/lib/spawn-pipe.c.diff
+--- gettext-0.19.6.orig/gnulib-local/lib/spawn-pipe.c.diff 2015-08-21 08:18:28.000000000 +0100
++++ gettext-0.19.6/gnulib-local/lib/spawn-pipe.c.diff 2015-10-24 16:58:11.741447300 +0100
+@@ -10,7 +10,7 @@
+ + __cygwin_environ variable on cygwin64:
+ + <https://cygwin.com/ml/cygwin/2013-06/msg00228.html>. */
+ +#if defined __CYGWIN__ && defined __x86_64__
+-+extern DLL_VARIABLE char **environ;
+++extern __attribute__((dllimport)) char **environ;
+ +#endif
+ +
+
+diff -urN gettext-0.19.6.orig/gnulib-local/tests/test-environ.c.diff gettext-0.19.6/gnulib-local/tests/test-environ.c.diff
+--- gettext-0.19.6.orig/gnulib-local/tests/test-environ.c.diff 2015-08-21 08:18:28.000000000 +0100
++++ gettext-0.19.6/gnulib-local/tests/test-environ.c.diff 2015-10-24 16:58:35.915765100 +0100
+@@ -10,7 +10,7 @@
+ + __cygwin_environ variable on cygwin64:
+ + <https://cygwin.com/ml/cygwin/2013-06/msg00228.html>. */
+ +#if defined __CYGWIN__ && defined __x86_64__
+-+extern DLL_VARIABLE char **environ;
+++extern __attribute__((dllimport)) char **environ;
+ +#endif
+ +
+ int
diff --git a/packages/gettext/0.19.8.1/version.desc b/packages/gettext/0.19.8.1/version.desc
new file mode 100644
index 0000000..e69de29
--- /dev/null
+++ b/packages/gettext/0.19.8.1/version.desc
diff --git a/packages/gettext/package.desc b/packages/gettext/package.desc
new file mode 100644
index 0000000..6554419
--- /dev/null
+++ b/packages/gettext/package.desc
@@ -0,0 +1 @@
+repository="git https://git.savannah.gnu.org/git/gettext.git"