OSDN Git Service

Add libintl
authorFrank Li <lznuaa@gmail.com>
Sat, 4 Apr 2009 04:23:08 +0000 (12:23 +0800)
committerFrank Li <lznuaa@gmail.com>
Sat, 4 Apr 2009 04:23:08 +0000 (12:23 +0800)
ext/libintl/README.txt [new file with mode: 0644]
ext/libintl/diff-0.14.4.txt [new file with mode: 0644]
ext/libintl/libintl3-win32/inc/libintl.h [new file with mode: 0644]
ext/libintl/libintl3-win32/lib/intl3_tsvn.exp [new file with mode: 0644]
ext/libintl/libintl3-win32/lib/intl3_tsvn.lib [new file with mode: 0644]
ext/libintl/libintl3-x64/inc/libintl.h [new file with mode: 0644]
ext/libintl/libintl3-x64/lib/intl3_tsvn.exp [new file with mode: 0644]
ext/libintl/libintl3-x64/lib/intl3_tsvn.lib [new file with mode: 0644]

diff --git a/ext/libintl/README.txt b/ext/libintl/README.txt
new file mode 100644 (file)
index 0000000..b23613b
--- /dev/null
@@ -0,0 +1,5 @@
+This is the modified GNU libintl used by Subversion on Win32. It is\r
+based on the gettext-0.14.4 sources provided by the GnuWin32\r
+project. The file diff-0.14.4.txt shows the changes that were made to\r
+build this library.\r
+\r
diff --git a/ext/libintl/diff-0.14.4.txt b/ext/libintl/diff-0.14.4.txt
new file mode 100644 (file)
index 0000000..976f32b
--- /dev/null
@@ -0,0 +1,64 @@
+diff -ur gettext-0.14.1-src\gettext-runtime/config.h.msvc svn-gettext-runtime/config.h.msvc\r
+--- gettext-0.14.1-src\gettext-runtime/config.h.msvc   2004-01-29 18:17:46.000000000 +0100\r
++++ svn-gettext-runtime/config.h.msvc  2005-02-15 10:55:59.615625000 +0100\r
+@@ -152,7 +152,7 @@\r
+ #undef HAVE_GETUID\r
\r
+ /* Define if you have the iconv() function. */\r
+-#define HAVE_ICONV 1\r
++#undef HAVE_ICONV\r
\r
+ /* Define if you have the 'intmax_t' type in <stdint.h> or <inttypes.h>. */\r
+ #undef HAVE_INTMAX_T\r
+diff -ur gettext-0.14.1-src\gettext-runtime/intl/Makefile.msvc svn-gettext-runtime/intl/Makefile.msvc\r
+--- gettext-0.14.1-src\gettext-runtime/intl/Makefile.msvc      2003-06-19 16:32:00.000000000 +0200\r
++++ svn-gettext-runtime/intl/Makefile.msvc     2005-02-15 10:57:29.428125000 +0100\r
+@@ -76,11 +76,11 @@\r
+ DEBUGFLAGS = -Z7\r
+ !else\r
+ # Some people prefer -O2 -G6 instead of -O1, but -O2 is not reliable in MSVC5.\r
+-OPTIMFLAGS = -D_NDEBUG -O1\r
+-DEBUGFLAGS =\r
++OPTIMFLAGS = -FD -O2 -GX -Zi\r
++DEBUGFLAGS = -Zi\r
+ !endif\r
\r
+-CFLAGS = $(MFLAGS) $(WARN_CFLAGS) $(OPTIMFLAGS) -DHAVE_CONFIG_H -DLOCALEDIR=\"$(IIlocaledir)\" -DLOCALE_ALIAS_PATH=\"$(IIaliaspath)\" -DIN_LIBINTL -DENABLE_RELOCATABLE=1 -DIN_LIBRARY -DINSTALLDIR=\"$(IIbindir)\" -DNO_XMALLOC -Dset_relocation_prefix=libintl_set_relocation_prefix -Drelocate=libintl_relocate -DDEPENDS_ON_LIBICONV=1\r
++CFLAGS = $(MFLAGS) $(WARN_CFLAGS) $(OPTIMFLAGS) -DHAVE_CONFIG_H -DLOCALEDIR=\"$(IIlocaledir)\" -DLOCALE_ALIAS_PATH=\"$(IIaliaspath)\" -DIN_LIBINTL -DENABLE_RELOCATABLE=1 -DIN_LIBRARY -DINSTALLDIR=\"$(IIbindir)\" -DNO_XMALLOC -Dset_relocation_prefix=libintl_set_relocation_prefix -Drelocate=libintl_relocate -DDEPENDS_ON_LIBICONV=0\r
\r
+ INCLUDES = -I. -I.. -I$(includedir)\r
\r
+@@ -103,7 +103,7 @@\r
\r
+ RESOURCES = intl.res\r
\r
+-all : intl.lib libintl.h\r
++all : intl3_svn.lib libintl.h\r
\r
+ libgnuintl.h :\r
+ !if !$(DLL)\r
+@@ -183,18 +183,18 @@\r
\r
+ !if !$(DLL)\r
\r
+-intl.lib : $(OBJECTS)\r
+-      -$(RM) intl.lib\r
+-      $(AR) $(AR_FLAGS)intl.lib $(OBJECTS)\r
++intl3_svn.lib : $(OBJECTS)\r
++      -$(RM) intl3_svn.lib\r
++      $(AR) $(AR_FLAGS)intl3_svn.lib $(OBJECTS)\r
\r
+ !else\r
\r
+ # intl.dll and intl.lib are created together.\r
+-intl.lib : $(OBJECTS) $(RESOURCES)\r
+-      $(CC) $(MFLAGS) $(DEBUGFLAGS) -LD $(OBJECTS) $(libdir)\iconv.lib $(RESOURCES) -Feintl.dll\r
++intl3_svn.lib : $(OBJECTS) $(RESOURCES)\r
++      $(CC) $(MFLAGS) $(DEBUGFLAGS) -LD $(OBJECTS) $(RESOURCES) -Feintl3_svn.dll\r
\r
+ intl.res : $(srcdir)\..\windows\intl.rc\r
+-      rc -Fo intl.res $(srcdir)\..\windows\intl.rc\r
++      rc -Fo intl.res $(srcdir)\libintl3-dll.rc\r
\r
+ !endif\r
\r
diff --git a/ext/libintl/libintl3-win32/inc/libintl.h b/ext/libintl/libintl3-win32/inc/libintl.h
new file mode 100644 (file)
index 0000000..015ff5c
--- /dev/null
@@ -0,0 +1,389 @@
+/* Message catalogs for internationalization.\r
+   Copyright (C) 1995-1997, 2000-2004 Free Software Foundation, Inc.\r
+\r
+   This program is free software; you can redistribute it and/or modify it\r
+   under the terms of the GNU Library General Public License as published\r
+   by the Free Software Foundation; either version 2, or (at your option)\r
+   any later version.\r
+\r
+   This program is distributed in the hope that it will be useful,\r
+   but WITHOUT ANY WARRANTY; without even the implied warranty of\r
+   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU\r
+   Library General Public License for more details.\r
+\r
+   You should have received a copy of the GNU Library General Public\r
+   License along with this program; if not, write to the Free Software\r
+   Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307,\r
+   USA.  */\r
+\r
+#ifndef _LIBINTL_H\r
+#define _LIBINTL_H     1\r
+\r
+#ifdef BUILDING_LIBINTL\r
+#define LIBINTL_DLL_EXPORTED __declspec(dllexport)\r
+#else\r
+#define LIBINTL_DLL_EXPORTED __declspec(dllimport)\r
+#endif\r
+\r
+#include <locale.h>\r
+\r
+/* The LC_MESSAGES locale category is the category used by the functions\r
+   gettext() and dgettext().  It is specified in POSIX, but not in ANSI C.\r
+   On systems that don't define it, use an arbitrary value instead.\r
+   On Solaris, <locale.h> defines __LOCALE_H (or _LOCALE_H in Solaris 2.5)\r
+   then includes <libintl.h> (i.e. this file!) and then only defines\r
+   LC_MESSAGES.  To avoid a redefinition warning, don't define LC_MESSAGES\r
+   in this case.  */\r
+#if !defined LC_MESSAGES && !(defined __LOCALE_H || (defined _LOCALE_H && defined __sun))\r
+# define LC_MESSAGES 1729\r
+#endif\r
+\r
+/* We define an additional symbol to signal that we use the GNU\r
+   implementation of gettext.  */\r
+#define __USE_GNU_GETTEXT 1\r
+\r
+/* Provide information about the supported file formats.  Returns the\r
+   maximum minor revision number supported for a given major revision.  */\r
+#define __GNU_GETTEXT_SUPPORTED_REVISION(major) \\r
+  ((major) == 0 || (major) == 1 ? 1 : -1)\r
+\r
+/* Resolve a platform specific conflict on DJGPP.  GNU gettext takes\r
+   precedence over _conio_gettext.  */\r
+#ifdef __DJGPP__\r
+# undef gettext\r
+#endif\r
+\r
+#ifdef __cplusplus\r
+extern "C" {\r
+#endif\r
+\r
+\r
+/* We redirect the functions to those prefixed with "libintl_".  This is\r
+   necessary, because some systems define gettext/textdomain/... in the C\r
+   library (namely, Solaris 2.4 and newer, and GNU libc 2.0 and newer).\r
+   If we used the unprefixed names, there would be cases where the\r
+   definition in the C library would override the one in the libintl.so\r
+   shared library.  Recall that on ELF systems, the symbols are looked\r
+   up in the following order:\r
+     1. in the executable,\r
+     2. in the shared libraries specified on the link command line, in order,\r
+     3. in the dependencies of the shared libraries specified on the link\r
+        command line,\r
+     4. in the dlopen()ed shared libraries, in the order in which they were\r
+        dlopen()ed.\r
+   The definition in the C library would override the one in libintl.so if\r
+   either\r
+     * -lc is given on the link command line and -lintl isn't, or\r
+     * -lc is given on the link command line before -lintl, or\r
+     * libintl.so is a dependency of a dlopen()ed shared library but not\r
+       linked to the executable at link time.\r
+   Since Solaris gettext() behaves differently than GNU gettext(), this\r
+   would be unacceptable.\r
+\r
+   The redirection happens by default through macros in C, so that &gettext\r
+   is independent of the compilation unit, but through inline functions in\r
+   C++, in order not to interfere with the name mangling of class fields or\r
+   class methods called 'gettext'.  */\r
+\r
+/* The user can define _INTL_REDIRECT_INLINE or _INTL_REDIRECT_MACROS.\r
+   If he doesn't, we choose the method.  A third possible method is\r
+   _INTL_REDIRECT_ASM, supported only by GCC.  */\r
+#if !(defined _INTL_REDIRECT_INLINE || defined _INTL_REDIRECT_MACROS)\r
+# if __GNUC__ >= 2 && !defined __APPLE_CC__ && !defined __MINGW32__ && !(__GNUC__ == 2 && defined _AIX) && (defined __STDC__ || defined __cplusplus)\r
+#  define _INTL_REDIRECT_ASM\r
+# else\r
+#  ifdef __cplusplus\r
+#   define _INTL_REDIRECT_INLINE\r
+#  else\r
+#   define _INTL_REDIRECT_MACROS\r
+#  endif\r
+# endif\r
+#endif\r
+/* Auxiliary macros.  */\r
+#ifdef _INTL_REDIRECT_ASM\r
+# define _INTL_ASM(cname) __asm__ (_INTL_ASMNAME (__USER_LABEL_PREFIX__, #cname))\r
+# define _INTL_ASMNAME(prefix,cnamestring) _INTL_STRINGIFY (prefix) cnamestring\r
+# define _INTL_STRINGIFY(prefix) #prefix\r
+#else\r
+# define _INTL_ASM(cname)\r
+#endif\r
+\r
+/* Look up MSGID in the current default message catalog for the current\r
+   LC_MESSAGES locale.  If not found, returns MSGID itself (the default\r
+   text).  */\r
+#ifdef _INTL_REDIRECT_INLINE\r
+extern LIBINTL_DLL_EXPORTED char *libintl_gettext (const char *__msgid);\r
+static inline char *gettext (const char *__msgid)\r
+{\r
+  return libintl_gettext (__msgid);\r
+}\r
+#else\r
+#ifdef _INTL_REDIRECT_MACROS\r
+# define gettext libintl_gettext\r
+#endif\r
+extern LIBINTL_DLL_EXPORTED char *gettext (const char *__msgid)\r
+       _INTL_ASM (libintl_gettext);\r
+#endif\r
+\r
+/* Look up MSGID in the DOMAINNAME message catalog for the current\r
+   LC_MESSAGES locale.  */\r
+#ifdef _INTL_REDIRECT_INLINE\r
+extern LIBINTL_DLL_EXPORTED char *libintl_dgettext (const char *__domainname, const char *__msgid);\r
+static inline char *dgettext (const char *__domainname, const char *__msgid)\r
+{\r
+  return libintl_dgettext (__domainname, __msgid);\r
+}\r
+#else\r
+#ifdef _INTL_REDIRECT_MACROS\r
+# define dgettext libintl_dgettext\r
+#endif\r
+extern LIBINTL_DLL_EXPORTED char *dgettext (const char *__domainname, const char *__msgid)\r
+       _INTL_ASM (libintl_dgettext);\r
+#endif\r
+\r
+/* Look up MSGID in the DOMAINNAME message catalog for the current CATEGORY\r
+   locale.  */\r
+#ifdef _INTL_REDIRECT_INLINE\r
+extern LIBINTL_DLL_EXPORTED char *libintl_dcgettext (const char *__domainname, const char *__msgid,\r
+                               int __category);\r
+static inline char *dcgettext (const char *__domainname, const char *__msgid,\r
+                              int __category)\r
+{\r
+  return libintl_dcgettext (__domainname, __msgid, __category);\r
+}\r
+#else\r
+#ifdef _INTL_REDIRECT_MACROS\r
+# define dcgettext libintl_dcgettext\r
+#endif\r
+extern LIBINTL_DLL_EXPORTED char *dcgettext (const char *__domainname, const char *__msgid,\r
+                       int __category)\r
+       _INTL_ASM (libintl_dcgettext);\r
+#endif\r
+\r
+\r
+/* Similar to `gettext' but select the plural form corresponding to the\r
+   number N.  */\r
+#ifdef _INTL_REDIRECT_INLINE\r
+extern LIBINTL_DLL_EXPORTED char *libintl_ngettext (const char *__msgid1, const char *__msgid2,\r
+                              unsigned long int __n);\r
+static inline char *ngettext (const char *__msgid1, const char *__msgid2,\r
+                             unsigned long int __n)\r
+{\r
+  return libintl_ngettext (__msgid1, __msgid2, __n);\r
+}\r
+#else\r
+#ifdef _INTL_REDIRECT_MACROS\r
+# define ngettext libintl_ngettext\r
+#endif\r
+extern LIBINTL_DLL_EXPORTED char *ngettext (const char *__msgid1, const char *__msgid2,\r
+                      unsigned long int __n)\r
+       _INTL_ASM (libintl_ngettext);\r
+#endif\r
+\r
+/* Similar to `dgettext' but select the plural form corresponding to the\r
+   number N.  */\r
+#ifdef _INTL_REDIRECT_INLINE\r
+extern LIBINTL_DLL_EXPORTED char *libintl_dngettext (const char *__domainname, const char *__msgid1,\r
+                               const char *__msgid2, unsigned long int __n);\r
+static inline char *dngettext (const char *__domainname, const char *__msgid1,\r
+                              const char *__msgid2, unsigned long int __n)\r
+{\r
+  return libintl_dngettext (__domainname, __msgid1, __msgid2, __n);\r
+}\r
+#else\r
+#ifdef _INTL_REDIRECT_MACROS\r
+# define dngettext libintl_dngettext\r
+#endif\r
+extern LIBINTL_DLL_EXPORTED char *dngettext (const char *__domainname,\r
+                       const char *__msgid1, const char *__msgid2,\r
+                       unsigned long int __n)\r
+       _INTL_ASM (libintl_dngettext);\r
+#endif\r
+\r
+/* Similar to `dcgettext' but select the plural form corresponding to the\r
+   number N.  */\r
+#ifdef _INTL_REDIRECT_INLINE\r
+extern LIBINTL_DLL_EXPORTED char *libintl_dcngettext (const char *__domainname,\r
+                                const char *__msgid1, const char *__msgid2,\r
+                                unsigned long int __n, int __category);\r
+static inline char *dcngettext (const char *__domainname,\r
+                               const char *__msgid1, const char *__msgid2,\r
+                               unsigned long int __n, int __category)\r
+{\r
+  return libintl_dcngettext (__domainname, __msgid1, __msgid2, __n, __category);\r
+}\r
+#else\r
+#ifdef _INTL_REDIRECT_MACROS\r
+# define dcngettext libintl_dcngettext\r
+#endif\r
+extern LIBINTL_DLL_EXPORTED char *dcngettext (const char *__domainname,\r
+                        const char *__msgid1, const char *__msgid2,\r
+                        unsigned long int __n, int __category)\r
+       _INTL_ASM (libintl_dcngettext);\r
+#endif\r
+\r
+\r
+/* Set the current default message catalog to DOMAINNAME.\r
+   If DOMAINNAME is null, return the current default.\r
+   If DOMAINNAME is "", reset to the default of "messages".  */\r
+#ifdef _INTL_REDIRECT_INLINE\r
+extern LIBINTL_DLL_EXPORTED char *libintl_textdomain (const char *__domainname);\r
+static inline char *textdomain (const char *__domainname)\r
+{\r
+  return libintl_textdomain (__domainname);\r
+}\r
+#else\r
+#ifdef _INTL_REDIRECT_MACROS\r
+# define textdomain libintl_textdomain\r
+#endif\r
+extern LIBINTL_DLL_EXPORTED char *textdomain (const char *__domainname)\r
+       _INTL_ASM (libintl_textdomain);\r
+#endif\r
+\r
+/* Specify that the DOMAINNAME message catalog will be found\r
+   in DIRNAME rather than in the system locale data base.  */\r
+#ifdef _INTL_REDIRECT_INLINE\r
+extern LIBINTL_DLL_EXPORTED char *libintl_bindtextdomain (const char *__domainname,\r
+                                    const char *__dirname);\r
+static inline char *bindtextdomain (const char *__domainname,\r
+                                   const char *__dirname)\r
+{\r
+  return libintl_bindtextdomain (__domainname, __dirname);\r
+}\r
+#else\r
+#ifdef _INTL_REDIRECT_MACROS\r
+# define bindtextdomain libintl_bindtextdomain\r
+#endif\r
+extern LIBINTL_DLL_EXPORTED char *bindtextdomain (const char *__domainname, const char *__dirname)\r
+       _INTL_ASM (libintl_bindtextdomain);\r
+#endif\r
+\r
+/* Specify the character encoding in which the messages from the\r
+   DOMAINNAME message catalog will be returned.  */\r
+#ifdef _INTL_REDIRECT_INLINE\r
+extern LIBINTL_DLL_EXPORTED char *libintl_bind_textdomain_codeset (const char *__domainname,\r
+                                             const char *__codeset);\r
+static inline char *bind_textdomain_codeset (const char *__domainname,\r
+                                            const char *__codeset)\r
+{\r
+  return libintl_bind_textdomain_codeset (__domainname, __codeset);\r
+}\r
+#else\r
+#ifdef _INTL_REDIRECT_MACROS\r
+# define bind_textdomain_codeset libintl_bind_textdomain_codeset\r
+#endif\r
+extern LIBINTL_DLL_EXPORTED char *bind_textdomain_codeset (const char *__domainname,\r
+                                     const char *__codeset)\r
+       _INTL_ASM (libintl_bind_textdomain_codeset);\r
+#endif\r
+\r
+\r
+/* Support for format strings with positions in *printf(), following the\r
+   POSIX/XSI specification.\r
+   Note: These replacements for the *printf() functions are visible only\r
+   in source files that #include <libintl.h> or #include "gettext.h".\r
+   Packages that use *printf() in source files that don't refer to _()\r
+   or gettext() but for which the format string could be the return value\r
+   of _() or gettext() need to add this #include.  Oh well.  */\r
+\r
+#if !0\r
+\r
+#include <stdio.h>\r
+#include <stddef.h>\r
+\r
+/* Get va_list.  */\r
+#if __STDC__ || defined __cplusplus || defined _MSC_VER\r
+# include <stdarg.h>\r
+#else\r
+# include <varargs.h>\r
+#endif\r
+\r
+#undef fprintf\r
+#define fprintf libintl_fprintf\r
+extern LIBINTL_DLL_EXPORTED int fprintf (FILE *, const char *, ...);\r
+#undef vfprintf\r
+#define vfprintf libintl_vfprintf\r
+extern LIBINTL_DLL_EXPORTED int vfprintf (FILE *, const char *, va_list);\r
+\r
+#undef printf\r
+#define printf libintl_printf\r
+extern LIBINTL_DLL_EXPORTED int printf (const char *, ...);\r
+#undef vprintf\r
+#define vprintf libintl_vprintf\r
+extern LIBINTL_DLL_EXPORTED int vprintf (const char *, va_list);\r
+\r
+#undef sprintf\r
+#define sprintf libintl_sprintf\r
+extern LIBINTL_DLL_EXPORTED int sprintf (char *, const char *, ...);\r
+#undef vsprintf\r
+#define vsprintf libintl_vsprintf\r
+extern LIBINTL_DLL_EXPORTED int vsprintf (char *, const char *, va_list);\r
+\r
+#if 0\r
+\r
+#undef snprintf\r
+#define snprintf libintl_snprintf\r
+extern LIBINTL_DLL_EXPORTED int snprintf (char *, size_t, const char *, ...);\r
+#undef vsnprintf\r
+#define vsnprintf libintl_vsnprintf\r
+extern LIBINTL_DLL_EXPORTED int vsnprintf (char *, size_t, const char *, va_list);\r
+\r
+#endif\r
+\r
+#if 0\r
+\r
+#undef asprintf\r
+#define asprintf libintl_asprintf\r
+extern LIBINTL_DLL_EXPORTED int asprintf (char **, const char *, ...);\r
+#undef vasprintf\r
+#define vasprintf libintl_vasprintf\r
+extern LIBINTL_DLL_EXPORTED int vasprintf (char **, const char *, va_list);\r
+\r
+#endif\r
+\r
+#if 1\r
+\r
+#undef fwprintf\r
+#define fwprintf libintl_fwprintf\r
+extern LIBINTL_DLL_EXPORTED int fwprintf (FILE *, const wchar_t *, ...);\r
+#undef vfwprintf\r
+#define vfwprintf libintl_vfwprintf\r
+extern LIBINTL_DLL_EXPORTED int vfwprintf (FILE *, const wchar_t *, va_list);\r
+\r
+#undef wprintf\r
+#define wprintf libintl_wprintf\r
+extern LIBINTL_DLL_EXPORTED int wprintf (const wchar_t *, ...);\r
+#undef vwprintf\r
+#define vwprintf libintl_vwprintf\r
+extern LIBINTL_DLL_EXPORTED int vwprintf (const wchar_t *, va_list);\r
+\r
+#undef swprintf\r
+#define swprintf libintl_swprintf\r
+extern LIBINTL_DLL_EXPORTED int swprintf (wchar_t *, size_t, const wchar_t *, ...);\r
+#undef vswprintf\r
+#define vswprintf libintl_vswprintf\r
+extern LIBINTL_DLL_EXPORTED int vswprintf (wchar_t *, size_t, const wchar_t *, va_list);\r
+\r
+#endif\r
+\r
+#endif\r
+\r
+\r
+/* Support for relocatable packages.  */\r
+\r
+/* Sets the original and the current installation prefix of the package.\r
+   Relocation simply replaces a pathname starting with the original prefix\r
+   by the corresponding pathname with the current prefix instead.  Both\r
+   prefixes should be directory names without trailing slash (i.e. use ""\r
+   instead of "/").  */\r
+#define libintl_set_relocation_prefix libintl_set_relocation_prefix\r
+extern LIBINTL_DLL_EXPORTED void\r
+       libintl_set_relocation_prefix (const char *orig_prefix,\r
+                                     const char *curr_prefix);\r
+\r
+\r
+#ifdef __cplusplus\r
+}\r
+#endif\r
+\r
+#endif /* libintl.h */\r
diff --git a/ext/libintl/libintl3-win32/lib/intl3_tsvn.exp b/ext/libintl/libintl3-win32/lib/intl3_tsvn.exp
new file mode 100644 (file)
index 0000000..7b1d2b3
Binary files /dev/null and b/ext/libintl/libintl3-win32/lib/intl3_tsvn.exp differ
diff --git a/ext/libintl/libintl3-win32/lib/intl3_tsvn.lib b/ext/libintl/libintl3-win32/lib/intl3_tsvn.lib
new file mode 100644 (file)
index 0000000..d42101c
Binary files /dev/null and b/ext/libintl/libintl3-win32/lib/intl3_tsvn.lib differ
diff --git a/ext/libintl/libintl3-x64/inc/libintl.h b/ext/libintl/libintl3-x64/inc/libintl.h
new file mode 100644 (file)
index 0000000..015ff5c
--- /dev/null
@@ -0,0 +1,389 @@
+/* Message catalogs for internationalization.\r
+   Copyright (C) 1995-1997, 2000-2004 Free Software Foundation, Inc.\r
+\r
+   This program is free software; you can redistribute it and/or modify it\r
+   under the terms of the GNU Library General Public License as published\r
+   by the Free Software Foundation; either version 2, or (at your option)\r
+   any later version.\r
+\r
+   This program is distributed in the hope that it will be useful,\r
+   but WITHOUT ANY WARRANTY; without even the implied warranty of\r
+   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU\r
+   Library General Public License for more details.\r
+\r
+   You should have received a copy of the GNU Library General Public\r
+   License along with this program; if not, write to the Free Software\r
+   Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307,\r
+   USA.  */\r
+\r
+#ifndef _LIBINTL_H\r
+#define _LIBINTL_H     1\r
+\r
+#ifdef BUILDING_LIBINTL\r
+#define LIBINTL_DLL_EXPORTED __declspec(dllexport)\r
+#else\r
+#define LIBINTL_DLL_EXPORTED __declspec(dllimport)\r
+#endif\r
+\r
+#include <locale.h>\r
+\r
+/* The LC_MESSAGES locale category is the category used by the functions\r
+   gettext() and dgettext().  It is specified in POSIX, but not in ANSI C.\r
+   On systems that don't define it, use an arbitrary value instead.\r
+   On Solaris, <locale.h> defines __LOCALE_H (or _LOCALE_H in Solaris 2.5)\r
+   then includes <libintl.h> (i.e. this file!) and then only defines\r
+   LC_MESSAGES.  To avoid a redefinition warning, don't define LC_MESSAGES\r
+   in this case.  */\r
+#if !defined LC_MESSAGES && !(defined __LOCALE_H || (defined _LOCALE_H && defined __sun))\r
+# define LC_MESSAGES 1729\r
+#endif\r
+\r
+/* We define an additional symbol to signal that we use the GNU\r
+   implementation of gettext.  */\r
+#define __USE_GNU_GETTEXT 1\r
+\r
+/* Provide information about the supported file formats.  Returns the\r
+   maximum minor revision number supported for a given major revision.  */\r
+#define __GNU_GETTEXT_SUPPORTED_REVISION(major) \\r
+  ((major) == 0 || (major) == 1 ? 1 : -1)\r
+\r
+/* Resolve a platform specific conflict on DJGPP.  GNU gettext takes\r
+   precedence over _conio_gettext.  */\r
+#ifdef __DJGPP__\r
+# undef gettext\r
+#endif\r
+\r
+#ifdef __cplusplus\r
+extern "C" {\r
+#endif\r
+\r
+\r
+/* We redirect the functions to those prefixed with "libintl_".  This is\r
+   necessary, because some systems define gettext/textdomain/... in the C\r
+   library (namely, Solaris 2.4 and newer, and GNU libc 2.0 and newer).\r
+   If we used the unprefixed names, there would be cases where the\r
+   definition in the C library would override the one in the libintl.so\r
+   shared library.  Recall that on ELF systems, the symbols are looked\r
+   up in the following order:\r
+     1. in the executable,\r
+     2. in the shared libraries specified on the link command line, in order,\r
+     3. in the dependencies of the shared libraries specified on the link\r
+        command line,\r
+     4. in the dlopen()ed shared libraries, in the order in which they were\r
+        dlopen()ed.\r
+   The definition in the C library would override the one in libintl.so if\r
+   either\r
+     * -lc is given on the link command line and -lintl isn't, or\r
+     * -lc is given on the link command line before -lintl, or\r
+     * libintl.so is a dependency of a dlopen()ed shared library but not\r
+       linked to the executable at link time.\r
+   Since Solaris gettext() behaves differently than GNU gettext(), this\r
+   would be unacceptable.\r
+\r
+   The redirection happens by default through macros in C, so that &gettext\r
+   is independent of the compilation unit, but through inline functions in\r
+   C++, in order not to interfere with the name mangling of class fields or\r
+   class methods called 'gettext'.  */\r
+\r
+/* The user can define _INTL_REDIRECT_INLINE or _INTL_REDIRECT_MACROS.\r
+   If he doesn't, we choose the method.  A third possible method is\r
+   _INTL_REDIRECT_ASM, supported only by GCC.  */\r
+#if !(defined _INTL_REDIRECT_INLINE || defined _INTL_REDIRECT_MACROS)\r
+# if __GNUC__ >= 2 && !defined __APPLE_CC__ && !defined __MINGW32__ && !(__GNUC__ == 2 && defined _AIX) && (defined __STDC__ || defined __cplusplus)\r
+#  define _INTL_REDIRECT_ASM\r
+# else\r
+#  ifdef __cplusplus\r
+#   define _INTL_REDIRECT_INLINE\r
+#  else\r
+#   define _INTL_REDIRECT_MACROS\r
+#  endif\r
+# endif\r
+#endif\r
+/* Auxiliary macros.  */\r
+#ifdef _INTL_REDIRECT_ASM\r
+# define _INTL_ASM(cname) __asm__ (_INTL_ASMNAME (__USER_LABEL_PREFIX__, #cname))\r
+# define _INTL_ASMNAME(prefix,cnamestring) _INTL_STRINGIFY (prefix) cnamestring\r
+# define _INTL_STRINGIFY(prefix) #prefix\r
+#else\r
+# define _INTL_ASM(cname)\r
+#endif\r
+\r
+/* Look up MSGID in the current default message catalog for the current\r
+   LC_MESSAGES locale.  If not found, returns MSGID itself (the default\r
+   text).  */\r
+#ifdef _INTL_REDIRECT_INLINE\r
+extern LIBINTL_DLL_EXPORTED char *libintl_gettext (const char *__msgid);\r
+static inline char *gettext (const char *__msgid)\r
+{\r
+  return libintl_gettext (__msgid);\r
+}\r
+#else\r
+#ifdef _INTL_REDIRECT_MACROS\r
+# define gettext libintl_gettext\r
+#endif\r
+extern LIBINTL_DLL_EXPORTED char *gettext (const char *__msgid)\r
+       _INTL_ASM (libintl_gettext);\r
+#endif\r
+\r
+/* Look up MSGID in the DOMAINNAME message catalog for the current\r
+   LC_MESSAGES locale.  */\r
+#ifdef _INTL_REDIRECT_INLINE\r
+extern LIBINTL_DLL_EXPORTED char *libintl_dgettext (const char *__domainname, const char *__msgid);\r
+static inline char *dgettext (const char *__domainname, const char *__msgid)\r
+{\r
+  return libintl_dgettext (__domainname, __msgid);\r
+}\r
+#else\r
+#ifdef _INTL_REDIRECT_MACROS\r
+# define dgettext libintl_dgettext\r
+#endif\r
+extern LIBINTL_DLL_EXPORTED char *dgettext (const char *__domainname, const char *__msgid)\r
+       _INTL_ASM (libintl_dgettext);\r
+#endif\r
+\r
+/* Look up MSGID in the DOMAINNAME message catalog for the current CATEGORY\r
+   locale.  */\r
+#ifdef _INTL_REDIRECT_INLINE\r
+extern LIBINTL_DLL_EXPORTED char *libintl_dcgettext (const char *__domainname, const char *__msgid,\r
+                               int __category);\r
+static inline char *dcgettext (const char *__domainname, const char *__msgid,\r
+                              int __category)\r
+{\r
+  return libintl_dcgettext (__domainname, __msgid, __category);\r
+}\r
+#else\r
+#ifdef _INTL_REDIRECT_MACROS\r
+# define dcgettext libintl_dcgettext\r
+#endif\r
+extern LIBINTL_DLL_EXPORTED char *dcgettext (const char *__domainname, const char *__msgid,\r
+                       int __category)\r
+       _INTL_ASM (libintl_dcgettext);\r
+#endif\r
+\r
+\r
+/* Similar to `gettext' but select the plural form corresponding to the\r
+   number N.  */\r
+#ifdef _INTL_REDIRECT_INLINE\r
+extern LIBINTL_DLL_EXPORTED char *libintl_ngettext (const char *__msgid1, const char *__msgid2,\r
+                              unsigned long int __n);\r
+static inline char *ngettext (const char *__msgid1, const char *__msgid2,\r
+                             unsigned long int __n)\r
+{\r
+  return libintl_ngettext (__msgid1, __msgid2, __n);\r
+}\r
+#else\r
+#ifdef _INTL_REDIRECT_MACROS\r
+# define ngettext libintl_ngettext\r
+#endif\r
+extern LIBINTL_DLL_EXPORTED char *ngettext (const char *__msgid1, const char *__msgid2,\r
+                      unsigned long int __n)\r
+       _INTL_ASM (libintl_ngettext);\r
+#endif\r
+\r
+/* Similar to `dgettext' but select the plural form corresponding to the\r
+   number N.  */\r
+#ifdef _INTL_REDIRECT_INLINE\r
+extern LIBINTL_DLL_EXPORTED char *libintl_dngettext (const char *__domainname, const char *__msgid1,\r
+                               const char *__msgid2, unsigned long int __n);\r
+static inline char *dngettext (const char *__domainname, const char *__msgid1,\r
+                              const char *__msgid2, unsigned long int __n)\r
+{\r
+  return libintl_dngettext (__domainname, __msgid1, __msgid2, __n);\r
+}\r
+#else\r
+#ifdef _INTL_REDIRECT_MACROS\r
+# define dngettext libintl_dngettext\r
+#endif\r
+extern LIBINTL_DLL_EXPORTED char *dngettext (const char *__domainname,\r
+                       const char *__msgid1, const char *__msgid2,\r
+                       unsigned long int __n)\r
+       _INTL_ASM (libintl_dngettext);\r
+#endif\r
+\r
+/* Similar to `dcgettext' but select the plural form corresponding to the\r
+   number N.  */\r
+#ifdef _INTL_REDIRECT_INLINE\r
+extern LIBINTL_DLL_EXPORTED char *libintl_dcngettext (const char *__domainname,\r
+                                const char *__msgid1, const char *__msgid2,\r
+                                unsigned long int __n, int __category);\r
+static inline char *dcngettext (const char *__domainname,\r
+                               const char *__msgid1, const char *__msgid2,\r
+                               unsigned long int __n, int __category)\r
+{\r
+  return libintl_dcngettext (__domainname, __msgid1, __msgid2, __n, __category);\r
+}\r
+#else\r
+#ifdef _INTL_REDIRECT_MACROS\r
+# define dcngettext libintl_dcngettext\r
+#endif\r
+extern LIBINTL_DLL_EXPORTED char *dcngettext (const char *__domainname,\r
+                        const char *__msgid1, const char *__msgid2,\r
+                        unsigned long int __n, int __category)\r
+       _INTL_ASM (libintl_dcngettext);\r
+#endif\r
+\r
+\r
+/* Set the current default message catalog to DOMAINNAME.\r
+   If DOMAINNAME is null, return the current default.\r
+   If DOMAINNAME is "", reset to the default of "messages".  */\r
+#ifdef _INTL_REDIRECT_INLINE\r
+extern LIBINTL_DLL_EXPORTED char *libintl_textdomain (const char *__domainname);\r
+static inline char *textdomain (const char *__domainname)\r
+{\r
+  return libintl_textdomain (__domainname);\r
+}\r
+#else\r
+#ifdef _INTL_REDIRECT_MACROS\r
+# define textdomain libintl_textdomain\r
+#endif\r
+extern LIBINTL_DLL_EXPORTED char *textdomain (const char *__domainname)\r
+       _INTL_ASM (libintl_textdomain);\r
+#endif\r
+\r
+/* Specify that the DOMAINNAME message catalog will be found\r
+   in DIRNAME rather than in the system locale data base.  */\r
+#ifdef _INTL_REDIRECT_INLINE\r
+extern LIBINTL_DLL_EXPORTED char *libintl_bindtextdomain (const char *__domainname,\r
+                                    const char *__dirname);\r
+static inline char *bindtextdomain (const char *__domainname,\r
+                                   const char *__dirname)\r
+{\r
+  return libintl_bindtextdomain (__domainname, __dirname);\r
+}\r
+#else\r
+#ifdef _INTL_REDIRECT_MACROS\r
+# define bindtextdomain libintl_bindtextdomain\r
+#endif\r
+extern LIBINTL_DLL_EXPORTED char *bindtextdomain (const char *__domainname, const char *__dirname)\r
+       _INTL_ASM (libintl_bindtextdomain);\r
+#endif\r
+\r
+/* Specify the character encoding in which the messages from the\r
+   DOMAINNAME message catalog will be returned.  */\r
+#ifdef _INTL_REDIRECT_INLINE\r
+extern LIBINTL_DLL_EXPORTED char *libintl_bind_textdomain_codeset (const char *__domainname,\r
+                                             const char *__codeset);\r
+static inline char *bind_textdomain_codeset (const char *__domainname,\r
+                                            const char *__codeset)\r
+{\r
+  return libintl_bind_textdomain_codeset (__domainname, __codeset);\r
+}\r
+#else\r
+#ifdef _INTL_REDIRECT_MACROS\r
+# define bind_textdomain_codeset libintl_bind_textdomain_codeset\r
+#endif\r
+extern LIBINTL_DLL_EXPORTED char *bind_textdomain_codeset (const char *__domainname,\r
+                                     const char *__codeset)\r
+       _INTL_ASM (libintl_bind_textdomain_codeset);\r
+#endif\r
+\r
+\r
+/* Support for format strings with positions in *printf(), following the\r
+   POSIX/XSI specification.\r
+   Note: These replacements for the *printf() functions are visible only\r
+   in source files that #include <libintl.h> or #include "gettext.h".\r
+   Packages that use *printf() in source files that don't refer to _()\r
+   or gettext() but for which the format string could be the return value\r
+   of _() or gettext() need to add this #include.  Oh well.  */\r
+\r
+#if !0\r
+\r
+#include <stdio.h>\r
+#include <stddef.h>\r
+\r
+/* Get va_list.  */\r
+#if __STDC__ || defined __cplusplus || defined _MSC_VER\r
+# include <stdarg.h>\r
+#else\r
+# include <varargs.h>\r
+#endif\r
+\r
+#undef fprintf\r
+#define fprintf libintl_fprintf\r
+extern LIBINTL_DLL_EXPORTED int fprintf (FILE *, const char *, ...);\r
+#undef vfprintf\r
+#define vfprintf libintl_vfprintf\r
+extern LIBINTL_DLL_EXPORTED int vfprintf (FILE *, const char *, va_list);\r
+\r
+#undef printf\r
+#define printf libintl_printf\r
+extern LIBINTL_DLL_EXPORTED int printf (const char *, ...);\r
+#undef vprintf\r
+#define vprintf libintl_vprintf\r
+extern LIBINTL_DLL_EXPORTED int vprintf (const char *, va_list);\r
+\r
+#undef sprintf\r
+#define sprintf libintl_sprintf\r
+extern LIBINTL_DLL_EXPORTED int sprintf (char *, const char *, ...);\r
+#undef vsprintf\r
+#define vsprintf libintl_vsprintf\r
+extern LIBINTL_DLL_EXPORTED int vsprintf (char *, const char *, va_list);\r
+\r
+#if 0\r
+\r
+#undef snprintf\r
+#define snprintf libintl_snprintf\r
+extern LIBINTL_DLL_EXPORTED int snprintf (char *, size_t, const char *, ...);\r
+#undef vsnprintf\r
+#define vsnprintf libintl_vsnprintf\r
+extern LIBINTL_DLL_EXPORTED int vsnprintf (char *, size_t, const char *, va_list);\r
+\r
+#endif\r
+\r
+#if 0\r
+\r
+#undef asprintf\r
+#define asprintf libintl_asprintf\r
+extern LIBINTL_DLL_EXPORTED int asprintf (char **, const char *, ...);\r
+#undef vasprintf\r
+#define vasprintf libintl_vasprintf\r
+extern LIBINTL_DLL_EXPORTED int vasprintf (char **, const char *, va_list);\r
+\r
+#endif\r
+\r
+#if 1\r
+\r
+#undef fwprintf\r
+#define fwprintf libintl_fwprintf\r
+extern LIBINTL_DLL_EXPORTED int fwprintf (FILE *, const wchar_t *, ...);\r
+#undef vfwprintf\r
+#define vfwprintf libintl_vfwprintf\r
+extern LIBINTL_DLL_EXPORTED int vfwprintf (FILE *, const wchar_t *, va_list);\r
+\r
+#undef wprintf\r
+#define wprintf libintl_wprintf\r
+extern LIBINTL_DLL_EXPORTED int wprintf (const wchar_t *, ...);\r
+#undef vwprintf\r
+#define vwprintf libintl_vwprintf\r
+extern LIBINTL_DLL_EXPORTED int vwprintf (const wchar_t *, va_list);\r
+\r
+#undef swprintf\r
+#define swprintf libintl_swprintf\r
+extern LIBINTL_DLL_EXPORTED int swprintf (wchar_t *, size_t, const wchar_t *, ...);\r
+#undef vswprintf\r
+#define vswprintf libintl_vswprintf\r
+extern LIBINTL_DLL_EXPORTED int vswprintf (wchar_t *, size_t, const wchar_t *, va_list);\r
+\r
+#endif\r
+\r
+#endif\r
+\r
+\r
+/* Support for relocatable packages.  */\r
+\r
+/* Sets the original and the current installation prefix of the package.\r
+   Relocation simply replaces a pathname starting with the original prefix\r
+   by the corresponding pathname with the current prefix instead.  Both\r
+   prefixes should be directory names without trailing slash (i.e. use ""\r
+   instead of "/").  */\r
+#define libintl_set_relocation_prefix libintl_set_relocation_prefix\r
+extern LIBINTL_DLL_EXPORTED void\r
+       libintl_set_relocation_prefix (const char *orig_prefix,\r
+                                     const char *curr_prefix);\r
+\r
+\r
+#ifdef __cplusplus\r
+}\r
+#endif\r
+\r
+#endif /* libintl.h */\r
diff --git a/ext/libintl/libintl3-x64/lib/intl3_tsvn.exp b/ext/libintl/libintl3-x64/lib/intl3_tsvn.exp
new file mode 100644 (file)
index 0000000..bf0c2aa
Binary files /dev/null and b/ext/libintl/libintl3-x64/lib/intl3_tsvn.exp differ
diff --git a/ext/libintl/libintl3-x64/lib/intl3_tsvn.lib b/ext/libintl/libintl3-x64/lib/intl3_tsvn.lib
new file mode 100644 (file)
index 0000000..c47dc4d
Binary files /dev/null and b/ext/libintl/libintl3-x64/lib/intl3_tsvn.lib differ