From patchwork Mon Jan 5 10:57:21 2015 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: kim.hansen@prevas.dk X-Patchwork-Id: 425963 Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@bilbo.ozlabs.org Received: from hugin.dotsrc.org (hugin.dotsrc.org [IPv6:2001:878:346::102]) by ozlabs.org (Postfix) with ESMTP id C2B931400A0 for ; Wed, 7 Jan 2015 19:50:47 +1100 (AEDT) Received: from hugin.dotsrc.org (localhost [127.0.0.1]) by hugin.dotsrc.org (Postfix) with ESMTP id 2A2273FC90 for ; Wed, 7 Jan 2015 09:50:44 +0100 (CET) X-Original-To: dev@oe-lite.org Delivered-To: dev@oe-lite.org Received: from mail02.prevas.se (mail02.prevas.se [62.95.78.10]) by hugin.dotsrc.org (Postfix) with ESMTPS id 8DD013FB3C for ; Mon, 5 Jan 2015 11:57:22 +0100 (CET) DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=prevas.dk; i=@prevas.dk; l=77900; q=dns/txt; s=ironport2; t=1420455442; x=1451991442; h=from:to:subject:date:message-id:references:in-reply-to: content-transfer-encoding:mime-version; bh=yQ6j0KPExMx0L8Obu4DxkPqyQEr4YjIomzpyvbkOzvE=; b=Gknif1JFbNOgjPgYhoi4uAVNXfwh7vDh5CdBUXyr61IK6+1R/tk9e1Hv KWpLyBwyWvoAGMDhpIBy+en0EWypbjiVaY9f/HjIvs+SXzHoiRPElwCfY zmNSueF9Iwy5rPbHJij7GtFUTPdxgUE/UaeedI2puxJ/XhpnNaZdT+Nc/ 4=; X-IronPort-AV: E=Sophos;i="5.07,698,1413237600"; d="scan'208";a="1434104" Received: from vmprevas4.prevas.se (HELO smtp.prevas.se) ([172.16.8.104]) by ironport2.prevas.se with ESMTP/TLS/AES128-SHA; 05 Jan 2015 11:57:22 +0100 Received: from VMPREVAS2.prevas.se ([fe80::ddc4:1ca4:65e1:d098]) by VMPREVAS4.prevas.se ([172.16.8.104]) with mapi id 14.02.0387.000; Mon, 5 Jan 2015 11:57:22 +0100 From: =?iso-8859-1?Q?Kim_H=F8jgaard-Hansen?= To: Yann Diorcet , "dev@oe-lite.org" Subject: SV: [PATCH 02/18] Upgrade gettext 0.18.1.1 to 0.18.3.2 with darwin support Thread-Topic: [PATCH 02/18] Upgrade gettext 0.18.1.1 to 0.18.3.2 with darwin support Thread-Index: AQHPsk4liKHbB7vRsUer5i2I40pppZyyR5YC Date: Mon, 5 Jan 2015 10:57:21 +0000 Message-ID: References: <1407352684-7837-1-git-send-email-diorcet.yann@gmail.com>, <1407352684-7837-2-git-send-email-diorcet.yann@gmail.com> In-Reply-To: <1407352684-7837-2-git-send-email-diorcet.yann@gmail.com> Accept-Language: da-DK, sv-SE, en-US Content-Language: da-DK X-MS-Has-Attach: X-MS-TNEF-Correlator: x-originating-ip: [172.16.11.37] MIME-Version: 1.0 X-Mailman-Approved-At: Wed, 07 Jan 2015 09:50:42 +0100 X-BeenThere: dev@oe-lite.org X-Mailman-Version: 2.1.13 Precedence: list List-Id: OE-lite development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: dev-bounces@oe-lite.org Errors-To: dev-bounces@oe-lite.org Hi Yann, I think we should move those patches that is not version specific into a "gettext" directory instead, so we don't have to keep git mv'ing those when adding new versions. While we are add it, please add a patch header to the patches you know about (at least i suspect you know the reason for the osx patch), then we can better maintain them in the future. Br, Kim diff --git a/recipes/gettext/gettext-0.18.1.1/ac-fix.patch b/recipes/gettext/gettext-0.18.1.1/ac-fix.patch deleted file mode 100644 index 5ffcb57..0000000 --- a/recipes/gettext/gettext-0.18.1.1/ac-fix.patch +++ /dev/null @@ -1,12 +0,0 @@ -diff -Nurd gettext-0.18.1.1/gettext-runtime/m4/ansi-c++.m4 gettext-0.18.1.1/gettext-runtime/m4/ansi-c++.m4 ---- gettext-0.18.1.1/gettext-runtime/m4/ansi-c++.m4 2010-06-06 15:49:57.000000000 +0300 -+++ gettext-0.18.1.1/gettext-runtime/m4/ansi-c++.m4 2011-07-31 11:08:12.000000000 +0300 -@@ -11,7 +11,7 @@ - - AC_DEFUN([gt_PROG_ANSI_CXX], - [ --AC_CHECK_PROGS(CXX, $CCC g++ c++ gpp aCC CC cxx cc++ cl FCC KCC RCC xlC_r xlC, :) -+AC_CHECK_TOOLS(CXX, $CCC g++ c++ gpp aCC CC cxx cc++ cl FCC KCC RCC xlC_r xlC, :) - if test "$CXX" != ":"; then - dnl Use a modified version of AC_PROG_CXX_WORKS that does not exit - dnl upon failure. diff --git a/recipes/gettext/gettext-0.18.1.1/gettext0.18.1.1-9ubuntu1-glibc-2.16-fix.patch b/recipes/gettext/gettext-0.18.1.1/gettext0.18.1.1-9ubuntu1-glibc-2.16-fix.patch deleted file mode 100644 index 9317360..0000000 --- a/recipes/gettext/gettext-0.18.1.1/gettext0.18.1.1-9ubuntu1-glibc-2.16-fix.patch +++ /dev/null @@ -1,56 +0,0 @@ -Index: gettext-0.18.1.1/gettext-tools/gnulib-lib/stdio.in.h -=================================================================== ---- gettext-0.18.1.1.orig/gettext-tools/gnulib-lib/stdio.in.h 2012-11-15 18:46:24.000000000 +0000 -+++ gettext-0.18.1.1/gettext-tools/gnulib-lib/stdio.in.h 2012-11-15 19:14:37.000000000 +0000 -@@ -138,10 +138,12 @@ - #endif - - /* It is very rare that the developer ever has full control of stdin, -- so any use of gets warrants an unconditional warning. Assume it is -- always declared, since it is required by C89. */ -+ so any use of gets warrants an unconditional warning. */ - #undef gets -+#ifdef HAVE_RAW_DECL_GETS - _GL_WARN_ON_USE (gets, "gets is a security hole - use fgets instead"); -+#endif -+#undef gets - - #if @GNULIB_FOPEN@ - # if @REPLACE_FOPEN@ -Index: gettext-0.18.1.1/gettext-runtime/gnulib-lib/stdio.in.h -=================================================================== ---- gettext-0.18.1.1.orig/gettext-runtime/gnulib-lib/stdio.in.h 2010-05-17 19:56:12.000000000 +0000 -+++ gettext-0.18.1.1/gettext-runtime/gnulib-lib/stdio.in.h 2012-11-15 19:11:15.000000000 +0000 -@@ -138,10 +138,11 @@ - #endif - - /* It is very rare that the developer ever has full control of stdin, -- so any use of gets warrants an unconditional warning. Assume it is -- always declared, since it is required by C89. */ -+ so any use of gets warrants an unconditional warning. */ - #undef gets -+#ifdef HAVE_RAW_DECL_GETS - _GL_WARN_ON_USE (gets, "gets is a security hole - use fgets instead"); -+#endif - - #if @GNULIB_FOPEN@ - # if @REPLACE_FOPEN@ -Index: gettext-0.18.1.1/gettext-tools/libgettextpo/stdio.in.h -=================================================================== ---- gettext-0.18.1.1.orig/gettext-tools/libgettextpo/stdio.in.h 2010-05-17 19:58:03.000000000 +0000 -+++ gettext-0.18.1.1/gettext-tools/libgettextpo/stdio.in.h 2012-11-15 19:11:53.000000000 +0000 -@@ -138,10 +138,11 @@ - #endif - - /* It is very rare that the developer ever has full control of stdin, -- so any use of gets warrants an unconditional warning. Assume it is -- always declared, since it is required by C89. */ -+ so any use of gets warrants an unconditional warning. */ - #undef gets -+#ifdef HAVE_RAW_DECL_GETS - _GL_WARN_ON_USE (gets, "gets is a security hole - use fgets instead"); -+#endif - - #if @GNULIB_FOPEN@ - # if @REPLACE_FOPEN@ - diff --git a/recipes/gettext/gettext-0.18.1.1/libtool-bindir.patch b/recipes/gettext/gettext-0.18.1.1/libtool-bindir.patch deleted file mode 100644 index ae3b9a8..0000000 --- a/recipes/gettext/gettext-0.18.1.1/libtool-bindir.patch +++ /dev/null @@ -1,228 +0,0 @@ -diff -urN gettext-0.18.1.1~orig/build-aux/ltmain.sh gettext-0.18.1.1/build-aux/ltmain.sh ---- gettext-0.18.1.1~orig/build-aux/ltmain.sh 2010-06-06 14:49:57.000000000 +0200 -+++ gettext-0.18.1.1/build-aux/ltmain.sh 2014-02-01 17:20:22.780770313 +0100 -@@ -170,6 +170,154 @@ - - # Generated shell functions inserted here. - -+# These SED scripts presuppose an absolute path with a trailing slash. -+pathcar='s,^/\([^/]*\).*$,\1,' -+pathcdr='s,^/[^/]*,,' -+removedotparts=':dotsl -+ s@/\./@/@g -+ t dotsl -+ s,/\.$,/,' -+collapseslashes='s@/\{1,\}@/@g' -+finalslash='s,/*$,/,' -+ -+# func_normal_abspath PATH -+# Remove doubled-up and trailing slashes, "." path components, -+# and cancel out any ".." path components in PATH after making -+# it an absolute path. -+# value returned in "$func_normal_abspath_result" -+func_normal_abspath () -+{ -+ # Start from root dir and reassemble the path. -+ func_normal_abspath_result= -+ func_normal_abspath_tpath=$1 -+ func_normal_abspath_altnamespace= -+ case $func_normal_abspath_tpath in -+ "") -+ # Empty path, that just means $cwd. -+ func_stripname '' '/' "`pwd`" -+ func_normal_abspath_result=$func_stripname_result -+ return -+ ;; -+ # The next three entries are used to spot a run of precisely -+ # two leading slashes without using negated character classes; -+ # we take advantage of case's first-match behaviour. -+ ///*) -+ # Unusual form of absolute path, do nothing. -+ ;; -+ //*) -+ # Not necessarily an ordinary path; POSIX reserves leading '//' -+ # and for example Cygwin uses it to access remote file shares -+ # over CIFS/SMB, so we conserve a leading double slash if found. -+ func_normal_abspath_altnamespace=/ -+ ;; -+ /*) -+ # Absolute path, do nothing. -+ ;; -+ *) -+ # Relative path, prepend $cwd. -+ func_normal_abspath_tpath=`pwd`/$func_normal_abspath_tpath -+ ;; -+ esac -+ # Cancel out all the simple stuff to save iterations. We also want -+ # the path to end with a slash for ease of parsing, so make sure -+ # there is one (and only one) here. -+ func_normal_abspath_tpath=`$ECHO "$func_normal_abspath_tpath" | $SED \ -+ -e "$removedotparts" -e "$collapseslashes" -e "$finalslash"` -+ while :; do -+ # Processed it all yet? -+ if test "$func_normal_abspath_tpath" = / ; then -+ # If we ascended to the root using ".." the result may be empty now. -+ if test -z "$func_normal_abspath_result" ; then -+ func_normal_abspath_result=/ -+ fi -+ break -+ fi -+ func_normal_abspath_tcomponent=`$ECHO "$func_normal_abspath_tpath" | $SED \ -+ -e "$pathcar"` -+ func_normal_abspath_tpath=`$ECHO "$func_normal_abspath_tpath" | $SED \ -+ -e "$pathcdr"` -+ # Figure out what to do with it -+ case $func_normal_abspath_tcomponent in -+ "") -+ # Trailing empty path component, ignore it. -+ ;; -+ ..) -+ # Parent dir; strip last assembled component from result. -+ func_dirname "$func_normal_abspath_result" -+ func_normal_abspath_result=$func_dirname_result -+ ;; -+ *) -+ # Actual path component, append it. -+ func_normal_abspath_result=$func_normal_abspath_result/$func_normal_abspath_tcomponent -+ ;; -+ esac -+ done -+ # Restore leading double-slash if one was found on entry. -+ func_normal_abspath_result=$func_normal_abspath_altnamespace$func_normal_abspath_result -+} -+ -+# func_relative_path SRCDIR DSTDIR -+# generates a relative path from SRCDIR to DSTDIR, with a trailing -+# slash if non-empty, suitable for immediately appending a filename -+# without needing to append a separator. -+# value returned in "$func_relative_path_result" -+func_relative_path () -+{ -+ func_relative_path_result= -+ func_normal_abspath "$1" -+ func_relative_path_tlibdir=$func_normal_abspath_result -+ func_normal_abspath "$2" -+ func_relative_path_tbindir=$func_normal_abspath_result -+ -+ # Ascend the tree starting from libdir -+ while :; do -+ # check if we have found a prefix of bindir -+ case $func_relative_path_tbindir in -+ $func_relative_path_tlibdir) -+ # found an exact match -+ func_relative_path_tcancelled= -+ break -+ ;; -+ $func_relative_path_tlibdir*) -+ # found a matching prefix -+ func_stripname "$func_relative_path_tlibdir" '' "$func_relative_path_tbindir" -+ func_relative_path_tcancelled=$func_stripname_result -+ if test -z "$func_relative_path_result"; then -+ func_relative_path_result=. -+ fi -+ break -+ ;; -+ *) -+ func_dirname $func_relative_path_tlibdir -+ func_relative_path_tlibdir=${func_dirname_result} -+ if test "x$func_relative_path_tlibdir" = x ; then -+ # Have to descend all the way to the root! -+ func_relative_path_result=../$func_relative_path_result -+ func_relative_path_tcancelled=$func_relative_path_tbindir -+ break -+ fi -+ func_relative_path_result=../$func_relative_path_result -+ ;; -+ esac -+ done -+ -+ # Now calculate path; take care to avoid doubling-up slashes. -+ func_stripname '' '/' "$func_relative_path_result" -+ func_relative_path_result=$func_stripname_result -+ func_stripname '/' '/' "$func_relative_path_tcancelled" -+ if test "x$func_stripname_result" != x ; then -+ func_relative_path_result=${func_relative_path_result}/${func_stripname_result} -+ fi -+ -+ # Normalisation. If bindir is libdir, return empty string, -+ # else relative path ending with a slash; either way, target -+ # file name can be directly appended. -+ if test ! -z "$func_relative_path_result"; then -+ func_stripname './' '' "$func_relative_path_result/" -+ func_relative_path_result=$func_stripname_result -+ fi -+} -+ - # Work around backward compatibility issue on IRIX 6.5. On IRIX 6.4+, sh - # is ksh but when the shell is invoked as "sh" and the current value of - # the _XPG environment variable is not equal to 1 (one), the special -@@ -1558,6 +1706,8 @@ - - -all-static do not do any dynamic linking at all - -avoid-version do not add a version suffix if possible -+ -bindir BINDIR specify path to binaries directory (for systems where -+ libraries must be found in the PATH setting at runtime) - -dlopen FILE \`-dlpreopen' FILE if it cannot be dlopened at runtime - -dlpreopen FILE link in FILE and add its symbols to lt_preloaded_symbols - -export-dynamic allow symbols from OUTPUT-FILE to be resolved with dlsym(3) -@@ -4208,6 +4358,7 @@ - new_inherited_linker_flags= - - avoid_version=no -+ bindir=$sharedlibdir - dlfiles= - dlprefiles= - dlself=no -@@ -4300,6 +4451,11 @@ - esac - - case $prev in -+ bindir) -+ bindir="$arg" -+ prev= -+ continue -+ ;; - dlfiles|dlprefiles) - if test "$preload" = no; then - # Add the symbol object into the linking commands. -@@ -4561,6 +4717,11 @@ - continue - ;; - -+ -bindir) -+ prev=bindir -+ continue -+ ;; -+ - -dlopen) - prev=dlfiles - continue -@@ -8257,9 +8418,27 @@ - fi - $RM $output - # place dlname in correct position for cygwin -+ # In fact, it would be nice if we could use this code for all target -+ # systems that can't hard-code library paths into their executables -+ # and that have no shared library path variable independent of PATH, -+ # but it turns out we can't easily determine that from inspecting -+ # libtool variables, so we have to hard-code the OSs to which it -+ # applies here; at the moment, that means platforms that use the PE -+ # object format with DLL files. See the long comment at the top of -+ # tests/bindir.at for full details. - tdlname=$dlname - case $host,$output,$installed,$module,$dlname in -- *cygwin*,*lai,yes,no,*.dll | *mingw*,*lai,yes,no,*.dll | *cegcc*,*lai,yes,no,*.dll) tdlname=../bin/$dlname ;; -+ *cygwin*,*lai,yes,no,*.dll | *mingw*,*lai,yes,no,*.dll | *cegcc*,*lai,yes,no,*.dll) -+ # If a -bindir argument was supplied, place the dll there. -+ if test "x$bindir" != x ; -+ then -+ func_relative_path "$install_libdir" "$bindir" -+ tdlname=$func_relative_path_result$dlname -+ else -+ # Otherwise fall back on heuristic. -+ tdlname=../bin/$dlname -+ fi -+ ;; - esac - $ECHO > $output "\ - # $outputname - a libtool library file diff --git a/recipes/gettext/gettext-0.18.1.1/osx.patch b/recipes/gettext/gettext-0.18.1.1/osx.patch deleted file mode 100644 index 7f90deb..0000000 --- a/recipes/gettext/gettext-0.18.1.1/osx.patch +++ /dev/null @@ -1,49 +0,0 @@ -diff -urN gettext-0.18.1.1/build-aux/install-reloc gettext-0.18.1.1.mod/build-aux/install-reloc ---- gettext-0.18.1.1/build-aux/install-reloc 2012-10-08 15:46:56.000000000 +0200 -+++ gettext-0.18.1.1.mod/build-aux/install-reloc 2012-10-08 15:47:01.000000000 +0200 -@@ -160,6 +160,8 @@ - "$srcdir"/canonicalize-lgpl.c \ - "$srcdir"/malloca.c \ - "$srcdir"/relocatable.c \ -+ "$srcdir"/lstat.c \ -+ "$srcdir"/stat.c \ - "$srcdir"/setenv.c \ - "$srcdir"/strerror.c \ - "$srcdir"/c-ctype.c \ -diff -urN gettext-0.18.1.1/gettext-tools/Makefile.in gettext-0.18.1.1.mod/gettext-tools/Makefile.in ---- gettext-0.18.1.1/gettext-tools/Makefile.in 2010-06-06 22:12:33.000000000 +0200 -+++ gettext-0.18.1.1.mod/gettext-tools/Makefile.in 2012-10-08 14:54:25.000000000 +0200 -@@ -1248,7 +1248,7 @@ - top_srcdir = @top_srcdir@ - AUTOMAKE_OPTIONS = 1.5 gnu no-dependencies - ACLOCAL_AMFLAGS = -I m4 -I ../gettext-runtime/m4 -I ../m4 -I gnulib-m4 -I libgrep/gnulib-m4 -I libgettextpo/gnulib-m4 --SUBDIRS = doc intl gnulib-lib libgrep src libgettextpo po projects styles misc man m4 tests gnulib-tests examples -+SUBDIRS = doc intl gnulib-lib libgrep src libgettextpo po projects styles misc man m4 tests gnulib-tests - - # Allow users to use "gnulib-tool --update". - -diff -urN gettext-0.18.1.1/gettext-tools/configure gettext-0.18.1.1.mod/gettext-tools/configure ---- gettext-0.18.1.1/gettext-tools/configure 2010-06-06 22:12:20.000000000 +0200 -+++ gettext-0.18.1.1.mod/gettext-tools/configure 2012-10-08 14:54:59.000000000 +0200 -@@ -40606,7 +40606,9 @@ - #include - #include /* for strcpy */ - /* The stpncpy prototype is missing in on AIX 4. */ -+#ifndef stpncpy - extern char *stpncpy (char *dest, const char *src, size_t n); -+#endif - int main () { - const char *src = "Hello"; - char dest[10]; -diff -urN gettext-0.18.1.1/gettext-tools/gnulib-lib/stpncpy.c gettext-0.18.1.1.mod/gettext-tools/gnulib-lib/stpncpy.c ---- gettext-0.18.1.1/gettext-tools/gnulib-lib/stpncpy.c 2010-05-24 11:42:47.000000000 +0200 -+++ gettext-0.18.1.1.mod/gettext-tools/gnulib-lib/stpncpy.c 2012-10-08 15:00:12.000000000 +0200 -@@ -25,7 +25,7 @@ - #include - - #ifndef weak_alias --# define __stpncpy stpncpy -+//# define __stpncpy stpncpy - #endif - - /* Copy no more than N bytes of SRC to DST, returning a pointer past the diff --git a/recipes/gettext/gettext-0.18.3.2/120-Fix-Woe32-link-errors-when-compiling-with-O0.patch b/recipes/gettext/gettext-0.18.3.2/120-Fix-Woe32-link-errors-when-compiling-with-O0.patch new file mode 100644 index 0000000..b6dd9b8 --- /dev/null +++ b/recipes/gettext/gettext-0.18.3.2/120-Fix-Woe32-link-errors-when-compiling-with-O0.patch @@ -0,0 +1,672 @@ +diff -urN a/gettext-tools/src/color.c b/gettext-tools/src/color.c +--- a/gettext-tools/src/color.c 2013-04-15 08:45:13.000000000 +0200 ++++ b/gettext-tools/src/color.c 2014-06-12 14:37:43.235013449 +0200 +@@ -28,6 +28,7 @@ + #include + #include + ++#include "ostream.h" + #include "term-ostream.h" + #include "xalloc.h" + #include "relocatable.h" +diff -urN a/gettext-tools/src/Makefile.am b/gettext-tools/src/Makefile.am +--- a/gettext-tools/src/Makefile.am 2013-12-20 04:19:45.000000000 +0100 ++++ b/gettext-tools/src/Makefile.am 2014-06-12 21:31:46.323988615 +0200 +@@ -141,22 +141,51 @@ + format-lua.c \ + format-javascript.c + ++if !WOE32DLL ++COLOR_SOURCE = color.c ++else ++COLOR_SOURCE = ../woe32dll/c++color.cc ++endif ++ ++if !WOE32DLL ++OUTPUT_SOURCE = \ ++ write-catalog.c \ ++ write-po.c \ ++ write-properties.c \ ++ write-stringtable.c ++else ++OUTPUT_SOURCE = \ ++ ../woe32dll/c++write-catalog.cc \ ++ ../woe32dll/c++write-po.cc \ ++ ../woe32dll/c++write-properties.cc \ ++ ../woe32dll/c++write-stringtable.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 \ + $(FORMAT_SOURCE) + ++ + # msggrep needs pattern matching. + LIBGREP = ../libgrep/libgrep.a + + # Source dependencies. ++if !WOE32DLL + msgcmp_SOURCES = msgcmp.c ++else ++msgcmp_SOURCES = ../woe32dll/c++msgcmp.cc ++endif + msgcmp_SOURCES += msgl-fsearch.c ++if !WOE32DLL + msgfmt_SOURCES = msgfmt.c ++else ++msgfmt_SOURCES = ../woe32dll/c++msgfmt.cc ++endif + msgfmt_SOURCES += \ + write-mo.c write-java.c write-csharp.c write-resources.c write-tcl.c \ + write-qt.c ../../gettext-runtime/intl/hash-string.c +@@ -166,7 +195,11 @@ + msgmerge_SOURCES = ../woe32dll/c++msgmerge.cc + endif + msgmerge_SOURCES += msgl-fsearch.c lang-table.c plural-count.c ++if !WOE32DLL + msgunfmt_SOURCES = msgunfmt.c ++else ++msgunfmt_SOURCES = ../woe32dll/c++msgunfmt.cc ++endif + msgunfmt_SOURCES += \ + read-mo.c read-java.c read-csharp.c read-resources.c read-tcl.c + if !WOE32DLL +@@ -203,7 +236,11 @@ + else + msgen_SOURCES = ../woe32dll/c++msgen.cc + endif ++if !WOE32DLL + msgexec_SOURCES = msgexec.c ++else ++msgexec_SOURCES = ../woe32dll/c++msgexec.cc ++endif + if !WOE32DLL + msgfilter_SOURCES = msgfilter.c + else +@@ -215,7 +252,11 @@ + else + msggrep_SOURCES = ../woe32dll/c++msggrep.cc + endif ++if !WOE32DLL + msginit_SOURCES = msginit.c ++else ++msginit_SOURCES = ../woe32dll/c++msginit.cc ++endif + msginit_SOURCES += lang-table.c plural-count.c + msginit_SOURCES += ../../gettext-runtime/intl/localealias.c + # This is needed because on Solaris, localealias.c requires the symbol +diff -urN a/gettext-tools/src/Makefile.in b/gettext-tools/src/Makefile.in +--- a/gettext-tools/src/Makefile.in 2014-01-07 07:18:52.000000000 +0100 ++++ b/gettext-tools/src/Makefile.in 2014-06-12 14:37:43.231013623 +0200 +@@ -377,16 +377,20 @@ + 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 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 \ ++ dir-list.c str-list.c read-catalog.c color.c \ ++ ../woe32dll/c++color.cc write-catalog.c write-po.c \ ++ write-properties.c write-stringtable.c \ ++ ../woe32dll/c++write-catalog.cc ../woe32dll/c++write-po.cc \ ++ ../woe32dll/c++write-properties.cc \ ++ ../woe32dll/c++write-stringtable.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 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-boost.c format-lua.c \ + format-javascript.c ../woe32dll/c++format.cc \ +@@ -400,7 +404,17 @@ + libgettextsrc_la-read-stringtable.lo \ + libgettextsrc_la-open-catalog.lo libgettextsrc_la-dir-list.lo \ + libgettextsrc_la-str-list.lo +-@WOE32DLL_FALSE@am__objects_2 = libgettextsrc_la-format.lo \ ++@WOE32DLL_FALSE@am__objects_2 = libgettextsrc_la-color.lo ++@WOE32DLL_TRUE@am__objects_2 = libgettextsrc_la-c++color.lo ++@WOE32DLL_FALSE@am__objects_3 = libgettextsrc_la-write-catalog.lo \ ++@WOE32DLL_FALSE@ libgettextsrc_la-write-po.lo \ ++@WOE32DLL_FALSE@ libgettextsrc_la-write-properties.lo \ ++@WOE32DLL_FALSE@ libgettextsrc_la-write-stringtable.lo ++@WOE32DLL_TRUE@am__objects_3 = libgettextsrc_la-c++write-catalog.lo \ ++@WOE32DLL_TRUE@ libgettextsrc_la-c++write-po.lo \ ++@WOE32DLL_TRUE@ libgettextsrc_la-c++write-properties.lo \ ++@WOE32DLL_TRUE@ libgettextsrc_la-c++write-stringtable.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 \ +@@ -426,7 +440,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 = libgettextsrc_la-c++format.lo \ ++@WOE32DLL_TRUE@am__objects_4 = libgettextsrc_la-c++format.lo \ + @WOE32DLL_TRUE@ libgettextsrc_la-format-c.lo \ + @WOE32DLL_TRUE@ libgettextsrc_la-format-sh.lo \ + @WOE32DLL_TRUE@ libgettextsrc_la-format-python.lo \ +@@ -452,21 +466,18 @@ + @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 = libgettextsrc_la-gettextsrc-exports.lo ++@WOE32DLL_TRUE@am__objects_5 = 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 \ + libgettextsrc_la-msgl-check.lo libgettextsrc_la-file-list.lo \ + 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 $(am__objects_2) \ +- $(am__objects_3) ++ libgettextsrc_la-plural-table.lo $(am__objects_4) \ ++ $(am__objects_5) + libgettextsrc_la_OBJECTS = $(am_libgettextsrc_la_OBJECTS) + PROGRAMS = $(bin_PROGRAMS) $(noinst_PROGRAMS) + am_hostname_OBJECTS = hostname-hostname.$(OBJEXT) +@@ -1902,14 +1913,27 @@ + @WOE32DLL_TRUE@ format-gcc-internal.c format-gfc-internal.c \ + @WOE32DLL_TRUE@ format-qt.c format-qt-plural.c format-kde.c \ + @WOE32DLL_TRUE@ format-boost.c format-lua.c 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-po.c \ ++@WOE32DLL_FALSE@ write-properties.c \ ++@WOE32DLL_FALSE@ write-stringtable.c ++ ++@WOE32DLL_TRUE@OUTPUT_SOURCE = \ ++@WOE32DLL_TRUE@ ../woe32dll/c++write-catalog.cc \ ++@WOE32DLL_TRUE@ ../woe32dll/c++write-po.cc \ ++@WOE32DLL_TRUE@ ../woe32dll/c++write-properties.cc \ ++@WOE32DLL_TRUE@ ../woe32dll/c++write-stringtable.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 $(FORMAT_SOURCE) $(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 $(FORMAT_SOURCE) $(am__append_1) + + # msggrep needs pattern matching. + LIBGREP = ../libgrep/libgrep.a +@@ -2476,15 +2500,15 @@ + libgettextsrc_la-write-catalog.lo: write-catalog.c + $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgettextsrc_la_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o libgettextsrc_la-write-catalog.lo `test -f 'write-catalog.c' || echo '$(srcdir)/'`write-catalog.c + ++libgettextsrc_la-write-po.lo: write-po.c ++ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgettextsrc_la_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o libgettextsrc_la-write-po.lo `test -f 'write-po.c' || echo '$(srcdir)/'`write-po.c ++ + libgettextsrc_la-write-properties.lo: write-properties.c + $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgettextsrc_la_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o libgettextsrc_la-write-properties.lo `test -f 'write-properties.c' || echo '$(srcdir)/'`write-properties.c + + libgettextsrc_la-write-stringtable.lo: write-stringtable.c + $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgettextsrc_la_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o libgettextsrc_la-write-stringtable.lo `test -f 'write-stringtable.c' || echo '$(srcdir)/'`write-stringtable.c + +-libgettextsrc_la-write-po.lo: write-po.c +- $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgettextsrc_la_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o libgettextsrc_la-write-po.lo `test -f 'write-po.c' || echo '$(srcdir)/'`write-po.c +- + libgettextsrc_la-msgl-ascii.lo: msgl-ascii.c + $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libgettextsrc_la_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o libgettextsrc_la-msgl-ascii.lo `test -f 'msgl-ascii.c' || echo '$(srcdir)/'`msgl-ascii.c + +@@ -2980,6 +3004,21 @@ + .cc.lo: + $(AM_V_CXX)$(LTCXXCOMPILE) -c -o $@ $< + ++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 libgettextsrc_la-c++color.lo `test -f '../woe32dll/c++color.cc' || echo '$(srcdir)/'`../woe32dll/c++color.cc ++ ++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 libgettextsrc_la-c++write-catalog.lo `test -f '../woe32dll/c++write-catalog.cc' || echo '$(srcdir)/'`../woe32dll/c++write-catalog.cc ++ ++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 libgettextsrc_la-c++write-po.lo `test -f '../woe32dll/c++write-po.cc' || echo '$(srcdir)/'`../woe32dll/c++write-po.cc ++ ++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 libgettextsrc_la-c++write-properties.lo `test -f '../woe32dll/c++write-properties.cc' || echo '$(srcdir)/'`../woe32dll/c++write-properties.cc ++ ++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 libgettextsrc_la-c++write-stringtable.lo `test -f '../woe32dll/c++write-stringtable.cc' || echo '$(srcdir)/'`../woe32dll/c++write-stringtable.cc ++ + 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 libgettextsrc_la-c++format.lo `test -f '../woe32dll/c++format.cc' || echo '$(srcdir)/'`../woe32dll/c++format.cc + +diff -urN a/gettext-tools/src/msginit.c b/gettext-tools/src/msginit.c +--- a/gettext-tools/src/msginit.c 2013-04-18 12:13:27.000000000 +0200 ++++ b/gettext-tools/src/msginit.c 2014-06-12 18:57:05.773102938 +0200 +@@ -96,7 +96,13 @@ + + #define SIZEOF(a) (sizeof(a) / sizeof(a[0])) + ++#ifdef __cplusplus ++extern "C" { ++#endif + extern const char * _nl_expand_alias (const char *name); ++#ifdef __cplusplus ++} ++#endif + + /* Locale name. */ + static const char *locale; +diff -urN a/gettext-tools/src/read-csharp.h b/gettext-tools/src/read-csharp.h +--- a/gettext-tools/src/read-csharp.h 2013-01-09 05:01:27.000000000 +0100 ++++ b/gettext-tools/src/read-csharp.h 2014-06-12 18:39:12.959396049 +0200 +@@ -20,11 +20,18 @@ + + #include "message.h" + ++#ifdef __cplusplus ++extern "C" { ++#endif ++ + /* Read the Java resource given by resource_name and locale_name. + Returns a list of messages. */ + extern msgdomain_list_ty * + msgdomain_read_csharp (const char *resource_name, + const char *locale_name, + const char *directory); ++#ifdef __cplusplus ++} ++#endif + + #endif /* _READ_CSHARP_H */ +diff -urN a/gettext-tools/src/read-java.h b/gettext-tools/src/read-java.h +--- a/gettext-tools/src/read-java.h 2013-01-09 05:01:27.000000000 +0100 ++++ b/gettext-tools/src/read-java.h 2014-06-12 18:33:39.347411372 +0200 +@@ -20,10 +20,18 @@ + + #include "message.h" + ++#ifdef __cplusplus ++extern "C" { ++#endif ++ + /* Read the Java resource given by resource_name and locale_name. + Returns a list of messages. */ + extern msgdomain_list_ty * + msgdomain_read_java (const char *resource_name, + const char *locale_name); + ++#ifdef __cplusplus ++} ++#endif ++ + #endif /* _READ_JAVA_H */ +diff -urN a/gettext-tools/src/read-mo.h b/gettext-tools/src/read-mo.h +--- a/gettext-tools/src/read-mo.h 2013-01-09 05:01:27.000000000 +0100 ++++ b/gettext-tools/src/read-mo.h 2014-06-12 18:40:09.846089315 +0200 +@@ -20,7 +20,15 @@ + + #include "message.h" + ++#ifdef __cplusplus ++extern "C" { ++#endif ++ + /* Reads an existing .mo file and adds the messages to mlp. */ + extern void read_mo_file (message_list_ty *mlp, const char *filename); + ++#ifdef __cplusplus ++} ++#endif ++ + #endif /* _READ_MO_H */ +diff -urN a/gettext-tools/src/read-resources.h b/gettext-tools/src/read-resources.h +--- a/gettext-tools/src/read-resources.h 2013-01-09 05:01:27.000000000 +0100 ++++ b/gettext-tools/src/read-resources.h 2014-06-12 18:40:44.169308069 +0200 +@@ -20,8 +20,16 @@ + + #include "message.h" + ++#ifdef __cplusplus ++extern "C" { ++#endif ++ + /* Reads an existing binary C# .resources file and adds the messages + to mlp. */ + extern void read_resources_file (message_list_ty *mlp, const char *filename); + ++#ifdef __cplusplus ++} ++#endif ++ + #endif /* _READ_RESOURCES_H */ +diff -urN a/gettext-tools/src/read-tcl.h b/gettext-tools/src/read-tcl.h +--- a/gettext-tools/src/read-tcl.h 2013-01-09 05:01:27.000000000 +0100 ++++ b/gettext-tools/src/read-tcl.h 2014-06-12 18:39:55.110426014 +0200 +@@ -20,9 +20,17 @@ + + #include "message.h" + ++#ifdef __cplusplus ++extern "C" { ++#endif ++ + /* Read the Tcl msg file given by locale_name and directory. + Returns a list of messages. */ + extern msgdomain_list_ty * + msgdomain_read_tcl (const char *locale_name, const char *directory); + ++#ifdef __cplusplus ++} ++#endif ++ + #endif /* _READ_TCL_H */ +diff -urN a/gettext-tools/src/write-csharp.h b/gettext-tools/src/write-csharp.h +--- a/gettext-tools/src/write-csharp.h 2013-01-09 05:01:27.000000000 +0100 ++++ b/gettext-tools/src/write-csharp.h 2014-06-12 18:47:22.496650218 +0200 +@@ -20,6 +20,10 @@ + + #include "message.h" + ++#ifdef __cplusplus ++extern "C" { ++#endif ++ + /* Write a C# satellite assembly DLL file. mlp is a list containing the + messages to be output. resource_name is the name of the resource + (with dot separators), locale_name is the locale name (with underscore +@@ -32,4 +36,8 @@ + const char *locale_name, + const char *directory); + ++#ifdef __cplusplus ++} ++#endif ++ + #endif /* _WRITE_CSHARP_H */ +diff -urN a/gettext-tools/src/write-java.h b/gettext-tools/src/write-java.h +--- a/gettext-tools/src/write-java.h 2013-01-09 05:01:27.000000000 +0100 ++++ b/gettext-tools/src/write-java.h 2014-06-12 18:47:44.048200376 +0200 +@@ -22,6 +22,10 @@ + + #include "message.h" + ++#ifdef __cplusplus ++extern "C" { ++#endif ++ + /* Write a Java ResourceBundle class file. mlp is a list containing the + messages to be output. resource_name is the name of the resource + (with dot separators), locale_name is the locale name (with underscore +@@ -35,4 +39,8 @@ + const char *directory, + bool assume_java2); + ++#ifdef __cplusplus ++} ++#endif ++ + #endif /* _WRITE_JAVA_H */ +diff -urN a/gettext-tools/src/write-mo.h b/gettext-tools/src/write-mo.h +--- a/gettext-tools/src/write-mo.h 2013-01-09 05:01:27.000000000 +0100 ++++ b/gettext-tools/src/write-mo.h 2014-06-12 18:46:00.506373348 +0200 +@@ -23,6 +23,10 @@ + + #include "message.h" + ++#ifdef __cplusplus ++extern "C" { ++#endif ++ + /* Alignment of strings in resulting .mo file. */ + extern size_t alignment; + +@@ -39,5 +43,8 @@ + msgdomain_write_mo (message_list_ty *mlp, + const char *domain_name, + const char *file_name); ++#ifdef __cplusplus ++} ++#endif + + #endif /* _WRITE_MO_H */ +diff -urN a/gettext-tools/src/write-qt.h b/gettext-tools/src/write-qt.h +--- a/gettext-tools/src/write-qt.h 2013-01-09 05:01:27.000000000 +0100 ++++ b/gettext-tools/src/write-qt.h 2014-06-12 18:46:21.085939661 +0200 +@@ -20,6 +20,10 @@ + + #include "message.h" + ++#ifdef __cplusplus ++extern "C" { ++#endif ++ + /* Write a Qt .qm file. mlp is a list containing the messages to be output. + domain_name is the domain name, file_name is the desired file name. + Return 0 if ok, nonzero on error. */ +@@ -27,4 +31,8 @@ + msgdomain_write_qt (message_list_ty *mlp, const char *canon_encoding, + const char *domain_name, const char *file_name); + ++#ifdef __cplusplus ++} ++#endif ++ + #endif /* _WRITE_QT_H */ +diff -urN a/gettext-tools/src/write-resources.h b/gettext-tools/src/write-resources.h +--- a/gettext-tools/src/write-resources.h 2013-01-09 05:01:27.000000000 +0100 ++++ b/gettext-tools/src/write-resources.h 2014-06-12 18:45:36.086894483 +0200 +@@ -20,6 +20,10 @@ + + #include "message.h" + ++#ifdef __cplusplus ++extern "C" { ++#endif ++ + /* Output the contents of a PO file as a binary C# .resources file. + Return 0 if ok, nonzero on error. */ + extern int +@@ -28,4 +32,8 @@ + const char *domain_name, + const char *file_name); + ++#ifdef __cplusplus ++} ++#endif ++ + #endif /* _WRITE_RESOURCES_H */ +diff -urN a/gettext-tools/src/write-tcl.h b/gettext-tools/src/write-tcl.h +--- a/gettext-tools/src/write-tcl.h 2013-01-09 05:01:27.000000000 +0100 ++++ b/gettext-tools/src/write-tcl.h 2014-06-12 18:46:40.449532124 +0200 +@@ -20,6 +20,10 @@ + + #include "message.h" + ++#ifdef __cplusplus ++extern "C" { ++#endif ++ + /* Write a Tcl msg file. mlp is a list containing the messages to be output. + locale_name is the locale name (with underscore separators), directory is + the base directory. +@@ -29,4 +33,8 @@ + const char *locale_name, + const char *directory); + ++#ifdef __cplusplus ++} ++#endif ++ + #endif /* _WRITE_TCL_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 2014-06-12 14:37:43.235013449 +0200 +@@ -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 2014-06-12 14:37:43.235013449 +0200 +@@ -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 2014-06-12 14:37:43.235013449 +0200 +@@ -0,0 +1 @@ ++#include "../gnulib-lib/html-ostream.c" +diff -urN a/gettext-tools/woe32dll/c++msgcmp.cc b/gettext-tools/woe32dll/c++msgcmp.cc +--- a/gettext-tools/woe32dll/c++msgcmp.cc 1970-01-01 01:00:00.000000000 +0100 ++++ b/gettext-tools/woe32dll/c++msgcmp.cc 2014-06-12 14:42:09.880340787 +0200 +@@ -0,0 +1 @@ ++#include "../src/msgcmp.c" +diff -urN a/gettext-tools/woe32dll/c++msgexec.cc b/gettext-tools/woe32dll/c++msgexec.cc +--- a/gettext-tools/woe32dll/c++msgexec.cc 1970-01-01 01:00:00.000000000 +0100 ++++ b/gettext-tools/woe32dll/c++msgexec.cc 2014-06-12 21:32:19.575178015 +0200 +@@ -0,0 +1 @@ ++#include "../src/msgexec.c" +diff -urN a/gettext-tools/woe32dll/c++msgfmt.cc b/gettext-tools/woe32dll/c++msgfmt.cc +--- a/gettext-tools/woe32dll/c++msgfmt.cc 1970-01-01 01:00:00.000000000 +0100 ++++ b/gettext-tools/woe32dll/c++msgfmt.cc 2014-06-12 14:59:25.119555208 +0200 +@@ -0,0 +1 @@ ++#include "../src/msgfmt.c" +diff -urN a/gettext-tools/woe32dll/c++msginit.cc b/gettext-tools/woe32dll/c++msginit.cc +--- a/gettext-tools/woe32dll/c++msginit.cc 1970-01-01 01:00:00.000000000 +0100 ++++ b/gettext-tools/woe32dll/c++msginit.cc 2014-06-12 14:52:48.396377567 +0200 +@@ -0,0 +1 @@ ++#include "../src/msginit.c" +diff -urN a/gettext-tools/woe32dll/c++msgunfmt.cc b/gettext-tools/woe32dll/c++msgunfmt.cc +--- a/gettext-tools/woe32dll/c++msgunfmt.cc 1970-01-01 01:00:00.000000000 +0100 ++++ b/gettext-tools/woe32dll/c++msgunfmt.cc 2014-06-12 14:59:33.155303211 +0200 +@@ -0,0 +1 @@ ++#include "../src/msgunfmt.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 2014-06-12 14:37:43.235013449 +0200 +@@ -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 2014-06-12 14:37:43.235013449 +0200 +@@ -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 2014-06-12 14:37:43.235013449 +0200 +@@ -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 2014-06-12 14:37:43.235013449 +0200 +@@ -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 2014-06-12 14:37:43.235013449 +0200 +@@ -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 2014-06-12 14:37:43.235013449 +0200 +@@ -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 2013-01-21 03:36:18.000000000 +0100 ++++ b/gnulib-local/modules/file-ostream 2014-06-12 14:37:43.235013449 +0200 +@@ -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 2013-01-21 03:36:18.000000000 +0100 ++++ b/gnulib-local/modules/html-ostream 2014-06-12 14:37:43.235013449 +0200 +@@ -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 2013-01-21 03:36:18.000000000 +0100 ++++ b/gnulib-local/modules/ostream 2014-06-12 14:37:43.235013449 +0200 +@@ -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 2013-01-21 03:36:18.000000000 +0100 ++++ b/gnulib-local/modules/styled-ostream 2014-06-12 14:37:43.239013222 +0200 +@@ -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 2013-01-21 03:36:18.000000000 +0100 ++++ b/gnulib-local/modules/term-ostream 2014-06-12 14:37:43.239013222 +0200 +@@ -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/recipes/gettext/gettext-0.18.3.2/disable-examples.patch b/recipes/gettext/gettext-0.18.3.2/disable-examples.patch new file mode 100644 index 0000000..0fbbfeb --- /dev/null +++ b/recipes/gettext/gettext-0.18.3.2/disable-examples.patch @@ -0,0 +1,12 @@ +diff -urN a/gettext-tools/Makefile.in b/gettext-tools/Makefile.in +--- a/gettext-tools/Makefile.in 2014-01-07 07:18:49.000000000 +0100 ++++ b/gettext-tools/Makefile.in 2014-05-14 23:58:59.031063467 +0200 +@@ -1551,7 +1551,7 @@ + top_srcdir = @top_srcdir@ + AUTOMAKE_OPTIONS = 1.5 gnu no-dependencies + ACLOCAL_AMFLAGS = -I m4 -I ../gettext-runtime/m4 -I ../m4 -I gnulib-m4 -I libgrep/gnulib-m4 -I libgettextpo/gnulib-m4 +-SUBDIRS = doc intl gnulib-lib libgrep src libgettextpo po projects styles misc man m4 tests gnulib-tests examples ++SUBDIRS = doc intl gnulib-lib libgrep src libgettextpo po projects styles misc man m4 tests gnulib-tests + + # Allow users to use "gnulib-tool --update". + diff --git a/recipes/gettext/gettext-0.18.1.1/gettext-0.18-gettextpo-woe32-memchr.patch b/recipes/gettext/gettext-0.18.3.2/gettext-0.18-gettextpo-woe32-memchr.patch similarity index 100% rename from recipes/gettext/gettext-0.18.1.1/gettext-0.18-gettextpo-woe32-memchr.patch rename to recipes/gettext/gettext-0.18.3.2/gettext-0.18-gettextpo-woe32-memchr.patch diff --git a/recipes/gettext/gettext-0.18.3.2/gettext-glibc-2.16.patch b/recipes/gettext/gettext-0.18.3.2/gettext-glibc-2.16.patch new file mode 100644 index 0000000..f808674 --- /dev/null +++ b/recipes/gettext/gettext-0.18.3.2/gettext-glibc-2.16.patch @@ -0,0 +1,45 @@ +diff -urN a/gettext-runtime/gnulib-lib/stdio.in.h b/gettext-runtime/gnulib-lib/stdio.in.h +--- a/gettext-runtime/gnulib-lib/stdio.in.h 2010-05-17 21:56:12.000000000 +0200 ++++ b/gettext-runtime/gnulib-lib/stdio.in.h 2013-10-06 22:53:39.347701925 +0200 +@@ -141,7 +141,11 @@ + so any use of gets warrants an unconditional warning. Assume it is + always declared, since it is required by C89. */ + #undef gets ++#if defined(__GLIBC__) && !defined(__UCLIBC__) && defined(__GLIBC_PREREQ) ++#if !__GLIBC_PREREQ(2, 16) + _GL_WARN_ON_USE (gets, "gets is a security hole - use fgets instead"); ++#endif ++#endif + + #if @GNULIB_FOPEN@ + # if @REPLACE_FOPEN@ +diff -urN a/gettext-tools/gnulib-lib/stdio.in.h b/gettext-tools/gnulib-lib/stdio.in.h +--- a/gettext-tools/gnulib-lib/stdio.in.h 2010-05-24 11:42:46.000000000 +0200 ++++ b/gettext-tools/gnulib-lib/stdio.in.h 2013-10-06 22:53:50.927401966 +0200 +@@ -141,7 +141,11 @@ + so any use of gets warrants an unconditional warning. Assume it is + always declared, since it is required by C89. */ + #undef gets ++#if defined(__GLIBC__) && !defined(__UCLIBC__) && defined(__GLIBC_PREREQ) ++#if !__GLIBC_PREREQ(2, 16) + _GL_WARN_ON_USE (gets, "gets is a security hole - use fgets instead"); ++#endif ++#endif + + #if @GNULIB_FOPEN@ + # if @REPLACE_FOPEN@ +diff -urN a/gettext-tools/libgettextpo/stdio.in.h b/gettext-tools/libgettextpo/stdio.in.h +--- a/gettext-tools/libgettextpo/stdio.in.h 2010-05-17 21:58:03.000000000 +0200 ++++ b/gettext-tools/libgettextpo/stdio.in.h 2013-10-06 22:54:00.187164596 +0200 +@@ -141,7 +141,11 @@ + so any use of gets warrants an unconditional warning. Assume it is + always declared, since it is required by C89. */ + #undef gets ++#if defined(__GLIBC__) && !defined(__UCLIBC__) && defined(__GLIBC_PREREQ) ++#if !__GLIBC_PREREQ(2, 16) + _GL_WARN_ON_USE (gets, "gets is a security hole - use fgets instead"); ++#endif ++#endif + + #if @GNULIB_FOPEN@ + # if @REPLACE_FOPEN@ diff --git a/recipes/gettext/gettext-0.18.3.2/osx.patch b/recipes/gettext/gettext-0.18.3.2/osx.patch new file mode 100644 index 0000000..b7e7196 --- /dev/null +++ b/recipes/gettext/gettext-0.18.3.2/osx.patch @@ -0,0 +1,25 @@ +diff -urN a/build-aux/install-reloc b/build-aux/install-reloc +--- a/build-aux/install-reloc 2014-01-07 07:15:12.000000000 +0100 ++++ b/build-aux/install-reloc 2014-05-15 00:31:38.721466744 +0200 +@@ -165,6 +165,9 @@ + "$srcdir"/setenv.c \ + "$srcdir"/strerror.c \ + "$srcdir"/c-ctype.c \ ++ "$srcdir"/stat.c \ ++ "$srcdir"/lstat.c \ ++ "$srcdir"/strerror-override.c \ + -o "$destprog.wrapper$exeext" + rc=$? + # Clean up object files left over in the current directory by the native C +@@ -181,7 +183,10 @@ + relocatable.o \ + setenv.o \ + strerror.o \ +- c-ctype.o ++ c-ctype.o \ ++ stat.o \ ++ lstat.o \ ++ strerror-override.o + test $rc = 0 || exit $? + # Clean up debugging information left over by the native C compiler on Mac OS X. + rm -rf "$destprog.wrapper$exeext.dSYM" diff --git a/recipes/gettext/gettext-0.18.3.2/shared-import.patch b/recipes/gettext/gettext-0.18.3.2/shared-import.patch new file mode 100644 index 0000000..dfae8e3 --- /dev/null +++ b/recipes/gettext/gettext-0.18.3.2/shared-import.patch @@ -0,0 +1,255 @@ +diff -urN a/build-aux/moopp b/build-aux/moopp +--- a/build-aux/moopp 2013-01-09 05:01:27.000000000 +0100 ++++ b/build-aux/moopp 2014-05-09 08:28:30.881250016 +0200 +@@ -516,7 +516,13 @@ + echo "#endif" + echo + echo "/* Functions that invoke the methods. */" ++ echo "#ifdef __cplusplus" ++ echo "extern \"C\" {" ++ echo "#endif" + echo "$all_methods" | sed -e "$sed_remove_empty_lines" -e 's/\([^A-Za-z_0-9]\)\([A-Za-z_0-9][A-Za-z_0-9]*\)[ ]*([^,)]*/\1'"${main_classname}_"'\2 ('"${main_classname}_t first_arg"'/' -e 's,^,extern ,' -e 's,$,;,' ++ echo "#ifdef __cplusplus" ++ echo "}" ++ echo "#endif" + echo + # Now come the implementation details. + echo "/* Type representing an implementation of ${main_classname}_t. */" +@@ -536,6 +542,9 @@ + echo " const struct ${main_classname}_implementation *vtable;" + echo "};" + echo ++ echo "#ifdef __cplusplus" ++ echo "extern \"C\" {" ++ echo "#endif" + echo "#if HAVE_INLINE" + echo + echo "/* Define the functions that invoke the methods as inline accesses to" +@@ -583,6 +592,9 @@ + fi + echo + echo "extern${dllexport_for_variables} const struct ${main_classname}_implementation ${main_classname}_vtable;" ++ echo "#ifdef __cplusplus" ++ echo "}" ++ echo "#endif" + echo + echo "#line "`expr $main_class_end_lineno + 1`" \"${source_header_file_base}\"" + cat "$source_header_file" | sed -e "1,${main_class_end_lineno}d" +@@ -617,7 +629,13 @@ + echo "#endif" + echo "#include \"${main_classname}.priv.h\"" + echo ++ echo "#ifdef __cplusplus" ++ echo "extern \"C\" {" ++ echo "#endif" + echo "const typeinfo_t ${main_classname}_typeinfo = { \"${main_classname}\" };" ++ echo "#ifdef __cplusplus" ++ echo "}" ++ echo "#endif" + echo + echo "static const typeinfo_t * const ${main_classname}_superclasses[] =" + echo " { ${main_classname}_SUPERCLASSES };" +diff -urN a/gettext-runtime/config.h.in b/gettext-runtime/config.h.in +--- a/gettext-runtime/config.h.in 2014-01-07 07:16:26.000000000 +0100 ++++ b/gettext-runtime/config.h.in 2014-05-09 08:28:30.901249667 +0200 +@@ -1560,7 +1560,7 @@ + + /* 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) ++# define DLL_VARIABLE __declspec(dllimport) + #else + # define DLL_VARIABLE + #endif +diff -urN a/gettext-runtime/configure.ac b/gettext-runtime/configure.ac +--- a/gettext-runtime/configure.ac 2013-07-24 04:26:51.000000000 +0200 ++++ b/gettext-runtime/configure.ac 2014-05-09 08:28:30.901249667 +0200 +@@ -95,7 +95,7 @@ + AH_BOTTOM([ + /* 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) ++# define DLL_VARIABLE __declspec(dllimport) + #else + # define DLL_VARIABLE + #endif +diff -urN a/gettext-runtime/intl/xsize.h b/gettext-runtime/intl/xsize.h +--- a/gettext-runtime/intl/xsize.h 2013-04-15 04:00:37.000000000 +0200 ++++ b/gettext-runtime/intl/xsize.h 2014-05-09 08:31:06.822612101 +0200 +@@ -27,6 +27,10 @@ + # include + #endif + ++#ifdef __cplusplus ++extern "C" { ++#endif ++ + _GL_INLINE_HEADER_BEGIN + #ifndef XSIZE_INLINE + # define XSIZE_INLINE _GL_INLINE +@@ -111,4 +115,8 @@ + + _GL_INLINE_HEADER_END + ++#ifdef __cplusplus ++} ++#endif ++ + #endif /* _XSIZE_H */ +diff -urN a/gettext-runtime/libasprintf/xsize.h b/gettext-runtime/libasprintf/xsize.h +--- a/gettext-runtime/libasprintf/xsize.h 2014-01-07 07:15:19.000000000 +0100 ++++ b/gettext-runtime/libasprintf/xsize.h 2014-05-09 08:30:45.302971244 +0200 +@@ -27,6 +27,11 @@ + # include + #endif + ++ ++#ifdef __cplusplus ++extern "C" { ++#endif ++ + _GL_INLINE_HEADER_BEGIN + #ifndef XSIZE_INLINE + # define XSIZE_INLINE _GL_INLINE +@@ -111,4 +116,8 @@ + + _GL_INLINE_HEADER_END + ++#ifdef __cplusplus ++} ++#endif ++ + #endif /* _XSIZE_H */ +diff -urN a/gettext-tools/config.h.in b/gettext-tools/config.h.in +--- a/gettext-tools/config.h.in 2014-01-07 07:18:47.000000000 +0100 ++++ b/gettext-tools/config.h.in 2014-05-09 08:28:30.905249599 +0200 +@@ -2695,7 +2695,7 @@ + + /* On Windows, variables that may be in a DLL must be marked specially. */ + #if ((defined _MSC_VER && defined _DLL) || defined WOE32DLL) && !defined IN_RELOCWRAPPER +-# define DLL_VARIABLE __declspec (dllimport) ++# define DLL_VARIABLE __declspec(dllimport) + #else + # define DLL_VARIABLE + #endif +diff -urN a/gettext-tools/configure.ac b/gettext-tools/configure.ac +--- a/gettext-tools/configure.ac 2013-12-20 04:19:45.000000000 +0100 ++++ b/gettext-tools/configure.ac 2014-05-09 08:28:30.905249599 +0200 +@@ -280,7 +280,7 @@ + + /* On Windows, variables that may be in a DLL must be marked specially. */ + #if ((defined _MSC_VER && defined _DLL) || defined WOE32DLL) && !defined IN_RELOCWRAPPER +-# define DLL_VARIABLE __declspec (dllimport) ++# define DLL_VARIABLE __declspec(dllimport) + #else + # define DLL_VARIABLE + #endif +diff -urN a/gettext-tools/gnulib-lib/xsize.h b/gettext-tools/gnulib-lib/xsize.h +--- a/gettext-tools/gnulib-lib/xsize.h 2014-01-07 07:15:41.000000000 +0100 ++++ b/gettext-tools/gnulib-lib/xsize.h 2014-05-09 08:31:53.385849907 +0200 +@@ -27,6 +27,11 @@ + # include + #endif + ++ ++#ifdef __cplusplus ++extern "C" { ++#endif ++ + _GL_INLINE_HEADER_BEGIN + #ifndef XSIZE_INLINE + # define XSIZE_INLINE _GL_INLINE +@@ -111,4 +116,8 @@ + + _GL_INLINE_HEADER_END + ++#ifdef __cplusplus ++} ++#endif ++ + #endif /* _XSIZE_H */ +diff -urN a/gettext-tools/libgettextpo/xsize.h b/gettext-tools/libgettextpo/xsize.h +--- a/gettext-tools/libgettextpo/xsize.h 2014-01-07 07:16:13.000000000 +0100 ++++ b/gettext-tools/libgettextpo/xsize.h 2014-05-09 08:31:29.978229297 +0200 +@@ -27,6 +27,10 @@ + # include + #endif + ++#ifdef __cplusplus ++extern "C" { ++#endif ++ + _GL_INLINE_HEADER_BEGIN + #ifndef XSIZE_INLINE + # define XSIZE_INLINE _GL_INLINE +@@ -111,4 +115,8 @@ + + _GL_INLINE_HEADER_END + ++#ifdef __cplusplus ++} ++#endif ++ + #endif /* _XSIZE_H */ +diff -urN a/gettext-tools/src/Makefile.am b/gettext-tools/src/Makefile.am +--- a/gettext-tools/src/Makefile.am 2013-12-20 04:19:45.000000000 +0100 ++++ b/gettext-tools/src/Makefile.am 2014-05-09 08:28:30.905249599 +0200 +@@ -394,47 +394,47 @@ + else + libgettextsrc_la_LINK = $(LIBTOOL) $(AM_V_lt) --tag=CXX \ + $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=link \ +- $(CXXLD) $(AM_CXXFLAGS) $(CXXFLAGS) $(libgettextsrc_la_LDFLAGS) $(LDFLAGS) \ ++ $(CXXLD) -static $(AM_CXXFLAGS) $(CXXFLAGS) $(libgettextsrc_la_LDFLAGS) $(LDFLAGS) \ + -o $@ + msgattrib_LINK = $(LIBTOOL) $(AM_V_lt) --tag=CXX \ + $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=link \ +- $(CXXLD) $(AM_CXXFLAGS) $(CXXFLAGS) $(msgattrib_LDFLAGS) $(LDFLAGS) \ ++ $(CXXLD) -static $(AM_CXXFLAGS) $(CXXFLAGS) $(msgattrib_LDFLAGS) $(LDFLAGS) \ + -o $@ + msgcat_LINK = $(LIBTOOL) $(AM_V_lt) --tag=CXX \ + $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=link \ +- $(CXXLD) $(AM_CXXFLAGS) $(CXXFLAGS) $(msgcat_LDFLAGS) $(LDFLAGS) \ ++ $(CXXLD) -static $(AM_CXXFLAGS) $(CXXFLAGS) $(msgcat_LDFLAGS) $(LDFLAGS) \ + -o $@ + msgcomm_LINK = $(LIBTOOL) $(AM_V_lt) --tag=CXX \ + $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=link \ +- $(CXXLD) $(AM_CXXFLAGS) $(CXXFLAGS) $(msgcomm_LDFLAGS) $(LDFLAGS) \ ++ $(CXXLD) -static $(AM_CXXFLAGS) $(CXXFLAGS) $(msgcomm_LDFLAGS) $(LDFLAGS) \ + -o $@ + msgconv_LINK = $(LIBTOOL) $(AM_V_lt) --tag=CXX \ + $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=link \ +- $(CXXLD) $(AM_CXXFLAGS) $(CXXFLAGS) $(msgconv_LDFLAGS) $(LDFLAGS) \ ++ $(CXXLD) -static $(AM_CXXFLAGS) $(CXXFLAGS) $(msgconv_LDFLAGS) $(LDFLAGS) \ + -o $@ + msgen_LINK = $(LIBTOOL) $(AM_V_lt) --tag=CXX \ + $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=link \ +- $(CXXLD) $(AM_CXXFLAGS) $(CXXFLAGS) $(msgen_LDFLAGS) $(LDFLAGS) \ ++ $(CXXLD) -static $(AM_CXXFLAGS) $(CXXFLAGS) $(msgen_LDFLAGS) $(LDFLAGS) \ + -o $@ + msgfilter_LINK = $(LIBTOOL) $(AM_V_lt) --tag=CXX \ + $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=link \ +- $(CXXLD) $(AM_CXXFLAGS) $(CXXFLAGS) $(msgfilter_LDFLAGS) $(LDFLAGS) \ ++ $(CXXLD) -static $(AM_CXXFLAGS) $(CXXFLAGS) $(msgfilter_LDFLAGS) $(LDFLAGS) \ + -o $@ + msggrep_LINK = $(LIBTOOL) $(AM_V_lt) --tag=CXX \ + $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=link \ +- $(CXXLD) $(AM_CXXFLAGS) $(CXXFLAGS) $(msggrep_LDFLAGS) $(LDFLAGS) \ ++ $(CXXLD) -static $(AM_CXXFLAGS) $(CXXFLAGS) $(msggrep_LDFLAGS) $(LDFLAGS) \ + -o $@ + msgmerge_LINK = $(LIBTOOL) $(AM_V_lt) --tag=CXX \ + $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=link \ +- $(CXXLD) $(msgmerge_CXXFLAGS) $(CXXFLAGS) $(msgmerge_LDFLAGS) $(LDFLAGS) \ ++ $(CXXLD) -static $(msgmerge_CXXFLAGS) $(CXXFLAGS) $(msgmerge_LDFLAGS) $(LDFLAGS) \ + -o $@ + msguniq_LINK = $(LIBTOOL) $(AM_V_lt) --tag=CXX \ + $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=link \ +- $(CXXLD) $(AM_CXXFLAGS) $(CXXFLAGS) $(msguniq_LDFLAGS) $(LDFLAGS) \ ++ $(CXXLD) -static $(AM_CXXFLAGS) $(CXXFLAGS) $(msguniq_LDFLAGS) $(LDFLAGS) \ + -o $@ + xgettext_LINK = $(LIBTOOL) $(AM_V_lt) --tag=CXX \ + $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=link \ +- $(CXXLD) $(AM_CXXFLAGS) $(CXXFLAGS) $(xgettext_LDFLAGS) $(LDFLAGS) \ ++ $(CXXLD) -static $(AM_CXXFLAGS) $(CXXFLAGS) $(xgettext_LDFLAGS) $(LDFLAGS) \ + -o $@ + endif + diff --git a/recipes/gettext/gettext.inc b/recipes/gettext/gettext.inc index 97dfa2a..fac6ef7 100644 --- a/recipes/gettext/gettext.inc +++ b/recipes/gettext/gettext.inc @@ -4,7 +4,7 @@ HOMEPAGE = "http://www.gnu.org/software/gettext/gettext.html" RECIPE_TYPES = "machine native sdk" -inherit c++ autotools library make-vpath +inherit c++ autotools-autoreconf library make-vpath DEPENDS_AUTORECONF = "" require conf/fetch/gnu.conf @@ -14,15 +14,15 @@ DEPENDS = "libiconv libm" DEPENDS += "${DEPENDS_LIBNCURSES}" DEPENDS_LIBNCURSES = "libncurses" -DEPENDS_LIBNCURSES:HOST_OS_mingw32 = "" +DEPENDS_LIBNCURSES:HOST_LIBC_mingw = "" DEPENDS += "${DEPENDS_LIBDL}" DEPENDS_LIBDL = "libdl" -DEPENDS_LIBDL:HOST_OS_mingw32 = "" +DEPENDS_LIBDL:HOST_LIBC_mingw = "" DEPENDS += "${DEPENDS_LIBPTHREAD}" DEPENDS_LIBPTHREAD = "libpthread" -DEPENDS_LIBPTHREAD:HOST_OS_mingw32 = "" +DEPENDS_LIBPTHREAD:HOST_LIBC_mingw = "" DEPENDS += "${DEPENDS_SELF_NATIVE}" DEPENDS_SELF_NATIVE = "native:gettext" @@ -33,7 +33,7 @@ acpaths = "-I ${S}/gnulib-local/m4/ \ -I ${S}/gettext-tools/m4" EXTRA_OECONF += "\ ---disable-rpath --enable-relocatable \ +--disable-rpath --disable-relocatable \ --disable-dependency-tracking \ --disable-java --disable-native-java \ --disable-csharp \ @@ -49,20 +49,18 @@ EXTRA_OECONF += "\ --with-included-glib \ " -CFLAGS += "-O1" - RECIPE_FLAGS += "nls" EXTRA_OECONF += "${EXTRA_OECONF_NLS}" EXTRA_OECONF_NLS = " --disable-nls" EXTRA_OECONF_NLS:USE_nls = " --enable-nls" EXTRA_OECONF_NLS:native = " --enable-nls" -EXTRA_OECONF_NLS:HOST_OS_mingw32 = " --enable-nls" +EXTRA_OECONF_NLS:HOST_LIBC_mingw = " --enable-nls" EXTRA_OECONF_NLS:HOST_KERNEL_darwin = " --enable-nls" EXTRA_OECONF += "${EXTRA_OECONF_GETTEXT}" EXTRA_OECONF_GETTEXT = "" EXTRA_OECONF_GETTEXT:native = "--disable-curses --with-included-gettext" -EXTRA_OECONF_GETTEXT:HOST_OS_mingw32 = "--disable-curses --with-included-gettext" +EXTRA_OECONF_GETTEXT:HOST_LIBC_mingw = "--disable-curses --with-included-gettext" FILES_${PN} += "${libdir}/gettext ${datadir}/gettext" COMMON_DEPENDS = "libintl libgettextpo libgettextlib \ @@ -70,6 +68,10 @@ COMMON_DEPENDS = "libintl libgettextpo libgettextlib \ DEPENDS_${PN} = "${COMMON_DEPENDS}" RDEPENDS_${PN} = "${COMMON_DEPENDS}" +do_autoreconf () { + bash ./autogen.sh --quick --skip-gnulib +} + inherit auto-package-utils AUTO_PACKAGE_UTILS = "autopoint envsubst gettext gettextize gettext.sh \ msgattrib msgcat msgcmp msgcomm msgconv msgen msgexec msgfilter \ diff --git a/recipes/gettext/gettext_0.18.1.1.oe b/recipes/gettext/gettext_0.18.1.1.oe deleted file mode 100644 index fa13e47..0000000 --- a/recipes/gettext/gettext_0.18.1.1.oe +++ /dev/null @@ -1,11 +0,0 @@ -LICENSE = "GPL-3.0+ & LGPL-2.1+" - -require gettext.inc - -SRC_URI += "file://ac-fix.patch" -SRC_URI += "file://gettext-0.18-gettextpo-woe32-memchr.patch" -SRC_URI += "file://gettext0.18.1.1-9ubuntu1-glibc-2.16-fix.patch" -SRC_URI:>HOST_KERNEL_darwin = " file://osx.patch" - -SRC_URI:>HOST_LIBC_mingw = " file://libtool-bindir.patch" -export sharedlibdir diff --git a/recipes/gettext/gettext_0.18.1.1.oe.sig b/recipes/gettext/gettext_0.18.1.1.oe.sig deleted file mode 100644 index c0714be..0000000 --- a/recipes/gettext/gettext_0.18.1.1.oe.sig +++ /dev/null @@ -1 +0,0 @@ -5009deb02f67fc3c59c8ce6b82408d1d35d4e38f gettext-0.18.1.1.tar.gz diff --git a/recipes/gettext/gettext_0.18.3.2.oe b/recipes/gettext/gettext_0.18.3.2.oe new file mode 100644 index 0000000..2dac64a --- /dev/null +++ b/recipes/gettext/gettext_0.18.3.2.oe @@ -0,0 +1,7 @@ +LICENSE = "GPL-3.0+ & LGPL-2.1+" + +require gettext.inc + +SRC_URI += "file://120-Fix-Woe32-link-errors-when-compiling-with-O0.patch" +SRC_URI += "file://shared-import.patch" +SRC_URI:>HOST_KERNEL_darwin = " file://osx.patch" diff --git a/recipes/gettext/gettext_0.18.3.2.oe.sig b/recipes/gettext/gettext_0.18.3.2.oe.sig new file mode 100644 index 0000000..0db4675 --- /dev/null +++ b/recipes/gettext/gettext_0.18.3.2.oe.sig @@ -0,0 +1 @@ +a2dc46d788edb0078ab20da7bd194bdb6da2f0d9 gettext-0.18.3.2.tar.gz