diff options
author | mbr <mbr@FreeBSD.org> | 2002-08-15 01:15:12 +0800 |
---|---|---|
committer | mbr <mbr@FreeBSD.org> | 2002-08-15 01:15:12 +0800 |
commit | 21fb82c4e0498b4646fc4fbac0578e98d806cc7f (patch) | |
tree | 8e1c275091637e372ce308a9e36789d8aaed185a /editors | |
parent | a66bc70bc6c1349283a73de4af7f928246a2fdf3 (diff) | |
download | freebsd-ports-gnome-21fb82c4e0498b4646fc4fbac0578e98d806cc7f.tar.gz freebsd-ports-gnome-21fb82c4e0498b4646fc4fbac0578e98d806cc7f.tar.zst freebsd-ports-gnome-21fb82c4e0498b4646fc4fbac0578e98d806cc7f.zip |
We still had three locales with uppercase chars. To adapt the style
of the other arrays, do everything in uppercase now. Add a NetBSD
part too and correct the IRIX part. Reorder the ifdef comments and
define how the array should look like.
Diffstat (limited to 'editors')
23 files changed, 2300 insertions, 1196 deletions
diff --git a/editors/openoffice-1.0/files/patch-sal+osl+unx+nlsupport.c b/editors/openoffice-1.0/files/patch-sal+osl+unx+nlsupport.c index 1a606f1694c1..8107caa02bcc 100644 --- a/editors/openoffice-1.0/files/patch-sal+osl+unx+nlsupport.c +++ b/editors/openoffice-1.0/files/patch-sal+osl+unx+nlsupport.c @@ -1,23 +1,14 @@ ---- ../sal/osl/unx/nlsupport.c.orig Tue May 21 15:22:11 2002 -+++ ../sal/osl/unx/nlsupport.c Wed Jul 31 10:28:29 2002 +--- ../sal/osl/unx/nlsupport.c.orig Wed Aug 14 18:22:49 2002 ++++ ../sal/osl/unx/nlsupport.c Wed Aug 14 19:07:18 2002 @@ -63,7 +63,7 @@ #include <osl/diagnose.h> #include <osl/process.h> -#if defined(LINUX) || defined(SOLARIS) || defined(IRIX) || defined(NETBSD) -+#if defined(LINUX) || defined(SOLARIS) || defined(IRIX) || defined(FREEBSD) ++#if defined(LINUX) || defined(SOLARIS) || defined(IRIX) || defined(FREEBSD) || defined(NETBSD) #include <pthread.h> #include <locale.h> #include <langinfo.h> -@@ -87,7 +87,7 @@ - static int - _pair_compare (const char *key, const _pair *pair) - { -- int result = rtl_str_compareIgnoreAsciiCase( key, pair->key ); -+ unsigned int result = rtl_str_compareIgnoreAsciiCase( key, pair->key ); - return result; - } - @@ -114,8 +114,7 @@ comparison = _pair_compare( key, base + current ); if (comparison < 0) @@ -33,56 +24,62 @@ } -#if defined(LINUX) || defined(SOLARIS) || defined(IRIX) || defined(NETBSD) -+#if defined(LINUX) || defined(SOLARIS) || defined(IRIX) || defined(FREEBSD) ++#if defined(LINUX) || defined(SOLARIS) || defined(IRIX) || defined(FREEBSD) || defined(NETBSD) /* * This implementation of osl_getTextEncodingFromLocale maps * from nl_langinfo(CODESET) to rtl_textencoding defines. - * nl_langinfo() is supported only on Linux, Solaris and IRIX. -+ * nl_langinfo() is supported only on Linux, Solaris and IRIX -+ * and FreeBSD. ++ * nl_langinfo() is supported only on Linux, Solaris and IRIX, ++ * >= NetBSD 1.5 and >= FreeBSD 4.4 * * This routine is SLOW because of the setlocale call, so * grab the result and cache it. -@@ -260,6 +260,10 @@ +@@ -260,6 +260,12 @@ #endif #endif +/* + * _nl_language_list[] is an array list of supported encodings. Because + * we are using a binary search, the list has to be in ascending order. ++ * We are comparing the encodings case insensitiv, so the list has ++ * to be completly upper- , or lowercase. + */ #if defined(SOLARIS) -@@ -312,10 +316,33 @@ - { "big5", RTL_TEXTENCODING_BIG5 }, /* China - Traditional Chinese */ - { "eucgbk", RTL_TEXTENCODING_DONTKNOW }, /* China - Simplified Chinese */ - { "gbk", RTL_TEXTENCODING_GBK }, /* China - Simplified Chinese */ -+ { "sjis", RTL_TEXTENCODING_SHIFT_JIS } /* Japan */ -+}; -+ -+#elif defined(FREEBSD) -+ -+const _pair _nl_language_list[] = { -+ { "ascii", RTL_TEXTENCODING_ASCII_US }, /* US-ASCII */ -+ { "big5", RTL_TEXTENCODING_BIG5 }, /* China - Traditional Chinese */ -+ { "cp1251", RTL_TEXTENCODING_MS_1251 }, /* MS-CYRL */ -+ { "cp866", RTL_TEXTENCODING_IBM_866 }, /* CP866 866 */ -+ { "eucCN", RTL_TEXTENCODING_EUC_CN }, /* China - Simplified Chinese */ -+ { "eucJP", RTL_TEXTENCODING_EUC_JP }, /* Japan */ -+ { "eucKR", RTL_TEXTENCODING_EUC_KR }, /* Korea */ -+ { "iso8859-1", RTL_TEXTENCODING_ISO_8859_1 }, /* Western */ -+ { "iso8859-15", RTL_TEXTENCODING_ISO_8859_15 }, /* Western Updated (w/Euro sign) */ -+ { "iso8859-2", RTL_TEXTENCODING_ISO_8859_2 }, /* Central European */ -+ { "iso8859-4", RTL_TEXTENCODING_ISO_8859_4 }, /* LATIN4 L4 */ -+ { "iso8859-5", RTL_TEXTENCODING_ISO_8859_5 }, /* Cyrillic */ -+ { "iso8859-7", RTL_TEXTENCODING_ISO_8859_7 }, /* Greek */ -+ { "iso8859-9", RTL_TEXTENCODING_ISO_8859_9 }, /* Turkish */ -+ { "koi-u", RTL_TEXTENCODING_DONTKNOW }, /* Not supported at the moment */ -+ { "koi8-r", RTL_TEXTENCODING_KOI8_R }, /* KOI8 */ - { "sjis", RTL_TEXTENCODING_SHIFT_JIS }, /* Japan */ -+ { "us-ascii", RTL_TEXTENCODING_ASCII_US } /* US-ASCII */ +@@ -299,23 +305,23 @@ + #elif defined(IRIX) + + const _pair _nl_language_list[] = { +- { "ISO8859-1", RTL_TEXTENCODING_ISO_8859_1 }, /* Western */ +- { "ISO8859-2", RTL_TEXTENCODING_ISO_8859_2 }, /* Central European */ +- { "ISO8859-5", RTL_TEXTENCODING_ISO_8859_5 }, /* Cyrillic */ +- { "ISO8859-7", RTL_TEXTENCODING_ISO_8859_7 }, /* Greek */ +- { "ISO8859-9", RTL_TEXTENCODING_ISO_8859_9 }, /* Turkish */ +- { "ISO8859-15", RTL_TEXTENCODING_ISO_8859_15 }, /* Western Updated (w/Euro sign) */ +- { "eucJP", RTL_TEXTENCODING_EUC_JP }, /* Japan */ +- { "eucKR", RTL_TEXTENCODING_EUC_KR }, /* Korea */ +- { "eucCN", RTL_TEXTENCODING_EUC_CN }, /* China */ +- { "eucTW", RTL_TEXTENCODING_EUC_TW }, /* Taiwan - Traditional Chinese */ +- { "big5", RTL_TEXTENCODING_BIG5 }, /* China - Traditional Chinese */ +- { "eucgbk", RTL_TEXTENCODING_DONTKNOW }, /* China - Simplified Chinese */ +- { "gbk", RTL_TEXTENCODING_GBK }, /* China - Simplified Chinese */ +- { "sjis", RTL_TEXTENCODING_SHIFT_JIS }, /* Japan */ ++ { "BIG5", RTL_TEXTENCODING_BIG5 }, /* China - Traditional Chinese */ ++ { "EUCCN", RTL_TEXTENCODING_EUC_CN }, /* China */ ++ { "EUCGBK", RTL_TEXTENCODING_DONTKNOW }, /* China - Simplified Chinese */ ++ { "EUCJP", RTL_TEXTENCODING_EUC_JP }, /* Japan */ ++ { "EUCKR", RTL_TEXTENCODING_EUC_KR }, /* Korea */ ++ { "EUCTW", RTL_TEXTENCODING_EUC_TW }, /* Taiwan - Traditional Chinese */ ++ { "GBK", RTL_TEXTENCODING_GBK }, /* China - Simplified Chinese */ ++ { "ISO8859-1", RTL_TEXTENCODING_ISO_8859_1 }, /* Western */ ++ { "ISO8859-15", RTL_TEXTENCODING_ISO_8859_15 }, /* Western Updated (w/Euro sign) */ ++ { "ISO8859-2", RTL_TEXTENCODING_ISO_8859_2 }, /* Central European */ ++ { "ISO8859-5", RTL_TEXTENCODING_ISO_8859_5 }, /* Cyrillic */ ++ { "ISO8859-7", RTL_TEXTENCODING_ISO_8859_7 }, /* Greek */ ++ { "ISO8859-9", RTL_TEXTENCODING_ISO_8859_9 }, /* Turkish */ ++ { "SJIS", RTL_TEXTENCODING_SHIFT_JIS } /* Japan */ }; -#elif defined(LINUX) || defined(NETBSD) @@ -90,38 +87,89 @@ const _pair _nl_language_list[] = { { "ANSI_X3.110-1983", RTL_TEXTENCODING_DONTKNOW }, /* ISO-IR-99 NAPLPS */ -@@ -496,7 +523,7 @@ +@@ -496,7 +502,58 @@ { "WIN-SAMI-2", RTL_TEXTENCODING_DONTKNOW } /* WS2 */ }; -#endif /* ifdef LINUX || NETBSD */ -+#endif /* ifdef LINUX || FREEBSD */ ++#elif defined(FREEBSD) ++ ++const _pair _nl_language_list[] = { ++ { "ASCII", RTL_TEXTENCODING_ASCII_US }, /* US-ASCII */ ++ { "BIG5", RTL_TEXTENCODING_BIG5 }, /* China - Traditional Chinese */ ++ { "CP1251", RTL_TEXTENCODING_MS_1251 }, /* MS-CYRL */ ++ { "CP866", RTL_TEXTENCODING_IBM_866 }, /* CP866 866 */ ++ { "EUCCN", RTL_TEXTENCODING_EUC_CN }, /* China - Simplified Chinese */ ++ { "EUCJP", RTL_TEXTENCODING_EUC_JP }, /* Japan */ ++ { "EUCKR", RTL_TEXTENCODING_EUC_KR }, /* Korea */ ++ { "ISO8859-1", RTL_TEXTENCODING_ISO_8859_1 }, /* Western */ ++ { "ISO8859-15", RTL_TEXTENCODING_ISO_8859_15 }, /* Western Updated (w/Euro sign) */ ++ { "ISO8859-2", RTL_TEXTENCODING_ISO_8859_2 }, /* Central European */ ++ { "ISO8859-4", RTL_TEXTENCODING_ISO_8859_4 }, /* LATIN4 L4 */ ++ { "ISO8859-5", RTL_TEXTENCODING_ISO_8859_5 }, /* Cyrillic */ ++ { "ISO8859-7", RTL_TEXTENCODING_ISO_8859_7 }, /* Greek */ ++ { "ISO8859-9", RTL_TEXTENCODING_ISO_8859_9 }, /* Turkish */ ++ { "KOI-U", RTL_TEXTENCODING_DONTKNOW }, /* Not supported at the moment */ ++ { "KOI8-R", RTL_TEXTENCODING_KOI8_R }, /* KOI8 */ ++ { "SJIS", RTL_TEXTENCODING_SHIFT_JIS }, /* Japan */ ++ { "US-ASCII", RTL_TEXTENCODING_ASCII_US } /* US-ASCII */ ++}; ++ ++#elif defined(NETBSD) ++ ++const _pair _nl_language_list[] = { ++ { "ASCII", RTL_TEXTENCODING_ASCII_US }, /* US-ASCII */ ++ { "BIG5", RTL_TEXTENCODING_BIG5 }, /* China - Traditional Chinese */ ++ { "CP1251", RTL_TEXTENCODING_MS_1251 }, /* MS-CYRL */ ++ { "CP866", RTL_TEXTENCODING_IBM_866 }, /* CP866 866 */ ++ { "CTEXT", RTL_TEXTENCODING_ASCII_US }, /* US-ASCII */ ++ { "EUCCN", RTL_TEXTENCODING_EUC_CN }, /* China - Simplified Chinese */ ++ { "EUCJP", RTL_TEXTENCODING_EUC_JP }, /* Japan */ ++ { "EUCKR", RTL_TEXTENCODING_EUC_KR }, /* Korea */ ++ { "EUCTW", RTL_TEXTENCODING_EUC_TW }, /* China - Traditional Chinese */ ++ { "ISO-2022-JP", RTL_TEXTENCODING_DONTKNOW }, /* */ ++ { "ISO-2022-JP-2", RTL_TEXTENCODING_DONTKNOW }, /* */ ++ { "ISO8859-1", RTL_TEXTENCODING_ISO_8859_1 }, /* Western */ ++ { "ISO8859-15", RTL_TEXTENCODING_ISO_8859_15 }, /* Western Updated (w/Euro sign) */ ++ { "ISO8859-2", RTL_TEXTENCODING_ISO_8859_2 }, /* Central European */ ++ { "ISO8859-4", RTL_TEXTENCODING_ISO_8859_4 }, /* LATIN4 L4 */ ++ { "ISO8859-5", RTL_TEXTENCODING_ISO_8859_5 }, /* Cyrillic */ ++ { "ISO8859-7", RTL_TEXTENCODING_ISO_8859_7 }, /* Greek */ ++ { "ISO8859-9", RTL_TEXTENCODING_ISO_8859_9 }, /* Turkish */ ++ { "KOI-U", RTL_TEXTENCODING_DONTKNOW }, /* Not supported at the moment */ ++ { "KOI8-R", RTL_TEXTENCODING_KOI8_R }, /* KOI8 */ ++ { "SJIS", RTL_TEXTENCODING_SHIFT_JIS }, /* Japan */ ++ { "US-ASCII", RTL_TEXTENCODING_ASCII_US }, /* US-ASCII */ ++ { "UTF-8", RTL_TEXTENCODING_UTF8 } /* ISO-10646/UTF-8 */ ++}; ++ ++#endif /* ifdef SOLARIS IRIX LINUX FREEBSD NETBSD */ static pthread_mutex_t aLocalMutex = PTHREAD_MUTEX_INITIALIZER; -@@ -618,7 +645,7 @@ +@@ -618,7 +675,7 @@ return ret; } -#elif defined(MACOSX) /* ifdef LINUX || SOLARIS || NETBSD */ -+#elif defined(MACOSX) /* ifdef LINUX || SOLARIS || FREEBSD */ ++#elif defined(MACOSX) /* ifdef LINUX || SOLARIS || IRIX || FREEBSD || NETBSD */ /* * FIXME: the MacOS X implemetation is missing -@@ -651,7 +678,7 @@ +@@ -651,7 +708,7 @@ return 0; } -#else /* ifdef LINUX || SOLARIS || MACOSX || NETBSD */ -+#else /* ifdef LINUX || SOLARIS || FREEBSD || MACOSX */ ++#else /* ifdef LINUX || SOLARIS || IRIX || FREEBSD || NETBSD || MACOSX */ /* * This implementation of osl_getTextEncodingFromLocale maps -@@ -887,6 +914,6 @@ +@@ -887,6 +944,6 @@ return 0; } -#endif /* ifdef LINUX || SOLARIS || MACOSX || NETBSD */ -+#endif /* ifdef LINUX || SOLARIS || MACOSX || FREEBSD */ ++#endif /* ifdef LINUX || SOLARIS || FREEBSD || NETBSD || MACOSX */ diff --git a/editors/openoffice-1.0/files/patch-sal::osl::unx::nlsupport.c b/editors/openoffice-1.0/files/patch-sal::osl::unx::nlsupport.c index 1a606f1694c1..8107caa02bcc 100644 --- a/editors/openoffice-1.0/files/patch-sal::osl::unx::nlsupport.c +++ b/editors/openoffice-1.0/files/patch-sal::osl::unx::nlsupport.c @@ -1,23 +1,14 @@ ---- ../sal/osl/unx/nlsupport.c.orig Tue May 21 15:22:11 2002 -+++ ../sal/osl/unx/nlsupport.c Wed Jul 31 10:28:29 2002 +--- ../sal/osl/unx/nlsupport.c.orig Wed Aug 14 18:22:49 2002 ++++ ../sal/osl/unx/nlsupport.c Wed Aug 14 19:07:18 2002 @@ -63,7 +63,7 @@ #include <osl/diagnose.h> #include <osl/process.h> -#if defined(LINUX) || defined(SOLARIS) || defined(IRIX) || defined(NETBSD) -+#if defined(LINUX) || defined(SOLARIS) || defined(IRIX) || defined(FREEBSD) ++#if defined(LINUX) || defined(SOLARIS) || defined(IRIX) || defined(FREEBSD) || defined(NETBSD) #include <pthread.h> #include <locale.h> #include <langinfo.h> -@@ -87,7 +87,7 @@ - static int - _pair_compare (const char *key, const _pair *pair) - { -- int result = rtl_str_compareIgnoreAsciiCase( key, pair->key ); -+ unsigned int result = rtl_str_compareIgnoreAsciiCase( key, pair->key ); - return result; - } - @@ -114,8 +114,7 @@ comparison = _pair_compare( key, base + current ); if (comparison < 0) @@ -33,56 +24,62 @@ } -#if defined(LINUX) || defined(SOLARIS) || defined(IRIX) || defined(NETBSD) -+#if defined(LINUX) || defined(SOLARIS) || defined(IRIX) || defined(FREEBSD) ++#if defined(LINUX) || defined(SOLARIS) || defined(IRIX) || defined(FREEBSD) || defined(NETBSD) /* * This implementation of osl_getTextEncodingFromLocale maps * from nl_langinfo(CODESET) to rtl_textencoding defines. - * nl_langinfo() is supported only on Linux, Solaris and IRIX. -+ * nl_langinfo() is supported only on Linux, Solaris and IRIX -+ * and FreeBSD. ++ * nl_langinfo() is supported only on Linux, Solaris and IRIX, ++ * >= NetBSD 1.5 and >= FreeBSD 4.4 * * This routine is SLOW because of the setlocale call, so * grab the result and cache it. -@@ -260,6 +260,10 @@ +@@ -260,6 +260,12 @@ #endif #endif +/* + * _nl_language_list[] is an array list of supported encodings. Because + * we are using a binary search, the list has to be in ascending order. ++ * We are comparing the encodings case insensitiv, so the list has ++ * to be completly upper- , or lowercase. + */ #if defined(SOLARIS) -@@ -312,10 +316,33 @@ - { "big5", RTL_TEXTENCODING_BIG5 }, /* China - Traditional Chinese */ - { "eucgbk", RTL_TEXTENCODING_DONTKNOW }, /* China - Simplified Chinese */ - { "gbk", RTL_TEXTENCODING_GBK }, /* China - Simplified Chinese */ -+ { "sjis", RTL_TEXTENCODING_SHIFT_JIS } /* Japan */ -+}; -+ -+#elif defined(FREEBSD) -+ -+const _pair _nl_language_list[] = { -+ { "ascii", RTL_TEXTENCODING_ASCII_US }, /* US-ASCII */ -+ { "big5", RTL_TEXTENCODING_BIG5 }, /* China - Traditional Chinese */ -+ { "cp1251", RTL_TEXTENCODING_MS_1251 }, /* MS-CYRL */ -+ { "cp866", RTL_TEXTENCODING_IBM_866 }, /* CP866 866 */ -+ { "eucCN", RTL_TEXTENCODING_EUC_CN }, /* China - Simplified Chinese */ -+ { "eucJP", RTL_TEXTENCODING_EUC_JP }, /* Japan */ -+ { "eucKR", RTL_TEXTENCODING_EUC_KR }, /* Korea */ -+ { "iso8859-1", RTL_TEXTENCODING_ISO_8859_1 }, /* Western */ -+ { "iso8859-15", RTL_TEXTENCODING_ISO_8859_15 }, /* Western Updated (w/Euro sign) */ -+ { "iso8859-2", RTL_TEXTENCODING_ISO_8859_2 }, /* Central European */ -+ { "iso8859-4", RTL_TEXTENCODING_ISO_8859_4 }, /* LATIN4 L4 */ -+ { "iso8859-5", RTL_TEXTENCODING_ISO_8859_5 }, /* Cyrillic */ -+ { "iso8859-7", RTL_TEXTENCODING_ISO_8859_7 }, /* Greek */ -+ { "iso8859-9", RTL_TEXTENCODING_ISO_8859_9 }, /* Turkish */ -+ { "koi-u", RTL_TEXTENCODING_DONTKNOW }, /* Not supported at the moment */ -+ { "koi8-r", RTL_TEXTENCODING_KOI8_R }, /* KOI8 */ - { "sjis", RTL_TEXTENCODING_SHIFT_JIS }, /* Japan */ -+ { "us-ascii", RTL_TEXTENCODING_ASCII_US } /* US-ASCII */ +@@ -299,23 +305,23 @@ + #elif defined(IRIX) + + const _pair _nl_language_list[] = { +- { "ISO8859-1", RTL_TEXTENCODING_ISO_8859_1 }, /* Western */ +- { "ISO8859-2", RTL_TEXTENCODING_ISO_8859_2 }, /* Central European */ +- { "ISO8859-5", RTL_TEXTENCODING_ISO_8859_5 }, /* Cyrillic */ +- { "ISO8859-7", RTL_TEXTENCODING_ISO_8859_7 }, /* Greek */ +- { "ISO8859-9", RTL_TEXTENCODING_ISO_8859_9 }, /* Turkish */ +- { "ISO8859-15", RTL_TEXTENCODING_ISO_8859_15 }, /* Western Updated (w/Euro sign) */ +- { "eucJP", RTL_TEXTENCODING_EUC_JP }, /* Japan */ +- { "eucKR", RTL_TEXTENCODING_EUC_KR }, /* Korea */ +- { "eucCN", RTL_TEXTENCODING_EUC_CN }, /* China */ +- { "eucTW", RTL_TEXTENCODING_EUC_TW }, /* Taiwan - Traditional Chinese */ +- { "big5", RTL_TEXTENCODING_BIG5 }, /* China - Traditional Chinese */ +- { "eucgbk", RTL_TEXTENCODING_DONTKNOW }, /* China - Simplified Chinese */ +- { "gbk", RTL_TEXTENCODING_GBK }, /* China - Simplified Chinese */ +- { "sjis", RTL_TEXTENCODING_SHIFT_JIS }, /* Japan */ ++ { "BIG5", RTL_TEXTENCODING_BIG5 }, /* China - Traditional Chinese */ ++ { "EUCCN", RTL_TEXTENCODING_EUC_CN }, /* China */ ++ { "EUCGBK", RTL_TEXTENCODING_DONTKNOW }, /* China - Simplified Chinese */ ++ { "EUCJP", RTL_TEXTENCODING_EUC_JP }, /* Japan */ ++ { "EUCKR", RTL_TEXTENCODING_EUC_KR }, /* Korea */ ++ { "EUCTW", RTL_TEXTENCODING_EUC_TW }, /* Taiwan - Traditional Chinese */ ++ { "GBK", RTL_TEXTENCODING_GBK }, /* China - Simplified Chinese */ ++ { "ISO8859-1", RTL_TEXTENCODING_ISO_8859_1 }, /* Western */ ++ { "ISO8859-15", RTL_TEXTENCODING_ISO_8859_15 }, /* Western Updated (w/Euro sign) */ ++ { "ISO8859-2", RTL_TEXTENCODING_ISO_8859_2 }, /* Central European */ ++ { "ISO8859-5", RTL_TEXTENCODING_ISO_8859_5 }, /* Cyrillic */ ++ { "ISO8859-7", RTL_TEXTENCODING_ISO_8859_7 }, /* Greek */ ++ { "ISO8859-9", RTL_TEXTENCODING_ISO_8859_9 }, /* Turkish */ ++ { "SJIS", RTL_TEXTENCODING_SHIFT_JIS } /* Japan */ }; -#elif defined(LINUX) || defined(NETBSD) @@ -90,38 +87,89 @@ const _pair _nl_language_list[] = { { "ANSI_X3.110-1983", RTL_TEXTENCODING_DONTKNOW }, /* ISO-IR-99 NAPLPS */ -@@ -496,7 +523,7 @@ +@@ -496,7 +502,58 @@ { "WIN-SAMI-2", RTL_TEXTENCODING_DONTKNOW } /* WS2 */ }; -#endif /* ifdef LINUX || NETBSD */ -+#endif /* ifdef LINUX || FREEBSD */ ++#elif defined(FREEBSD) ++ ++const _pair _nl_language_list[] = { ++ { "ASCII", RTL_TEXTENCODING_ASCII_US }, /* US-ASCII */ ++ { "BIG5", RTL_TEXTENCODING_BIG5 }, /* China - Traditional Chinese */ ++ { "CP1251", RTL_TEXTENCODING_MS_1251 }, /* MS-CYRL */ ++ { "CP866", RTL_TEXTENCODING_IBM_866 }, /* CP866 866 */ ++ { "EUCCN", RTL_TEXTENCODING_EUC_CN }, /* China - Simplified Chinese */ ++ { "EUCJP", RTL_TEXTENCODING_EUC_JP }, /* Japan */ ++ { "EUCKR", RTL_TEXTENCODING_EUC_KR }, /* Korea */ ++ { "ISO8859-1", RTL_TEXTENCODING_ISO_8859_1 }, /* Western */ ++ { "ISO8859-15", RTL_TEXTENCODING_ISO_8859_15 }, /* Western Updated (w/Euro sign) */ ++ { "ISO8859-2", RTL_TEXTENCODING_ISO_8859_2 }, /* Central European */ ++ { "ISO8859-4", RTL_TEXTENCODING_ISO_8859_4 }, /* LATIN4 L4 */ ++ { "ISO8859-5", RTL_TEXTENCODING_ISO_8859_5 }, /* Cyrillic */ ++ { "ISO8859-7", RTL_TEXTENCODING_ISO_8859_7 }, /* Greek */ ++ { "ISO8859-9", RTL_TEXTENCODING_ISO_8859_9 }, /* Turkish */ ++ { "KOI-U", RTL_TEXTENCODING_DONTKNOW }, /* Not supported at the moment */ ++ { "KOI8-R", RTL_TEXTENCODING_KOI8_R }, /* KOI8 */ ++ { "SJIS", RTL_TEXTENCODING_SHIFT_JIS }, /* Japan */ ++ { "US-ASCII", RTL_TEXTENCODING_ASCII_US } /* US-ASCII */ ++}; ++ ++#elif defined(NETBSD) ++ ++const _pair _nl_language_list[] = { ++ { "ASCII", RTL_TEXTENCODING_ASCII_US }, /* US-ASCII */ ++ { "BIG5", RTL_TEXTENCODING_BIG5 }, /* China - Traditional Chinese */ ++ { "CP1251", RTL_TEXTENCODING_MS_1251 }, /* MS-CYRL */ ++ { "CP866", RTL_TEXTENCODING_IBM_866 }, /* CP866 866 */ ++ { "CTEXT", RTL_TEXTENCODING_ASCII_US }, /* US-ASCII */ ++ { "EUCCN", RTL_TEXTENCODING_EUC_CN }, /* China - Simplified Chinese */ ++ { "EUCJP", RTL_TEXTENCODING_EUC_JP }, /* Japan */ ++ { "EUCKR", RTL_TEXTENCODING_EUC_KR }, /* Korea */ ++ { "EUCTW", RTL_TEXTENCODING_EUC_TW }, /* China - Traditional Chinese */ ++ { "ISO-2022-JP", RTL_TEXTENCODING_DONTKNOW }, /* */ ++ { "ISO-2022-JP-2", RTL_TEXTENCODING_DONTKNOW }, /* */ ++ { "ISO8859-1", RTL_TEXTENCODING_ISO_8859_1 }, /* Western */ ++ { "ISO8859-15", RTL_TEXTENCODING_ISO_8859_15 }, /* Western Updated (w/Euro sign) */ ++ { "ISO8859-2", RTL_TEXTENCODING_ISO_8859_2 }, /* Central European */ ++ { "ISO8859-4", RTL_TEXTENCODING_ISO_8859_4 }, /* LATIN4 L4 */ ++ { "ISO8859-5", RTL_TEXTENCODING_ISO_8859_5 }, /* Cyrillic */ ++ { "ISO8859-7", RTL_TEXTENCODING_ISO_8859_7 }, /* Greek */ ++ { "ISO8859-9", RTL_TEXTENCODING_ISO_8859_9 }, /* Turkish */ ++ { "KOI-U", RTL_TEXTENCODING_DONTKNOW }, /* Not supported at the moment */ ++ { "KOI8-R", RTL_TEXTENCODING_KOI8_R }, /* KOI8 */ ++ { "SJIS", RTL_TEXTENCODING_SHIFT_JIS }, /* Japan */ ++ { "US-ASCII", RTL_TEXTENCODING_ASCII_US }, /* US-ASCII */ ++ { "UTF-8", RTL_TEXTENCODING_UTF8 } /* ISO-10646/UTF-8 */ ++}; ++ ++#endif /* ifdef SOLARIS IRIX LINUX FREEBSD NETBSD */ static pthread_mutex_t aLocalMutex = PTHREAD_MUTEX_INITIALIZER; -@@ -618,7 +645,7 @@ +@@ -618,7 +675,7 @@ return ret; } -#elif defined(MACOSX) /* ifdef LINUX || SOLARIS || NETBSD */ -+#elif defined(MACOSX) /* ifdef LINUX || SOLARIS || FREEBSD */ ++#elif defined(MACOSX) /* ifdef LINUX || SOLARIS || IRIX || FREEBSD || NETBSD */ /* * FIXME: the MacOS X implemetation is missing -@@ -651,7 +678,7 @@ +@@ -651,7 +708,7 @@ return 0; } -#else /* ifdef LINUX || SOLARIS || MACOSX || NETBSD */ -+#else /* ifdef LINUX || SOLARIS || FREEBSD || MACOSX */ ++#else /* ifdef LINUX || SOLARIS || IRIX || FREEBSD || NETBSD || MACOSX */ /* * This implementation of osl_getTextEncodingFromLocale maps -@@ -887,6 +914,6 @@ +@@ -887,6 +944,6 @@ return 0; } -#endif /* ifdef LINUX || SOLARIS || MACOSX || NETBSD */ -+#endif /* ifdef LINUX || SOLARIS || MACOSX || FREEBSD */ ++#endif /* ifdef LINUX || SOLARIS || FREEBSD || NETBSD || MACOSX */ diff --git a/editors/openoffice-1.1-devel/files/patch-sal+osl+unx+nlsupport.c b/editors/openoffice-1.1-devel/files/patch-sal+osl+unx+nlsupport.c index 1a606f1694c1..8107caa02bcc 100644 --- a/editors/openoffice-1.1-devel/files/patch-sal+osl+unx+nlsupport.c +++ b/editors/openoffice-1.1-devel/files/patch-sal+osl+unx+nlsupport.c @@ -1,23 +1,14 @@ ---- ../sal/osl/unx/nlsupport.c.orig Tue May 21 15:22:11 2002 -+++ ../sal/osl/unx/nlsupport.c Wed Jul 31 10:28:29 2002 +--- ../sal/osl/unx/nlsupport.c.orig Wed Aug 14 18:22:49 2002 ++++ ../sal/osl/unx/nlsupport.c Wed Aug 14 19:07:18 2002 @@ -63,7 +63,7 @@ #include <osl/diagnose.h> #include <osl/process.h> -#if defined(LINUX) || defined(SOLARIS) || defined(IRIX) || defined(NETBSD) -+#if defined(LINUX) || defined(SOLARIS) || defined(IRIX) || defined(FREEBSD) ++#if defined(LINUX) || defined(SOLARIS) || defined(IRIX) || defined(FREEBSD) || defined(NETBSD) #include <pthread.h> #include <locale.h> #include <langinfo.h> -@@ -87,7 +87,7 @@ - static int - _pair_compare (const char *key, const _pair *pair) - { -- int result = rtl_str_compareIgnoreAsciiCase( key, pair->key ); -+ unsigned int result = rtl_str_compareIgnoreAsciiCase( key, pair->key ); - return result; - } - @@ -114,8 +114,7 @@ comparison = _pair_compare( key, base + current ); if (comparison < 0) @@ -33,56 +24,62 @@ } -#if defined(LINUX) || defined(SOLARIS) || defined(IRIX) || defined(NETBSD) -+#if defined(LINUX) || defined(SOLARIS) || defined(IRIX) || defined(FREEBSD) ++#if defined(LINUX) || defined(SOLARIS) || defined(IRIX) || defined(FREEBSD) || defined(NETBSD) /* * This implementation of osl_getTextEncodingFromLocale maps * from nl_langinfo(CODESET) to rtl_textencoding defines. - * nl_langinfo() is supported only on Linux, Solaris and IRIX. -+ * nl_langinfo() is supported only on Linux, Solaris and IRIX -+ * and FreeBSD. ++ * nl_langinfo() is supported only on Linux, Solaris and IRIX, ++ * >= NetBSD 1.5 and >= FreeBSD 4.4 * * This routine is SLOW because of the setlocale call, so * grab the result and cache it. -@@ -260,6 +260,10 @@ +@@ -260,6 +260,12 @@ #endif #endif +/* + * _nl_language_list[] is an array list of supported encodings. Because + * we are using a binary search, the list has to be in ascending order. ++ * We are comparing the encodings case insensitiv, so the list has ++ * to be completly upper- , or lowercase. + */ #if defined(SOLARIS) -@@ -312,10 +316,33 @@ - { "big5", RTL_TEXTENCODING_BIG5 }, /* China - Traditional Chinese */ - { "eucgbk", RTL_TEXTENCODING_DONTKNOW }, /* China - Simplified Chinese */ - { "gbk", RTL_TEXTENCODING_GBK }, /* China - Simplified Chinese */ -+ { "sjis", RTL_TEXTENCODING_SHIFT_JIS } /* Japan */ -+}; -+ -+#elif defined(FREEBSD) -+ -+const _pair _nl_language_list[] = { -+ { "ascii", RTL_TEXTENCODING_ASCII_US }, /* US-ASCII */ -+ { "big5", RTL_TEXTENCODING_BIG5 }, /* China - Traditional Chinese */ -+ { "cp1251", RTL_TEXTENCODING_MS_1251 }, /* MS-CYRL */ -+ { "cp866", RTL_TEXTENCODING_IBM_866 }, /* CP866 866 */ -+ { "eucCN", RTL_TEXTENCODING_EUC_CN }, /* China - Simplified Chinese */ -+ { "eucJP", RTL_TEXTENCODING_EUC_JP }, /* Japan */ -+ { "eucKR", RTL_TEXTENCODING_EUC_KR }, /* Korea */ -+ { "iso8859-1", RTL_TEXTENCODING_ISO_8859_1 }, /* Western */ -+ { "iso8859-15", RTL_TEXTENCODING_ISO_8859_15 }, /* Western Updated (w/Euro sign) */ -+ { "iso8859-2", RTL_TEXTENCODING_ISO_8859_2 }, /* Central European */ -+ { "iso8859-4", RTL_TEXTENCODING_ISO_8859_4 }, /* LATIN4 L4 */ -+ { "iso8859-5", RTL_TEXTENCODING_ISO_8859_5 }, /* Cyrillic */ -+ { "iso8859-7", RTL_TEXTENCODING_ISO_8859_7 }, /* Greek */ -+ { "iso8859-9", RTL_TEXTENCODING_ISO_8859_9 }, /* Turkish */ -+ { "koi-u", RTL_TEXTENCODING_DONTKNOW }, /* Not supported at the moment */ -+ { "koi8-r", RTL_TEXTENCODING_KOI8_R }, /* KOI8 */ - { "sjis", RTL_TEXTENCODING_SHIFT_JIS }, /* Japan */ -+ { "us-ascii", RTL_TEXTENCODING_ASCII_US } /* US-ASCII */ +@@ -299,23 +305,23 @@ + #elif defined(IRIX) + + const _pair _nl_language_list[] = { +- { "ISO8859-1", RTL_TEXTENCODING_ISO_8859_1 }, /* Western */ +- { "ISO8859-2", RTL_TEXTENCODING_ISO_8859_2 }, /* Central European */ +- { "ISO8859-5", RTL_TEXTENCODING_ISO_8859_5 }, /* Cyrillic */ +- { "ISO8859-7", RTL_TEXTENCODING_ISO_8859_7 }, /* Greek */ +- { "ISO8859-9", RTL_TEXTENCODING_ISO_8859_9 }, /* Turkish */ +- { "ISO8859-15", RTL_TEXTENCODING_ISO_8859_15 }, /* Western Updated (w/Euro sign) */ +- { "eucJP", RTL_TEXTENCODING_EUC_JP }, /* Japan */ +- { "eucKR", RTL_TEXTENCODING_EUC_KR }, /* Korea */ +- { "eucCN", RTL_TEXTENCODING_EUC_CN }, /* China */ +- { "eucTW", RTL_TEXTENCODING_EUC_TW }, /* Taiwan - Traditional Chinese */ +- { "big5", RTL_TEXTENCODING_BIG5 }, /* China - Traditional Chinese */ +- { "eucgbk", RTL_TEXTENCODING_DONTKNOW }, /* China - Simplified Chinese */ +- { "gbk", RTL_TEXTENCODING_GBK }, /* China - Simplified Chinese */ +- { "sjis", RTL_TEXTENCODING_SHIFT_JIS }, /* Japan */ ++ { "BIG5", RTL_TEXTENCODING_BIG5 }, /* China - Traditional Chinese */ ++ { "EUCCN", RTL_TEXTENCODING_EUC_CN }, /* China */ ++ { "EUCGBK", RTL_TEXTENCODING_DONTKNOW }, /* China - Simplified Chinese */ ++ { "EUCJP", RTL_TEXTENCODING_EUC_JP }, /* Japan */ ++ { "EUCKR", RTL_TEXTENCODING_EUC_KR }, /* Korea */ ++ { "EUCTW", RTL_TEXTENCODING_EUC_TW }, /* Taiwan - Traditional Chinese */ ++ { "GBK", RTL_TEXTENCODING_GBK }, /* China - Simplified Chinese */ ++ { "ISO8859-1", RTL_TEXTENCODING_ISO_8859_1 }, /* Western */ ++ { "ISO8859-15", RTL_TEXTENCODING_ISO_8859_15 }, /* Western Updated (w/Euro sign) */ ++ { "ISO8859-2", RTL_TEXTENCODING_ISO_8859_2 }, /* Central European */ ++ { "ISO8859-5", RTL_TEXTENCODING_ISO_8859_5 }, /* Cyrillic */ ++ { "ISO8859-7", RTL_TEXTENCODING_ISO_8859_7 }, /* Greek */ ++ { "ISO8859-9", RTL_TEXTENCODING_ISO_8859_9 }, /* Turkish */ ++ { "SJIS", RTL_TEXTENCODING_SHIFT_JIS } /* Japan */ }; -#elif defined(LINUX) || defined(NETBSD) @@ -90,38 +87,89 @@ const _pair _nl_language_list[] = { { "ANSI_X3.110-1983", RTL_TEXTENCODING_DONTKNOW }, /* ISO-IR-99 NAPLPS */ -@@ -496,7 +523,7 @@ +@@ -496,7 +502,58 @@ { "WIN-SAMI-2", RTL_TEXTENCODING_DONTKNOW } /* WS2 */ }; -#endif /* ifdef LINUX || NETBSD */ -+#endif /* ifdef LINUX || FREEBSD */ ++#elif defined(FREEBSD) ++ ++const _pair _nl_language_list[] = { ++ { "ASCII", RTL_TEXTENCODING_ASCII_US }, /* US-ASCII */ ++ { "BIG5", RTL_TEXTENCODING_BIG5 }, /* China - Traditional Chinese */ ++ { "CP1251", RTL_TEXTENCODING_MS_1251 }, /* MS-CYRL */ ++ { "CP866", RTL_TEXTENCODING_IBM_866 }, /* CP866 866 */ ++ { "EUCCN", RTL_TEXTENCODING_EUC_CN }, /* China - Simplified Chinese */ ++ { "EUCJP", RTL_TEXTENCODING_EUC_JP }, /* Japan */ ++ { "EUCKR", RTL_TEXTENCODING_EUC_KR }, /* Korea */ ++ { "ISO8859-1", RTL_TEXTENCODING_ISO_8859_1 }, /* Western */ ++ { "ISO8859-15", RTL_TEXTENCODING_ISO_8859_15 }, /* Western Updated (w/Euro sign) */ ++ { "ISO8859-2", RTL_TEXTENCODING_ISO_8859_2 }, /* Central European */ ++ { "ISO8859-4", RTL_TEXTENCODING_ISO_8859_4 }, /* LATIN4 L4 */ ++ { "ISO8859-5", RTL_TEXTENCODING_ISO_8859_5 }, /* Cyrillic */ ++ { "ISO8859-7", RTL_TEXTENCODING_ISO_8859_7 }, /* Greek */ ++ { "ISO8859-9", RTL_TEXTENCODING_ISO_8859_9 }, /* Turkish */ ++ { "KOI-U", RTL_TEXTENCODING_DONTKNOW }, /* Not supported at the moment */ ++ { "KOI8-R", RTL_TEXTENCODING_KOI8_R }, /* KOI8 */ ++ { "SJIS", RTL_TEXTENCODING_SHIFT_JIS }, /* Japan */ ++ { "US-ASCII", RTL_TEXTENCODING_ASCII_US } /* US-ASCII */ ++}; ++ ++#elif defined(NETBSD) ++ ++const _pair _nl_language_list[] = { ++ { "ASCII", RTL_TEXTENCODING_ASCII_US }, /* US-ASCII */ ++ { "BIG5", RTL_TEXTENCODING_BIG5 }, /* China - Traditional Chinese */ ++ { "CP1251", RTL_TEXTENCODING_MS_1251 }, /* MS-CYRL */ ++ { "CP866", RTL_TEXTENCODING_IBM_866 }, /* CP866 866 */ ++ { "CTEXT", RTL_TEXTENCODING_ASCII_US }, /* US-ASCII */ ++ { "EUCCN", RTL_TEXTENCODING_EUC_CN }, /* China - Simplified Chinese */ ++ { "EUCJP", RTL_TEXTENCODING_EUC_JP }, /* Japan */ ++ { "EUCKR", RTL_TEXTENCODING_EUC_KR }, /* Korea */ ++ { "EUCTW", RTL_TEXTENCODING_EUC_TW }, /* China - Traditional Chinese */ ++ { "ISO-2022-JP", RTL_TEXTENCODING_DONTKNOW }, /* */ ++ { "ISO-2022-JP-2", RTL_TEXTENCODING_DONTKNOW }, /* */ ++ { "ISO8859-1", RTL_TEXTENCODING_ISO_8859_1 }, /* Western */ ++ { "ISO8859-15", RTL_TEXTENCODING_ISO_8859_15 }, /* Western Updated (w/Euro sign) */ ++ { "ISO8859-2", RTL_TEXTENCODING_ISO_8859_2 }, /* Central European */ ++ { "ISO8859-4", RTL_TEXTENCODING_ISO_8859_4 }, /* LATIN4 L4 */ ++ { "ISO8859-5", RTL_TEXTENCODING_ISO_8859_5 }, /* Cyrillic */ ++ { "ISO8859-7", RTL_TEXTENCODING_ISO_8859_7 }, /* Greek */ ++ { "ISO8859-9", RTL_TEXTENCODING_ISO_8859_9 }, /* Turkish */ ++ { "KOI-U", RTL_TEXTENCODING_DONTKNOW }, /* Not supported at the moment */ ++ { "KOI8-R", RTL_TEXTENCODING_KOI8_R }, /* KOI8 */ ++ { "SJIS", RTL_TEXTENCODING_SHIFT_JIS }, /* Japan */ ++ { "US-ASCII", RTL_TEXTENCODING_ASCII_US }, /* US-ASCII */ ++ { "UTF-8", RTL_TEXTENCODING_UTF8 } /* ISO-10646/UTF-8 */ ++}; ++ ++#endif /* ifdef SOLARIS IRIX LINUX FREEBSD NETBSD */ static pthread_mutex_t aLocalMutex = PTHREAD_MUTEX_INITIALIZER; -@@ -618,7 +645,7 @@ +@@ -618,7 +675,7 @@ return ret; } -#elif defined(MACOSX) /* ifdef LINUX || SOLARIS || NETBSD */ -+#elif defined(MACOSX) /* ifdef LINUX || SOLARIS || FREEBSD */ ++#elif defined(MACOSX) /* ifdef LINUX || SOLARIS || IRIX || FREEBSD || NETBSD */ /* * FIXME: the MacOS X implemetation is missing -@@ -651,7 +678,7 @@ +@@ -651,7 +708,7 @@ return 0; } -#else /* ifdef LINUX || SOLARIS || MACOSX || NETBSD */ -+#else /* ifdef LINUX || SOLARIS || FREEBSD || MACOSX */ ++#else /* ifdef LINUX || SOLARIS || IRIX || FREEBSD || NETBSD || MACOSX */ /* * This implementation of osl_getTextEncodingFromLocale maps -@@ -887,6 +914,6 @@ +@@ -887,6 +944,6 @@ return 0; } -#endif /* ifdef LINUX || SOLARIS || MACOSX || NETBSD */ -+#endif /* ifdef LINUX || SOLARIS || MACOSX || FREEBSD */ ++#endif /* ifdef LINUX || SOLARIS || FREEBSD || NETBSD || MACOSX */ diff --git a/editors/openoffice-1.1/files/patch-sal+osl+unx+nlsupport.c b/editors/openoffice-1.1/files/patch-sal+osl+unx+nlsupport.c index 1a606f1694c1..8107caa02bcc 100644 --- a/editors/openoffice-1.1/files/patch-sal+osl+unx+nlsupport.c +++ b/editors/openoffice-1.1/files/patch-sal+osl+unx+nlsupport.c @@ -1,23 +1,14 @@ ---- ../sal/osl/unx/nlsupport.c.orig Tue May 21 15:22:11 2002 -+++ ../sal/osl/unx/nlsupport.c Wed Jul 31 10:28:29 2002 +--- ../sal/osl/unx/nlsupport.c.orig Wed Aug 14 18:22:49 2002 ++++ ../sal/osl/unx/nlsupport.c Wed Aug 14 19:07:18 2002 @@ -63,7 +63,7 @@ #include <osl/diagnose.h> #include <osl/process.h> -#if defined(LINUX) || defined(SOLARIS) || defined(IRIX) || defined(NETBSD) -+#if defined(LINUX) || defined(SOLARIS) || defined(IRIX) || defined(FREEBSD) ++#if defined(LINUX) || defined(SOLARIS) || defined(IRIX) || defined(FREEBSD) || defined(NETBSD) #include <pthread.h> #include <locale.h> #include <langinfo.h> -@@ -87,7 +87,7 @@ - static int - _pair_compare (const char *key, const _pair *pair) - { -- int result = rtl_str_compareIgnoreAsciiCase( key, pair->key ); -+ unsigned int result = rtl_str_compareIgnoreAsciiCase( key, pair->key ); - return result; - } - @@ -114,8 +114,7 @@ comparison = _pair_compare( key, base + current ); if (comparison < 0) @@ -33,56 +24,62 @@ } -#if defined(LINUX) || defined(SOLARIS) || defined(IRIX) || defined(NETBSD) -+#if defined(LINUX) || defined(SOLARIS) || defined(IRIX) || defined(FREEBSD) ++#if defined(LINUX) || defined(SOLARIS) || defined(IRIX) || defined(FREEBSD) || defined(NETBSD) /* * This implementation of osl_getTextEncodingFromLocale maps * from nl_langinfo(CODESET) to rtl_textencoding defines. - * nl_langinfo() is supported only on Linux, Solaris and IRIX. -+ * nl_langinfo() is supported only on Linux, Solaris and IRIX -+ * and FreeBSD. ++ * nl_langinfo() is supported only on Linux, Solaris and IRIX, ++ * >= NetBSD 1.5 and >= FreeBSD 4.4 * * This routine is SLOW because of the setlocale call, so * grab the result and cache it. -@@ -260,6 +260,10 @@ +@@ -260,6 +260,12 @@ #endif #endif +/* + * _nl_language_list[] is an array list of supported encodings. Because + * we are using a binary search, the list has to be in ascending order. ++ * We are comparing the encodings case insensitiv, so the list has ++ * to be completly upper- , or lowercase. + */ #if defined(SOLARIS) -@@ -312,10 +316,33 @@ - { "big5", RTL_TEXTENCODING_BIG5 }, /* China - Traditional Chinese */ - { "eucgbk", RTL_TEXTENCODING_DONTKNOW }, /* China - Simplified Chinese */ - { "gbk", RTL_TEXTENCODING_GBK }, /* China - Simplified Chinese */ -+ { "sjis", RTL_TEXTENCODING_SHIFT_JIS } /* Japan */ -+}; -+ -+#elif defined(FREEBSD) -+ -+const _pair _nl_language_list[] = { -+ { "ascii", RTL_TEXTENCODING_ASCII_US }, /* US-ASCII */ -+ { "big5", RTL_TEXTENCODING_BIG5 }, /* China - Traditional Chinese */ -+ { "cp1251", RTL_TEXTENCODING_MS_1251 }, /* MS-CYRL */ -+ { "cp866", RTL_TEXTENCODING_IBM_866 }, /* CP866 866 */ -+ { "eucCN", RTL_TEXTENCODING_EUC_CN }, /* China - Simplified Chinese */ -+ { "eucJP", RTL_TEXTENCODING_EUC_JP }, /* Japan */ -+ { "eucKR", RTL_TEXTENCODING_EUC_KR }, /* Korea */ -+ { "iso8859-1", RTL_TEXTENCODING_ISO_8859_1 }, /* Western */ -+ { "iso8859-15", RTL_TEXTENCODING_ISO_8859_15 }, /* Western Updated (w/Euro sign) */ -+ { "iso8859-2", RTL_TEXTENCODING_ISO_8859_2 }, /* Central European */ -+ { "iso8859-4", RTL_TEXTENCODING_ISO_8859_4 }, /* LATIN4 L4 */ -+ { "iso8859-5", RTL_TEXTENCODING_ISO_8859_5 }, /* Cyrillic */ -+ { "iso8859-7", RTL_TEXTENCODING_ISO_8859_7 }, /* Greek */ -+ { "iso8859-9", RTL_TEXTENCODING_ISO_8859_9 }, /* Turkish */ -+ { "koi-u", RTL_TEXTENCODING_DONTKNOW }, /* Not supported at the moment */ -+ { "koi8-r", RTL_TEXTENCODING_KOI8_R }, /* KOI8 */ - { "sjis", RTL_TEXTENCODING_SHIFT_JIS }, /* Japan */ -+ { "us-ascii", RTL_TEXTENCODING_ASCII_US } /* US-ASCII */ +@@ -299,23 +305,23 @@ + #elif defined(IRIX) + + const _pair _nl_language_list[] = { +- { "ISO8859-1", RTL_TEXTENCODING_ISO_8859_1 }, /* Western */ +- { "ISO8859-2", RTL_TEXTENCODING_ISO_8859_2 }, /* Central European */ +- { "ISO8859-5", RTL_TEXTENCODING_ISO_8859_5 }, /* Cyrillic */ +- { "ISO8859-7", RTL_TEXTENCODING_ISO_8859_7 }, /* Greek */ +- { "ISO8859-9", RTL_TEXTENCODING_ISO_8859_9 }, /* Turkish */ +- { "ISO8859-15", RTL_TEXTENCODING_ISO_8859_15 }, /* Western Updated (w/Euro sign) */ +- { "eucJP", RTL_TEXTENCODING_EUC_JP }, /* Japan */ +- { "eucKR", RTL_TEXTENCODING_EUC_KR }, /* Korea */ +- { "eucCN", RTL_TEXTENCODING_EUC_CN }, /* China */ +- { "eucTW", RTL_TEXTENCODING_EUC_TW }, /* Taiwan - Traditional Chinese */ +- { "big5", RTL_TEXTENCODING_BIG5 }, /* China - Traditional Chinese */ +- { "eucgbk", RTL_TEXTENCODING_DONTKNOW }, /* China - Simplified Chinese */ +- { "gbk", RTL_TEXTENCODING_GBK }, /* China - Simplified Chinese */ +- { "sjis", RTL_TEXTENCODING_SHIFT_JIS }, /* Japan */ ++ { "BIG5", RTL_TEXTENCODING_BIG5 }, /* China - Traditional Chinese */ ++ { "EUCCN", RTL_TEXTENCODING_EUC_CN }, /* China */ ++ { "EUCGBK", RTL_TEXTENCODING_DONTKNOW }, /* China - Simplified Chinese */ ++ { "EUCJP", RTL_TEXTENCODING_EUC_JP }, /* Japan */ ++ { "EUCKR", RTL_TEXTENCODING_EUC_KR }, /* Korea */ ++ { "EUCTW", RTL_TEXTENCODING_EUC_TW }, /* Taiwan - Traditional Chinese */ ++ { "GBK", RTL_TEXTENCODING_GBK }, /* China - Simplified Chinese */ ++ { "ISO8859-1", RTL_TEXTENCODING_ISO_8859_1 }, /* Western */ ++ { "ISO8859-15", RTL_TEXTENCODING_ISO_8859_15 }, /* Western Updated (w/Euro sign) */ ++ { "ISO8859-2", RTL_TEXTENCODING_ISO_8859_2 }, /* Central European */ ++ { "ISO8859-5", RTL_TEXTENCODING_ISO_8859_5 }, /* Cyrillic */ ++ { "ISO8859-7", RTL_TEXTENCODING_ISO_8859_7 }, /* Greek */ ++ { "ISO8859-9", RTL_TEXTENCODING_ISO_8859_9 }, /* Turkish */ ++ { "SJIS", RTL_TEXTENCODING_SHIFT_JIS } /* Japan */ }; -#elif defined(LINUX) || defined(NETBSD) @@ -90,38 +87,89 @@ const _pair _nl_language_list[] = { { "ANSI_X3.110-1983", RTL_TEXTENCODING_DONTKNOW }, /* ISO-IR-99 NAPLPS */ -@@ -496,7 +523,7 @@ +@@ -496,7 +502,58 @@ { "WIN-SAMI-2", RTL_TEXTENCODING_DONTKNOW } /* WS2 */ }; -#endif /* ifdef LINUX || NETBSD */ -+#endif /* ifdef LINUX || FREEBSD */ ++#elif defined(FREEBSD) ++ ++const _pair _nl_language_list[] = { ++ { "ASCII", RTL_TEXTENCODING_ASCII_US }, /* US-ASCII */ ++ { "BIG5", RTL_TEXTENCODING_BIG5 }, /* China - Traditional Chinese */ ++ { "CP1251", RTL_TEXTENCODING_MS_1251 }, /* MS-CYRL */ ++ { "CP866", RTL_TEXTENCODING_IBM_866 }, /* CP866 866 */ ++ { "EUCCN", RTL_TEXTENCODING_EUC_CN }, /* China - Simplified Chinese */ ++ { "EUCJP", RTL_TEXTENCODING_EUC_JP }, /* Japan */ ++ { "EUCKR", RTL_TEXTENCODING_EUC_KR }, /* Korea */ ++ { "ISO8859-1", RTL_TEXTENCODING_ISO_8859_1 }, /* Western */ ++ { "ISO8859-15", RTL_TEXTENCODING_ISO_8859_15 }, /* Western Updated (w/Euro sign) */ ++ { "ISO8859-2", RTL_TEXTENCODING_ISO_8859_2 }, /* Central European */ ++ { "ISO8859-4", RTL_TEXTENCODING_ISO_8859_4 }, /* LATIN4 L4 */ ++ { "ISO8859-5", RTL_TEXTENCODING_ISO_8859_5 }, /* Cyrillic */ ++ { "ISO8859-7", RTL_TEXTENCODING_ISO_8859_7 }, /* Greek */ ++ { "ISO8859-9", RTL_TEXTENCODING_ISO_8859_9 }, /* Turkish */ ++ { "KOI-U", RTL_TEXTENCODING_DONTKNOW }, /* Not supported at the moment */ ++ { "KOI8-R", RTL_TEXTENCODING_KOI8_R }, /* KOI8 */ ++ { "SJIS", RTL_TEXTENCODING_SHIFT_JIS }, /* Japan */ ++ { "US-ASCII", RTL_TEXTENCODING_ASCII_US } /* US-ASCII */ ++}; ++ ++#elif defined(NETBSD) ++ ++const _pair _nl_language_list[] = { ++ { "ASCII", RTL_TEXTENCODING_ASCII_US }, /* US-ASCII */ ++ { "BIG5", RTL_TEXTENCODING_BIG5 }, /* China - Traditional Chinese */ ++ { "CP1251", RTL_TEXTENCODING_MS_1251 }, /* MS-CYRL */ ++ { "CP866", RTL_TEXTENCODING_IBM_866 }, /* CP866 866 */ ++ { "CTEXT", RTL_TEXTENCODING_ASCII_US }, /* US-ASCII */ ++ { "EUCCN", RTL_TEXTENCODING_EUC_CN }, /* China - Simplified Chinese */ ++ { "EUCJP", RTL_TEXTENCODING_EUC_JP }, /* Japan */ ++ { "EUCKR", RTL_TEXTENCODING_EUC_KR }, /* Korea */ ++ { "EUCTW", RTL_TEXTENCODING_EUC_TW }, /* China - Traditional Chinese */ ++ { "ISO-2022-JP", RTL_TEXTENCODING_DONTKNOW }, /* */ ++ { "ISO-2022-JP-2", RTL_TEXTENCODING_DONTKNOW }, /* */ ++ { "ISO8859-1", RTL_TEXTENCODING_ISO_8859_1 }, /* Western */ ++ { "ISO8859-15", RTL_TEXTENCODING_ISO_8859_15 }, /* Western Updated (w/Euro sign) */ ++ { "ISO8859-2", RTL_TEXTENCODING_ISO_8859_2 }, /* Central European */ ++ { "ISO8859-4", RTL_TEXTENCODING_ISO_8859_4 }, /* LATIN4 L4 */ ++ { "ISO8859-5", RTL_TEXTENCODING_ISO_8859_5 }, /* Cyrillic */ ++ { "ISO8859-7", RTL_TEXTENCODING_ISO_8859_7 }, /* Greek */ ++ { "ISO8859-9", RTL_TEXTENCODING_ISO_8859_9 }, /* Turkish */ ++ { "KOI-U", RTL_TEXTENCODING_DONTKNOW }, /* Not supported at the moment */ ++ { "KOI8-R", RTL_TEXTENCODING_KOI8_R }, /* KOI8 */ ++ { "SJIS", RTL_TEXTENCODING_SHIFT_JIS }, /* Japan */ ++ { "US-ASCII", RTL_TEXTENCODING_ASCII_US }, /* US-ASCII */ ++ { "UTF-8", RTL_TEXTENCODING_UTF8 } /* ISO-10646/UTF-8 */ ++}; ++ ++#endif /* ifdef SOLARIS IRIX LINUX FREEBSD NETBSD */ static pthread_mutex_t aLocalMutex = PTHREAD_MUTEX_INITIALIZER; -@@ -618,7 +645,7 @@ +@@ -618,7 +675,7 @@ return ret; } -#elif defined(MACOSX) /* ifdef LINUX || SOLARIS || NETBSD */ -+#elif defined(MACOSX) /* ifdef LINUX || SOLARIS || FREEBSD */ ++#elif defined(MACOSX) /* ifdef LINUX || SOLARIS || IRIX || FREEBSD || NETBSD */ /* * FIXME: the MacOS X implemetation is missing -@@ -651,7 +678,7 @@ +@@ -651,7 +708,7 @@ return 0; } -#else /* ifdef LINUX || SOLARIS || MACOSX || NETBSD */ -+#else /* ifdef LINUX || SOLARIS || FREEBSD || MACOSX */ ++#else /* ifdef LINUX || SOLARIS || IRIX || FREEBSD || NETBSD || MACOSX */ /* * This implementation of osl_getTextEncodingFromLocale maps -@@ -887,6 +914,6 @@ +@@ -887,6 +944,6 @@ return 0; } -#endif /* ifdef LINUX || SOLARIS || MACOSX || NETBSD */ -+#endif /* ifdef LINUX || SOLARIS || MACOSX || FREEBSD */ ++#endif /* ifdef LINUX || SOLARIS || FREEBSD || NETBSD || MACOSX */ diff --git a/editors/openoffice-2.0-devel/files/patch-sal+osl+unx+nlsupport.c b/editors/openoffice-2.0-devel/files/patch-sal+osl+unx+nlsupport.c index 1a606f1694c1..8107caa02bcc 100644 --- a/editors/openoffice-2.0-devel/files/patch-sal+osl+unx+nlsupport.c +++ b/editors/openoffice-2.0-devel/files/patch-sal+osl+unx+nlsupport.c @@ -1,23 +1,14 @@ ---- ../sal/osl/unx/nlsupport.c.orig Tue May 21 15:22:11 2002 -+++ ../sal/osl/unx/nlsupport.c Wed Jul 31 10:28:29 2002 +--- ../sal/osl/unx/nlsupport.c.orig Wed Aug 14 18:22:49 2002 ++++ ../sal/osl/unx/nlsupport.c Wed Aug 14 19:07:18 2002 @@ -63,7 +63,7 @@ #include <osl/diagnose.h> #include <osl/process.h> -#if defined(LINUX) || defined(SOLARIS) || defined(IRIX) || defined(NETBSD) -+#if defined(LINUX) || defined(SOLARIS) || defined(IRIX) || defined(FREEBSD) ++#if defined(LINUX) || defined(SOLARIS) || defined(IRIX) || defined(FREEBSD) || defined(NETBSD) #include <pthread.h> #include <locale.h> #include <langinfo.h> -@@ -87,7 +87,7 @@ - static int - _pair_compare (const char *key, const _pair *pair) - { -- int result = rtl_str_compareIgnoreAsciiCase( key, pair->key ); -+ unsigned int result = rtl_str_compareIgnoreAsciiCase( key, pair->key ); - return result; - } - @@ -114,8 +114,7 @@ comparison = _pair_compare( key, base + current ); if (comparison < 0) @@ -33,56 +24,62 @@ } -#if defined(LINUX) || defined(SOLARIS) || defined(IRIX) || defined(NETBSD) -+#if defined(LINUX) || defined(SOLARIS) || defined(IRIX) || defined(FREEBSD) ++#if defined(LINUX) || defined(SOLARIS) || defined(IRIX) || defined(FREEBSD) || defined(NETBSD) /* * This implementation of osl_getTextEncodingFromLocale maps * from nl_langinfo(CODESET) to rtl_textencoding defines. - * nl_langinfo() is supported only on Linux, Solaris and IRIX. -+ * nl_langinfo() is supported only on Linux, Solaris and IRIX -+ * and FreeBSD. ++ * nl_langinfo() is supported only on Linux, Solaris and IRIX, ++ * >= NetBSD 1.5 and >= FreeBSD 4.4 * * This routine is SLOW because of the setlocale call, so * grab the result and cache it. -@@ -260,6 +260,10 @@ +@@ -260,6 +260,12 @@ #endif #endif +/* + * _nl_language_list[] is an array list of supported encodings. Because + * we are using a binary search, the list has to be in ascending order. ++ * We are comparing the encodings case insensitiv, so the list has ++ * to be completly upper- , or lowercase. + */ #if defined(SOLARIS) -@@ -312,10 +316,33 @@ - { "big5", RTL_TEXTENCODING_BIG5 }, /* China - Traditional Chinese */ - { "eucgbk", RTL_TEXTENCODING_DONTKNOW }, /* China - Simplified Chinese */ - { "gbk", RTL_TEXTENCODING_GBK }, /* China - Simplified Chinese */ -+ { "sjis", RTL_TEXTENCODING_SHIFT_JIS } /* Japan */ -+}; -+ -+#elif defined(FREEBSD) -+ -+const _pair _nl_language_list[] = { -+ { "ascii", RTL_TEXTENCODING_ASCII_US }, /* US-ASCII */ -+ { "big5", RTL_TEXTENCODING_BIG5 }, /* China - Traditional Chinese */ -+ { "cp1251", RTL_TEXTENCODING_MS_1251 }, /* MS-CYRL */ -+ { "cp866", RTL_TEXTENCODING_IBM_866 }, /* CP866 866 */ -+ { "eucCN", RTL_TEXTENCODING_EUC_CN }, /* China - Simplified Chinese */ -+ { "eucJP", RTL_TEXTENCODING_EUC_JP }, /* Japan */ -+ { "eucKR", RTL_TEXTENCODING_EUC_KR }, /* Korea */ -+ { "iso8859-1", RTL_TEXTENCODING_ISO_8859_1 }, /* Western */ -+ { "iso8859-15", RTL_TEXTENCODING_ISO_8859_15 }, /* Western Updated (w/Euro sign) */ -+ { "iso8859-2", RTL_TEXTENCODING_ISO_8859_2 }, /* Central European */ -+ { "iso8859-4", RTL_TEXTENCODING_ISO_8859_4 }, /* LATIN4 L4 */ -+ { "iso8859-5", RTL_TEXTENCODING_ISO_8859_5 }, /* Cyrillic */ -+ { "iso8859-7", RTL_TEXTENCODING_ISO_8859_7 }, /* Greek */ -+ { "iso8859-9", RTL_TEXTENCODING_ISO_8859_9 }, /* Turkish */ -+ { "koi-u", RTL_TEXTENCODING_DONTKNOW }, /* Not supported at the moment */ -+ { "koi8-r", RTL_TEXTENCODING_KOI8_R }, /* KOI8 */ - { "sjis", RTL_TEXTENCODING_SHIFT_JIS }, /* Japan */ -+ { "us-ascii", RTL_TEXTENCODING_ASCII_US } /* US-ASCII */ +@@ -299,23 +305,23 @@ + #elif defined(IRIX) + + const _pair _nl_language_list[] = { +- { "ISO8859-1", RTL_TEXTENCODING_ISO_8859_1 }, /* Western */ +- { "ISO8859-2", RTL_TEXTENCODING_ISO_8859_2 }, /* Central European */ +- { "ISO8859-5", RTL_TEXTENCODING_ISO_8859_5 }, /* Cyrillic */ +- { "ISO8859-7", RTL_TEXTENCODING_ISO_8859_7 }, /* Greek */ +- { "ISO8859-9", RTL_TEXTENCODING_ISO_8859_9 }, /* Turkish */ +- { "ISO8859-15", RTL_TEXTENCODING_ISO_8859_15 }, /* Western Updated (w/Euro sign) */ +- { "eucJP", RTL_TEXTENCODING_EUC_JP }, /* Japan */ +- { "eucKR", RTL_TEXTENCODING_EUC_KR }, /* Korea */ +- { "eucCN", RTL_TEXTENCODING_EUC_CN }, /* China */ +- { "eucTW", RTL_TEXTENCODING_EUC_TW }, /* Taiwan - Traditional Chinese */ +- { "big5", RTL_TEXTENCODING_BIG5 }, /* China - Traditional Chinese */ +- { "eucgbk", RTL_TEXTENCODING_DONTKNOW }, /* China - Simplified Chinese */ +- { "gbk", RTL_TEXTENCODING_GBK }, /* China - Simplified Chinese */ +- { "sjis", RTL_TEXTENCODING_SHIFT_JIS }, /* Japan */ ++ { "BIG5", RTL_TEXTENCODING_BIG5 }, /* China - Traditional Chinese */ ++ { "EUCCN", RTL_TEXTENCODING_EUC_CN }, /* China */ ++ { "EUCGBK", RTL_TEXTENCODING_DONTKNOW }, /* China - Simplified Chinese */ ++ { "EUCJP", RTL_TEXTENCODING_EUC_JP }, /* Japan */ ++ { "EUCKR", RTL_TEXTENCODING_EUC_KR }, /* Korea */ ++ { "EUCTW", RTL_TEXTENCODING_EUC_TW }, /* Taiwan - Traditional Chinese */ ++ { "GBK", RTL_TEXTENCODING_GBK }, /* China - Simplified Chinese */ ++ { "ISO8859-1", RTL_TEXTENCODING_ISO_8859_1 }, /* Western */ ++ { "ISO8859-15", RTL_TEXTENCODING_ISO_8859_15 }, /* Western Updated (w/Euro sign) */ ++ { "ISO8859-2", RTL_TEXTENCODING_ISO_8859_2 }, /* Central European */ ++ { "ISO8859-5", RTL_TEXTENCODING_ISO_8859_5 }, /* Cyrillic */ ++ { "ISO8859-7", RTL_TEXTENCODING_ISO_8859_7 }, /* Greek */ ++ { "ISO8859-9", RTL_TEXTENCODING_ISO_8859_9 }, /* Turkish */ ++ { "SJIS", RTL_TEXTENCODING_SHIFT_JIS } /* Japan */ }; -#elif defined(LINUX) || defined(NETBSD) @@ -90,38 +87,89 @@ const _pair _nl_language_list[] = { { "ANSI_X3.110-1983", RTL_TEXTENCODING_DONTKNOW }, /* ISO-IR-99 NAPLPS */ -@@ -496,7 +523,7 @@ +@@ -496,7 +502,58 @@ { "WIN-SAMI-2", RTL_TEXTENCODING_DONTKNOW } /* WS2 */ }; -#endif /* ifdef LINUX || NETBSD */ -+#endif /* ifdef LINUX || FREEBSD */ ++#elif defined(FREEBSD) ++ ++const _pair _nl_language_list[] = { ++ { "ASCII", RTL_TEXTENCODING_ASCII_US }, /* US-ASCII */ ++ { "BIG5", RTL_TEXTENCODING_BIG5 }, /* China - Traditional Chinese */ ++ { "CP1251", RTL_TEXTENCODING_MS_1251 }, /* MS-CYRL */ ++ { "CP866", RTL_TEXTENCODING_IBM_866 }, /* CP866 866 */ ++ { "EUCCN", RTL_TEXTENCODING_EUC_CN }, /* China - Simplified Chinese */ ++ { "EUCJP", RTL_TEXTENCODING_EUC_JP }, /* Japan */ ++ { "EUCKR", RTL_TEXTENCODING_EUC_KR }, /* Korea */ ++ { "ISO8859-1", RTL_TEXTENCODING_ISO_8859_1 }, /* Western */ ++ { "ISO8859-15", RTL_TEXTENCODING_ISO_8859_15 }, /* Western Updated (w/Euro sign) */ ++ { "ISO8859-2", RTL_TEXTENCODING_ISO_8859_2 }, /* Central European */ ++ { "ISO8859-4", RTL_TEXTENCODING_ISO_8859_4 }, /* LATIN4 L4 */ ++ { "ISO8859-5", RTL_TEXTENCODING_ISO_8859_5 }, /* Cyrillic */ ++ { "ISO8859-7", RTL_TEXTENCODING_ISO_8859_7 }, /* Greek */ ++ { "ISO8859-9", RTL_TEXTENCODING_ISO_8859_9 }, /* Turkish */ ++ { "KOI-U", RTL_TEXTENCODING_DONTKNOW }, /* Not supported at the moment */ ++ { "KOI8-R", RTL_TEXTENCODING_KOI8_R }, /* KOI8 */ ++ { "SJIS", RTL_TEXTENCODING_SHIFT_JIS }, /* Japan */ ++ { "US-ASCII", RTL_TEXTENCODING_ASCII_US } /* US-ASCII */ ++}; ++ ++#elif defined(NETBSD) ++ ++const _pair _nl_language_list[] = { ++ { "ASCII", RTL_TEXTENCODING_ASCII_US }, /* US-ASCII */ ++ { "BIG5", RTL_TEXTENCODING_BIG5 }, /* China - Traditional Chinese */ ++ { "CP1251", RTL_TEXTENCODING_MS_1251 }, /* MS-CYRL */ ++ { "CP866", RTL_TEXTENCODING_IBM_866 }, /* CP866 866 */ ++ { "CTEXT", RTL_TEXTENCODING_ASCII_US }, /* US-ASCII */ ++ { "EUCCN", RTL_TEXTENCODING_EUC_CN }, /* China - Simplified Chinese */ ++ { "EUCJP", RTL_TEXTENCODING_EUC_JP }, /* Japan */ ++ { "EUCKR", RTL_TEXTENCODING_EUC_KR }, /* Korea */ ++ { "EUCTW", RTL_TEXTENCODING_EUC_TW }, /* China - Traditional Chinese */ ++ { "ISO-2022-JP", RTL_TEXTENCODING_DONTKNOW }, /* */ ++ { "ISO-2022-JP-2", RTL_TEXTENCODING_DONTKNOW }, /* */ ++ { "ISO8859-1", RTL_TEXTENCODING_ISO_8859_1 }, /* Western */ ++ { "ISO8859-15", RTL_TEXTENCODING_ISO_8859_15 }, /* Western Updated (w/Euro sign) */ ++ { "ISO8859-2", RTL_TEXTENCODING_ISO_8859_2 }, /* Central European */ ++ { "ISO8859-4", RTL_TEXTENCODING_ISO_8859_4 }, /* LATIN4 L4 */ ++ { "ISO8859-5", RTL_TEXTENCODING_ISO_8859_5 }, /* Cyrillic */ ++ { "ISO8859-7", RTL_TEXTENCODING_ISO_8859_7 }, /* Greek */ ++ { "ISO8859-9", RTL_TEXTENCODING_ISO_8859_9 }, /* Turkish */ ++ { "KOI-U", RTL_TEXTENCODING_DONTKNOW }, /* Not supported at the moment */ ++ { "KOI8-R", RTL_TEXTENCODING_KOI8_R }, /* KOI8 */ ++ { "SJIS", RTL_TEXTENCODING_SHIFT_JIS }, /* Japan */ ++ { "US-ASCII", RTL_TEXTENCODING_ASCII_US }, /* US-ASCII */ ++ { "UTF-8", RTL_TEXTENCODING_UTF8 } /* ISO-10646/UTF-8 */ ++}; ++ ++#endif /* ifdef SOLARIS IRIX LINUX FREEBSD NETBSD */ static pthread_mutex_t aLocalMutex = PTHREAD_MUTEX_INITIALIZER; -@@ -618,7 +645,7 @@ +@@ -618,7 +675,7 @@ return ret; } -#elif defined(MACOSX) /* ifdef LINUX || SOLARIS || NETBSD */ -+#elif defined(MACOSX) /* ifdef LINUX || SOLARIS || FREEBSD */ ++#elif defined(MACOSX) /* ifdef LINUX || SOLARIS || IRIX || FREEBSD || NETBSD */ /* * FIXME: the MacOS X implemetation is missing -@@ -651,7 +678,7 @@ +@@ -651,7 +708,7 @@ return 0; } -#else /* ifdef LINUX || SOLARIS || MACOSX || NETBSD */ -+#else /* ifdef LINUX || SOLARIS || FREEBSD || MACOSX */ ++#else /* ifdef LINUX || SOLARIS || IRIX || FREEBSD || NETBSD || MACOSX */ /* * This implementation of osl_getTextEncodingFromLocale maps -@@ -887,6 +914,6 @@ +@@ -887,6 +944,6 @@ return 0; } -#endif /* ifdef LINUX || SOLARIS || MACOSX || NETBSD */ -+#endif /* ifdef LINUX || SOLARIS || MACOSX || FREEBSD */ ++#endif /* ifdef LINUX || SOLARIS || FREEBSD || NETBSD || MACOSX */ diff --git a/editors/openoffice-3-devel/files/patch-sal+osl+unx+nlsupport.c b/editors/openoffice-3-devel/files/patch-sal+osl+unx+nlsupport.c index 1a606f1694c1..8107caa02bcc 100644 --- a/editors/openoffice-3-devel/files/patch-sal+osl+unx+nlsupport.c +++ b/editors/openoffice-3-devel/files/patch-sal+osl+unx+nlsupport.c @@ -1,23 +1,14 @@ ---- ../sal/osl/unx/nlsupport.c.orig Tue May 21 15:22:11 2002 -+++ ../sal/osl/unx/nlsupport.c Wed Jul 31 10:28:29 2002 +--- ../sal/osl/unx/nlsupport.c.orig Wed Aug 14 18:22:49 2002 ++++ ../sal/osl/unx/nlsupport.c Wed Aug 14 19:07:18 2002 @@ -63,7 +63,7 @@ #include <osl/diagnose.h> #include <osl/process.h> -#if defined(LINUX) || defined(SOLARIS) || defined(IRIX) || defined(NETBSD) -+#if defined(LINUX) || defined(SOLARIS) || defined(IRIX) || defined(FREEBSD) ++#if defined(LINUX) || defined(SOLARIS) || defined(IRIX) || defined(FREEBSD) || defined(NETBSD) #include <pthread.h> #include <locale.h> #include <langinfo.h> -@@ -87,7 +87,7 @@ - static int - _pair_compare (const char *key, const _pair *pair) - { -- int result = rtl_str_compareIgnoreAsciiCase( key, pair->key ); -+ unsigned int result = rtl_str_compareIgnoreAsciiCase( key, pair->key ); - return result; - } - @@ -114,8 +114,7 @@ comparison = _pair_compare( key, base + current ); if (comparison < 0) @@ -33,56 +24,62 @@ } -#if defined(LINUX) || defined(SOLARIS) || defined(IRIX) || defined(NETBSD) -+#if defined(LINUX) || defined(SOLARIS) || defined(IRIX) || defined(FREEBSD) ++#if defined(LINUX) || defined(SOLARIS) || defined(IRIX) || defined(FREEBSD) || defined(NETBSD) /* * This implementation of osl_getTextEncodingFromLocale maps * from nl_langinfo(CODESET) to rtl_textencoding defines. - * nl_langinfo() is supported only on Linux, Solaris and IRIX. -+ * nl_langinfo() is supported only on Linux, Solaris and IRIX -+ * and FreeBSD. ++ * nl_langinfo() is supported only on Linux, Solaris and IRIX, ++ * >= NetBSD 1.5 and >= FreeBSD 4.4 * * This routine is SLOW because of the setlocale call, so * grab the result and cache it. -@@ -260,6 +260,10 @@ +@@ -260,6 +260,12 @@ #endif #endif +/* + * _nl_language_list[] is an array list of supported encodings. Because + * we are using a binary search, the list has to be in ascending order. ++ * We are comparing the encodings case insensitiv, so the list has ++ * to be completly upper- , or lowercase. + */ #if defined(SOLARIS) -@@ -312,10 +316,33 @@ - { "big5", RTL_TEXTENCODING_BIG5 }, /* China - Traditional Chinese */ - { "eucgbk", RTL_TEXTENCODING_DONTKNOW }, /* China - Simplified Chinese */ - { "gbk", RTL_TEXTENCODING_GBK }, /* China - Simplified Chinese */ -+ { "sjis", RTL_TEXTENCODING_SHIFT_JIS } /* Japan */ -+}; -+ -+#elif defined(FREEBSD) -+ -+const _pair _nl_language_list[] = { -+ { "ascii", RTL_TEXTENCODING_ASCII_US }, /* US-ASCII */ -+ { "big5", RTL_TEXTENCODING_BIG5 }, /* China - Traditional Chinese */ -+ { "cp1251", RTL_TEXTENCODING_MS_1251 }, /* MS-CYRL */ -+ { "cp866", RTL_TEXTENCODING_IBM_866 }, /* CP866 866 */ -+ { "eucCN", RTL_TEXTENCODING_EUC_CN }, /* China - Simplified Chinese */ -+ { "eucJP", RTL_TEXTENCODING_EUC_JP }, /* Japan */ -+ { "eucKR", RTL_TEXTENCODING_EUC_KR }, /* Korea */ -+ { "iso8859-1", RTL_TEXTENCODING_ISO_8859_1 }, /* Western */ -+ { "iso8859-15", RTL_TEXTENCODING_ISO_8859_15 }, /* Western Updated (w/Euro sign) */ -+ { "iso8859-2", RTL_TEXTENCODING_ISO_8859_2 }, /* Central European */ -+ { "iso8859-4", RTL_TEXTENCODING_ISO_8859_4 }, /* LATIN4 L4 */ -+ { "iso8859-5", RTL_TEXTENCODING_ISO_8859_5 }, /* Cyrillic */ -+ { "iso8859-7", RTL_TEXTENCODING_ISO_8859_7 }, /* Greek */ -+ { "iso8859-9", RTL_TEXTENCODING_ISO_8859_9 }, /* Turkish */ -+ { "koi-u", RTL_TEXTENCODING_DONTKNOW }, /* Not supported at the moment */ -+ { "koi8-r", RTL_TEXTENCODING_KOI8_R }, /* KOI8 */ - { "sjis", RTL_TEXTENCODING_SHIFT_JIS }, /* Japan */ -+ { "us-ascii", RTL_TEXTENCODING_ASCII_US } /* US-ASCII */ +@@ -299,23 +305,23 @@ + #elif defined(IRIX) + + const _pair _nl_language_list[] = { +- { "ISO8859-1", RTL_TEXTENCODING_ISO_8859_1 }, /* Western */ +- { "ISO8859-2", RTL_TEXTENCODING_ISO_8859_2 }, /* Central European */ +- { "ISO8859-5", RTL_TEXTENCODING_ISO_8859_5 }, /* Cyrillic */ +- { "ISO8859-7", RTL_TEXTENCODING_ISO_8859_7 }, /* Greek */ +- { "ISO8859-9", RTL_TEXTENCODING_ISO_8859_9 }, /* Turkish */ +- { "ISO8859-15", RTL_TEXTENCODING_ISO_8859_15 }, /* Western Updated (w/Euro sign) */ +- { "eucJP", RTL_TEXTENCODING_EUC_JP }, /* Japan */ +- { "eucKR", RTL_TEXTENCODING_EUC_KR }, /* Korea */ +- { "eucCN", RTL_TEXTENCODING_EUC_CN }, /* China */ +- { "eucTW", RTL_TEXTENCODING_EUC_TW }, /* Taiwan - Traditional Chinese */ +- { "big5", RTL_TEXTENCODING_BIG5 }, /* China - Traditional Chinese */ +- { "eucgbk", RTL_TEXTENCODING_DONTKNOW }, /* China - Simplified Chinese */ +- { "gbk", RTL_TEXTENCODING_GBK }, /* China - Simplified Chinese */ +- { "sjis", RTL_TEXTENCODING_SHIFT_JIS }, /* Japan */ ++ { "BIG5", RTL_TEXTENCODING_BIG5 }, /* China - Traditional Chinese */ ++ { "EUCCN", RTL_TEXTENCODING_EUC_CN }, /* China */ ++ { "EUCGBK", RTL_TEXTENCODING_DONTKNOW }, /* China - Simplified Chinese */ ++ { "EUCJP", RTL_TEXTENCODING_EUC_JP }, /* Japan */ ++ { "EUCKR", RTL_TEXTENCODING_EUC_KR }, /* Korea */ ++ { "EUCTW", RTL_TEXTENCODING_EUC_TW }, /* Taiwan - Traditional Chinese */ ++ { "GBK", RTL_TEXTENCODING_GBK }, /* China - Simplified Chinese */ ++ { "ISO8859-1", RTL_TEXTENCODING_ISO_8859_1 }, /* Western */ ++ { "ISO8859-15", RTL_TEXTENCODING_ISO_8859_15 }, /* Western Updated (w/Euro sign) */ ++ { "ISO8859-2", RTL_TEXTENCODING_ISO_8859_2 }, /* Central European */ ++ { "ISO8859-5", RTL_TEXTENCODING_ISO_8859_5 }, /* Cyrillic */ ++ { "ISO8859-7", RTL_TEXTENCODING_ISO_8859_7 }, /* Greek */ ++ { "ISO8859-9", RTL_TEXTENCODING_ISO_8859_9 }, /* Turkish */ ++ { "SJIS", RTL_TEXTENCODING_SHIFT_JIS } /* Japan */ }; -#elif defined(LINUX) || defined(NETBSD) @@ -90,38 +87,89 @@ const _pair _nl_language_list[] = { { "ANSI_X3.110-1983", RTL_TEXTENCODING_DONTKNOW }, /* ISO-IR-99 NAPLPS */ -@@ -496,7 +523,7 @@ +@@ -496,7 +502,58 @@ { "WIN-SAMI-2", RTL_TEXTENCODING_DONTKNOW } /* WS2 */ }; -#endif /* ifdef LINUX || NETBSD */ -+#endif /* ifdef LINUX || FREEBSD */ ++#elif defined(FREEBSD) ++ ++const _pair _nl_language_list[] = { ++ { "ASCII", RTL_TEXTENCODING_ASCII_US }, /* US-ASCII */ ++ { "BIG5", RTL_TEXTENCODING_BIG5 }, /* China - Traditional Chinese */ ++ { "CP1251", RTL_TEXTENCODING_MS_1251 }, /* MS-CYRL */ ++ { "CP866", RTL_TEXTENCODING_IBM_866 }, /* CP866 866 */ ++ { "EUCCN", RTL_TEXTENCODING_EUC_CN }, /* China - Simplified Chinese */ ++ { "EUCJP", RTL_TEXTENCODING_EUC_JP }, /* Japan */ ++ { "EUCKR", RTL_TEXTENCODING_EUC_KR }, /* Korea */ ++ { "ISO8859-1", RTL_TEXTENCODING_ISO_8859_1 }, /* Western */ ++ { "ISO8859-15", RTL_TEXTENCODING_ISO_8859_15 }, /* Western Updated (w/Euro sign) */ ++ { "ISO8859-2", RTL_TEXTENCODING_ISO_8859_2 }, /* Central European */ ++ { "ISO8859-4", RTL_TEXTENCODING_ISO_8859_4 }, /* LATIN4 L4 */ ++ { "ISO8859-5", RTL_TEXTENCODING_ISO_8859_5 }, /* Cyrillic */ ++ { "ISO8859-7", RTL_TEXTENCODING_ISO_8859_7 }, /* Greek */ ++ { "ISO8859-9", RTL_TEXTENCODING_ISO_8859_9 }, /* Turkish */ ++ { "KOI-U", RTL_TEXTENCODING_DONTKNOW }, /* Not supported at the moment */ ++ { "KOI8-R", RTL_TEXTENCODING_KOI8_R }, /* KOI8 */ ++ { "SJIS", RTL_TEXTENCODING_SHIFT_JIS }, /* Japan */ ++ { "US-ASCII", RTL_TEXTENCODING_ASCII_US } /* US-ASCII */ ++}; ++ ++#elif defined(NETBSD) ++ ++const _pair _nl_language_list[] = { ++ { "ASCII", RTL_TEXTENCODING_ASCII_US }, /* US-ASCII */ ++ { "BIG5", RTL_TEXTENCODING_BIG5 }, /* China - Traditional Chinese */ ++ { "CP1251", RTL_TEXTENCODING_MS_1251 }, /* MS-CYRL */ ++ { "CP866", RTL_TEXTENCODING_IBM_866 }, /* CP866 866 */ ++ { "CTEXT", RTL_TEXTENCODING_ASCII_US }, /* US-ASCII */ ++ { "EUCCN", RTL_TEXTENCODING_EUC_CN }, /* China - Simplified Chinese */ ++ { "EUCJP", RTL_TEXTENCODING_EUC_JP }, /* Japan */ ++ { "EUCKR", RTL_TEXTENCODING_EUC_KR }, /* Korea */ ++ { "EUCTW", RTL_TEXTENCODING_EUC_TW }, /* China - Traditional Chinese */ ++ { "ISO-2022-JP", RTL_TEXTENCODING_DONTKNOW }, /* */ ++ { "ISO-2022-JP-2", RTL_TEXTENCODING_DONTKNOW }, /* */ ++ { "ISO8859-1", RTL_TEXTENCODING_ISO_8859_1 }, /* Western */ ++ { "ISO8859-15", RTL_TEXTENCODING_ISO_8859_15 }, /* Western Updated (w/Euro sign) */ ++ { "ISO8859-2", RTL_TEXTENCODING_ISO_8859_2 }, /* Central European */ ++ { "ISO8859-4", RTL_TEXTENCODING_ISO_8859_4 }, /* LATIN4 L4 */ ++ { "ISO8859-5", RTL_TEXTENCODING_ISO_8859_5 }, /* Cyrillic */ ++ { "ISO8859-7", RTL_TEXTENCODING_ISO_8859_7 }, /* Greek */ ++ { "ISO8859-9", RTL_TEXTENCODING_ISO_8859_9 }, /* Turkish */ ++ { "KOI-U", RTL_TEXTENCODING_DONTKNOW }, /* Not supported at the moment */ ++ { "KOI8-R", RTL_TEXTENCODING_KOI8_R }, /* KOI8 */ ++ { "SJIS", RTL_TEXTENCODING_SHIFT_JIS }, /* Japan */ ++ { "US-ASCII", RTL_TEXTENCODING_ASCII_US }, /* US-ASCII */ ++ { "UTF-8", RTL_TEXTENCODING_UTF8 } /* ISO-10646/UTF-8 */ ++}; ++ ++#endif /* ifdef SOLARIS IRIX LINUX FREEBSD NETBSD */ static pthread_mutex_t aLocalMutex = PTHREAD_MUTEX_INITIALIZER; -@@ -618,7 +645,7 @@ +@@ -618,7 +675,7 @@ return ret; } -#elif defined(MACOSX) /* ifdef LINUX || SOLARIS || NETBSD */ -+#elif defined(MACOSX) /* ifdef LINUX || SOLARIS || FREEBSD */ ++#elif defined(MACOSX) /* ifdef LINUX || SOLARIS || IRIX || FREEBSD || NETBSD */ /* * FIXME: the MacOS X implemetation is missing -@@ -651,7 +678,7 @@ +@@ -651,7 +708,7 @@ return 0; } -#else /* ifdef LINUX || SOLARIS || MACOSX || NETBSD */ -+#else /* ifdef LINUX || SOLARIS || FREEBSD || MACOSX */ ++#else /* ifdef LINUX || SOLARIS || IRIX || FREEBSD || NETBSD || MACOSX */ /* * This implementation of osl_getTextEncodingFromLocale maps -@@ -887,6 +914,6 @@ +@@ -887,6 +944,6 @@ return 0; } -#endif /* ifdef LINUX || SOLARIS || MACOSX || NETBSD */ -+#endif /* ifdef LINUX || SOLARIS || MACOSX || FREEBSD */ ++#endif /* ifdef LINUX || SOLARIS || FREEBSD || NETBSD || MACOSX */ diff --git a/editors/openoffice-3/files/patch-sal+osl+unx+nlsupport.c b/editors/openoffice-3/files/patch-sal+osl+unx+nlsupport.c index 1a606f1694c1..8107caa02bcc 100644 --- a/editors/openoffice-3/files/patch-sal+osl+unx+nlsupport.c +++ b/editors/openoffice-3/files/patch-sal+osl+unx+nlsupport.c @@ -1,23 +1,14 @@ ---- ../sal/osl/unx/nlsupport.c.orig Tue May 21 15:22:11 2002 -+++ ../sal/osl/unx/nlsupport.c Wed Jul 31 10:28:29 2002 +--- ../sal/osl/unx/nlsupport.c.orig Wed Aug 14 18:22:49 2002 ++++ ../sal/osl/unx/nlsupport.c Wed Aug 14 19:07:18 2002 @@ -63,7 +63,7 @@ #include <osl/diagnose.h> #include <osl/process.h> -#if defined(LINUX) || defined(SOLARIS) || defined(IRIX) || defined(NETBSD) -+#if defined(LINUX) || defined(SOLARIS) || defined(IRIX) || defined(FREEBSD) ++#if defined(LINUX) || defined(SOLARIS) || defined(IRIX) || defined(FREEBSD) || defined(NETBSD) #include <pthread.h> #include <locale.h> #include <langinfo.h> -@@ -87,7 +87,7 @@ - static int - _pair_compare (const char *key, const _pair *pair) - { -- int result = rtl_str_compareIgnoreAsciiCase( key, pair->key ); -+ unsigned int result = rtl_str_compareIgnoreAsciiCase( key, pair->key ); - return result; - } - @@ -114,8 +114,7 @@ comparison = _pair_compare( key, base + current ); if (comparison < 0) @@ -33,56 +24,62 @@ } -#if defined(LINUX) || defined(SOLARIS) || defined(IRIX) || defined(NETBSD) -+#if defined(LINUX) || defined(SOLARIS) || defined(IRIX) || defined(FREEBSD) ++#if defined(LINUX) || defined(SOLARIS) || defined(IRIX) || defined(FREEBSD) || defined(NETBSD) /* * This implementation of osl_getTextEncodingFromLocale maps * from nl_langinfo(CODESET) to rtl_textencoding defines. - * nl_langinfo() is supported only on Linux, Solaris and IRIX. -+ * nl_langinfo() is supported only on Linux, Solaris and IRIX -+ * and FreeBSD. ++ * nl_langinfo() is supported only on Linux, Solaris and IRIX, ++ * >= NetBSD 1.5 and >= FreeBSD 4.4 * * This routine is SLOW because of the setlocale call, so * grab the result and cache it. -@@ -260,6 +260,10 @@ +@@ -260,6 +260,12 @@ #endif #endif +/* + * _nl_language_list[] is an array list of supported encodings. Because + * we are using a binary search, the list has to be in ascending order. ++ * We are comparing the encodings case insensitiv, so the list has ++ * to be completly upper- , or lowercase. + */ #if defined(SOLARIS) -@@ -312,10 +316,33 @@ - { "big5", RTL_TEXTENCODING_BIG5 }, /* China - Traditional Chinese */ - { "eucgbk", RTL_TEXTENCODING_DONTKNOW }, /* China - Simplified Chinese */ - { "gbk", RTL_TEXTENCODING_GBK }, /* China - Simplified Chinese */ -+ { "sjis", RTL_TEXTENCODING_SHIFT_JIS } /* Japan */ -+}; -+ -+#elif defined(FREEBSD) -+ -+const _pair _nl_language_list[] = { -+ { "ascii", RTL_TEXTENCODING_ASCII_US }, /* US-ASCII */ -+ { "big5", RTL_TEXTENCODING_BIG5 }, /* China - Traditional Chinese */ -+ { "cp1251", RTL_TEXTENCODING_MS_1251 }, /* MS-CYRL */ -+ { "cp866", RTL_TEXTENCODING_IBM_866 }, /* CP866 866 */ -+ { "eucCN", RTL_TEXTENCODING_EUC_CN }, /* China - Simplified Chinese */ -+ { "eucJP", RTL_TEXTENCODING_EUC_JP }, /* Japan */ -+ { "eucKR", RTL_TEXTENCODING_EUC_KR }, /* Korea */ -+ { "iso8859-1", RTL_TEXTENCODING_ISO_8859_1 }, /* Western */ -+ { "iso8859-15", RTL_TEXTENCODING_ISO_8859_15 }, /* Western Updated (w/Euro sign) */ -+ { "iso8859-2", RTL_TEXTENCODING_ISO_8859_2 }, /* Central European */ -+ { "iso8859-4", RTL_TEXTENCODING_ISO_8859_4 }, /* LATIN4 L4 */ -+ { "iso8859-5", RTL_TEXTENCODING_ISO_8859_5 }, /* Cyrillic */ -+ { "iso8859-7", RTL_TEXTENCODING_ISO_8859_7 }, /* Greek */ -+ { "iso8859-9", RTL_TEXTENCODING_ISO_8859_9 }, /* Turkish */ -+ { "koi-u", RTL_TEXTENCODING_DONTKNOW }, /* Not supported at the moment */ -+ { "koi8-r", RTL_TEXTENCODING_KOI8_R }, /* KOI8 */ - { "sjis", RTL_TEXTENCODING_SHIFT_JIS }, /* Japan */ -+ { "us-ascii", RTL_TEXTENCODING_ASCII_US } /* US-ASCII */ +@@ -299,23 +305,23 @@ + #elif defined(IRIX) + + const _pair _nl_language_list[] = { +- { "ISO8859-1", RTL_TEXTENCODING_ISO_8859_1 }, /* Western */ +- { "ISO8859-2", RTL_TEXTENCODING_ISO_8859_2 }, /* Central European */ +- { "ISO8859-5", RTL_TEXTENCODING_ISO_8859_5 }, /* Cyrillic */ +- { "ISO8859-7", RTL_TEXTENCODING_ISO_8859_7 }, /* Greek */ +- { "ISO8859-9", RTL_TEXTENCODING_ISO_8859_9 }, /* Turkish */ +- { "ISO8859-15", RTL_TEXTENCODING_ISO_8859_15 }, /* Western Updated (w/Euro sign) */ +- { "eucJP", RTL_TEXTENCODING_EUC_JP }, /* Japan */ +- { "eucKR", RTL_TEXTENCODING_EUC_KR }, /* Korea */ +- { "eucCN", RTL_TEXTENCODING_EUC_CN }, /* China */ +- { "eucTW", RTL_TEXTENCODING_EUC_TW }, /* Taiwan - Traditional Chinese */ +- { "big5", RTL_TEXTENCODING_BIG5 }, /* China - Traditional Chinese */ +- { "eucgbk", RTL_TEXTENCODING_DONTKNOW }, /* China - Simplified Chinese */ +- { "gbk", RTL_TEXTENCODING_GBK }, /* China - Simplified Chinese */ +- { "sjis", RTL_TEXTENCODING_SHIFT_JIS }, /* Japan */ ++ { "BIG5", RTL_TEXTENCODING_BIG5 }, /* China - Traditional Chinese */ ++ { "EUCCN", RTL_TEXTENCODING_EUC_CN }, /* China */ ++ { "EUCGBK", RTL_TEXTENCODING_DONTKNOW }, /* China - Simplified Chinese */ ++ { "EUCJP", RTL_TEXTENCODING_EUC_JP }, /* Japan */ ++ { "EUCKR", RTL_TEXTENCODING_EUC_KR }, /* Korea */ ++ { "EUCTW", RTL_TEXTENCODING_EUC_TW }, /* Taiwan - Traditional Chinese */ ++ { "GBK", RTL_TEXTENCODING_GBK }, /* China - Simplified Chinese */ ++ { "ISO8859-1", RTL_TEXTENCODING_ISO_8859_1 }, /* Western */ ++ { "ISO8859-15", RTL_TEXTENCODING_ISO_8859_15 }, /* Western Updated (w/Euro sign) */ ++ { "ISO8859-2", RTL_TEXTENCODING_ISO_8859_2 }, /* Central European */ ++ { "ISO8859-5", RTL_TEXTENCODING_ISO_8859_5 }, /* Cyrillic */ ++ { "ISO8859-7", RTL_TEXTENCODING_ISO_8859_7 }, /* Greek */ ++ { "ISO8859-9", RTL_TEXTENCODING_ISO_8859_9 }, /* Turkish */ ++ { "SJIS", RTL_TEXTENCODING_SHIFT_JIS } /* Japan */ }; -#elif defined(LINUX) || defined(NETBSD) @@ -90,38 +87,89 @@ const _pair _nl_language_list[] = { { "ANSI_X3.110-1983", RTL_TEXTENCODING_DONTKNOW }, /* ISO-IR-99 NAPLPS */ -@@ -496,7 +523,7 @@ +@@ -496,7 +502,58 @@ { "WIN-SAMI-2", RTL_TEXTENCODING_DONTKNOW } /* WS2 */ }; -#endif /* ifdef LINUX || NETBSD */ -+#endif /* ifdef LINUX || FREEBSD */ ++#elif defined(FREEBSD) ++ ++const _pair _nl_language_list[] = { ++ { "ASCII", RTL_TEXTENCODING_ASCII_US }, /* US-ASCII */ ++ { "BIG5", RTL_TEXTENCODING_BIG5 }, /* China - Traditional Chinese */ ++ { "CP1251", RTL_TEXTENCODING_MS_1251 }, /* MS-CYRL */ ++ { "CP866", RTL_TEXTENCODING_IBM_866 }, /* CP866 866 */ ++ { "EUCCN", RTL_TEXTENCODING_EUC_CN }, /* China - Simplified Chinese */ ++ { "EUCJP", RTL_TEXTENCODING_EUC_JP }, /* Japan */ ++ { "EUCKR", RTL_TEXTENCODING_EUC_KR }, /* Korea */ ++ { "ISO8859-1", RTL_TEXTENCODING_ISO_8859_1 }, /* Western */ ++ { "ISO8859-15", RTL_TEXTENCODING_ISO_8859_15 }, /* Western Updated (w/Euro sign) */ ++ { "ISO8859-2", RTL_TEXTENCODING_ISO_8859_2 }, /* Central European */ ++ { "ISO8859-4", RTL_TEXTENCODING_ISO_8859_4 }, /* LATIN4 L4 */ ++ { "ISO8859-5", RTL_TEXTENCODING_ISO_8859_5 }, /* Cyrillic */ ++ { "ISO8859-7", RTL_TEXTENCODING_ISO_8859_7 }, /* Greek */ ++ { "ISO8859-9", RTL_TEXTENCODING_ISO_8859_9 }, /* Turkish */ ++ { "KOI-U", RTL_TEXTENCODING_DONTKNOW }, /* Not supported at the moment */ ++ { "KOI8-R", RTL_TEXTENCODING_KOI8_R }, /* KOI8 */ ++ { "SJIS", RTL_TEXTENCODING_SHIFT_JIS }, /* Japan */ ++ { "US-ASCII", RTL_TEXTENCODING_ASCII_US } /* US-ASCII */ ++}; ++ ++#elif defined(NETBSD) ++ ++const _pair _nl_language_list[] = { ++ { "ASCII", RTL_TEXTENCODING_ASCII_US }, /* US-ASCII */ ++ { "BIG5", RTL_TEXTENCODING_BIG5 }, /* China - Traditional Chinese */ ++ { "CP1251", RTL_TEXTENCODING_MS_1251 }, /* MS-CYRL */ ++ { "CP866", RTL_TEXTENCODING_IBM_866 }, /* CP866 866 */ ++ { "CTEXT", RTL_TEXTENCODING_ASCII_US }, /* US-ASCII */ ++ { "EUCCN", RTL_TEXTENCODING_EUC_CN }, /* China - Simplified Chinese */ ++ { "EUCJP", RTL_TEXTENCODING_EUC_JP }, /* Japan */ ++ { "EUCKR", RTL_TEXTENCODING_EUC_KR }, /* Korea */ ++ { "EUCTW", RTL_TEXTENCODING_EUC_TW }, /* China - Traditional Chinese */ ++ { "ISO-2022-JP", RTL_TEXTENCODING_DONTKNOW }, /* */ ++ { "ISO-2022-JP-2", RTL_TEXTENCODING_DONTKNOW }, /* */ ++ { "ISO8859-1", RTL_TEXTENCODING_ISO_8859_1 }, /* Western */ ++ { "ISO8859-15", RTL_TEXTENCODING_ISO_8859_15 }, /* Western Updated (w/Euro sign) */ ++ { "ISO8859-2", RTL_TEXTENCODING_ISO_8859_2 }, /* Central European */ ++ { "ISO8859-4", RTL_TEXTENCODING_ISO_8859_4 }, /* LATIN4 L4 */ ++ { "ISO8859-5", RTL_TEXTENCODING_ISO_8859_5 }, /* Cyrillic */ ++ { "ISO8859-7", RTL_TEXTENCODING_ISO_8859_7 }, /* Greek */ ++ { "ISO8859-9", RTL_TEXTENCODING_ISO_8859_9 }, /* Turkish */ ++ { "KOI-U", RTL_TEXTENCODING_DONTKNOW }, /* Not supported at the moment */ ++ { "KOI8-R", RTL_TEXTENCODING_KOI8_R }, /* KOI8 */ ++ { "SJIS", RTL_TEXTENCODING_SHIFT_JIS }, /* Japan */ ++ { "US-ASCII", RTL_TEXTENCODING_ASCII_US }, /* US-ASCII */ ++ { "UTF-8", RTL_TEXTENCODING_UTF8 } /* ISO-10646/UTF-8 */ ++}; ++ ++#endif /* ifdef SOLARIS IRIX LINUX FREEBSD NETBSD */ static pthread_mutex_t aLocalMutex = PTHREAD_MUTEX_INITIALIZER; -@@ -618,7 +645,7 @@ +@@ -618,7 +675,7 @@ return ret; } -#elif defined(MACOSX) /* ifdef LINUX || SOLARIS || NETBSD */ -+#elif defined(MACOSX) /* ifdef LINUX || SOLARIS || FREEBSD */ ++#elif defined(MACOSX) /* ifdef LINUX || SOLARIS || IRIX || FREEBSD || NETBSD */ /* * FIXME: the MacOS X implemetation is missing -@@ -651,7 +678,7 @@ +@@ -651,7 +708,7 @@ return 0; } -#else /* ifdef LINUX || SOLARIS || MACOSX || NETBSD */ -+#else /* ifdef LINUX || SOLARIS || FREEBSD || MACOSX */ ++#else /* ifdef LINUX || SOLARIS || IRIX || FREEBSD || NETBSD || MACOSX */ /* * This implementation of osl_getTextEncodingFromLocale maps -@@ -887,6 +914,6 @@ +@@ -887,6 +944,6 @@ return 0; } -#endif /* ifdef LINUX || SOLARIS || MACOSX || NETBSD */ -+#endif /* ifdef LINUX || SOLARIS || MACOSX || FREEBSD */ ++#endif /* ifdef LINUX || SOLARIS || FREEBSD || NETBSD || MACOSX */ diff --git a/editors/openoffice-devel/files/patch-sal+osl+unx+nlsupport.c b/editors/openoffice-devel/files/patch-sal+osl+unx+nlsupport.c index 1a606f1694c1..8107caa02bcc 100644 --- a/editors/openoffice-devel/files/patch-sal+osl+unx+nlsupport.c +++ b/editors/openoffice-devel/files/patch-sal+osl+unx+nlsupport.c @@ -1,23 +1,14 @@ ---- ../sal/osl/unx/nlsupport.c.orig Tue May 21 15:22:11 2002 -+++ ../sal/osl/unx/nlsupport.c Wed Jul 31 10:28:29 2002 +--- ../sal/osl/unx/nlsupport.c.orig Wed Aug 14 18:22:49 2002 ++++ ../sal/osl/unx/nlsupport.c Wed Aug 14 19:07:18 2002 @@ -63,7 +63,7 @@ #include <osl/diagnose.h> #include <osl/process.h> -#if defined(LINUX) || defined(SOLARIS) || defined(IRIX) || defined(NETBSD) -+#if defined(LINUX) || defined(SOLARIS) || defined(IRIX) || defined(FREEBSD) ++#if defined(LINUX) || defined(SOLARIS) || defined(IRIX) || defined(FREEBSD) || defined(NETBSD) #include <pthread.h> #include <locale.h> #include <langinfo.h> -@@ -87,7 +87,7 @@ - static int - _pair_compare (const char *key, const _pair *pair) - { -- int result = rtl_str_compareIgnoreAsciiCase( key, pair->key ); -+ unsigned int result = rtl_str_compareIgnoreAsciiCase( key, pair->key ); - return result; - } - @@ -114,8 +114,7 @@ comparison = _pair_compare( key, base + current ); if (comparison < 0) @@ -33,56 +24,62 @@ } -#if defined(LINUX) || defined(SOLARIS) || defined(IRIX) || defined(NETBSD) -+#if defined(LINUX) || defined(SOLARIS) || defined(IRIX) || defined(FREEBSD) ++#if defined(LINUX) || defined(SOLARIS) || defined(IRIX) || defined(FREEBSD) || defined(NETBSD) /* * This implementation of osl_getTextEncodingFromLocale maps * from nl_langinfo(CODESET) to rtl_textencoding defines. - * nl_langinfo() is supported only on Linux, Solaris and IRIX. -+ * nl_langinfo() is supported only on Linux, Solaris and IRIX -+ * and FreeBSD. ++ * nl_langinfo() is supported only on Linux, Solaris and IRIX, ++ * >= NetBSD 1.5 and >= FreeBSD 4.4 * * This routine is SLOW because of the setlocale call, so * grab the result and cache it. -@@ -260,6 +260,10 @@ +@@ -260,6 +260,12 @@ #endif #endif +/* + * _nl_language_list[] is an array list of supported encodings. Because + * we are using a binary search, the list has to be in ascending order. ++ * We are comparing the encodings case insensitiv, so the list has ++ * to be completly upper- , or lowercase. + */ #if defined(SOLARIS) -@@ -312,10 +316,33 @@ - { "big5", RTL_TEXTENCODING_BIG5 }, /* China - Traditional Chinese */ - { "eucgbk", RTL_TEXTENCODING_DONTKNOW }, /* China - Simplified Chinese */ - { "gbk", RTL_TEXTENCODING_GBK }, /* China - Simplified Chinese */ -+ { "sjis", RTL_TEXTENCODING_SHIFT_JIS } /* Japan */ -+}; -+ -+#elif defined(FREEBSD) -+ -+const _pair _nl_language_list[] = { -+ { "ascii", RTL_TEXTENCODING_ASCII_US }, /* US-ASCII */ -+ { "big5", RTL_TEXTENCODING_BIG5 }, /* China - Traditional Chinese */ -+ { "cp1251", RTL_TEXTENCODING_MS_1251 }, /* MS-CYRL */ -+ { "cp866", RTL_TEXTENCODING_IBM_866 }, /* CP866 866 */ -+ { "eucCN", RTL_TEXTENCODING_EUC_CN }, /* China - Simplified Chinese */ -+ { "eucJP", RTL_TEXTENCODING_EUC_JP }, /* Japan */ -+ { "eucKR", RTL_TEXTENCODING_EUC_KR }, /* Korea */ -+ { "iso8859-1", RTL_TEXTENCODING_ISO_8859_1 }, /* Western */ -+ { "iso8859-15", RTL_TEXTENCODING_ISO_8859_15 }, /* Western Updated (w/Euro sign) */ -+ { "iso8859-2", RTL_TEXTENCODING_ISO_8859_2 }, /* Central European */ -+ { "iso8859-4", RTL_TEXTENCODING_ISO_8859_4 }, /* LATIN4 L4 */ -+ { "iso8859-5", RTL_TEXTENCODING_ISO_8859_5 }, /* Cyrillic */ -+ { "iso8859-7", RTL_TEXTENCODING_ISO_8859_7 }, /* Greek */ -+ { "iso8859-9", RTL_TEXTENCODING_ISO_8859_9 }, /* Turkish */ -+ { "koi-u", RTL_TEXTENCODING_DONTKNOW }, /* Not supported at the moment */ -+ { "koi8-r", RTL_TEXTENCODING_KOI8_R }, /* KOI8 */ - { "sjis", RTL_TEXTENCODING_SHIFT_JIS }, /* Japan */ -+ { "us-ascii", RTL_TEXTENCODING_ASCII_US } /* US-ASCII */ +@@ -299,23 +305,23 @@ + #elif defined(IRIX) + + const _pair _nl_language_list[] = { +- { "ISO8859-1", RTL_TEXTENCODING_ISO_8859_1 }, /* Western */ +- { "ISO8859-2", RTL_TEXTENCODING_ISO_8859_2 }, /* Central European */ +- { "ISO8859-5", RTL_TEXTENCODING_ISO_8859_5 }, /* Cyrillic */ +- { "ISO8859-7", RTL_TEXTENCODING_ISO_8859_7 }, /* Greek */ +- { "ISO8859-9", RTL_TEXTENCODING_ISO_8859_9 }, /* Turkish */ +- { "ISO8859-15", RTL_TEXTENCODING_ISO_8859_15 }, /* Western Updated (w/Euro sign) */ +- { "eucJP", RTL_TEXTENCODING_EUC_JP }, /* Japan */ +- { "eucKR", RTL_TEXTENCODING_EUC_KR }, /* Korea */ +- { "eucCN", RTL_TEXTENCODING_EUC_CN }, /* China */ +- { "eucTW", RTL_TEXTENCODING_EUC_TW }, /* Taiwan - Traditional Chinese */ +- { "big5", RTL_TEXTENCODING_BIG5 }, /* China - Traditional Chinese */ +- { "eucgbk", RTL_TEXTENCODING_DONTKNOW }, /* China - Simplified Chinese */ +- { "gbk", RTL_TEXTENCODING_GBK }, /* China - Simplified Chinese */ +- { "sjis", RTL_TEXTENCODING_SHIFT_JIS }, /* Japan */ ++ { "BIG5", RTL_TEXTENCODING_BIG5 }, /* China - Traditional Chinese */ ++ { "EUCCN", RTL_TEXTENCODING_EUC_CN }, /* China */ ++ { "EUCGBK", RTL_TEXTENCODING_DONTKNOW }, /* China - Simplified Chinese */ ++ { "EUCJP", RTL_TEXTENCODING_EUC_JP }, /* Japan */ ++ { "EUCKR", RTL_TEXTENCODING_EUC_KR }, /* Korea */ ++ { "EUCTW", RTL_TEXTENCODING_EUC_TW }, /* Taiwan - Traditional Chinese */ ++ { "GBK", RTL_TEXTENCODING_GBK }, /* China - Simplified Chinese */ ++ { "ISO8859-1", RTL_TEXTENCODING_ISO_8859_1 }, /* Western */ ++ { "ISO8859-15", RTL_TEXTENCODING_ISO_8859_15 }, /* Western Updated (w/Euro sign) */ ++ { "ISO8859-2", RTL_TEXTENCODING_ISO_8859_2 }, /* Central European */ ++ { "ISO8859-5", RTL_TEXTENCODING_ISO_8859_5 }, /* Cyrillic */ ++ { "ISO8859-7", RTL_TEXTENCODING_ISO_8859_7 }, /* Greek */ ++ { "ISO8859-9", RTL_TEXTENCODING_ISO_8859_9 }, /* Turkish */ ++ { "SJIS", RTL_TEXTENCODING_SHIFT_JIS } /* Japan */ }; -#elif defined(LINUX) || defined(NETBSD) @@ -90,38 +87,89 @@ const _pair _nl_language_list[] = { { "ANSI_X3.110-1983", RTL_TEXTENCODING_DONTKNOW }, /* ISO-IR-99 NAPLPS */ -@@ -496,7 +523,7 @@ +@@ -496,7 +502,58 @@ { "WIN-SAMI-2", RTL_TEXTENCODING_DONTKNOW } /* WS2 */ }; -#endif /* ifdef LINUX || NETBSD */ -+#endif /* ifdef LINUX || FREEBSD */ ++#elif defined(FREEBSD) ++ ++const _pair _nl_language_list[] = { ++ { "ASCII", RTL_TEXTENCODING_ASCII_US }, /* US-ASCII */ ++ { "BIG5", RTL_TEXTENCODING_BIG5 }, /* China - Traditional Chinese */ ++ { "CP1251", RTL_TEXTENCODING_MS_1251 }, /* MS-CYRL */ ++ { "CP866", RTL_TEXTENCODING_IBM_866 }, /* CP866 866 */ ++ { "EUCCN", RTL_TEXTENCODING_EUC_CN }, /* China - Simplified Chinese */ ++ { "EUCJP", RTL_TEXTENCODING_EUC_JP }, /* Japan */ ++ { "EUCKR", RTL_TEXTENCODING_EUC_KR }, /* Korea */ ++ { "ISO8859-1", RTL_TEXTENCODING_ISO_8859_1 }, /* Western */ ++ { "ISO8859-15", RTL_TEXTENCODING_ISO_8859_15 }, /* Western Updated (w/Euro sign) */ ++ { "ISO8859-2", RTL_TEXTENCODING_ISO_8859_2 }, /* Central European */ ++ { "ISO8859-4", RTL_TEXTENCODING_ISO_8859_4 }, /* LATIN4 L4 */ ++ { "ISO8859-5", RTL_TEXTENCODING_ISO_8859_5 }, /* Cyrillic */ ++ { "ISO8859-7", RTL_TEXTENCODING_ISO_8859_7 }, /* Greek */ ++ { "ISO8859-9", RTL_TEXTENCODING_ISO_8859_9 }, /* Turkish */ ++ { "KOI-U", RTL_TEXTENCODING_DONTKNOW }, /* Not supported at the moment */ ++ { "KOI8-R", RTL_TEXTENCODING_KOI8_R }, /* KOI8 */ ++ { "SJIS", RTL_TEXTENCODING_SHIFT_JIS }, /* Japan */ ++ { "US-ASCII", RTL_TEXTENCODING_ASCII_US } /* US-ASCII */ ++}; ++ ++#elif defined(NETBSD) ++ ++const _pair _nl_language_list[] = { ++ { "ASCII", RTL_TEXTENCODING_ASCII_US }, /* US-ASCII */ ++ { "BIG5", RTL_TEXTENCODING_BIG5 }, /* China - Traditional Chinese */ ++ { "CP1251", RTL_TEXTENCODING_MS_1251 }, /* MS-CYRL */ ++ { "CP866", RTL_TEXTENCODING_IBM_866 }, /* CP866 866 */ ++ { "CTEXT", RTL_TEXTENCODING_ASCII_US }, /* US-ASCII */ ++ { "EUCCN", RTL_TEXTENCODING_EUC_CN }, /* China - Simplified Chinese */ ++ { "EUCJP", RTL_TEXTENCODING_EUC_JP }, /* Japan */ ++ { "EUCKR", RTL_TEXTENCODING_EUC_KR }, /* Korea */ ++ { "EUCTW", RTL_TEXTENCODING_EUC_TW }, /* China - Traditional Chinese */ ++ { "ISO-2022-JP", RTL_TEXTENCODING_DONTKNOW }, /* */ ++ { "ISO-2022-JP-2", RTL_TEXTENCODING_DONTKNOW }, /* */ ++ { "ISO8859-1", RTL_TEXTENCODING_ISO_8859_1 }, /* Western */ ++ { "ISO8859-15", RTL_TEXTENCODING_ISO_8859_15 }, /* Western Updated (w/Euro sign) */ ++ { "ISO8859-2", RTL_TEXTENCODING_ISO_8859_2 }, /* Central European */ ++ { "ISO8859-4", RTL_TEXTENCODING_ISO_8859_4 }, /* LATIN4 L4 */ ++ { "ISO8859-5", RTL_TEXTENCODING_ISO_8859_5 }, /* Cyrillic */ ++ { "ISO8859-7", RTL_TEXTENCODING_ISO_8859_7 }, /* Greek */ ++ { "ISO8859-9", RTL_TEXTENCODING_ISO_8859_9 }, /* Turkish */ ++ { "KOI-U", RTL_TEXTENCODING_DONTKNOW }, /* Not supported at the moment */ ++ { "KOI8-R", RTL_TEXTENCODING_KOI8_R }, /* KOI8 */ ++ { "SJIS", RTL_TEXTENCODING_SHIFT_JIS }, /* Japan */ ++ { "US-ASCII", RTL_TEXTENCODING_ASCII_US }, /* US-ASCII */ ++ { "UTF-8", RTL_TEXTENCODING_UTF8 } /* ISO-10646/UTF-8 */ ++}; ++ ++#endif /* ifdef SOLARIS IRIX LINUX FREEBSD NETBSD */ static pthread_mutex_t aLocalMutex = PTHREAD_MUTEX_INITIALIZER; -@@ -618,7 +645,7 @@ +@@ -618,7 +675,7 @@ return ret; } -#elif defined(MACOSX) /* ifdef LINUX || SOLARIS || NETBSD */ -+#elif defined(MACOSX) /* ifdef LINUX || SOLARIS || FREEBSD */ ++#elif defined(MACOSX) /* ifdef LINUX || SOLARIS || IRIX || FREEBSD || NETBSD */ /* * FIXME: the MacOS X implemetation is missing -@@ -651,7 +678,7 @@ +@@ -651,7 +708,7 @@ return 0; } -#else /* ifdef LINUX || SOLARIS || MACOSX || NETBSD */ -+#else /* ifdef LINUX || SOLARIS || FREEBSD || MACOSX */ ++#else /* ifdef LINUX || SOLARIS || IRIX || FREEBSD || NETBSD || MACOSX */ /* * This implementation of osl_getTextEncodingFromLocale maps -@@ -887,6 +914,6 @@ +@@ -887,6 +944,6 @@ return 0; } -#endif /* ifdef LINUX || SOLARIS || MACOSX || NETBSD */ -+#endif /* ifdef LINUX || SOLARIS || MACOSX || FREEBSD */ ++#endif /* ifdef LINUX || SOLARIS || FREEBSD || NETBSD || MACOSX */ diff --git a/editors/openoffice.org-1.0/files/patch-sal+osl+unx+nlsupport.c b/editors/openoffice.org-1.0/files/patch-sal+osl+unx+nlsupport.c index 1a606f1694c1..8107caa02bcc 100644 --- a/editors/openoffice.org-1.0/files/patch-sal+osl+unx+nlsupport.c +++ b/editors/openoffice.org-1.0/files/patch-sal+osl+unx+nlsupport.c @@ -1,23 +1,14 @@ ---- ../sal/osl/unx/nlsupport.c.orig Tue May 21 15:22:11 2002 -+++ ../sal/osl/unx/nlsupport.c Wed Jul 31 10:28:29 2002 +--- ../sal/osl/unx/nlsupport.c.orig Wed Aug 14 18:22:49 2002 ++++ ../sal/osl/unx/nlsupport.c Wed Aug 14 19:07:18 2002 @@ -63,7 +63,7 @@ #include <osl/diagnose.h> #include <osl/process.h> -#if defined(LINUX) || defined(SOLARIS) || defined(IRIX) || defined(NETBSD) -+#if defined(LINUX) || defined(SOLARIS) || defined(IRIX) || defined(FREEBSD) ++#if defined(LINUX) || defined(SOLARIS) || defined(IRIX) || defined(FREEBSD) || defined(NETBSD) #include <pthread.h> #include <locale.h> #include <langinfo.h> -@@ -87,7 +87,7 @@ - static int - _pair_compare (const char *key, const _pair *pair) - { -- int result = rtl_str_compareIgnoreAsciiCase( key, pair->key ); -+ unsigned int result = rtl_str_compareIgnoreAsciiCase( key, pair->key ); - return result; - } - @@ -114,8 +114,7 @@ comparison = _pair_compare( key, base + current ); if (comparison < 0) @@ -33,56 +24,62 @@ } -#if defined(LINUX) || defined(SOLARIS) || defined(IRIX) || defined(NETBSD) -+#if defined(LINUX) || defined(SOLARIS) || defined(IRIX) || defined(FREEBSD) ++#if defined(LINUX) || defined(SOLARIS) || defined(IRIX) || defined(FREEBSD) || defined(NETBSD) /* * This implementation of osl_getTextEncodingFromLocale maps * from nl_langinfo(CODESET) to rtl_textencoding defines. - * nl_langinfo() is supported only on Linux, Solaris and IRIX. -+ * nl_langinfo() is supported only on Linux, Solaris and IRIX -+ * and FreeBSD. ++ * nl_langinfo() is supported only on Linux, Solaris and IRIX, ++ * >= NetBSD 1.5 and >= FreeBSD 4.4 * * This routine is SLOW because of the setlocale call, so * grab the result and cache it. -@@ -260,6 +260,10 @@ +@@ -260,6 +260,12 @@ #endif #endif +/* + * _nl_language_list[] is an array list of supported encodings. Because + * we are using a binary search, the list has to be in ascending order. ++ * We are comparing the encodings case insensitiv, so the list has ++ * to be completly upper- , or lowercase. + */ #if defined(SOLARIS) -@@ -312,10 +316,33 @@ - { "big5", RTL_TEXTENCODING_BIG5 }, /* China - Traditional Chinese */ - { "eucgbk", RTL_TEXTENCODING_DONTKNOW }, /* China - Simplified Chinese */ - { "gbk", RTL_TEXTENCODING_GBK }, /* China - Simplified Chinese */ -+ { "sjis", RTL_TEXTENCODING_SHIFT_JIS } /* Japan */ -+}; -+ -+#elif defined(FREEBSD) -+ -+const _pair _nl_language_list[] = { -+ { "ascii", RTL_TEXTENCODING_ASCII_US }, /* US-ASCII */ -+ { "big5", RTL_TEXTENCODING_BIG5 }, /* China - Traditional Chinese */ -+ { "cp1251", RTL_TEXTENCODING_MS_1251 }, /* MS-CYRL */ -+ { "cp866", RTL_TEXTENCODING_IBM_866 }, /* CP866 866 */ -+ { "eucCN", RTL_TEXTENCODING_EUC_CN }, /* China - Simplified Chinese */ -+ { "eucJP", RTL_TEXTENCODING_EUC_JP }, /* Japan */ -+ { "eucKR", RTL_TEXTENCODING_EUC_KR }, /* Korea */ -+ { "iso8859-1", RTL_TEXTENCODING_ISO_8859_1 }, /* Western */ -+ { "iso8859-15", RTL_TEXTENCODING_ISO_8859_15 }, /* Western Updated (w/Euro sign) */ -+ { "iso8859-2", RTL_TEXTENCODING_ISO_8859_2 }, /* Central European */ -+ { "iso8859-4", RTL_TEXTENCODING_ISO_8859_4 }, /* LATIN4 L4 */ -+ { "iso8859-5", RTL_TEXTENCODING_ISO_8859_5 }, /* Cyrillic */ -+ { "iso8859-7", RTL_TEXTENCODING_ISO_8859_7 }, /* Greek */ -+ { "iso8859-9", RTL_TEXTENCODING_ISO_8859_9 }, /* Turkish */ -+ { "koi-u", RTL_TEXTENCODING_DONTKNOW }, /* Not supported at the moment */ -+ { "koi8-r", RTL_TEXTENCODING_KOI8_R }, /* KOI8 */ - { "sjis", RTL_TEXTENCODING_SHIFT_JIS }, /* Japan */ -+ { "us-ascii", RTL_TEXTENCODING_ASCII_US } /* US-ASCII */ +@@ -299,23 +305,23 @@ + #elif defined(IRIX) + + const _pair _nl_language_list[] = { +- { "ISO8859-1", RTL_TEXTENCODING_ISO_8859_1 }, /* Western */ +- { "ISO8859-2", RTL_TEXTENCODING_ISO_8859_2 }, /* Central European */ +- { "ISO8859-5", RTL_TEXTENCODING_ISO_8859_5 }, /* Cyrillic */ +- { "ISO8859-7", RTL_TEXTENCODING_ISO_8859_7 }, /* Greek */ +- { "ISO8859-9", RTL_TEXTENCODING_ISO_8859_9 }, /* Turkish */ +- { "ISO8859-15", RTL_TEXTENCODING_ISO_8859_15 }, /* Western Updated (w/Euro sign) */ +- { "eucJP", RTL_TEXTENCODING_EUC_JP }, /* Japan */ +- { "eucKR", RTL_TEXTENCODING_EUC_KR }, /* Korea */ +- { "eucCN", RTL_TEXTENCODING_EUC_CN }, /* China */ +- { "eucTW", RTL_TEXTENCODING_EUC_TW }, /* Taiwan - Traditional Chinese */ +- { "big5", RTL_TEXTENCODING_BIG5 }, /* China - Traditional Chinese */ +- { "eucgbk", RTL_TEXTENCODING_DONTKNOW }, /* China - Simplified Chinese */ +- { "gbk", RTL_TEXTENCODING_GBK }, /* China - Simplified Chinese */ +- { "sjis", RTL_TEXTENCODING_SHIFT_JIS }, /* Japan */ ++ { "BIG5", RTL_TEXTENCODING_BIG5 }, /* China - Traditional Chinese */ ++ { "EUCCN", RTL_TEXTENCODING_EUC_CN }, /* China */ ++ { "EUCGBK", RTL_TEXTENCODING_DONTKNOW }, /* China - Simplified Chinese */ ++ { "EUCJP", RTL_TEXTENCODING_EUC_JP }, /* Japan */ ++ { "EUCKR", RTL_TEXTENCODING_EUC_KR }, /* Korea */ ++ { "EUCTW", RTL_TEXTENCODING_EUC_TW }, /* Taiwan - Traditional Chinese */ ++ { "GBK", RTL_TEXTENCODING_GBK }, /* China - Simplified Chinese */ ++ { "ISO8859-1", RTL_TEXTENCODING_ISO_8859_1 }, /* Western */ ++ { "ISO8859-15", RTL_TEXTENCODING_ISO_8859_15 }, /* Western Updated (w/Euro sign) */ ++ { "ISO8859-2", RTL_TEXTENCODING_ISO_8859_2 }, /* Central European */ ++ { "ISO8859-5", RTL_TEXTENCODING_ISO_8859_5 }, /* Cyrillic */ ++ { "ISO8859-7", RTL_TEXTENCODING_ISO_8859_7 }, /* Greek */ ++ { "ISO8859-9", RTL_TEXTENCODING_ISO_8859_9 }, /* Turkish */ ++ { "SJIS", RTL_TEXTENCODING_SHIFT_JIS } /* Japan */ }; -#elif defined(LINUX) || defined(NETBSD) @@ -90,38 +87,89 @@ const _pair _nl_language_list[] = { { "ANSI_X3.110-1983", RTL_TEXTENCODING_DONTKNOW }, /* ISO-IR-99 NAPLPS */ -@@ -496,7 +523,7 @@ +@@ -496,7 +502,58 @@ { "WIN-SAMI-2", RTL_TEXTENCODING_DONTKNOW } /* WS2 */ }; -#endif /* ifdef LINUX || NETBSD */ -+#endif /* ifdef LINUX || FREEBSD */ ++#elif defined(FREEBSD) ++ ++const _pair _nl_language_list[] = { ++ { "ASCII", RTL_TEXTENCODING_ASCII_US }, /* US-ASCII */ ++ { "BIG5", RTL_TEXTENCODING_BIG5 }, /* China - Traditional Chinese */ ++ { "CP1251", RTL_TEXTENCODING_MS_1251 }, /* MS-CYRL */ ++ { "CP866", RTL_TEXTENCODING_IBM_866 }, /* CP866 866 */ ++ { "EUCCN", RTL_TEXTENCODING_EUC_CN }, /* China - Simplified Chinese */ ++ { "EUCJP", RTL_TEXTENCODING_EUC_JP }, /* Japan */ ++ { "EUCKR", RTL_TEXTENCODING_EUC_KR }, /* Korea */ ++ { "ISO8859-1", RTL_TEXTENCODING_ISO_8859_1 }, /* Western */ ++ { "ISO8859-15", RTL_TEXTENCODING_ISO_8859_15 }, /* Western Updated (w/Euro sign) */ ++ { "ISO8859-2", RTL_TEXTENCODING_ISO_8859_2 }, /* Central European */ ++ { "ISO8859-4", RTL_TEXTENCODING_ISO_8859_4 }, /* LATIN4 L4 */ ++ { "ISO8859-5", RTL_TEXTENCODING_ISO_8859_5 }, /* Cyrillic */ ++ { "ISO8859-7", RTL_TEXTENCODING_ISO_8859_7 }, /* Greek */ ++ { "ISO8859-9", RTL_TEXTENCODING_ISO_8859_9 }, /* Turkish */ ++ { "KOI-U", RTL_TEXTENCODING_DONTKNOW }, /* Not supported at the moment */ ++ { "KOI8-R", RTL_TEXTENCODING_KOI8_R }, /* KOI8 */ ++ { "SJIS", RTL_TEXTENCODING_SHIFT_JIS }, /* Japan */ ++ { "US-ASCII", RTL_TEXTENCODING_ASCII_US } /* US-ASCII */ ++}; ++ ++#elif defined(NETBSD) ++ ++const _pair _nl_language_list[] = { ++ { "ASCII", RTL_TEXTENCODING_ASCII_US }, /* US-ASCII */ ++ { "BIG5", RTL_TEXTENCODING_BIG5 }, /* China - Traditional Chinese */ ++ { "CP1251", RTL_TEXTENCODING_MS_1251 }, /* MS-CYRL */ ++ { "CP866", RTL_TEXTENCODING_IBM_866 }, /* CP866 866 */ ++ { "CTEXT", RTL_TEXTENCODING_ASCII_US }, /* US-ASCII */ ++ { "EUCCN", RTL_TEXTENCODING_EUC_CN }, /* China - Simplified Chinese */ ++ { "EUCJP", RTL_TEXTENCODING_EUC_JP }, /* Japan */ ++ { "EUCKR", RTL_TEXTENCODING_EUC_KR }, /* Korea */ ++ { "EUCTW", RTL_TEXTENCODING_EUC_TW }, /* China - Traditional Chinese */ ++ { "ISO-2022-JP", RTL_TEXTENCODING_DONTKNOW }, /* */ ++ { "ISO-2022-JP-2", RTL_TEXTENCODING_DONTKNOW }, /* */ ++ { "ISO8859-1", RTL_TEXTENCODING_ISO_8859_1 }, /* Western */ ++ { "ISO8859-15", RTL_TEXTENCODING_ISO_8859_15 }, /* Western Updated (w/Euro sign) */ ++ { "ISO8859-2", RTL_TEXTENCODING_ISO_8859_2 }, /* Central European */ ++ { "ISO8859-4", RTL_TEXTENCODING_ISO_8859_4 }, /* LATIN4 L4 */ ++ { "ISO8859-5", RTL_TEXTENCODING_ISO_8859_5 }, /* Cyrillic */ ++ { "ISO8859-7", RTL_TEXTENCODING_ISO_8859_7 }, /* Greek */ ++ { "ISO8859-9", RTL_TEXTENCODING_ISO_8859_9 }, /* Turkish */ ++ { "KOI-U", RTL_TEXTENCODING_DONTKNOW }, /* Not supported at the moment */ ++ { "KOI8-R", RTL_TEXTENCODING_KOI8_R }, /* KOI8 */ ++ { "SJIS", RTL_TEXTENCODING_SHIFT_JIS }, /* Japan */ ++ { "US-ASCII", RTL_TEXTENCODING_ASCII_US }, /* US-ASCII */ ++ { "UTF-8", RTL_TEXTENCODING_UTF8 } /* ISO-10646/UTF-8 */ ++}; ++ ++#endif /* ifdef SOLARIS IRIX LINUX FREEBSD NETBSD */ static pthread_mutex_t aLocalMutex = PTHREAD_MUTEX_INITIALIZER; -@@ -618,7 +645,7 @@ +@@ -618,7 +675,7 @@ return ret; } -#elif defined(MACOSX) /* ifdef LINUX || SOLARIS || NETBSD */ -+#elif defined(MACOSX) /* ifdef LINUX || SOLARIS || FREEBSD */ ++#elif defined(MACOSX) /* ifdef LINUX || SOLARIS || IRIX || FREEBSD || NETBSD */ /* * FIXME: the MacOS X implemetation is missing -@@ -651,7 +678,7 @@ +@@ -651,7 +708,7 @@ return 0; } -#else /* ifdef LINUX || SOLARIS || MACOSX || NETBSD */ -+#else /* ifdef LINUX || SOLARIS || FREEBSD || MACOSX */ ++#else /* ifdef LINUX || SOLARIS || IRIX || FREEBSD || NETBSD || MACOSX */ /* * This implementation of osl_getTextEncodingFromLocale maps -@@ -887,6 +914,6 @@ +@@ -887,6 +944,6 @@ return 0; } -#endif /* ifdef LINUX || SOLARIS || MACOSX || NETBSD */ -+#endif /* ifdef LINUX || SOLARIS || MACOSX || FREEBSD */ ++#endif /* ifdef LINUX || SOLARIS || FREEBSD || NETBSD || MACOSX */ diff --git a/editors/openoffice.org-1.0/files/patch-sal::osl::unx::nlsupport.c b/editors/openoffice.org-1.0/files/patch-sal::osl::unx::nlsupport.c index 1a606f1694c1..8107caa02bcc 100644 --- a/editors/openoffice.org-1.0/files/patch-sal::osl::unx::nlsupport.c +++ b/editors/openoffice.org-1.0/files/patch-sal::osl::unx::nlsupport.c @@ -1,23 +1,14 @@ ---- ../sal/osl/unx/nlsupport.c.orig Tue May 21 15:22:11 2002 -+++ ../sal/osl/unx/nlsupport.c Wed Jul 31 10:28:29 2002 +--- ../sal/osl/unx/nlsupport.c.orig Wed Aug 14 18:22:49 2002 ++++ ../sal/osl/unx/nlsupport.c Wed Aug 14 19:07:18 2002 @@ -63,7 +63,7 @@ #include <osl/diagnose.h> #include <osl/process.h> -#if defined(LINUX) || defined(SOLARIS) || defined(IRIX) || defined(NETBSD) -+#if defined(LINUX) || defined(SOLARIS) || defined(IRIX) || defined(FREEBSD) ++#if defined(LINUX) || defined(SOLARIS) || defined(IRIX) || defined(FREEBSD) || defined(NETBSD) #include <pthread.h> #include <locale.h> #include <langinfo.h> -@@ -87,7 +87,7 @@ - static int - _pair_compare (const char *key, const _pair *pair) - { -- int result = rtl_str_compareIgnoreAsciiCase( key, pair->key ); -+ unsigned int result = rtl_str_compareIgnoreAsciiCase( key, pair->key ); - return result; - } - @@ -114,8 +114,7 @@ comparison = _pair_compare( key, base + current ); if (comparison < 0) @@ -33,56 +24,62 @@ } -#if defined(LINUX) || defined(SOLARIS) || defined(IRIX) || defined(NETBSD) -+#if defined(LINUX) || defined(SOLARIS) || defined(IRIX) || defined(FREEBSD) ++#if defined(LINUX) || defined(SOLARIS) || defined(IRIX) || defined(FREEBSD) || defined(NETBSD) /* * This implementation of osl_getTextEncodingFromLocale maps * from nl_langinfo(CODESET) to rtl_textencoding defines. - * nl_langinfo() is supported only on Linux, Solaris and IRIX. -+ * nl_langinfo() is supported only on Linux, Solaris and IRIX -+ * and FreeBSD. ++ * nl_langinfo() is supported only on Linux, Solaris and IRIX, ++ * >= NetBSD 1.5 and >= FreeBSD 4.4 * * This routine is SLOW because of the setlocale call, so * grab the result and cache it. -@@ -260,6 +260,10 @@ +@@ -260,6 +260,12 @@ #endif #endif +/* + * _nl_language_list[] is an array list of supported encodings. Because + * we are using a binary search, the list has to be in ascending order. ++ * We are comparing the encodings case insensitiv, so the list has ++ * to be completly upper- , or lowercase. + */ #if defined(SOLARIS) -@@ -312,10 +316,33 @@ - { "big5", RTL_TEXTENCODING_BIG5 }, /* China - Traditional Chinese */ - { "eucgbk", RTL_TEXTENCODING_DONTKNOW }, /* China - Simplified Chinese */ - { "gbk", RTL_TEXTENCODING_GBK }, /* China - Simplified Chinese */ -+ { "sjis", RTL_TEXTENCODING_SHIFT_JIS } /* Japan */ -+}; -+ -+#elif defined(FREEBSD) -+ -+const _pair _nl_language_list[] = { -+ { "ascii", RTL_TEXTENCODING_ASCII_US }, /* US-ASCII */ -+ { "big5", RTL_TEXTENCODING_BIG5 }, /* China - Traditional Chinese */ -+ { "cp1251", RTL_TEXTENCODING_MS_1251 }, /* MS-CYRL */ -+ { "cp866", RTL_TEXTENCODING_IBM_866 }, /* CP866 866 */ -+ { "eucCN", RTL_TEXTENCODING_EUC_CN }, /* China - Simplified Chinese */ -+ { "eucJP", RTL_TEXTENCODING_EUC_JP }, /* Japan */ -+ { "eucKR", RTL_TEXTENCODING_EUC_KR }, /* Korea */ -+ { "iso8859-1", RTL_TEXTENCODING_ISO_8859_1 }, /* Western */ -+ { "iso8859-15", RTL_TEXTENCODING_ISO_8859_15 }, /* Western Updated (w/Euro sign) */ -+ { "iso8859-2", RTL_TEXTENCODING_ISO_8859_2 }, /* Central European */ -+ { "iso8859-4", RTL_TEXTENCODING_ISO_8859_4 }, /* LATIN4 L4 */ -+ { "iso8859-5", RTL_TEXTENCODING_ISO_8859_5 }, /* Cyrillic */ -+ { "iso8859-7", RTL_TEXTENCODING_ISO_8859_7 }, /* Greek */ -+ { "iso8859-9", RTL_TEXTENCODING_ISO_8859_9 }, /* Turkish */ -+ { "koi-u", RTL_TEXTENCODING_DONTKNOW }, /* Not supported at the moment */ -+ { "koi8-r", RTL_TEXTENCODING_KOI8_R }, /* KOI8 */ - { "sjis", RTL_TEXTENCODING_SHIFT_JIS }, /* Japan */ -+ { "us-ascii", RTL_TEXTENCODING_ASCII_US } /* US-ASCII */ +@@ -299,23 +305,23 @@ + #elif defined(IRIX) + + const _pair _nl_language_list[] = { +- { "ISO8859-1", RTL_TEXTENCODING_ISO_8859_1 }, /* Western */ +- { "ISO8859-2", RTL_TEXTENCODING_ISO_8859_2 }, /* Central European */ +- { "ISO8859-5", RTL_TEXTENCODING_ISO_8859_5 }, /* Cyrillic */ +- { "ISO8859-7", RTL_TEXTENCODING_ISO_8859_7 }, /* Greek */ +- { "ISO8859-9", RTL_TEXTENCODING_ISO_8859_9 }, /* Turkish */ +- { "ISO8859-15", RTL_TEXTENCODING_ISO_8859_15 }, /* Western Updated (w/Euro sign) */ +- { "eucJP", RTL_TEXTENCODING_EUC_JP }, /* Japan */ +- { "eucKR", RTL_TEXTENCODING_EUC_KR }, /* Korea */ +- { "eucCN", RTL_TEXTENCODING_EUC_CN }, /* China */ +- { "eucTW", RTL_TEXTENCODING_EUC_TW }, /* Taiwan - Traditional Chinese */ +- { "big5", RTL_TEXTENCODING_BIG5 }, /* China - Traditional Chinese */ +- { "eucgbk", RTL_TEXTENCODING_DONTKNOW }, /* China - Simplified Chinese */ +- { "gbk", RTL_TEXTENCODING_GBK }, /* China - Simplified Chinese */ +- { "sjis", RTL_TEXTENCODING_SHIFT_JIS }, /* Japan */ ++ { "BIG5", RTL_TEXTENCODING_BIG5 }, /* China - Traditional Chinese */ ++ { "EUCCN", RTL_TEXTENCODING_EUC_CN }, /* China */ ++ { "EUCGBK", RTL_TEXTENCODING_DONTKNOW }, /* China - Simplified Chinese */ ++ { "EUCJP", RTL_TEXTENCODING_EUC_JP }, /* Japan */ ++ { "EUCKR", RTL_TEXTENCODING_EUC_KR }, /* Korea */ ++ { "EUCTW", RTL_TEXTENCODING_EUC_TW }, /* Taiwan - Traditional Chinese */ ++ { "GBK", RTL_TEXTENCODING_GBK }, /* China - Simplified Chinese */ ++ { "ISO8859-1", RTL_TEXTENCODING_ISO_8859_1 }, /* Western */ ++ { "ISO8859-15", RTL_TEXTENCODING_ISO_8859_15 }, /* Western Updated (w/Euro sign) */ ++ { "ISO8859-2", RTL_TEXTENCODING_ISO_8859_2 }, /* Central European */ ++ { "ISO8859-5", RTL_TEXTENCODING_ISO_8859_5 }, /* Cyrillic */ ++ { "ISO8859-7", RTL_TEXTENCODING_ISO_8859_7 }, /* Greek */ ++ { "ISO8859-9", RTL_TEXTENCODING_ISO_8859_9 }, /* Turkish */ ++ { "SJIS", RTL_TEXTENCODING_SHIFT_JIS } /* Japan */ }; -#elif defined(LINUX) || defined(NETBSD) @@ -90,38 +87,89 @@ const _pair _nl_language_list[] = { { "ANSI_X3.110-1983", RTL_TEXTENCODING_DONTKNOW }, /* ISO-IR-99 NAPLPS */ -@@ -496,7 +523,7 @@ +@@ -496,7 +502,58 @@ { "WIN-SAMI-2", RTL_TEXTENCODING_DONTKNOW } /* WS2 */ }; -#endif /* ifdef LINUX || NETBSD */ -+#endif /* ifdef LINUX || FREEBSD */ ++#elif defined(FREEBSD) ++ ++const _pair _nl_language_list[] = { ++ { "ASCII", RTL_TEXTENCODING_ASCII_US }, /* US-ASCII */ ++ { "BIG5", RTL_TEXTENCODING_BIG5 }, /* China - Traditional Chinese */ ++ { "CP1251", RTL_TEXTENCODING_MS_1251 }, /* MS-CYRL */ ++ { "CP866", RTL_TEXTENCODING_IBM_866 }, /* CP866 866 */ ++ { "EUCCN", RTL_TEXTENCODING_EUC_CN }, /* China - Simplified Chinese */ ++ { "EUCJP", RTL_TEXTENCODING_EUC_JP }, /* Japan */ ++ { "EUCKR", RTL_TEXTENCODING_EUC_KR }, /* Korea */ ++ { "ISO8859-1", RTL_TEXTENCODING_ISO_8859_1 }, /* Western */ ++ { "ISO8859-15", RTL_TEXTENCODING_ISO_8859_15 }, /* Western Updated (w/Euro sign) */ ++ { "ISO8859-2", RTL_TEXTENCODING_ISO_8859_2 }, /* Central European */ ++ { "ISO8859-4", RTL_TEXTENCODING_ISO_8859_4 }, /* LATIN4 L4 */ ++ { "ISO8859-5", RTL_TEXTENCODING_ISO_8859_5 }, /* Cyrillic */ ++ { "ISO8859-7", RTL_TEXTENCODING_ISO_8859_7 }, /* Greek */ ++ { "ISO8859-9", RTL_TEXTENCODING_ISO_8859_9 }, /* Turkish */ ++ { "KOI-U", RTL_TEXTENCODING_DONTKNOW }, /* Not supported at the moment */ ++ { "KOI8-R", RTL_TEXTENCODING_KOI8_R }, /* KOI8 */ ++ { "SJIS", RTL_TEXTENCODING_SHIFT_JIS }, /* Japan */ ++ { "US-ASCII", RTL_TEXTENCODING_ASCII_US } /* US-ASCII */ ++}; ++ ++#elif defined(NETBSD) ++ ++const _pair _nl_language_list[] = { ++ { "ASCII", RTL_TEXTENCODING_ASCII_US }, /* US-ASCII */ ++ { "BIG5", RTL_TEXTENCODING_BIG5 }, /* China - Traditional Chinese */ ++ { "CP1251", RTL_TEXTENCODING_MS_1251 }, /* MS-CYRL */ ++ { "CP866", RTL_TEXTENCODING_IBM_866 }, /* CP866 866 */ ++ { "CTEXT", RTL_TEXTENCODING_ASCII_US }, /* US-ASCII */ ++ { "EUCCN", RTL_TEXTENCODING_EUC_CN }, /* China - Simplified Chinese */ ++ { "EUCJP", RTL_TEXTENCODING_EUC_JP }, /* Japan */ ++ { "EUCKR", RTL_TEXTENCODING_EUC_KR }, /* Korea */ ++ { "EUCTW", RTL_TEXTENCODING_EUC_TW }, /* China - Traditional Chinese */ ++ { "ISO-2022-JP", RTL_TEXTENCODING_DONTKNOW }, /* */ ++ { "ISO-2022-JP-2", RTL_TEXTENCODING_DONTKNOW }, /* */ ++ { "ISO8859-1", RTL_TEXTENCODING_ISO_8859_1 }, /* Western */ ++ { "ISO8859-15", RTL_TEXTENCODING_ISO_8859_15 }, /* Western Updated (w/Euro sign) */ ++ { "ISO8859-2", RTL_TEXTENCODING_ISO_8859_2 }, /* Central European */ ++ { "ISO8859-4", RTL_TEXTENCODING_ISO_8859_4 }, /* LATIN4 L4 */ ++ { "ISO8859-5", RTL_TEXTENCODING_ISO_8859_5 }, /* Cyrillic */ ++ { "ISO8859-7", RTL_TEXTENCODING_ISO_8859_7 }, /* Greek */ ++ { "ISO8859-9", RTL_TEXTENCODING_ISO_8859_9 }, /* Turkish */ ++ { "KOI-U", RTL_TEXTENCODING_DONTKNOW }, /* Not supported at the moment */ ++ { "KOI8-R", RTL_TEXTENCODING_KOI8_R }, /* KOI8 */ ++ { "SJIS", RTL_TEXTENCODING_SHIFT_JIS }, /* Japan */ ++ { "US-ASCII", RTL_TEXTENCODING_ASCII_US }, /* US-ASCII */ ++ { "UTF-8", RTL_TEXTENCODING_UTF8 } /* ISO-10646/UTF-8 */ ++}; ++ ++#endif /* ifdef SOLARIS IRIX LINUX FREEBSD NETBSD */ static pthread_mutex_t aLocalMutex = PTHREAD_MUTEX_INITIALIZER; -@@ -618,7 +645,7 @@ +@@ -618,7 +675,7 @@ return ret; } -#elif defined(MACOSX) /* ifdef LINUX || SOLARIS || NETBSD */ -+#elif defined(MACOSX) /* ifdef LINUX || SOLARIS || FREEBSD */ ++#elif defined(MACOSX) /* ifdef LINUX || SOLARIS || IRIX || FREEBSD || NETBSD */ /* * FIXME: the MacOS X implemetation is missing -@@ -651,7 +678,7 @@ +@@ -651,7 +708,7 @@ return 0; } -#else /* ifdef LINUX || SOLARIS || MACOSX || NETBSD */ -+#else /* ifdef LINUX || SOLARIS || FREEBSD || MACOSX */ ++#else /* ifdef LINUX || SOLARIS || IRIX || FREEBSD || NETBSD || MACOSX */ /* * This implementation of osl_getTextEncodingFromLocale maps -@@ -887,6 +914,6 @@ +@@ -887,6 +944,6 @@ return 0; } -#endif /* ifdef LINUX || SOLARIS || MACOSX || NETBSD */ -+#endif /* ifdef LINUX || SOLARIS || MACOSX || FREEBSD */ ++#endif /* ifdef LINUX || SOLARIS || FREEBSD || NETBSD || MACOSX */ diff --git a/editors/openoffice.org-1.1-devel/files/patch-sal+osl+unx+nlsupport.c b/editors/openoffice.org-1.1-devel/files/patch-sal+osl+unx+nlsupport.c index 1a606f1694c1..8107caa02bcc 100644 --- a/editors/openoffice.org-1.1-devel/files/patch-sal+osl+unx+nlsupport.c +++ b/editors/openoffice.org-1.1-devel/files/patch-sal+osl+unx+nlsupport.c @@ -1,23 +1,14 @@ ---- ../sal/osl/unx/nlsupport.c.orig Tue May 21 15:22:11 2002 -+++ ../sal/osl/unx/nlsupport.c Wed Jul 31 10:28:29 2002 +--- ../sal/osl/unx/nlsupport.c.orig Wed Aug 14 18:22:49 2002 ++++ ../sal/osl/unx/nlsupport.c Wed Aug 14 19:07:18 2002 @@ -63,7 +63,7 @@ #include <osl/diagnose.h> #include <osl/process.h> -#if defined(LINUX) || defined(SOLARIS) || defined(IRIX) || defined(NETBSD) -+#if defined(LINUX) || defined(SOLARIS) || defined(IRIX) || defined(FREEBSD) ++#if defined(LINUX) || defined(SOLARIS) || defined(IRIX) || defined(FREEBSD) || defined(NETBSD) #include <pthread.h> #include <locale.h> #include <langinfo.h> -@@ -87,7 +87,7 @@ - static int - _pair_compare (const char *key, const _pair *pair) - { -- int result = rtl_str_compareIgnoreAsciiCase( key, pair->key ); -+ unsigned int result = rtl_str_compareIgnoreAsciiCase( key, pair->key ); - return result; - } - @@ -114,8 +114,7 @@ comparison = _pair_compare( key, base + current ); if (comparison < 0) @@ -33,56 +24,62 @@ } -#if defined(LINUX) || defined(SOLARIS) || defined(IRIX) || defined(NETBSD) -+#if defined(LINUX) || defined(SOLARIS) || defined(IRIX) || defined(FREEBSD) ++#if defined(LINUX) || defined(SOLARIS) || defined(IRIX) || defined(FREEBSD) || defined(NETBSD) /* * This implementation of osl_getTextEncodingFromLocale maps * from nl_langinfo(CODESET) to rtl_textencoding defines. - * nl_langinfo() is supported only on Linux, Solaris and IRIX. -+ * nl_langinfo() is supported only on Linux, Solaris and IRIX -+ * and FreeBSD. ++ * nl_langinfo() is supported only on Linux, Solaris and IRIX, ++ * >= NetBSD 1.5 and >= FreeBSD 4.4 * * This routine is SLOW because of the setlocale call, so * grab the result and cache it. -@@ -260,6 +260,10 @@ +@@ -260,6 +260,12 @@ #endif #endif +/* + * _nl_language_list[] is an array list of supported encodings. Because + * we are using a binary search, the list has to be in ascending order. ++ * We are comparing the encodings case insensitiv, so the list has ++ * to be completly upper- , or lowercase. + */ #if defined(SOLARIS) -@@ -312,10 +316,33 @@ - { "big5", RTL_TEXTENCODING_BIG5 }, /* China - Traditional Chinese */ - { "eucgbk", RTL_TEXTENCODING_DONTKNOW }, /* China - Simplified Chinese */ - { "gbk", RTL_TEXTENCODING_GBK }, /* China - Simplified Chinese */ -+ { "sjis", RTL_TEXTENCODING_SHIFT_JIS } /* Japan */ -+}; -+ -+#elif defined(FREEBSD) -+ -+const _pair _nl_language_list[] = { -+ { "ascii", RTL_TEXTENCODING_ASCII_US }, /* US-ASCII */ -+ { "big5", RTL_TEXTENCODING_BIG5 }, /* China - Traditional Chinese */ -+ { "cp1251", RTL_TEXTENCODING_MS_1251 }, /* MS-CYRL */ -+ { "cp866", RTL_TEXTENCODING_IBM_866 }, /* CP866 866 */ -+ { "eucCN", RTL_TEXTENCODING_EUC_CN }, /* China - Simplified Chinese */ -+ { "eucJP", RTL_TEXTENCODING_EUC_JP }, /* Japan */ -+ { "eucKR", RTL_TEXTENCODING_EUC_KR }, /* Korea */ -+ { "iso8859-1", RTL_TEXTENCODING_ISO_8859_1 }, /* Western */ -+ { "iso8859-15", RTL_TEXTENCODING_ISO_8859_15 }, /* Western Updated (w/Euro sign) */ -+ { "iso8859-2", RTL_TEXTENCODING_ISO_8859_2 }, /* Central European */ -+ { "iso8859-4", RTL_TEXTENCODING_ISO_8859_4 }, /* LATIN4 L4 */ -+ { "iso8859-5", RTL_TEXTENCODING_ISO_8859_5 }, /* Cyrillic */ -+ { "iso8859-7", RTL_TEXTENCODING_ISO_8859_7 }, /* Greek */ -+ { "iso8859-9", RTL_TEXTENCODING_ISO_8859_9 }, /* Turkish */ -+ { "koi-u", RTL_TEXTENCODING_DONTKNOW }, /* Not supported at the moment */ -+ { "koi8-r", RTL_TEXTENCODING_KOI8_R }, /* KOI8 */ - { "sjis", RTL_TEXTENCODING_SHIFT_JIS }, /* Japan */ -+ { "us-ascii", RTL_TEXTENCODING_ASCII_US } /* US-ASCII */ +@@ -299,23 +305,23 @@ + #elif defined(IRIX) + + const _pair _nl_language_list[] = { +- { "ISO8859-1", RTL_TEXTENCODING_ISO_8859_1 }, /* Western */ +- { "ISO8859-2", RTL_TEXTENCODING_ISO_8859_2 }, /* Central European */ +- { "ISO8859-5", RTL_TEXTENCODING_ISO_8859_5 }, /* Cyrillic */ +- { "ISO8859-7", RTL_TEXTENCODING_ISO_8859_7 }, /* Greek */ +- { "ISO8859-9", RTL_TEXTENCODING_ISO_8859_9 }, /* Turkish */ +- { "ISO8859-15", RTL_TEXTENCODING_ISO_8859_15 }, /* Western Updated (w/Euro sign) */ +- { "eucJP", RTL_TEXTENCODING_EUC_JP }, /* Japan */ +- { "eucKR", RTL_TEXTENCODING_EUC_KR }, /* Korea */ +- { "eucCN", RTL_TEXTENCODING_EUC_CN }, /* China */ +- { "eucTW", RTL_TEXTENCODING_EUC_TW }, /* Taiwan - Traditional Chinese */ +- { "big5", RTL_TEXTENCODING_BIG5 }, /* China - Traditional Chinese */ +- { "eucgbk", RTL_TEXTENCODING_DONTKNOW }, /* China - Simplified Chinese */ +- { "gbk", RTL_TEXTENCODING_GBK }, /* China - Simplified Chinese */ +- { "sjis", RTL_TEXTENCODING_SHIFT_JIS }, /* Japan */ ++ { "BIG5", RTL_TEXTENCODING_BIG5 }, /* China - Traditional Chinese */ ++ { "EUCCN", RTL_TEXTENCODING_EUC_CN }, /* China */ ++ { "EUCGBK", RTL_TEXTENCODING_DONTKNOW }, /* China - Simplified Chinese */ ++ { "EUCJP", RTL_TEXTENCODING_EUC_JP }, /* Japan */ ++ { "EUCKR", RTL_TEXTENCODING_EUC_KR }, /* Korea */ ++ { "EUCTW", RTL_TEXTENCODING_EUC_TW }, /* Taiwan - Traditional Chinese */ ++ { "GBK", RTL_TEXTENCODING_GBK }, /* China - Simplified Chinese */ ++ { "ISO8859-1", RTL_TEXTENCODING_ISO_8859_1 }, /* Western */ ++ { "ISO8859-15", RTL_TEXTENCODING_ISO_8859_15 }, /* Western Updated (w/Euro sign) */ ++ { "ISO8859-2", RTL_TEXTENCODING_ISO_8859_2 }, /* Central European */ ++ { "ISO8859-5", RTL_TEXTENCODING_ISO_8859_5 }, /* Cyrillic */ ++ { "ISO8859-7", RTL_TEXTENCODING_ISO_8859_7 }, /* Greek */ ++ { "ISO8859-9", RTL_TEXTENCODING_ISO_8859_9 }, /* Turkish */ ++ { "SJIS", RTL_TEXTENCODING_SHIFT_JIS } /* Japan */ }; -#elif defined(LINUX) || defined(NETBSD) @@ -90,38 +87,89 @@ const _pair _nl_language_list[] = { { "ANSI_X3.110-1983", RTL_TEXTENCODING_DONTKNOW }, /* ISO-IR-99 NAPLPS */ -@@ -496,7 +523,7 @@ +@@ -496,7 +502,58 @@ { "WIN-SAMI-2", RTL_TEXTENCODING_DONTKNOW } /* WS2 */ }; -#endif /* ifdef LINUX || NETBSD */ -+#endif /* ifdef LINUX || FREEBSD */ ++#elif defined(FREEBSD) ++ ++const _pair _nl_language_list[] = { ++ { "ASCII", RTL_TEXTENCODING_ASCII_US }, /* US-ASCII */ ++ { "BIG5", RTL_TEXTENCODING_BIG5 }, /* China - Traditional Chinese */ ++ { "CP1251", RTL_TEXTENCODING_MS_1251 }, /* MS-CYRL */ ++ { "CP866", RTL_TEXTENCODING_IBM_866 }, /* CP866 866 */ ++ { "EUCCN", RTL_TEXTENCODING_EUC_CN }, /* China - Simplified Chinese */ ++ { "EUCJP", RTL_TEXTENCODING_EUC_JP }, /* Japan */ ++ { "EUCKR", RTL_TEXTENCODING_EUC_KR }, /* Korea */ ++ { "ISO8859-1", RTL_TEXTENCODING_ISO_8859_1 }, /* Western */ ++ { "ISO8859-15", RTL_TEXTENCODING_ISO_8859_15 }, /* Western Updated (w/Euro sign) */ ++ { "ISO8859-2", RTL_TEXTENCODING_ISO_8859_2 }, /* Central European */ ++ { "ISO8859-4", RTL_TEXTENCODING_ISO_8859_4 }, /* LATIN4 L4 */ ++ { "ISO8859-5", RTL_TEXTENCODING_ISO_8859_5 }, /* Cyrillic */ ++ { "ISO8859-7", RTL_TEXTENCODING_ISO_8859_7 }, /* Greek */ ++ { "ISO8859-9", RTL_TEXTENCODING_ISO_8859_9 }, /* Turkish */ ++ { "KOI-U", RTL_TEXTENCODING_DONTKNOW }, /* Not supported at the moment */ ++ { "KOI8-R", RTL_TEXTENCODING_KOI8_R }, /* KOI8 */ ++ { "SJIS", RTL_TEXTENCODING_SHIFT_JIS }, /* Japan */ ++ { "US-ASCII", RTL_TEXTENCODING_ASCII_US } /* US-ASCII */ ++}; ++ ++#elif defined(NETBSD) ++ ++const _pair _nl_language_list[] = { ++ { "ASCII", RTL_TEXTENCODING_ASCII_US }, /* US-ASCII */ ++ { "BIG5", RTL_TEXTENCODING_BIG5 }, /* China - Traditional Chinese */ ++ { "CP1251", RTL_TEXTENCODING_MS_1251 }, /* MS-CYRL */ ++ { "CP866", RTL_TEXTENCODING_IBM_866 }, /* CP866 866 */ ++ { "CTEXT", RTL_TEXTENCODING_ASCII_US }, /* US-ASCII */ ++ { "EUCCN", RTL_TEXTENCODING_EUC_CN }, /* China - Simplified Chinese */ ++ { "EUCJP", RTL_TEXTENCODING_EUC_JP }, /* Japan */ ++ { "EUCKR", RTL_TEXTENCODING_EUC_KR }, /* Korea */ ++ { "EUCTW", RTL_TEXTENCODING_EUC_TW }, /* China - Traditional Chinese */ ++ { "ISO-2022-JP", RTL_TEXTENCODING_DONTKNOW }, /* */ ++ { "ISO-2022-JP-2", RTL_TEXTENCODING_DONTKNOW }, /* */ ++ { "ISO8859-1", RTL_TEXTENCODING_ISO_8859_1 }, /* Western */ ++ { "ISO8859-15", RTL_TEXTENCODING_ISO_8859_15 }, /* Western Updated (w/Euro sign) */ ++ { "ISO8859-2", RTL_TEXTENCODING_ISO_8859_2 }, /* Central European */ ++ { "ISO8859-4", RTL_TEXTENCODING_ISO_8859_4 }, /* LATIN4 L4 */ ++ { "ISO8859-5", RTL_TEXTENCODING_ISO_8859_5 }, /* Cyrillic */ ++ { "ISO8859-7", RTL_TEXTENCODING_ISO_8859_7 }, /* Greek */ ++ { "ISO8859-9", RTL_TEXTENCODING_ISO_8859_9 }, /* Turkish */ ++ { "KOI-U", RTL_TEXTENCODING_DONTKNOW }, /* Not supported at the moment */ ++ { "KOI8-R", RTL_TEXTENCODING_KOI8_R }, /* KOI8 */ ++ { "SJIS", RTL_TEXTENCODING_SHIFT_JIS }, /* Japan */ ++ { "US-ASCII", RTL_TEXTENCODING_ASCII_US }, /* US-ASCII */ ++ { "UTF-8", RTL_TEXTENCODING_UTF8 } /* ISO-10646/UTF-8 */ ++}; ++ ++#endif /* ifdef SOLARIS IRIX LINUX FREEBSD NETBSD */ static pthread_mutex_t aLocalMutex = PTHREAD_MUTEX_INITIALIZER; -@@ -618,7 +645,7 @@ +@@ -618,7 +675,7 @@ return ret; } -#elif defined(MACOSX) /* ifdef LINUX || SOLARIS || NETBSD */ -+#elif defined(MACOSX) /* ifdef LINUX || SOLARIS || FREEBSD */ ++#elif defined(MACOSX) /* ifdef LINUX || SOLARIS || IRIX || FREEBSD || NETBSD */ /* * FIXME: the MacOS X implemetation is missing -@@ -651,7 +678,7 @@ +@@ -651,7 +708,7 @@ return 0; } -#else /* ifdef LINUX || SOLARIS || MACOSX || NETBSD */ -+#else /* ifdef LINUX || SOLARIS || FREEBSD || MACOSX */ ++#else /* ifdef LINUX || SOLARIS || IRIX || FREEBSD || NETBSD || MACOSX */ /* * This implementation of osl_getTextEncodingFromLocale maps -@@ -887,6 +914,6 @@ +@@ -887,6 +944,6 @@ return 0; } -#endif /* ifdef LINUX || SOLARIS || MACOSX || NETBSD */ -+#endif /* ifdef LINUX || SOLARIS || MACOSX || FREEBSD */ ++#endif /* ifdef LINUX || SOLARIS || FREEBSD || NETBSD || MACOSX */ diff --git a/editors/openoffice.org-1.1/files/patch-sal+osl+unx+nlsupport.c b/editors/openoffice.org-1.1/files/patch-sal+osl+unx+nlsupport.c index 1a606f1694c1..8107caa02bcc 100644 --- a/editors/openoffice.org-1.1/files/patch-sal+osl+unx+nlsupport.c +++ b/editors/openoffice.org-1.1/files/patch-sal+osl+unx+nlsupport.c @@ -1,23 +1,14 @@ ---- ../sal/osl/unx/nlsupport.c.orig Tue May 21 15:22:11 2002 -+++ ../sal/osl/unx/nlsupport.c Wed Jul 31 10:28:29 2002 +--- ../sal/osl/unx/nlsupport.c.orig Wed Aug 14 18:22:49 2002 ++++ ../sal/osl/unx/nlsupport.c Wed Aug 14 19:07:18 2002 @@ -63,7 +63,7 @@ #include <osl/diagnose.h> #include <osl/process.h> -#if defined(LINUX) || defined(SOLARIS) || defined(IRIX) || defined(NETBSD) -+#if defined(LINUX) || defined(SOLARIS) || defined(IRIX) || defined(FREEBSD) ++#if defined(LINUX) || defined(SOLARIS) || defined(IRIX) || defined(FREEBSD) || defined(NETBSD) #include <pthread.h> #include <locale.h> #include <langinfo.h> -@@ -87,7 +87,7 @@ - static int - _pair_compare (const char *key, const _pair *pair) - { -- int result = rtl_str_compareIgnoreAsciiCase( key, pair->key ); -+ unsigned int result = rtl_str_compareIgnoreAsciiCase( key, pair->key ); - return result; - } - @@ -114,8 +114,7 @@ comparison = _pair_compare( key, base + current ); if (comparison < 0) @@ -33,56 +24,62 @@ } -#if defined(LINUX) || defined(SOLARIS) || defined(IRIX) || defined(NETBSD) -+#if defined(LINUX) || defined(SOLARIS) || defined(IRIX) || defined(FREEBSD) ++#if defined(LINUX) || defined(SOLARIS) || defined(IRIX) || defined(FREEBSD) || defined(NETBSD) /* * This implementation of osl_getTextEncodingFromLocale maps * from nl_langinfo(CODESET) to rtl_textencoding defines. - * nl_langinfo() is supported only on Linux, Solaris and IRIX. -+ * nl_langinfo() is supported only on Linux, Solaris and IRIX -+ * and FreeBSD. ++ * nl_langinfo() is supported only on Linux, Solaris and IRIX, ++ * >= NetBSD 1.5 and >= FreeBSD 4.4 * * This routine is SLOW because of the setlocale call, so * grab the result and cache it. -@@ -260,6 +260,10 @@ +@@ -260,6 +260,12 @@ #endif #endif +/* + * _nl_language_list[] is an array list of supported encodings. Because + * we are using a binary search, the list has to be in ascending order. ++ * We are comparing the encodings case insensitiv, so the list has ++ * to be completly upper- , or lowercase. + */ #if defined(SOLARIS) -@@ -312,10 +316,33 @@ - { "big5", RTL_TEXTENCODING_BIG5 }, /* China - Traditional Chinese */ - { "eucgbk", RTL_TEXTENCODING_DONTKNOW }, /* China - Simplified Chinese */ - { "gbk", RTL_TEXTENCODING_GBK }, /* China - Simplified Chinese */ -+ { "sjis", RTL_TEXTENCODING_SHIFT_JIS } /* Japan */ -+}; -+ -+#elif defined(FREEBSD) -+ -+const _pair _nl_language_list[] = { -+ { "ascii", RTL_TEXTENCODING_ASCII_US }, /* US-ASCII */ -+ { "big5", RTL_TEXTENCODING_BIG5 }, /* China - Traditional Chinese */ -+ { "cp1251", RTL_TEXTENCODING_MS_1251 }, /* MS-CYRL */ -+ { "cp866", RTL_TEXTENCODING_IBM_866 }, /* CP866 866 */ -+ { "eucCN", RTL_TEXTENCODING_EUC_CN }, /* China - Simplified Chinese */ -+ { "eucJP", RTL_TEXTENCODING_EUC_JP }, /* Japan */ -+ { "eucKR", RTL_TEXTENCODING_EUC_KR }, /* Korea */ -+ { "iso8859-1", RTL_TEXTENCODING_ISO_8859_1 }, /* Western */ -+ { "iso8859-15", RTL_TEXTENCODING_ISO_8859_15 }, /* Western Updated (w/Euro sign) */ -+ { "iso8859-2", RTL_TEXTENCODING_ISO_8859_2 }, /* Central European */ -+ { "iso8859-4", RTL_TEXTENCODING_ISO_8859_4 }, /* LATIN4 L4 */ -+ { "iso8859-5", RTL_TEXTENCODING_ISO_8859_5 }, /* Cyrillic */ -+ { "iso8859-7", RTL_TEXTENCODING_ISO_8859_7 }, /* Greek */ -+ { "iso8859-9", RTL_TEXTENCODING_ISO_8859_9 }, /* Turkish */ -+ { "koi-u", RTL_TEXTENCODING_DONTKNOW }, /* Not supported at the moment */ -+ { "koi8-r", RTL_TEXTENCODING_KOI8_R }, /* KOI8 */ - { "sjis", RTL_TEXTENCODING_SHIFT_JIS }, /* Japan */ -+ { "us-ascii", RTL_TEXTENCODING_ASCII_US } /* US-ASCII */ +@@ -299,23 +305,23 @@ + #elif defined(IRIX) + + const _pair _nl_language_list[] = { +- { "ISO8859-1", RTL_TEXTENCODING_ISO_8859_1 }, /* Western */ +- { "ISO8859-2", RTL_TEXTENCODING_ISO_8859_2 }, /* Central European */ +- { "ISO8859-5", RTL_TEXTENCODING_ISO_8859_5 }, /* Cyrillic */ +- { "ISO8859-7", RTL_TEXTENCODING_ISO_8859_7 }, /* Greek */ +- { "ISO8859-9", RTL_TEXTENCODING_ISO_8859_9 }, /* Turkish */ +- { "ISO8859-15", RTL_TEXTENCODING_ISO_8859_15 }, /* Western Updated (w/Euro sign) */ +- { "eucJP", RTL_TEXTENCODING_EUC_JP }, /* Japan */ +- { "eucKR", RTL_TEXTENCODING_EUC_KR }, /* Korea */ +- { "eucCN", RTL_TEXTENCODING_EUC_CN }, /* China */ +- { "eucTW", RTL_TEXTENCODING_EUC_TW }, /* Taiwan - Traditional Chinese */ +- { "big5", RTL_TEXTENCODING_BIG5 }, /* China - Traditional Chinese */ +- { "eucgbk", RTL_TEXTENCODING_DONTKNOW }, /* China - Simplified Chinese */ +- { "gbk", RTL_TEXTENCODING_GBK }, /* China - Simplified Chinese */ +- { "sjis", RTL_TEXTENCODING_SHIFT_JIS }, /* Japan */ ++ { "BIG5", RTL_TEXTENCODING_BIG5 }, /* China - Traditional Chinese */ ++ { "EUCCN", RTL_TEXTENCODING_EUC_CN }, /* China */ ++ { "EUCGBK", RTL_TEXTENCODING_DONTKNOW }, /* China - Simplified Chinese */ ++ { "EUCJP", RTL_TEXTENCODING_EUC_JP }, /* Japan */ ++ { "EUCKR", RTL_TEXTENCODING_EUC_KR }, /* Korea */ ++ { "EUCTW", RTL_TEXTENCODING_EUC_TW }, /* Taiwan - Traditional Chinese */ ++ { "GBK", RTL_TEXTENCODING_GBK }, /* China - Simplified Chinese */ ++ { "ISO8859-1", RTL_TEXTENCODING_ISO_8859_1 }, /* Western */ ++ { "ISO8859-15", RTL_TEXTENCODING_ISO_8859_15 }, /* Western Updated (w/Euro sign) */ ++ { "ISO8859-2", RTL_TEXTENCODING_ISO_8859_2 }, /* Central European */ ++ { "ISO8859-5", RTL_TEXTENCODING_ISO_8859_5 }, /* Cyrillic */ ++ { "ISO8859-7", RTL_TEXTENCODING_ISO_8859_7 }, /* Greek */ ++ { "ISO8859-9", RTL_TEXTENCODING_ISO_8859_9 }, /* Turkish */ ++ { "SJIS", RTL_TEXTENCODING_SHIFT_JIS } /* Japan */ }; -#elif defined(LINUX) || defined(NETBSD) @@ -90,38 +87,89 @@ const _pair _nl_language_list[] = { { "ANSI_X3.110-1983", RTL_TEXTENCODING_DONTKNOW }, /* ISO-IR-99 NAPLPS */ -@@ -496,7 +523,7 @@ +@@ -496,7 +502,58 @@ { "WIN-SAMI-2", RTL_TEXTENCODING_DONTKNOW } /* WS2 */ }; -#endif /* ifdef LINUX || NETBSD */ -+#endif /* ifdef LINUX || FREEBSD */ ++#elif defined(FREEBSD) ++ ++const _pair _nl_language_list[] = { ++ { "ASCII", RTL_TEXTENCODING_ASCII_US }, /* US-ASCII */ ++ { "BIG5", RTL_TEXTENCODING_BIG5 }, /* China - Traditional Chinese */ ++ { "CP1251", RTL_TEXTENCODING_MS_1251 }, /* MS-CYRL */ ++ { "CP866", RTL_TEXTENCODING_IBM_866 }, /* CP866 866 */ ++ { "EUCCN", RTL_TEXTENCODING_EUC_CN }, /* China - Simplified Chinese */ ++ { "EUCJP", RTL_TEXTENCODING_EUC_JP }, /* Japan */ ++ { "EUCKR", RTL_TEXTENCODING_EUC_KR }, /* Korea */ ++ { "ISO8859-1", RTL_TEXTENCODING_ISO_8859_1 }, /* Western */ ++ { "ISO8859-15", RTL_TEXTENCODING_ISO_8859_15 }, /* Western Updated (w/Euro sign) */ ++ { "ISO8859-2", RTL_TEXTENCODING_ISO_8859_2 }, /* Central European */ ++ { "ISO8859-4", RTL_TEXTENCODING_ISO_8859_4 }, /* LATIN4 L4 */ ++ { "ISO8859-5", RTL_TEXTENCODING_ISO_8859_5 }, /* Cyrillic */ ++ { "ISO8859-7", RTL_TEXTENCODING_ISO_8859_7 }, /* Greek */ ++ { "ISO8859-9", RTL_TEXTENCODING_ISO_8859_9 }, /* Turkish */ ++ { "KOI-U", RTL_TEXTENCODING_DONTKNOW }, /* Not supported at the moment */ ++ { "KOI8-R", RTL_TEXTENCODING_KOI8_R }, /* KOI8 */ ++ { "SJIS", RTL_TEXTENCODING_SHIFT_JIS }, /* Japan */ ++ { "US-ASCII", RTL_TEXTENCODING_ASCII_US } /* US-ASCII */ ++}; ++ ++#elif defined(NETBSD) ++ ++const _pair _nl_language_list[] = { ++ { "ASCII", RTL_TEXTENCODING_ASCII_US }, /* US-ASCII */ ++ { "BIG5", RTL_TEXTENCODING_BIG5 }, /* China - Traditional Chinese */ ++ { "CP1251", RTL_TEXTENCODING_MS_1251 }, /* MS-CYRL */ ++ { "CP866", RTL_TEXTENCODING_IBM_866 }, /* CP866 866 */ ++ { "CTEXT", RTL_TEXTENCODING_ASCII_US }, /* US-ASCII */ ++ { "EUCCN", RTL_TEXTENCODING_EUC_CN }, /* China - Simplified Chinese */ ++ { "EUCJP", RTL_TEXTENCODING_EUC_JP }, /* Japan */ ++ { "EUCKR", RTL_TEXTENCODING_EUC_KR }, /* Korea */ ++ { "EUCTW", RTL_TEXTENCODING_EUC_TW }, /* China - Traditional Chinese */ ++ { "ISO-2022-JP", RTL_TEXTENCODING_DONTKNOW }, /* */ ++ { "ISO-2022-JP-2", RTL_TEXTENCODING_DONTKNOW }, /* */ ++ { "ISO8859-1", RTL_TEXTENCODING_ISO_8859_1 }, /* Western */ ++ { "ISO8859-15", RTL_TEXTENCODING_ISO_8859_15 }, /* Western Updated (w/Euro sign) */ ++ { "ISO8859-2", RTL_TEXTENCODING_ISO_8859_2 }, /* Central European */ ++ { "ISO8859-4", RTL_TEXTENCODING_ISO_8859_4 }, /* LATIN4 L4 */ ++ { "ISO8859-5", RTL_TEXTENCODING_ISO_8859_5 }, /* Cyrillic */ ++ { "ISO8859-7", RTL_TEXTENCODING_ISO_8859_7 }, /* Greek */ ++ { "ISO8859-9", RTL_TEXTENCODING_ISO_8859_9 }, /* Turkish */ ++ { "KOI-U", RTL_TEXTENCODING_DONTKNOW }, /* Not supported at the moment */ ++ { "KOI8-R", RTL_TEXTENCODING_KOI8_R }, /* KOI8 */ ++ { "SJIS", RTL_TEXTENCODING_SHIFT_JIS }, /* Japan */ ++ { "US-ASCII", RTL_TEXTENCODING_ASCII_US }, /* US-ASCII */ ++ { "UTF-8", RTL_TEXTENCODING_UTF8 } /* ISO-10646/UTF-8 */ ++}; ++ ++#endif /* ifdef SOLARIS IRIX LINUX FREEBSD NETBSD */ static pthread_mutex_t aLocalMutex = PTHREAD_MUTEX_INITIALIZER; -@@ -618,7 +645,7 @@ +@@ -618,7 +675,7 @@ return ret; } -#elif defined(MACOSX) /* ifdef LINUX || SOLARIS || NETBSD */ -+#elif defined(MACOSX) /* ifdef LINUX || SOLARIS || FREEBSD */ ++#elif defined(MACOSX) /* ifdef LINUX || SOLARIS || IRIX || FREEBSD || NETBSD */ /* * FIXME: the MacOS X implemetation is missing -@@ -651,7 +678,7 @@ +@@ -651,7 +708,7 @@ return 0; } -#else /* ifdef LINUX || SOLARIS || MACOSX || NETBSD */ -+#else /* ifdef LINUX || SOLARIS || FREEBSD || MACOSX */ ++#else /* ifdef LINUX || SOLARIS || IRIX || FREEBSD || NETBSD || MACOSX */ /* * This implementation of osl_getTextEncodingFromLocale maps -@@ -887,6 +914,6 @@ +@@ -887,6 +944,6 @@ return 0; } -#endif /* ifdef LINUX || SOLARIS || MACOSX || NETBSD */ -+#endif /* ifdef LINUX || SOLARIS || MACOSX || FREEBSD */ ++#endif /* ifdef LINUX || SOLARIS || FREEBSD || NETBSD || MACOSX */ diff --git a/editors/openoffice.org-2-RC/files/patch-sal+osl+unx+nlsupport.c b/editors/openoffice.org-2-RC/files/patch-sal+osl+unx+nlsupport.c index 1a606f1694c1..8107caa02bcc 100644 --- a/editors/openoffice.org-2-RC/files/patch-sal+osl+unx+nlsupport.c +++ b/editors/openoffice.org-2-RC/files/patch-sal+osl+unx+nlsupport.c @@ -1,23 +1,14 @@ ---- ../sal/osl/unx/nlsupport.c.orig Tue May 21 15:22:11 2002 -+++ ../sal/osl/unx/nlsupport.c Wed Jul 31 10:28:29 2002 +--- ../sal/osl/unx/nlsupport.c.orig Wed Aug 14 18:22:49 2002 ++++ ../sal/osl/unx/nlsupport.c Wed Aug 14 19:07:18 2002 @@ -63,7 +63,7 @@ #include <osl/diagnose.h> #include <osl/process.h> -#if defined(LINUX) || defined(SOLARIS) || defined(IRIX) || defined(NETBSD) -+#if defined(LINUX) || defined(SOLARIS) || defined(IRIX) || defined(FREEBSD) ++#if defined(LINUX) || defined(SOLARIS) || defined(IRIX) || defined(FREEBSD) || defined(NETBSD) #include <pthread.h> #include <locale.h> #include <langinfo.h> -@@ -87,7 +87,7 @@ - static int - _pair_compare (const char *key, const _pair *pair) - { -- int result = rtl_str_compareIgnoreAsciiCase( key, pair->key ); -+ unsigned int result = rtl_str_compareIgnoreAsciiCase( key, pair->key ); - return result; - } - @@ -114,8 +114,7 @@ comparison = _pair_compare( key, base + current ); if (comparison < 0) @@ -33,56 +24,62 @@ } -#if defined(LINUX) || defined(SOLARIS) || defined(IRIX) || defined(NETBSD) -+#if defined(LINUX) || defined(SOLARIS) || defined(IRIX) || defined(FREEBSD) ++#if defined(LINUX) || defined(SOLARIS) || defined(IRIX) || defined(FREEBSD) || defined(NETBSD) /* * This implementation of osl_getTextEncodingFromLocale maps * from nl_langinfo(CODESET) to rtl_textencoding defines. - * nl_langinfo() is supported only on Linux, Solaris and IRIX. -+ * nl_langinfo() is supported only on Linux, Solaris and IRIX -+ * and FreeBSD. ++ * nl_langinfo() is supported only on Linux, Solaris and IRIX, ++ * >= NetBSD 1.5 and >= FreeBSD 4.4 * * This routine is SLOW because of the setlocale call, so * grab the result and cache it. -@@ -260,6 +260,10 @@ +@@ -260,6 +260,12 @@ #endif #endif +/* + * _nl_language_list[] is an array list of supported encodings. Because + * we are using a binary search, the list has to be in ascending order. ++ * We are comparing the encodings case insensitiv, so the list has ++ * to be completly upper- , or lowercase. + */ #if defined(SOLARIS) -@@ -312,10 +316,33 @@ - { "big5", RTL_TEXTENCODING_BIG5 }, /* China - Traditional Chinese */ - { "eucgbk", RTL_TEXTENCODING_DONTKNOW }, /* China - Simplified Chinese */ - { "gbk", RTL_TEXTENCODING_GBK }, /* China - Simplified Chinese */ -+ { "sjis", RTL_TEXTENCODING_SHIFT_JIS } /* Japan */ -+}; -+ -+#elif defined(FREEBSD) -+ -+const _pair _nl_language_list[] = { -+ { "ascii", RTL_TEXTENCODING_ASCII_US }, /* US-ASCII */ -+ { "big5", RTL_TEXTENCODING_BIG5 }, /* China - Traditional Chinese */ -+ { "cp1251", RTL_TEXTENCODING_MS_1251 }, /* MS-CYRL */ -+ { "cp866", RTL_TEXTENCODING_IBM_866 }, /* CP866 866 */ -+ { "eucCN", RTL_TEXTENCODING_EUC_CN }, /* China - Simplified Chinese */ -+ { "eucJP", RTL_TEXTENCODING_EUC_JP }, /* Japan */ -+ { "eucKR", RTL_TEXTENCODING_EUC_KR }, /* Korea */ -+ { "iso8859-1", RTL_TEXTENCODING_ISO_8859_1 }, /* Western */ -+ { "iso8859-15", RTL_TEXTENCODING_ISO_8859_15 }, /* Western Updated (w/Euro sign) */ -+ { "iso8859-2", RTL_TEXTENCODING_ISO_8859_2 }, /* Central European */ -+ { "iso8859-4", RTL_TEXTENCODING_ISO_8859_4 }, /* LATIN4 L4 */ -+ { "iso8859-5", RTL_TEXTENCODING_ISO_8859_5 }, /* Cyrillic */ -+ { "iso8859-7", RTL_TEXTENCODING_ISO_8859_7 }, /* Greek */ -+ { "iso8859-9", RTL_TEXTENCODING_ISO_8859_9 }, /* Turkish */ -+ { "koi-u", RTL_TEXTENCODING_DONTKNOW }, /* Not supported at the moment */ -+ { "koi8-r", RTL_TEXTENCODING_KOI8_R }, /* KOI8 */ - { "sjis", RTL_TEXTENCODING_SHIFT_JIS }, /* Japan */ -+ { "us-ascii", RTL_TEXTENCODING_ASCII_US } /* US-ASCII */ +@@ -299,23 +305,23 @@ + #elif defined(IRIX) + + const _pair _nl_language_list[] = { +- { "ISO8859-1", RTL_TEXTENCODING_ISO_8859_1 }, /* Western */ +- { "ISO8859-2", RTL_TEXTENCODING_ISO_8859_2 }, /* Central European */ +- { "ISO8859-5", RTL_TEXTENCODING_ISO_8859_5 }, /* Cyrillic */ +- { "ISO8859-7", RTL_TEXTENCODING_ISO_8859_7 }, /* Greek */ +- { "ISO8859-9", RTL_TEXTENCODING_ISO_8859_9 }, /* Turkish */ +- { "ISO8859-15", RTL_TEXTENCODING_ISO_8859_15 }, /* Western Updated (w/Euro sign) */ +- { "eucJP", RTL_TEXTENCODING_EUC_JP }, /* Japan */ +- { "eucKR", RTL_TEXTENCODING_EUC_KR }, /* Korea */ +- { "eucCN", RTL_TEXTENCODING_EUC_CN }, /* China */ +- { "eucTW", RTL_TEXTENCODING_EUC_TW }, /* Taiwan - Traditional Chinese */ +- { "big5", RTL_TEXTENCODING_BIG5 }, /* China - Traditional Chinese */ +- { "eucgbk", RTL_TEXTENCODING_DONTKNOW }, /* China - Simplified Chinese */ +- { "gbk", RTL_TEXTENCODING_GBK }, /* China - Simplified Chinese */ +- { "sjis", RTL_TEXTENCODING_SHIFT_JIS }, /* Japan */ ++ { "BIG5", RTL_TEXTENCODING_BIG5 }, /* China - Traditional Chinese */ ++ { "EUCCN", RTL_TEXTENCODING_EUC_CN }, /* China */ ++ { "EUCGBK", RTL_TEXTENCODING_DONTKNOW }, /* China - Simplified Chinese */ ++ { "EUCJP", RTL_TEXTENCODING_EUC_JP }, /* Japan */ ++ { "EUCKR", RTL_TEXTENCODING_EUC_KR }, /* Korea */ ++ { "EUCTW", RTL_TEXTENCODING_EUC_TW }, /* Taiwan - Traditional Chinese */ ++ { "GBK", RTL_TEXTENCODING_GBK }, /* China - Simplified Chinese */ ++ { "ISO8859-1", RTL_TEXTENCODING_ISO_8859_1 }, /* Western */ ++ { "ISO8859-15", RTL_TEXTENCODING_ISO_8859_15 }, /* Western Updated (w/Euro sign) */ ++ { "ISO8859-2", RTL_TEXTENCODING_ISO_8859_2 }, /* Central European */ ++ { "ISO8859-5", RTL_TEXTENCODING_ISO_8859_5 }, /* Cyrillic */ ++ { "ISO8859-7", RTL_TEXTENCODING_ISO_8859_7 }, /* Greek */ ++ { "ISO8859-9", RTL_TEXTENCODING_ISO_8859_9 }, /* Turkish */ ++ { "SJIS", RTL_TEXTENCODING_SHIFT_JIS } /* Japan */ }; -#elif defined(LINUX) || defined(NETBSD) @@ -90,38 +87,89 @@ const _pair _nl_language_list[] = { { "ANSI_X3.110-1983", RTL_TEXTENCODING_DONTKNOW }, /* ISO-IR-99 NAPLPS */ -@@ -496,7 +523,7 @@ +@@ -496,7 +502,58 @@ { "WIN-SAMI-2", RTL_TEXTENCODING_DONTKNOW } /* WS2 */ }; -#endif /* ifdef LINUX || NETBSD */ -+#endif /* ifdef LINUX || FREEBSD */ ++#elif defined(FREEBSD) ++ ++const _pair _nl_language_list[] = { ++ { "ASCII", RTL_TEXTENCODING_ASCII_US }, /* US-ASCII */ ++ { "BIG5", RTL_TEXTENCODING_BIG5 }, /* China - Traditional Chinese */ ++ { "CP1251", RTL_TEXTENCODING_MS_1251 }, /* MS-CYRL */ ++ { "CP866", RTL_TEXTENCODING_IBM_866 }, /* CP866 866 */ ++ { "EUCCN", RTL_TEXTENCODING_EUC_CN }, /* China - Simplified Chinese */ ++ { "EUCJP", RTL_TEXTENCODING_EUC_JP }, /* Japan */ ++ { "EUCKR", RTL_TEXTENCODING_EUC_KR }, /* Korea */ ++ { "ISO8859-1", RTL_TEXTENCODING_ISO_8859_1 }, /* Western */ ++ { "ISO8859-15", RTL_TEXTENCODING_ISO_8859_15 }, /* Western Updated (w/Euro sign) */ ++ { "ISO8859-2", RTL_TEXTENCODING_ISO_8859_2 }, /* Central European */ ++ { "ISO8859-4", RTL_TEXTENCODING_ISO_8859_4 }, /* LATIN4 L4 */ ++ { "ISO8859-5", RTL_TEXTENCODING_ISO_8859_5 }, /* Cyrillic */ ++ { "ISO8859-7", RTL_TEXTENCODING_ISO_8859_7 }, /* Greek */ ++ { "ISO8859-9", RTL_TEXTENCODING_ISO_8859_9 }, /* Turkish */ ++ { "KOI-U", RTL_TEXTENCODING_DONTKNOW }, /* Not supported at the moment */ ++ { "KOI8-R", RTL_TEXTENCODING_KOI8_R }, /* KOI8 */ ++ { "SJIS", RTL_TEXTENCODING_SHIFT_JIS }, /* Japan */ ++ { "US-ASCII", RTL_TEXTENCODING_ASCII_US } /* US-ASCII */ ++}; ++ ++#elif defined(NETBSD) ++ ++const _pair _nl_language_list[] = { ++ { "ASCII", RTL_TEXTENCODING_ASCII_US }, /* US-ASCII */ ++ { "BIG5", RTL_TEXTENCODING_BIG5 }, /* China - Traditional Chinese */ ++ { "CP1251", RTL_TEXTENCODING_MS_1251 }, /* MS-CYRL */ ++ { "CP866", RTL_TEXTENCODING_IBM_866 }, /* CP866 866 */ ++ { "CTEXT", RTL_TEXTENCODING_ASCII_US }, /* US-ASCII */ ++ { "EUCCN", RTL_TEXTENCODING_EUC_CN }, /* China - Simplified Chinese */ ++ { "EUCJP", RTL_TEXTENCODING_EUC_JP }, /* Japan */ ++ { "EUCKR", RTL_TEXTENCODING_EUC_KR }, /* Korea */ ++ { "EUCTW", RTL_TEXTENCODING_EUC_TW }, /* China - Traditional Chinese */ ++ { "ISO-2022-JP", RTL_TEXTENCODING_DONTKNOW }, /* */ ++ { "ISO-2022-JP-2", RTL_TEXTENCODING_DONTKNOW }, /* */ ++ { "ISO8859-1", RTL_TEXTENCODING_ISO_8859_1 }, /* Western */ ++ { "ISO8859-15", RTL_TEXTENCODING_ISO_8859_15 }, /* Western Updated (w/Euro sign) */ ++ { "ISO8859-2", RTL_TEXTENCODING_ISO_8859_2 }, /* Central European */ ++ { "ISO8859-4", RTL_TEXTENCODING_ISO_8859_4 }, /* LATIN4 L4 */ ++ { "ISO8859-5", RTL_TEXTENCODING_ISO_8859_5 }, /* Cyrillic */ ++ { "ISO8859-7", RTL_TEXTENCODING_ISO_8859_7 }, /* Greek */ ++ { "ISO8859-9", RTL_TEXTENCODING_ISO_8859_9 }, /* Turkish */ ++ { "KOI-U", RTL_TEXTENCODING_DONTKNOW }, /* Not supported at the moment */ ++ { "KOI8-R", RTL_TEXTENCODING_KOI8_R }, /* KOI8 */ ++ { "SJIS", RTL_TEXTENCODING_SHIFT_JIS }, /* Japan */ ++ { "US-ASCII", RTL_TEXTENCODING_ASCII_US }, /* US-ASCII */ ++ { "UTF-8", RTL_TEXTENCODING_UTF8 } /* ISO-10646/UTF-8 */ ++}; ++ ++#endif /* ifdef SOLARIS IRIX LINUX FREEBSD NETBSD */ static pthread_mutex_t aLocalMutex = PTHREAD_MUTEX_INITIALIZER; -@@ -618,7 +645,7 @@ +@@ -618,7 +675,7 @@ return ret; } -#elif defined(MACOSX) /* ifdef LINUX || SOLARIS || NETBSD */ -+#elif defined(MACOSX) /* ifdef LINUX || SOLARIS || FREEBSD */ ++#elif defined(MACOSX) /* ifdef LINUX || SOLARIS || IRIX || FREEBSD || NETBSD */ /* * FIXME: the MacOS X implemetation is missing -@@ -651,7 +678,7 @@ +@@ -651,7 +708,7 @@ return 0; } -#else /* ifdef LINUX || SOLARIS || MACOSX || NETBSD */ -+#else /* ifdef LINUX || SOLARIS || FREEBSD || MACOSX */ ++#else /* ifdef LINUX || SOLARIS || IRIX || FREEBSD || NETBSD || MACOSX */ /* * This implementation of osl_getTextEncodingFromLocale maps -@@ -887,6 +914,6 @@ +@@ -887,6 +944,6 @@ return 0; } -#endif /* ifdef LINUX || SOLARIS || MACOSX || NETBSD */ -+#endif /* ifdef LINUX || SOLARIS || MACOSX || FREEBSD */ ++#endif /* ifdef LINUX || SOLARIS || FREEBSD || NETBSD || MACOSX */ diff --git a/editors/openoffice.org-2-devel/files/patch-sal+osl+unx+nlsupport.c b/editors/openoffice.org-2-devel/files/patch-sal+osl+unx+nlsupport.c index 1a606f1694c1..8107caa02bcc 100644 --- a/editors/openoffice.org-2-devel/files/patch-sal+osl+unx+nlsupport.c +++ b/editors/openoffice.org-2-devel/files/patch-sal+osl+unx+nlsupport.c @@ -1,23 +1,14 @@ ---- ../sal/osl/unx/nlsupport.c.orig Tue May 21 15:22:11 2002 -+++ ../sal/osl/unx/nlsupport.c Wed Jul 31 10:28:29 2002 +--- ../sal/osl/unx/nlsupport.c.orig Wed Aug 14 18:22:49 2002 ++++ ../sal/osl/unx/nlsupport.c Wed Aug 14 19:07:18 2002 @@ -63,7 +63,7 @@ #include <osl/diagnose.h> #include <osl/process.h> -#if defined(LINUX) || defined(SOLARIS) || defined(IRIX) || defined(NETBSD) -+#if defined(LINUX) || defined(SOLARIS) || defined(IRIX) || defined(FREEBSD) ++#if defined(LINUX) || defined(SOLARIS) || defined(IRIX) || defined(FREEBSD) || defined(NETBSD) #include <pthread.h> #include <locale.h> #include <langinfo.h> -@@ -87,7 +87,7 @@ - static int - _pair_compare (const char *key, const _pair *pair) - { -- int result = rtl_str_compareIgnoreAsciiCase( key, pair->key ); -+ unsigned int result = rtl_str_compareIgnoreAsciiCase( key, pair->key ); - return result; - } - @@ -114,8 +114,7 @@ comparison = _pair_compare( key, base + current ); if (comparison < 0) @@ -33,56 +24,62 @@ } -#if defined(LINUX) || defined(SOLARIS) || defined(IRIX) || defined(NETBSD) -+#if defined(LINUX) || defined(SOLARIS) || defined(IRIX) || defined(FREEBSD) ++#if defined(LINUX) || defined(SOLARIS) || defined(IRIX) || defined(FREEBSD) || defined(NETBSD) /* * This implementation of osl_getTextEncodingFromLocale maps * from nl_langinfo(CODESET) to rtl_textencoding defines. - * nl_langinfo() is supported only on Linux, Solaris and IRIX. -+ * nl_langinfo() is supported only on Linux, Solaris and IRIX -+ * and FreeBSD. ++ * nl_langinfo() is supported only on Linux, Solaris and IRIX, ++ * >= NetBSD 1.5 and >= FreeBSD 4.4 * * This routine is SLOW because of the setlocale call, so * grab the result and cache it. -@@ -260,6 +260,10 @@ +@@ -260,6 +260,12 @@ #endif #endif +/* + * _nl_language_list[] is an array list of supported encodings. Because + * we are using a binary search, the list has to be in ascending order. ++ * We are comparing the encodings case insensitiv, so the list has ++ * to be completly upper- , or lowercase. + */ #if defined(SOLARIS) -@@ -312,10 +316,33 @@ - { "big5", RTL_TEXTENCODING_BIG5 }, /* China - Traditional Chinese */ - { "eucgbk", RTL_TEXTENCODING_DONTKNOW }, /* China - Simplified Chinese */ - { "gbk", RTL_TEXTENCODING_GBK }, /* China - Simplified Chinese */ -+ { "sjis", RTL_TEXTENCODING_SHIFT_JIS } /* Japan */ -+}; -+ -+#elif defined(FREEBSD) -+ -+const _pair _nl_language_list[] = { -+ { "ascii", RTL_TEXTENCODING_ASCII_US }, /* US-ASCII */ -+ { "big5", RTL_TEXTENCODING_BIG5 }, /* China - Traditional Chinese */ -+ { "cp1251", RTL_TEXTENCODING_MS_1251 }, /* MS-CYRL */ -+ { "cp866", RTL_TEXTENCODING_IBM_866 }, /* CP866 866 */ -+ { "eucCN", RTL_TEXTENCODING_EUC_CN }, /* China - Simplified Chinese */ -+ { "eucJP", RTL_TEXTENCODING_EUC_JP }, /* Japan */ -+ { "eucKR", RTL_TEXTENCODING_EUC_KR }, /* Korea */ -+ { "iso8859-1", RTL_TEXTENCODING_ISO_8859_1 }, /* Western */ -+ { "iso8859-15", RTL_TEXTENCODING_ISO_8859_15 }, /* Western Updated (w/Euro sign) */ -+ { "iso8859-2", RTL_TEXTENCODING_ISO_8859_2 }, /* Central European */ -+ { "iso8859-4", RTL_TEXTENCODING_ISO_8859_4 }, /* LATIN4 L4 */ -+ { "iso8859-5", RTL_TEXTENCODING_ISO_8859_5 }, /* Cyrillic */ -+ { "iso8859-7", RTL_TEXTENCODING_ISO_8859_7 }, /* Greek */ -+ { "iso8859-9", RTL_TEXTENCODING_ISO_8859_9 }, /* Turkish */ -+ { "koi-u", RTL_TEXTENCODING_DONTKNOW }, /* Not supported at the moment */ -+ { "koi8-r", RTL_TEXTENCODING_KOI8_R }, /* KOI8 */ - { "sjis", RTL_TEXTENCODING_SHIFT_JIS }, /* Japan */ -+ { "us-ascii", RTL_TEXTENCODING_ASCII_US } /* US-ASCII */ +@@ -299,23 +305,23 @@ + #elif defined(IRIX) + + const _pair _nl_language_list[] = { +- { "ISO8859-1", RTL_TEXTENCODING_ISO_8859_1 }, /* Western */ +- { "ISO8859-2", RTL_TEXTENCODING_ISO_8859_2 }, /* Central European */ +- { "ISO8859-5", RTL_TEXTENCODING_ISO_8859_5 }, /* Cyrillic */ +- { "ISO8859-7", RTL_TEXTENCODING_ISO_8859_7 }, /* Greek */ +- { "ISO8859-9", RTL_TEXTENCODING_ISO_8859_9 }, /* Turkish */ +- { "ISO8859-15", RTL_TEXTENCODING_ISO_8859_15 }, /* Western Updated (w/Euro sign) */ +- { "eucJP", RTL_TEXTENCODING_EUC_JP }, /* Japan */ +- { "eucKR", RTL_TEXTENCODING_EUC_KR }, /* Korea */ +- { "eucCN", RTL_TEXTENCODING_EUC_CN }, /* China */ +- { "eucTW", RTL_TEXTENCODING_EUC_TW }, /* Taiwan - Traditional Chinese */ +- { "big5", RTL_TEXTENCODING_BIG5 }, /* China - Traditional Chinese */ +- { "eucgbk", RTL_TEXTENCODING_DONTKNOW }, /* China - Simplified Chinese */ +- { "gbk", RTL_TEXTENCODING_GBK }, /* China - Simplified Chinese */ +- { "sjis", RTL_TEXTENCODING_SHIFT_JIS }, /* Japan */ ++ { "BIG5", RTL_TEXTENCODING_BIG5 }, /* China - Traditional Chinese */ ++ { "EUCCN", RTL_TEXTENCODING_EUC_CN }, /* China */ ++ { "EUCGBK", RTL_TEXTENCODING_DONTKNOW }, /* China - Simplified Chinese */ ++ { "EUCJP", RTL_TEXTENCODING_EUC_JP }, /* Japan */ ++ { "EUCKR", RTL_TEXTENCODING_EUC_KR }, /* Korea */ ++ { "EUCTW", RTL_TEXTENCODING_EUC_TW }, /* Taiwan - Traditional Chinese */ ++ { "GBK", RTL_TEXTENCODING_GBK }, /* China - Simplified Chinese */ ++ { "ISO8859-1", RTL_TEXTENCODING_ISO_8859_1 }, /* Western */ ++ { "ISO8859-15", RTL_TEXTENCODING_ISO_8859_15 }, /* Western Updated (w/Euro sign) */ ++ { "ISO8859-2", RTL_TEXTENCODING_ISO_8859_2 }, /* Central European */ ++ { "ISO8859-5", RTL_TEXTENCODING_ISO_8859_5 }, /* Cyrillic */ ++ { "ISO8859-7", RTL_TEXTENCODING_ISO_8859_7 }, /* Greek */ ++ { "ISO8859-9", RTL_TEXTENCODING_ISO_8859_9 }, /* Turkish */ ++ { "SJIS", RTL_TEXTENCODING_SHIFT_JIS } /* Japan */ }; -#elif defined(LINUX) || defined(NETBSD) @@ -90,38 +87,89 @@ const _pair _nl_language_list[] = { { "ANSI_X3.110-1983", RTL_TEXTENCODING_DONTKNOW }, /* ISO-IR-99 NAPLPS */ -@@ -496,7 +523,7 @@ +@@ -496,7 +502,58 @@ { "WIN-SAMI-2", RTL_TEXTENCODING_DONTKNOW } /* WS2 */ }; -#endif /* ifdef LINUX || NETBSD */ -+#endif /* ifdef LINUX || FREEBSD */ ++#elif defined(FREEBSD) ++ ++const _pair _nl_language_list[] = { ++ { "ASCII", RTL_TEXTENCODING_ASCII_US }, /* US-ASCII */ ++ { "BIG5", RTL_TEXTENCODING_BIG5 }, /* China - Traditional Chinese */ ++ { "CP1251", RTL_TEXTENCODING_MS_1251 }, /* MS-CYRL */ ++ { "CP866", RTL_TEXTENCODING_IBM_866 }, /* CP866 866 */ ++ { "EUCCN", RTL_TEXTENCODING_EUC_CN }, /* China - Simplified Chinese */ ++ { "EUCJP", RTL_TEXTENCODING_EUC_JP }, /* Japan */ ++ { "EUCKR", RTL_TEXTENCODING_EUC_KR }, /* Korea */ ++ { "ISO8859-1", RTL_TEXTENCODING_ISO_8859_1 }, /* Western */ ++ { "ISO8859-15", RTL_TEXTENCODING_ISO_8859_15 }, /* Western Updated (w/Euro sign) */ ++ { "ISO8859-2", RTL_TEXTENCODING_ISO_8859_2 }, /* Central European */ ++ { "ISO8859-4", RTL_TEXTENCODING_ISO_8859_4 }, /* LATIN4 L4 */ ++ { "ISO8859-5", RTL_TEXTENCODING_ISO_8859_5 }, /* Cyrillic */ ++ { "ISO8859-7", RTL_TEXTENCODING_ISO_8859_7 }, /* Greek */ ++ { "ISO8859-9", RTL_TEXTENCODING_ISO_8859_9 }, /* Turkish */ ++ { "KOI-U", RTL_TEXTENCODING_DONTKNOW }, /* Not supported at the moment */ ++ { "KOI8-R", RTL_TEXTENCODING_KOI8_R }, /* KOI8 */ ++ { "SJIS", RTL_TEXTENCODING_SHIFT_JIS }, /* Japan */ ++ { "US-ASCII", RTL_TEXTENCODING_ASCII_US } /* US-ASCII */ ++}; ++ ++#elif defined(NETBSD) ++ ++const _pair _nl_language_list[] = { ++ { "ASCII", RTL_TEXTENCODING_ASCII_US }, /* US-ASCII */ ++ { "BIG5", RTL_TEXTENCODING_BIG5 }, /* China - Traditional Chinese */ ++ { "CP1251", RTL_TEXTENCODING_MS_1251 }, /* MS-CYRL */ ++ { "CP866", RTL_TEXTENCODING_IBM_866 }, /* CP866 866 */ ++ { "CTEXT", RTL_TEXTENCODING_ASCII_US }, /* US-ASCII */ ++ { "EUCCN", RTL_TEXTENCODING_EUC_CN }, /* China - Simplified Chinese */ ++ { "EUCJP", RTL_TEXTENCODING_EUC_JP }, /* Japan */ ++ { "EUCKR", RTL_TEXTENCODING_EUC_KR }, /* Korea */ ++ { "EUCTW", RTL_TEXTENCODING_EUC_TW }, /* China - Traditional Chinese */ ++ { "ISO-2022-JP", RTL_TEXTENCODING_DONTKNOW }, /* */ ++ { "ISO-2022-JP-2", RTL_TEXTENCODING_DONTKNOW }, /* */ ++ { "ISO8859-1", RTL_TEXTENCODING_ISO_8859_1 }, /* Western */ ++ { "ISO8859-15", RTL_TEXTENCODING_ISO_8859_15 }, /* Western Updated (w/Euro sign) */ ++ { "ISO8859-2", RTL_TEXTENCODING_ISO_8859_2 }, /* Central European */ ++ { "ISO8859-4", RTL_TEXTENCODING_ISO_8859_4 }, /* LATIN4 L4 */ ++ { "ISO8859-5", RTL_TEXTENCODING_ISO_8859_5 }, /* Cyrillic */ ++ { "ISO8859-7", RTL_TEXTENCODING_ISO_8859_7 }, /* Greek */ ++ { "ISO8859-9", RTL_TEXTENCODING_ISO_8859_9 }, /* Turkish */ ++ { "KOI-U", RTL_TEXTENCODING_DONTKNOW }, /* Not supported at the moment */ ++ { "KOI8-R", RTL_TEXTENCODING_KOI8_R }, /* KOI8 */ ++ { "SJIS", RTL_TEXTENCODING_SHIFT_JIS }, /* Japan */ ++ { "US-ASCII", RTL_TEXTENCODING_ASCII_US }, /* US-ASCII */ ++ { "UTF-8", RTL_TEXTENCODING_UTF8 } /* ISO-10646/UTF-8 */ ++}; ++ ++#endif /* ifdef SOLARIS IRIX LINUX FREEBSD NETBSD */ static pthread_mutex_t aLocalMutex = PTHREAD_MUTEX_INITIALIZER; -@@ -618,7 +645,7 @@ +@@ -618,7 +675,7 @@ return ret; } -#elif defined(MACOSX) /* ifdef LINUX || SOLARIS || NETBSD */ -+#elif defined(MACOSX) /* ifdef LINUX || SOLARIS || FREEBSD */ ++#elif defined(MACOSX) /* ifdef LINUX || SOLARIS || IRIX || FREEBSD || NETBSD */ /* * FIXME: the MacOS X implemetation is missing -@@ -651,7 +678,7 @@ +@@ -651,7 +708,7 @@ return 0; } -#else /* ifdef LINUX || SOLARIS || MACOSX || NETBSD */ -+#else /* ifdef LINUX || SOLARIS || FREEBSD || MACOSX */ ++#else /* ifdef LINUX || SOLARIS || IRIX || FREEBSD || NETBSD || MACOSX */ /* * This implementation of osl_getTextEncodingFromLocale maps -@@ -887,6 +914,6 @@ +@@ -887,6 +944,6 @@ return 0; } -#endif /* ifdef LINUX || SOLARIS || MACOSX || NETBSD */ -+#endif /* ifdef LINUX || SOLARIS || MACOSX || FREEBSD */ ++#endif /* ifdef LINUX || SOLARIS || FREEBSD || NETBSD || MACOSX */ diff --git a/editors/openoffice.org-2.0-devel/files/patch-sal+osl+unx+nlsupport.c b/editors/openoffice.org-2.0-devel/files/patch-sal+osl+unx+nlsupport.c index 1a606f1694c1..8107caa02bcc 100644 --- a/editors/openoffice.org-2.0-devel/files/patch-sal+osl+unx+nlsupport.c +++ b/editors/openoffice.org-2.0-devel/files/patch-sal+osl+unx+nlsupport.c @@ -1,23 +1,14 @@ ---- ../sal/osl/unx/nlsupport.c.orig Tue May 21 15:22:11 2002 -+++ ../sal/osl/unx/nlsupport.c Wed Jul 31 10:28:29 2002 +--- ../sal/osl/unx/nlsupport.c.orig Wed Aug 14 18:22:49 2002 ++++ ../sal/osl/unx/nlsupport.c Wed Aug 14 19:07:18 2002 @@ -63,7 +63,7 @@ #include <osl/diagnose.h> #include <osl/process.h> -#if defined(LINUX) || defined(SOLARIS) || defined(IRIX) || defined(NETBSD) -+#if defined(LINUX) || defined(SOLARIS) || defined(IRIX) || defined(FREEBSD) ++#if defined(LINUX) || defined(SOLARIS) || defined(IRIX) || defined(FREEBSD) || defined(NETBSD) #include <pthread.h> #include <locale.h> #include <langinfo.h> -@@ -87,7 +87,7 @@ - static int - _pair_compare (const char *key, const _pair *pair) - { -- int result = rtl_str_compareIgnoreAsciiCase( key, pair->key ); -+ unsigned int result = rtl_str_compareIgnoreAsciiCase( key, pair->key ); - return result; - } - @@ -114,8 +114,7 @@ comparison = _pair_compare( key, base + current ); if (comparison < 0) @@ -33,56 +24,62 @@ } -#if defined(LINUX) || defined(SOLARIS) || defined(IRIX) || defined(NETBSD) -+#if defined(LINUX) || defined(SOLARIS) || defined(IRIX) || defined(FREEBSD) ++#if defined(LINUX) || defined(SOLARIS) || defined(IRIX) || defined(FREEBSD) || defined(NETBSD) /* * This implementation of osl_getTextEncodingFromLocale maps * from nl_langinfo(CODESET) to rtl_textencoding defines. - * nl_langinfo() is supported only on Linux, Solaris and IRIX. -+ * nl_langinfo() is supported only on Linux, Solaris and IRIX -+ * and FreeBSD. ++ * nl_langinfo() is supported only on Linux, Solaris and IRIX, ++ * >= NetBSD 1.5 and >= FreeBSD 4.4 * * This routine is SLOW because of the setlocale call, so * grab the result and cache it. -@@ -260,6 +260,10 @@ +@@ -260,6 +260,12 @@ #endif #endif +/* + * _nl_language_list[] is an array list of supported encodings. Because + * we are using a binary search, the list has to be in ascending order. ++ * We are comparing the encodings case insensitiv, so the list has ++ * to be completly upper- , or lowercase. + */ #if defined(SOLARIS) -@@ -312,10 +316,33 @@ - { "big5", RTL_TEXTENCODING_BIG5 }, /* China - Traditional Chinese */ - { "eucgbk", RTL_TEXTENCODING_DONTKNOW }, /* China - Simplified Chinese */ - { "gbk", RTL_TEXTENCODING_GBK }, /* China - Simplified Chinese */ -+ { "sjis", RTL_TEXTENCODING_SHIFT_JIS } /* Japan */ -+}; -+ -+#elif defined(FREEBSD) -+ -+const _pair _nl_language_list[] = { -+ { "ascii", RTL_TEXTENCODING_ASCII_US }, /* US-ASCII */ -+ { "big5", RTL_TEXTENCODING_BIG5 }, /* China - Traditional Chinese */ -+ { "cp1251", RTL_TEXTENCODING_MS_1251 }, /* MS-CYRL */ -+ { "cp866", RTL_TEXTENCODING_IBM_866 }, /* CP866 866 */ -+ { "eucCN", RTL_TEXTENCODING_EUC_CN }, /* China - Simplified Chinese */ -+ { "eucJP", RTL_TEXTENCODING_EUC_JP }, /* Japan */ -+ { "eucKR", RTL_TEXTENCODING_EUC_KR }, /* Korea */ -+ { "iso8859-1", RTL_TEXTENCODING_ISO_8859_1 }, /* Western */ -+ { "iso8859-15", RTL_TEXTENCODING_ISO_8859_15 }, /* Western Updated (w/Euro sign) */ -+ { "iso8859-2", RTL_TEXTENCODING_ISO_8859_2 }, /* Central European */ -+ { "iso8859-4", RTL_TEXTENCODING_ISO_8859_4 }, /* LATIN4 L4 */ -+ { "iso8859-5", RTL_TEXTENCODING_ISO_8859_5 }, /* Cyrillic */ -+ { "iso8859-7", RTL_TEXTENCODING_ISO_8859_7 }, /* Greek */ -+ { "iso8859-9", RTL_TEXTENCODING_ISO_8859_9 }, /* Turkish */ -+ { "koi-u", RTL_TEXTENCODING_DONTKNOW }, /* Not supported at the moment */ -+ { "koi8-r", RTL_TEXTENCODING_KOI8_R }, /* KOI8 */ - { "sjis", RTL_TEXTENCODING_SHIFT_JIS }, /* Japan */ -+ { "us-ascii", RTL_TEXTENCODING_ASCII_US } /* US-ASCII */ +@@ -299,23 +305,23 @@ + #elif defined(IRIX) + + const _pair _nl_language_list[] = { +- { "ISO8859-1", RTL_TEXTENCODING_ISO_8859_1 }, /* Western */ +- { "ISO8859-2", RTL_TEXTENCODING_ISO_8859_2 }, /* Central European */ +- { "ISO8859-5", RTL_TEXTENCODING_ISO_8859_5 }, /* Cyrillic */ +- { "ISO8859-7", RTL_TEXTENCODING_ISO_8859_7 }, /* Greek */ +- { "ISO8859-9", RTL_TEXTENCODING_ISO_8859_9 }, /* Turkish */ +- { "ISO8859-15", RTL_TEXTENCODING_ISO_8859_15 }, /* Western Updated (w/Euro sign) */ +- { "eucJP", RTL_TEXTENCODING_EUC_JP }, /* Japan */ +- { "eucKR", RTL_TEXTENCODING_EUC_KR }, /* Korea */ +- { "eucCN", RTL_TEXTENCODING_EUC_CN }, /* China */ +- { "eucTW", RTL_TEXTENCODING_EUC_TW }, /* Taiwan - Traditional Chinese */ +- { "big5", RTL_TEXTENCODING_BIG5 }, /* China - Traditional Chinese */ +- { "eucgbk", RTL_TEXTENCODING_DONTKNOW }, /* China - Simplified Chinese */ +- { "gbk", RTL_TEXTENCODING_GBK }, /* China - Simplified Chinese */ +- { "sjis", RTL_TEXTENCODING_SHIFT_JIS }, /* Japan */ ++ { "BIG5", RTL_TEXTENCODING_BIG5 }, /* China - Traditional Chinese */ ++ { "EUCCN", RTL_TEXTENCODING_EUC_CN }, /* China */ ++ { "EUCGBK", RTL_TEXTENCODING_DONTKNOW }, /* China - Simplified Chinese */ ++ { "EUCJP", RTL_TEXTENCODING_EUC_JP }, /* Japan */ ++ { "EUCKR", RTL_TEXTENCODING_EUC_KR }, /* Korea */ ++ { "EUCTW", RTL_TEXTENCODING_EUC_TW }, /* Taiwan - Traditional Chinese */ ++ { "GBK", RTL_TEXTENCODING_GBK }, /* China - Simplified Chinese */ ++ { "ISO8859-1", RTL_TEXTENCODING_ISO_8859_1 }, /* Western */ ++ { "ISO8859-15", RTL_TEXTENCODING_ISO_8859_15 }, /* Western Updated (w/Euro sign) */ ++ { "ISO8859-2", RTL_TEXTENCODING_ISO_8859_2 }, /* Central European */ ++ { "ISO8859-5", RTL_TEXTENCODING_ISO_8859_5 }, /* Cyrillic */ ++ { "ISO8859-7", RTL_TEXTENCODING_ISO_8859_7 }, /* Greek */ ++ { "ISO8859-9", RTL_TEXTENCODING_ISO_8859_9 }, /* Turkish */ ++ { "SJIS", RTL_TEXTENCODING_SHIFT_JIS } /* Japan */ }; -#elif defined(LINUX) || defined(NETBSD) @@ -90,38 +87,89 @@ const _pair _nl_language_list[] = { { "ANSI_X3.110-1983", RTL_TEXTENCODING_DONTKNOW }, /* ISO-IR-99 NAPLPS */ -@@ -496,7 +523,7 @@ +@@ -496,7 +502,58 @@ { "WIN-SAMI-2", RTL_TEXTENCODING_DONTKNOW } /* WS2 */ }; -#endif /* ifdef LINUX || NETBSD */ -+#endif /* ifdef LINUX || FREEBSD */ ++#elif defined(FREEBSD) ++ ++const _pair _nl_language_list[] = { ++ { "ASCII", RTL_TEXTENCODING_ASCII_US }, /* US-ASCII */ ++ { "BIG5", RTL_TEXTENCODING_BIG5 }, /* China - Traditional Chinese */ ++ { "CP1251", RTL_TEXTENCODING_MS_1251 }, /* MS-CYRL */ ++ { "CP866", RTL_TEXTENCODING_IBM_866 }, /* CP866 866 */ ++ { "EUCCN", RTL_TEXTENCODING_EUC_CN }, /* China - Simplified Chinese */ ++ { "EUCJP", RTL_TEXTENCODING_EUC_JP }, /* Japan */ ++ { "EUCKR", RTL_TEXTENCODING_EUC_KR }, /* Korea */ ++ { "ISO8859-1", RTL_TEXTENCODING_ISO_8859_1 }, /* Western */ ++ { "ISO8859-15", RTL_TEXTENCODING_ISO_8859_15 }, /* Western Updated (w/Euro sign) */ ++ { "ISO8859-2", RTL_TEXTENCODING_ISO_8859_2 }, /* Central European */ ++ { "ISO8859-4", RTL_TEXTENCODING_ISO_8859_4 }, /* LATIN4 L4 */ ++ { "ISO8859-5", RTL_TEXTENCODING_ISO_8859_5 }, /* Cyrillic */ ++ { "ISO8859-7", RTL_TEXTENCODING_ISO_8859_7 }, /* Greek */ ++ { "ISO8859-9", RTL_TEXTENCODING_ISO_8859_9 }, /* Turkish */ ++ { "KOI-U", RTL_TEXTENCODING_DONTKNOW }, /* Not supported at the moment */ ++ { "KOI8-R", RTL_TEXTENCODING_KOI8_R }, /* KOI8 */ ++ { "SJIS", RTL_TEXTENCODING_SHIFT_JIS }, /* Japan */ ++ { "US-ASCII", RTL_TEXTENCODING_ASCII_US } /* US-ASCII */ ++}; ++ ++#elif defined(NETBSD) ++ ++const _pair _nl_language_list[] = { ++ { "ASCII", RTL_TEXTENCODING_ASCII_US }, /* US-ASCII */ ++ { "BIG5", RTL_TEXTENCODING_BIG5 }, /* China - Traditional Chinese */ ++ { "CP1251", RTL_TEXTENCODING_MS_1251 }, /* MS-CYRL */ ++ { "CP866", RTL_TEXTENCODING_IBM_866 }, /* CP866 866 */ ++ { "CTEXT", RTL_TEXTENCODING_ASCII_US }, /* US-ASCII */ ++ { "EUCCN", RTL_TEXTENCODING_EUC_CN }, /* China - Simplified Chinese */ ++ { "EUCJP", RTL_TEXTENCODING_EUC_JP }, /* Japan */ ++ { "EUCKR", RTL_TEXTENCODING_EUC_KR }, /* Korea */ ++ { "EUCTW", RTL_TEXTENCODING_EUC_TW }, /* China - Traditional Chinese */ ++ { "ISO-2022-JP", RTL_TEXTENCODING_DONTKNOW }, /* */ ++ { "ISO-2022-JP-2", RTL_TEXTENCODING_DONTKNOW }, /* */ ++ { "ISO8859-1", RTL_TEXTENCODING_ISO_8859_1 }, /* Western */ ++ { "ISO8859-15", RTL_TEXTENCODING_ISO_8859_15 }, /* Western Updated (w/Euro sign) */ ++ { "ISO8859-2", RTL_TEXTENCODING_ISO_8859_2 }, /* Central European */ ++ { "ISO8859-4", RTL_TEXTENCODING_ISO_8859_4 }, /* LATIN4 L4 */ ++ { "ISO8859-5", RTL_TEXTENCODING_ISO_8859_5 }, /* Cyrillic */ ++ { "ISO8859-7", RTL_TEXTENCODING_ISO_8859_7 }, /* Greek */ ++ { "ISO8859-9", RTL_TEXTENCODING_ISO_8859_9 }, /* Turkish */ ++ { "KOI-U", RTL_TEXTENCODING_DONTKNOW }, /* Not supported at the moment */ ++ { "KOI8-R", RTL_TEXTENCODING_KOI8_R }, /* KOI8 */ ++ { "SJIS", RTL_TEXTENCODING_SHIFT_JIS }, /* Japan */ ++ { "US-ASCII", RTL_TEXTENCODING_ASCII_US }, /* US-ASCII */ ++ { "UTF-8", RTL_TEXTENCODING_UTF8 } /* ISO-10646/UTF-8 */ ++}; ++ ++#endif /* ifdef SOLARIS IRIX LINUX FREEBSD NETBSD */ static pthread_mutex_t aLocalMutex = PTHREAD_MUTEX_INITIALIZER; -@@ -618,7 +645,7 @@ +@@ -618,7 +675,7 @@ return ret; } -#elif defined(MACOSX) /* ifdef LINUX || SOLARIS || NETBSD */ -+#elif defined(MACOSX) /* ifdef LINUX || SOLARIS || FREEBSD */ ++#elif defined(MACOSX) /* ifdef LINUX || SOLARIS || IRIX || FREEBSD || NETBSD */ /* * FIXME: the MacOS X implemetation is missing -@@ -651,7 +678,7 @@ +@@ -651,7 +708,7 @@ return 0; } -#else /* ifdef LINUX || SOLARIS || MACOSX || NETBSD */ -+#else /* ifdef LINUX || SOLARIS || FREEBSD || MACOSX */ ++#else /* ifdef LINUX || SOLARIS || IRIX || FREEBSD || NETBSD || MACOSX */ /* * This implementation of osl_getTextEncodingFromLocale maps -@@ -887,6 +914,6 @@ +@@ -887,6 +944,6 @@ return 0; } -#endif /* ifdef LINUX || SOLARIS || MACOSX || NETBSD */ -+#endif /* ifdef LINUX || SOLARIS || MACOSX || FREEBSD */ ++#endif /* ifdef LINUX || SOLARIS || FREEBSD || NETBSD || MACOSX */ diff --git a/editors/openoffice.org-2.0/files/patch-sal+osl+unx+nlsupport.c b/editors/openoffice.org-2.0/files/patch-sal+osl+unx+nlsupport.c index 1a606f1694c1..8107caa02bcc 100644 --- a/editors/openoffice.org-2.0/files/patch-sal+osl+unx+nlsupport.c +++ b/editors/openoffice.org-2.0/files/patch-sal+osl+unx+nlsupport.c @@ -1,23 +1,14 @@ ---- ../sal/osl/unx/nlsupport.c.orig Tue May 21 15:22:11 2002 -+++ ../sal/osl/unx/nlsupport.c Wed Jul 31 10:28:29 2002 +--- ../sal/osl/unx/nlsupport.c.orig Wed Aug 14 18:22:49 2002 ++++ ../sal/osl/unx/nlsupport.c Wed Aug 14 19:07:18 2002 @@ -63,7 +63,7 @@ #include <osl/diagnose.h> #include <osl/process.h> -#if defined(LINUX) || defined(SOLARIS) || defined(IRIX) || defined(NETBSD) -+#if defined(LINUX) || defined(SOLARIS) || defined(IRIX) || defined(FREEBSD) ++#if defined(LINUX) || defined(SOLARIS) || defined(IRIX) || defined(FREEBSD) || defined(NETBSD) #include <pthread.h> #include <locale.h> #include <langinfo.h> -@@ -87,7 +87,7 @@ - static int - _pair_compare (const char *key, const _pair *pair) - { -- int result = rtl_str_compareIgnoreAsciiCase( key, pair->key ); -+ unsigned int result = rtl_str_compareIgnoreAsciiCase( key, pair->key ); - return result; - } - @@ -114,8 +114,7 @@ comparison = _pair_compare( key, base + current ); if (comparison < 0) @@ -33,56 +24,62 @@ } -#if defined(LINUX) || defined(SOLARIS) || defined(IRIX) || defined(NETBSD) -+#if defined(LINUX) || defined(SOLARIS) || defined(IRIX) || defined(FREEBSD) ++#if defined(LINUX) || defined(SOLARIS) || defined(IRIX) || defined(FREEBSD) || defined(NETBSD) /* * This implementation of osl_getTextEncodingFromLocale maps * from nl_langinfo(CODESET) to rtl_textencoding defines. - * nl_langinfo() is supported only on Linux, Solaris and IRIX. -+ * nl_langinfo() is supported only on Linux, Solaris and IRIX -+ * and FreeBSD. ++ * nl_langinfo() is supported only on Linux, Solaris and IRIX, ++ * >= NetBSD 1.5 and >= FreeBSD 4.4 * * This routine is SLOW because of the setlocale call, so * grab the result and cache it. -@@ -260,6 +260,10 @@ +@@ -260,6 +260,12 @@ #endif #endif +/* + * _nl_language_list[] is an array list of supported encodings. Because + * we are using a binary search, the list has to be in ascending order. ++ * We are comparing the encodings case insensitiv, so the list has ++ * to be completly upper- , or lowercase. + */ #if defined(SOLARIS) -@@ -312,10 +316,33 @@ - { "big5", RTL_TEXTENCODING_BIG5 }, /* China - Traditional Chinese */ - { "eucgbk", RTL_TEXTENCODING_DONTKNOW }, /* China - Simplified Chinese */ - { "gbk", RTL_TEXTENCODING_GBK }, /* China - Simplified Chinese */ -+ { "sjis", RTL_TEXTENCODING_SHIFT_JIS } /* Japan */ -+}; -+ -+#elif defined(FREEBSD) -+ -+const _pair _nl_language_list[] = { -+ { "ascii", RTL_TEXTENCODING_ASCII_US }, /* US-ASCII */ -+ { "big5", RTL_TEXTENCODING_BIG5 }, /* China - Traditional Chinese */ -+ { "cp1251", RTL_TEXTENCODING_MS_1251 }, /* MS-CYRL */ -+ { "cp866", RTL_TEXTENCODING_IBM_866 }, /* CP866 866 */ -+ { "eucCN", RTL_TEXTENCODING_EUC_CN }, /* China - Simplified Chinese */ -+ { "eucJP", RTL_TEXTENCODING_EUC_JP }, /* Japan */ -+ { "eucKR", RTL_TEXTENCODING_EUC_KR }, /* Korea */ -+ { "iso8859-1", RTL_TEXTENCODING_ISO_8859_1 }, /* Western */ -+ { "iso8859-15", RTL_TEXTENCODING_ISO_8859_15 }, /* Western Updated (w/Euro sign) */ -+ { "iso8859-2", RTL_TEXTENCODING_ISO_8859_2 }, /* Central European */ -+ { "iso8859-4", RTL_TEXTENCODING_ISO_8859_4 }, /* LATIN4 L4 */ -+ { "iso8859-5", RTL_TEXTENCODING_ISO_8859_5 }, /* Cyrillic */ -+ { "iso8859-7", RTL_TEXTENCODING_ISO_8859_7 }, /* Greek */ -+ { "iso8859-9", RTL_TEXTENCODING_ISO_8859_9 }, /* Turkish */ -+ { "koi-u", RTL_TEXTENCODING_DONTKNOW }, /* Not supported at the moment */ -+ { "koi8-r", RTL_TEXTENCODING_KOI8_R }, /* KOI8 */ - { "sjis", RTL_TEXTENCODING_SHIFT_JIS }, /* Japan */ -+ { "us-ascii", RTL_TEXTENCODING_ASCII_US } /* US-ASCII */ +@@ -299,23 +305,23 @@ + #elif defined(IRIX) + + const _pair _nl_language_list[] = { +- { "ISO8859-1", RTL_TEXTENCODING_ISO_8859_1 }, /* Western */ +- { "ISO8859-2", RTL_TEXTENCODING_ISO_8859_2 }, /* Central European */ +- { "ISO8859-5", RTL_TEXTENCODING_ISO_8859_5 }, /* Cyrillic */ +- { "ISO8859-7", RTL_TEXTENCODING_ISO_8859_7 }, /* Greek */ +- { "ISO8859-9", RTL_TEXTENCODING_ISO_8859_9 }, /* Turkish */ +- { "ISO8859-15", RTL_TEXTENCODING_ISO_8859_15 }, /* Western Updated (w/Euro sign) */ +- { "eucJP", RTL_TEXTENCODING_EUC_JP }, /* Japan */ +- { "eucKR", RTL_TEXTENCODING_EUC_KR }, /* Korea */ +- { "eucCN", RTL_TEXTENCODING_EUC_CN }, /* China */ +- { "eucTW", RTL_TEXTENCODING_EUC_TW }, /* Taiwan - Traditional Chinese */ +- { "big5", RTL_TEXTENCODING_BIG5 }, /* China - Traditional Chinese */ +- { "eucgbk", RTL_TEXTENCODING_DONTKNOW }, /* China - Simplified Chinese */ +- { "gbk", RTL_TEXTENCODING_GBK }, /* China - Simplified Chinese */ +- { "sjis", RTL_TEXTENCODING_SHIFT_JIS }, /* Japan */ ++ { "BIG5", RTL_TEXTENCODING_BIG5 }, /* China - Traditional Chinese */ ++ { "EUCCN", RTL_TEXTENCODING_EUC_CN }, /* China */ ++ { "EUCGBK", RTL_TEXTENCODING_DONTKNOW }, /* China - Simplified Chinese */ ++ { "EUCJP", RTL_TEXTENCODING_EUC_JP }, /* Japan */ ++ { "EUCKR", RTL_TEXTENCODING_EUC_KR }, /* Korea */ ++ { "EUCTW", RTL_TEXTENCODING_EUC_TW }, /* Taiwan - Traditional Chinese */ ++ { "GBK", RTL_TEXTENCODING_GBK }, /* China - Simplified Chinese */ ++ { "ISO8859-1", RTL_TEXTENCODING_ISO_8859_1 }, /* Western */ ++ { "ISO8859-15", RTL_TEXTENCODING_ISO_8859_15 }, /* Western Updated (w/Euro sign) */ ++ { "ISO8859-2", RTL_TEXTENCODING_ISO_8859_2 }, /* Central European */ ++ { "ISO8859-5", RTL_TEXTENCODING_ISO_8859_5 }, /* Cyrillic */ ++ { "ISO8859-7", RTL_TEXTENCODING_ISO_8859_7 }, /* Greek */ ++ { "ISO8859-9", RTL_TEXTENCODING_ISO_8859_9 }, /* Turkish */ ++ { "SJIS", RTL_TEXTENCODING_SHIFT_JIS } /* Japan */ }; -#elif defined(LINUX) || defined(NETBSD) @@ -90,38 +87,89 @@ const _pair _nl_language_list[] = { { "ANSI_X3.110-1983", RTL_TEXTENCODING_DONTKNOW }, /* ISO-IR-99 NAPLPS */ -@@ -496,7 +523,7 @@ +@@ -496,7 +502,58 @@ { "WIN-SAMI-2", RTL_TEXTENCODING_DONTKNOW } /* WS2 */ }; -#endif /* ifdef LINUX || NETBSD */ -+#endif /* ifdef LINUX || FREEBSD */ ++#elif defined(FREEBSD) ++ ++const _pair _nl_language_list[] = { ++ { "ASCII", RTL_TEXTENCODING_ASCII_US }, /* US-ASCII */ ++ { "BIG5", RTL_TEXTENCODING_BIG5 }, /* China - Traditional Chinese */ ++ { "CP1251", RTL_TEXTENCODING_MS_1251 }, /* MS-CYRL */ ++ { "CP866", RTL_TEXTENCODING_IBM_866 }, /* CP866 866 */ ++ { "EUCCN", RTL_TEXTENCODING_EUC_CN }, /* China - Simplified Chinese */ ++ { "EUCJP", RTL_TEXTENCODING_EUC_JP }, /* Japan */ ++ { "EUCKR", RTL_TEXTENCODING_EUC_KR }, /* Korea */ ++ { "ISO8859-1", RTL_TEXTENCODING_ISO_8859_1 }, /* Western */ ++ { "ISO8859-15", RTL_TEXTENCODING_ISO_8859_15 }, /* Western Updated (w/Euro sign) */ ++ { "ISO8859-2", RTL_TEXTENCODING_ISO_8859_2 }, /* Central European */ ++ { "ISO8859-4", RTL_TEXTENCODING_ISO_8859_4 }, /* LATIN4 L4 */ ++ { "ISO8859-5", RTL_TEXTENCODING_ISO_8859_5 }, /* Cyrillic */ ++ { "ISO8859-7", RTL_TEXTENCODING_ISO_8859_7 }, /* Greek */ ++ { "ISO8859-9", RTL_TEXTENCODING_ISO_8859_9 }, /* Turkish */ ++ { "KOI-U", RTL_TEXTENCODING_DONTKNOW }, /* Not supported at the moment */ ++ { "KOI8-R", RTL_TEXTENCODING_KOI8_R }, /* KOI8 */ ++ { "SJIS", RTL_TEXTENCODING_SHIFT_JIS }, /* Japan */ ++ { "US-ASCII", RTL_TEXTENCODING_ASCII_US } /* US-ASCII */ ++}; ++ ++#elif defined(NETBSD) ++ ++const _pair _nl_language_list[] = { ++ { "ASCII", RTL_TEXTENCODING_ASCII_US }, /* US-ASCII */ ++ { "BIG5", RTL_TEXTENCODING_BIG5 }, /* China - Traditional Chinese */ ++ { "CP1251", RTL_TEXTENCODING_MS_1251 }, /* MS-CYRL */ ++ { "CP866", RTL_TEXTENCODING_IBM_866 }, /* CP866 866 */ ++ { "CTEXT", RTL_TEXTENCODING_ASCII_US }, /* US-ASCII */ ++ { "EUCCN", RTL_TEXTENCODING_EUC_CN }, /* China - Simplified Chinese */ ++ { "EUCJP", RTL_TEXTENCODING_EUC_JP }, /* Japan */ ++ { "EUCKR", RTL_TEXTENCODING_EUC_KR }, /* Korea */ ++ { "EUCTW", RTL_TEXTENCODING_EUC_TW }, /* China - Traditional Chinese */ ++ { "ISO-2022-JP", RTL_TEXTENCODING_DONTKNOW }, /* */ ++ { "ISO-2022-JP-2", RTL_TEXTENCODING_DONTKNOW }, /* */ ++ { "ISO8859-1", RTL_TEXTENCODING_ISO_8859_1 }, /* Western */ ++ { "ISO8859-15", RTL_TEXTENCODING_ISO_8859_15 }, /* Western Updated (w/Euro sign) */ ++ { "ISO8859-2", RTL_TEXTENCODING_ISO_8859_2 }, /* Central European */ ++ { "ISO8859-4", RTL_TEXTENCODING_ISO_8859_4 }, /* LATIN4 L4 */ ++ { "ISO8859-5", RTL_TEXTENCODING_ISO_8859_5 }, /* Cyrillic */ ++ { "ISO8859-7", RTL_TEXTENCODING_ISO_8859_7 }, /* Greek */ ++ { "ISO8859-9", RTL_TEXTENCODING_ISO_8859_9 }, /* Turkish */ ++ { "KOI-U", RTL_TEXTENCODING_DONTKNOW }, /* Not supported at the moment */ ++ { "KOI8-R", RTL_TEXTENCODING_KOI8_R }, /* KOI8 */ ++ { "SJIS", RTL_TEXTENCODING_SHIFT_JIS }, /* Japan */ ++ { "US-ASCII", RTL_TEXTENCODING_ASCII_US }, /* US-ASCII */ ++ { "UTF-8", RTL_TEXTENCODING_UTF8 } /* ISO-10646/UTF-8 */ ++}; ++ ++#endif /* ifdef SOLARIS IRIX LINUX FREEBSD NETBSD */ static pthread_mutex_t aLocalMutex = PTHREAD_MUTEX_INITIALIZER; -@@ -618,7 +645,7 @@ +@@ -618,7 +675,7 @@ return ret; } -#elif defined(MACOSX) /* ifdef LINUX || SOLARIS || NETBSD */ -+#elif defined(MACOSX) /* ifdef LINUX || SOLARIS || FREEBSD */ ++#elif defined(MACOSX) /* ifdef LINUX || SOLARIS || IRIX || FREEBSD || NETBSD */ /* * FIXME: the MacOS X implemetation is missing -@@ -651,7 +678,7 @@ +@@ -651,7 +708,7 @@ return 0; } -#else /* ifdef LINUX || SOLARIS || MACOSX || NETBSD */ -+#else /* ifdef LINUX || SOLARIS || FREEBSD || MACOSX */ ++#else /* ifdef LINUX || SOLARIS || IRIX || FREEBSD || NETBSD || MACOSX */ /* * This implementation of osl_getTextEncodingFromLocale maps -@@ -887,6 +914,6 @@ +@@ -887,6 +944,6 @@ return 0; } -#endif /* ifdef LINUX || SOLARIS || MACOSX || NETBSD */ -+#endif /* ifdef LINUX || SOLARIS || MACOSX || FREEBSD */ ++#endif /* ifdef LINUX || SOLARIS || FREEBSD || NETBSD || MACOSX */ diff --git a/editors/openoffice.org-2/files/patch-sal+osl+unx+nlsupport.c b/editors/openoffice.org-2/files/patch-sal+osl+unx+nlsupport.c index 1a606f1694c1..8107caa02bcc 100644 --- a/editors/openoffice.org-2/files/patch-sal+osl+unx+nlsupport.c +++ b/editors/openoffice.org-2/files/patch-sal+osl+unx+nlsupport.c @@ -1,23 +1,14 @@ ---- ../sal/osl/unx/nlsupport.c.orig Tue May 21 15:22:11 2002 -+++ ../sal/osl/unx/nlsupport.c Wed Jul 31 10:28:29 2002 +--- ../sal/osl/unx/nlsupport.c.orig Wed Aug 14 18:22:49 2002 ++++ ../sal/osl/unx/nlsupport.c Wed Aug 14 19:07:18 2002 @@ -63,7 +63,7 @@ #include <osl/diagnose.h> #include <osl/process.h> -#if defined(LINUX) || defined(SOLARIS) || defined(IRIX) || defined(NETBSD) -+#if defined(LINUX) || defined(SOLARIS) || defined(IRIX) || defined(FREEBSD) ++#if defined(LINUX) || defined(SOLARIS) || defined(IRIX) || defined(FREEBSD) || defined(NETBSD) #include <pthread.h> #include <locale.h> #include <langinfo.h> -@@ -87,7 +87,7 @@ - static int - _pair_compare (const char *key, const _pair *pair) - { -- int result = rtl_str_compareIgnoreAsciiCase( key, pair->key ); -+ unsigned int result = rtl_str_compareIgnoreAsciiCase( key, pair->key ); - return result; - } - @@ -114,8 +114,7 @@ comparison = _pair_compare( key, base + current ); if (comparison < 0) @@ -33,56 +24,62 @@ } -#if defined(LINUX) || defined(SOLARIS) || defined(IRIX) || defined(NETBSD) -+#if defined(LINUX) || defined(SOLARIS) || defined(IRIX) || defined(FREEBSD) ++#if defined(LINUX) || defined(SOLARIS) || defined(IRIX) || defined(FREEBSD) || defined(NETBSD) /* * This implementation of osl_getTextEncodingFromLocale maps * from nl_langinfo(CODESET) to rtl_textencoding defines. - * nl_langinfo() is supported only on Linux, Solaris and IRIX. -+ * nl_langinfo() is supported only on Linux, Solaris and IRIX -+ * and FreeBSD. ++ * nl_langinfo() is supported only on Linux, Solaris and IRIX, ++ * >= NetBSD 1.5 and >= FreeBSD 4.4 * * This routine is SLOW because of the setlocale call, so * grab the result and cache it. -@@ -260,6 +260,10 @@ +@@ -260,6 +260,12 @@ #endif #endif +/* + * _nl_language_list[] is an array list of supported encodings. Because + * we are using a binary search, the list has to be in ascending order. ++ * We are comparing the encodings case insensitiv, so the list has ++ * to be completly upper- , or lowercase. + */ #if defined(SOLARIS) -@@ -312,10 +316,33 @@ - { "big5", RTL_TEXTENCODING_BIG5 }, /* China - Traditional Chinese */ - { "eucgbk", RTL_TEXTENCODING_DONTKNOW }, /* China - Simplified Chinese */ - { "gbk", RTL_TEXTENCODING_GBK }, /* China - Simplified Chinese */ -+ { "sjis", RTL_TEXTENCODING_SHIFT_JIS } /* Japan */ -+}; -+ -+#elif defined(FREEBSD) -+ -+const _pair _nl_language_list[] = { -+ { "ascii", RTL_TEXTENCODING_ASCII_US }, /* US-ASCII */ -+ { "big5", RTL_TEXTENCODING_BIG5 }, /* China - Traditional Chinese */ -+ { "cp1251", RTL_TEXTENCODING_MS_1251 }, /* MS-CYRL */ -+ { "cp866", RTL_TEXTENCODING_IBM_866 }, /* CP866 866 */ -+ { "eucCN", RTL_TEXTENCODING_EUC_CN }, /* China - Simplified Chinese */ -+ { "eucJP", RTL_TEXTENCODING_EUC_JP }, /* Japan */ -+ { "eucKR", RTL_TEXTENCODING_EUC_KR }, /* Korea */ -+ { "iso8859-1", RTL_TEXTENCODING_ISO_8859_1 }, /* Western */ -+ { "iso8859-15", RTL_TEXTENCODING_ISO_8859_15 }, /* Western Updated (w/Euro sign) */ -+ { "iso8859-2", RTL_TEXTENCODING_ISO_8859_2 }, /* Central European */ -+ { "iso8859-4", RTL_TEXTENCODING_ISO_8859_4 }, /* LATIN4 L4 */ -+ { "iso8859-5", RTL_TEXTENCODING_ISO_8859_5 }, /* Cyrillic */ -+ { "iso8859-7", RTL_TEXTENCODING_ISO_8859_7 }, /* Greek */ -+ { "iso8859-9", RTL_TEXTENCODING_ISO_8859_9 }, /* Turkish */ -+ { "koi-u", RTL_TEXTENCODING_DONTKNOW }, /* Not supported at the moment */ -+ { "koi8-r", RTL_TEXTENCODING_KOI8_R }, /* KOI8 */ - { "sjis", RTL_TEXTENCODING_SHIFT_JIS }, /* Japan */ -+ { "us-ascii", RTL_TEXTENCODING_ASCII_US } /* US-ASCII */ +@@ -299,23 +305,23 @@ + #elif defined(IRIX) + + const _pair _nl_language_list[] = { +- { "ISO8859-1", RTL_TEXTENCODING_ISO_8859_1 }, /* Western */ +- { "ISO8859-2", RTL_TEXTENCODING_ISO_8859_2 }, /* Central European */ +- { "ISO8859-5", RTL_TEXTENCODING_ISO_8859_5 }, /* Cyrillic */ +- { "ISO8859-7", RTL_TEXTENCODING_ISO_8859_7 }, /* Greek */ +- { "ISO8859-9", RTL_TEXTENCODING_ISO_8859_9 }, /* Turkish */ +- { "ISO8859-15", RTL_TEXTENCODING_ISO_8859_15 }, /* Western Updated (w/Euro sign) */ +- { "eucJP", RTL_TEXTENCODING_EUC_JP }, /* Japan */ +- { "eucKR", RTL_TEXTENCODING_EUC_KR }, /* Korea */ +- { "eucCN", RTL_TEXTENCODING_EUC_CN }, /* China */ +- { "eucTW", RTL_TEXTENCODING_EUC_TW }, /* Taiwan - Traditional Chinese */ +- { "big5", RTL_TEXTENCODING_BIG5 }, /* China - Traditional Chinese */ +- { "eucgbk", RTL_TEXTENCODING_DONTKNOW }, /* China - Simplified Chinese */ +- { "gbk", RTL_TEXTENCODING_GBK }, /* China - Simplified Chinese */ +- { "sjis", RTL_TEXTENCODING_SHIFT_JIS }, /* Japan */ ++ { "BIG5", RTL_TEXTENCODING_BIG5 }, /* China - Traditional Chinese */ ++ { "EUCCN", RTL_TEXTENCODING_EUC_CN }, /* China */ ++ { "EUCGBK", RTL_TEXTENCODING_DONTKNOW }, /* China - Simplified Chinese */ ++ { "EUCJP", RTL_TEXTENCODING_EUC_JP }, /* Japan */ ++ { "EUCKR", RTL_TEXTENCODING_EUC_KR }, /* Korea */ ++ { "EUCTW", RTL_TEXTENCODING_EUC_TW }, /* Taiwan - Traditional Chinese */ ++ { "GBK", RTL_TEXTENCODING_GBK }, /* China - Simplified Chinese */ ++ { "ISO8859-1", RTL_TEXTENCODING_ISO_8859_1 }, /* Western */ ++ { "ISO8859-15", RTL_TEXTENCODING_ISO_8859_15 }, /* Western Updated (w/Euro sign) */ ++ { "ISO8859-2", RTL_TEXTENCODING_ISO_8859_2 }, /* Central European */ ++ { "ISO8859-5", RTL_TEXTENCODING_ISO_8859_5 }, /* Cyrillic */ ++ { "ISO8859-7", RTL_TEXTENCODING_ISO_8859_7 }, /* Greek */ ++ { "ISO8859-9", RTL_TEXTENCODING_ISO_8859_9 }, /* Turkish */ ++ { "SJIS", RTL_TEXTENCODING_SHIFT_JIS } /* Japan */ }; -#elif defined(LINUX) || defined(NETBSD) @@ -90,38 +87,89 @@ const _pair _nl_language_list[] = { { "ANSI_X3.110-1983", RTL_TEXTENCODING_DONTKNOW }, /* ISO-IR-99 NAPLPS */ -@@ -496,7 +523,7 @@ +@@ -496,7 +502,58 @@ { "WIN-SAMI-2", RTL_TEXTENCODING_DONTKNOW } /* WS2 */ }; -#endif /* ifdef LINUX || NETBSD */ -+#endif /* ifdef LINUX || FREEBSD */ ++#elif defined(FREEBSD) ++ ++const _pair _nl_language_list[] = { ++ { "ASCII", RTL_TEXTENCODING_ASCII_US }, /* US-ASCII */ ++ { "BIG5", RTL_TEXTENCODING_BIG5 }, /* China - Traditional Chinese */ ++ { "CP1251", RTL_TEXTENCODING_MS_1251 }, /* MS-CYRL */ ++ { "CP866", RTL_TEXTENCODING_IBM_866 }, /* CP866 866 */ ++ { "EUCCN", RTL_TEXTENCODING_EUC_CN }, /* China - Simplified Chinese */ ++ { "EUCJP", RTL_TEXTENCODING_EUC_JP }, /* Japan */ ++ { "EUCKR", RTL_TEXTENCODING_EUC_KR }, /* Korea */ ++ { "ISO8859-1", RTL_TEXTENCODING_ISO_8859_1 }, /* Western */ ++ { "ISO8859-15", RTL_TEXTENCODING_ISO_8859_15 }, /* Western Updated (w/Euro sign) */ ++ { "ISO8859-2", RTL_TEXTENCODING_ISO_8859_2 }, /* Central European */ ++ { "ISO8859-4", RTL_TEXTENCODING_ISO_8859_4 }, /* LATIN4 L4 */ ++ { "ISO8859-5", RTL_TEXTENCODING_ISO_8859_5 }, /* Cyrillic */ ++ { "ISO8859-7", RTL_TEXTENCODING_ISO_8859_7 }, /* Greek */ ++ { "ISO8859-9", RTL_TEXTENCODING_ISO_8859_9 }, /* Turkish */ ++ { "KOI-U", RTL_TEXTENCODING_DONTKNOW }, /* Not supported at the moment */ ++ { "KOI8-R", RTL_TEXTENCODING_KOI8_R }, /* KOI8 */ ++ { "SJIS", RTL_TEXTENCODING_SHIFT_JIS }, /* Japan */ ++ { "US-ASCII", RTL_TEXTENCODING_ASCII_US } /* US-ASCII */ ++}; ++ ++#elif defined(NETBSD) ++ ++const _pair _nl_language_list[] = { ++ { "ASCII", RTL_TEXTENCODING_ASCII_US }, /* US-ASCII */ ++ { "BIG5", RTL_TEXTENCODING_BIG5 }, /* China - Traditional Chinese */ ++ { "CP1251", RTL_TEXTENCODING_MS_1251 }, /* MS-CYRL */ ++ { "CP866", RTL_TEXTENCODING_IBM_866 }, /* CP866 866 */ ++ { "CTEXT", RTL_TEXTENCODING_ASCII_US }, /* US-ASCII */ ++ { "EUCCN", RTL_TEXTENCODING_EUC_CN }, /* China - Simplified Chinese */ ++ { "EUCJP", RTL_TEXTENCODING_EUC_JP }, /* Japan */ ++ { "EUCKR", RTL_TEXTENCODING_EUC_KR }, /* Korea */ ++ { "EUCTW", RTL_TEXTENCODING_EUC_TW }, /* China - Traditional Chinese */ ++ { "ISO-2022-JP", RTL_TEXTENCODING_DONTKNOW }, /* */ ++ { "ISO-2022-JP-2", RTL_TEXTENCODING_DONTKNOW }, /* */ ++ { "ISO8859-1", RTL_TEXTENCODING_ISO_8859_1 }, /* Western */ ++ { "ISO8859-15", RTL_TEXTENCODING_ISO_8859_15 }, /* Western Updated (w/Euro sign) */ ++ { "ISO8859-2", RTL_TEXTENCODING_ISO_8859_2 }, /* Central European */ ++ { "ISO8859-4", RTL_TEXTENCODING_ISO_8859_4 }, /* LATIN4 L4 */ ++ { "ISO8859-5", RTL_TEXTENCODING_ISO_8859_5 }, /* Cyrillic */ ++ { "ISO8859-7", RTL_TEXTENCODING_ISO_8859_7 }, /* Greek */ ++ { "ISO8859-9", RTL_TEXTENCODING_ISO_8859_9 }, /* Turkish */ ++ { "KOI-U", RTL_TEXTENCODING_DONTKNOW }, /* Not supported at the moment */ ++ { "KOI8-R", RTL_TEXTENCODING_KOI8_R }, /* KOI8 */ ++ { "SJIS", RTL_TEXTENCODING_SHIFT_JIS }, /* Japan */ ++ { "US-ASCII", RTL_TEXTENCODING_ASCII_US }, /* US-ASCII */ ++ { "UTF-8", RTL_TEXTENCODING_UTF8 } /* ISO-10646/UTF-8 */ ++}; ++ ++#endif /* ifdef SOLARIS IRIX LINUX FREEBSD NETBSD */ static pthread_mutex_t aLocalMutex = PTHREAD_MUTEX_INITIALIZER; -@@ -618,7 +645,7 @@ +@@ -618,7 +675,7 @@ return ret; } -#elif defined(MACOSX) /* ifdef LINUX || SOLARIS || NETBSD */ -+#elif defined(MACOSX) /* ifdef LINUX || SOLARIS || FREEBSD */ ++#elif defined(MACOSX) /* ifdef LINUX || SOLARIS || IRIX || FREEBSD || NETBSD */ /* * FIXME: the MacOS X implemetation is missing -@@ -651,7 +678,7 @@ +@@ -651,7 +708,7 @@ return 0; } -#else /* ifdef LINUX || SOLARIS || MACOSX || NETBSD */ -+#else /* ifdef LINUX || SOLARIS || FREEBSD || MACOSX */ ++#else /* ifdef LINUX || SOLARIS || IRIX || FREEBSD || NETBSD || MACOSX */ /* * This implementation of osl_getTextEncodingFromLocale maps -@@ -887,6 +914,6 @@ +@@ -887,6 +944,6 @@ return 0; } -#endif /* ifdef LINUX || SOLARIS || MACOSX || NETBSD */ -+#endif /* ifdef LINUX || SOLARIS || MACOSX || FREEBSD */ ++#endif /* ifdef LINUX || SOLARIS || FREEBSD || NETBSD || MACOSX */ diff --git a/editors/openoffice.org-3-RC/files/patch-sal+osl+unx+nlsupport.c b/editors/openoffice.org-3-RC/files/patch-sal+osl+unx+nlsupport.c index 1a606f1694c1..8107caa02bcc 100644 --- a/editors/openoffice.org-3-RC/files/patch-sal+osl+unx+nlsupport.c +++ b/editors/openoffice.org-3-RC/files/patch-sal+osl+unx+nlsupport.c @@ -1,23 +1,14 @@ ---- ../sal/osl/unx/nlsupport.c.orig Tue May 21 15:22:11 2002 -+++ ../sal/osl/unx/nlsupport.c Wed Jul 31 10:28:29 2002 +--- ../sal/osl/unx/nlsupport.c.orig Wed Aug 14 18:22:49 2002 ++++ ../sal/osl/unx/nlsupport.c Wed Aug 14 19:07:18 2002 @@ -63,7 +63,7 @@ #include <osl/diagnose.h> #include <osl/process.h> -#if defined(LINUX) || defined(SOLARIS) || defined(IRIX) || defined(NETBSD) -+#if defined(LINUX) || defined(SOLARIS) || defined(IRIX) || defined(FREEBSD) ++#if defined(LINUX) || defined(SOLARIS) || defined(IRIX) || defined(FREEBSD) || defined(NETBSD) #include <pthread.h> #include <locale.h> #include <langinfo.h> -@@ -87,7 +87,7 @@ - static int - _pair_compare (const char *key, const _pair *pair) - { -- int result = rtl_str_compareIgnoreAsciiCase( key, pair->key ); -+ unsigned int result = rtl_str_compareIgnoreAsciiCase( key, pair->key ); - return result; - } - @@ -114,8 +114,7 @@ comparison = _pair_compare( key, base + current ); if (comparison < 0) @@ -33,56 +24,62 @@ } -#if defined(LINUX) || defined(SOLARIS) || defined(IRIX) || defined(NETBSD) -+#if defined(LINUX) || defined(SOLARIS) || defined(IRIX) || defined(FREEBSD) ++#if defined(LINUX) || defined(SOLARIS) || defined(IRIX) || defined(FREEBSD) || defined(NETBSD) /* * This implementation of osl_getTextEncodingFromLocale maps * from nl_langinfo(CODESET) to rtl_textencoding defines. - * nl_langinfo() is supported only on Linux, Solaris and IRIX. -+ * nl_langinfo() is supported only on Linux, Solaris and IRIX -+ * and FreeBSD. ++ * nl_langinfo() is supported only on Linux, Solaris and IRIX, ++ * >= NetBSD 1.5 and >= FreeBSD 4.4 * * This routine is SLOW because of the setlocale call, so * grab the result and cache it. -@@ -260,6 +260,10 @@ +@@ -260,6 +260,12 @@ #endif #endif +/* + * _nl_language_list[] is an array list of supported encodings. Because + * we are using a binary search, the list has to be in ascending order. ++ * We are comparing the encodings case insensitiv, so the list has ++ * to be completly upper- , or lowercase. + */ #if defined(SOLARIS) -@@ -312,10 +316,33 @@ - { "big5", RTL_TEXTENCODING_BIG5 }, /* China - Traditional Chinese */ - { "eucgbk", RTL_TEXTENCODING_DONTKNOW }, /* China - Simplified Chinese */ - { "gbk", RTL_TEXTENCODING_GBK }, /* China - Simplified Chinese */ -+ { "sjis", RTL_TEXTENCODING_SHIFT_JIS } /* Japan */ -+}; -+ -+#elif defined(FREEBSD) -+ -+const _pair _nl_language_list[] = { -+ { "ascii", RTL_TEXTENCODING_ASCII_US }, /* US-ASCII */ -+ { "big5", RTL_TEXTENCODING_BIG5 }, /* China - Traditional Chinese */ -+ { "cp1251", RTL_TEXTENCODING_MS_1251 }, /* MS-CYRL */ -+ { "cp866", RTL_TEXTENCODING_IBM_866 }, /* CP866 866 */ -+ { "eucCN", RTL_TEXTENCODING_EUC_CN }, /* China - Simplified Chinese */ -+ { "eucJP", RTL_TEXTENCODING_EUC_JP }, /* Japan */ -+ { "eucKR", RTL_TEXTENCODING_EUC_KR }, /* Korea */ -+ { "iso8859-1", RTL_TEXTENCODING_ISO_8859_1 }, /* Western */ -+ { "iso8859-15", RTL_TEXTENCODING_ISO_8859_15 }, /* Western Updated (w/Euro sign) */ -+ { "iso8859-2", RTL_TEXTENCODING_ISO_8859_2 }, /* Central European */ -+ { "iso8859-4", RTL_TEXTENCODING_ISO_8859_4 }, /* LATIN4 L4 */ -+ { "iso8859-5", RTL_TEXTENCODING_ISO_8859_5 }, /* Cyrillic */ -+ { "iso8859-7", RTL_TEXTENCODING_ISO_8859_7 }, /* Greek */ -+ { "iso8859-9", RTL_TEXTENCODING_ISO_8859_9 }, /* Turkish */ -+ { "koi-u", RTL_TEXTENCODING_DONTKNOW }, /* Not supported at the moment */ -+ { "koi8-r", RTL_TEXTENCODING_KOI8_R }, /* KOI8 */ - { "sjis", RTL_TEXTENCODING_SHIFT_JIS }, /* Japan */ -+ { "us-ascii", RTL_TEXTENCODING_ASCII_US } /* US-ASCII */ +@@ -299,23 +305,23 @@ + #elif defined(IRIX) + + const _pair _nl_language_list[] = { +- { "ISO8859-1", RTL_TEXTENCODING_ISO_8859_1 }, /* Western */ +- { "ISO8859-2", RTL_TEXTENCODING_ISO_8859_2 }, /* Central European */ +- { "ISO8859-5", RTL_TEXTENCODING_ISO_8859_5 }, /* Cyrillic */ +- { "ISO8859-7", RTL_TEXTENCODING_ISO_8859_7 }, /* Greek */ +- { "ISO8859-9", RTL_TEXTENCODING_ISO_8859_9 }, /* Turkish */ +- { "ISO8859-15", RTL_TEXTENCODING_ISO_8859_15 }, /* Western Updated (w/Euro sign) */ +- { "eucJP", RTL_TEXTENCODING_EUC_JP }, /* Japan */ +- { "eucKR", RTL_TEXTENCODING_EUC_KR }, /* Korea */ +- { "eucCN", RTL_TEXTENCODING_EUC_CN }, /* China */ +- { "eucTW", RTL_TEXTENCODING_EUC_TW }, /* Taiwan - Traditional Chinese */ +- { "big5", RTL_TEXTENCODING_BIG5 }, /* China - Traditional Chinese */ +- { "eucgbk", RTL_TEXTENCODING_DONTKNOW }, /* China - Simplified Chinese */ +- { "gbk", RTL_TEXTENCODING_GBK }, /* China - Simplified Chinese */ +- { "sjis", RTL_TEXTENCODING_SHIFT_JIS }, /* Japan */ ++ { "BIG5", RTL_TEXTENCODING_BIG5 }, /* China - Traditional Chinese */ ++ { "EUCCN", RTL_TEXTENCODING_EUC_CN }, /* China */ ++ { "EUCGBK", RTL_TEXTENCODING_DONTKNOW }, /* China - Simplified Chinese */ ++ { "EUCJP", RTL_TEXTENCODING_EUC_JP }, /* Japan */ ++ { "EUCKR", RTL_TEXTENCODING_EUC_KR }, /* Korea */ ++ { "EUCTW", RTL_TEXTENCODING_EUC_TW }, /* Taiwan - Traditional Chinese */ ++ { "GBK", RTL_TEXTENCODING_GBK }, /* China - Simplified Chinese */ ++ { "ISO8859-1", RTL_TEXTENCODING_ISO_8859_1 }, /* Western */ ++ { "ISO8859-15", RTL_TEXTENCODING_ISO_8859_15 }, /* Western Updated (w/Euro sign) */ ++ { "ISO8859-2", RTL_TEXTENCODING_ISO_8859_2 }, /* Central European */ ++ { "ISO8859-5", RTL_TEXTENCODING_ISO_8859_5 }, /* Cyrillic */ ++ { "ISO8859-7", RTL_TEXTENCODING_ISO_8859_7 }, /* Greek */ ++ { "ISO8859-9", RTL_TEXTENCODING_ISO_8859_9 }, /* Turkish */ ++ { "SJIS", RTL_TEXTENCODING_SHIFT_JIS } /* Japan */ }; -#elif defined(LINUX) || defined(NETBSD) @@ -90,38 +87,89 @@ const _pair _nl_language_list[] = { { "ANSI_X3.110-1983", RTL_TEXTENCODING_DONTKNOW }, /* ISO-IR-99 NAPLPS */ -@@ -496,7 +523,7 @@ +@@ -496,7 +502,58 @@ { "WIN-SAMI-2", RTL_TEXTENCODING_DONTKNOW } /* WS2 */ }; -#endif /* ifdef LINUX || NETBSD */ -+#endif /* ifdef LINUX || FREEBSD */ ++#elif defined(FREEBSD) ++ ++const _pair _nl_language_list[] = { ++ { "ASCII", RTL_TEXTENCODING_ASCII_US }, /* US-ASCII */ ++ { "BIG5", RTL_TEXTENCODING_BIG5 }, /* China - Traditional Chinese */ ++ { "CP1251", RTL_TEXTENCODING_MS_1251 }, /* MS-CYRL */ ++ { "CP866", RTL_TEXTENCODING_IBM_866 }, /* CP866 866 */ ++ { "EUCCN", RTL_TEXTENCODING_EUC_CN }, /* China - Simplified Chinese */ ++ { "EUCJP", RTL_TEXTENCODING_EUC_JP }, /* Japan */ ++ { "EUCKR", RTL_TEXTENCODING_EUC_KR }, /* Korea */ ++ { "ISO8859-1", RTL_TEXTENCODING_ISO_8859_1 }, /* Western */ ++ { "ISO8859-15", RTL_TEXTENCODING_ISO_8859_15 }, /* Western Updated (w/Euro sign) */ ++ { "ISO8859-2", RTL_TEXTENCODING_ISO_8859_2 }, /* Central European */ ++ { "ISO8859-4", RTL_TEXTENCODING_ISO_8859_4 }, /* LATIN4 L4 */ ++ { "ISO8859-5", RTL_TEXTENCODING_ISO_8859_5 }, /* Cyrillic */ ++ { "ISO8859-7", RTL_TEXTENCODING_ISO_8859_7 }, /* Greek */ ++ { "ISO8859-9", RTL_TEXTENCODING_ISO_8859_9 }, /* Turkish */ ++ { "KOI-U", RTL_TEXTENCODING_DONTKNOW }, /* Not supported at the moment */ ++ { "KOI8-R", RTL_TEXTENCODING_KOI8_R }, /* KOI8 */ ++ { "SJIS", RTL_TEXTENCODING_SHIFT_JIS }, /* Japan */ ++ { "US-ASCII", RTL_TEXTENCODING_ASCII_US } /* US-ASCII */ ++}; ++ ++#elif defined(NETBSD) ++ ++const _pair _nl_language_list[] = { ++ { "ASCII", RTL_TEXTENCODING_ASCII_US }, /* US-ASCII */ ++ { "BIG5", RTL_TEXTENCODING_BIG5 }, /* China - Traditional Chinese */ ++ { "CP1251", RTL_TEXTENCODING_MS_1251 }, /* MS-CYRL */ ++ { "CP866", RTL_TEXTENCODING_IBM_866 }, /* CP866 866 */ ++ { "CTEXT", RTL_TEXTENCODING_ASCII_US }, /* US-ASCII */ ++ { "EUCCN", RTL_TEXTENCODING_EUC_CN }, /* China - Simplified Chinese */ ++ { "EUCJP", RTL_TEXTENCODING_EUC_JP }, /* Japan */ ++ { "EUCKR", RTL_TEXTENCODING_EUC_KR }, /* Korea */ ++ { "EUCTW", RTL_TEXTENCODING_EUC_TW }, /* China - Traditional Chinese */ ++ { "ISO-2022-JP", RTL_TEXTENCODING_DONTKNOW }, /* */ ++ { "ISO-2022-JP-2", RTL_TEXTENCODING_DONTKNOW }, /* */ ++ { "ISO8859-1", RTL_TEXTENCODING_ISO_8859_1 }, /* Western */ ++ { "ISO8859-15", RTL_TEXTENCODING_ISO_8859_15 }, /* Western Updated (w/Euro sign) */ ++ { "ISO8859-2", RTL_TEXTENCODING_ISO_8859_2 }, /* Central European */ ++ { "ISO8859-4", RTL_TEXTENCODING_ISO_8859_4 }, /* LATIN4 L4 */ ++ { "ISO8859-5", RTL_TEXTENCODING_ISO_8859_5 }, /* Cyrillic */ ++ { "ISO8859-7", RTL_TEXTENCODING_ISO_8859_7 }, /* Greek */ ++ { "ISO8859-9", RTL_TEXTENCODING_ISO_8859_9 }, /* Turkish */ ++ { "KOI-U", RTL_TEXTENCODING_DONTKNOW }, /* Not supported at the moment */ ++ { "KOI8-R", RTL_TEXTENCODING_KOI8_R }, /* KOI8 */ ++ { "SJIS", RTL_TEXTENCODING_SHIFT_JIS }, /* Japan */ ++ { "US-ASCII", RTL_TEXTENCODING_ASCII_US }, /* US-ASCII */ ++ { "UTF-8", RTL_TEXTENCODING_UTF8 } /* ISO-10646/UTF-8 */ ++}; ++ ++#endif /* ifdef SOLARIS IRIX LINUX FREEBSD NETBSD */ static pthread_mutex_t aLocalMutex = PTHREAD_MUTEX_INITIALIZER; -@@ -618,7 +645,7 @@ +@@ -618,7 +675,7 @@ return ret; } -#elif defined(MACOSX) /* ifdef LINUX || SOLARIS || NETBSD */ -+#elif defined(MACOSX) /* ifdef LINUX || SOLARIS || FREEBSD */ ++#elif defined(MACOSX) /* ifdef LINUX || SOLARIS || IRIX || FREEBSD || NETBSD */ /* * FIXME: the MacOS X implemetation is missing -@@ -651,7 +678,7 @@ +@@ -651,7 +708,7 @@ return 0; } -#else /* ifdef LINUX || SOLARIS || MACOSX || NETBSD */ -+#else /* ifdef LINUX || SOLARIS || FREEBSD || MACOSX */ ++#else /* ifdef LINUX || SOLARIS || IRIX || FREEBSD || NETBSD || MACOSX */ /* * This implementation of osl_getTextEncodingFromLocale maps -@@ -887,6 +914,6 @@ +@@ -887,6 +944,6 @@ return 0; } -#endif /* ifdef LINUX || SOLARIS || MACOSX || NETBSD */ -+#endif /* ifdef LINUX || SOLARIS || MACOSX || FREEBSD */ ++#endif /* ifdef LINUX || SOLARIS || FREEBSD || NETBSD || MACOSX */ diff --git a/editors/openoffice.org-3-devel/files/patch-sal+osl+unx+nlsupport.c b/editors/openoffice.org-3-devel/files/patch-sal+osl+unx+nlsupport.c index 1a606f1694c1..8107caa02bcc 100644 --- a/editors/openoffice.org-3-devel/files/patch-sal+osl+unx+nlsupport.c +++ b/editors/openoffice.org-3-devel/files/patch-sal+osl+unx+nlsupport.c @@ -1,23 +1,14 @@ ---- ../sal/osl/unx/nlsupport.c.orig Tue May 21 15:22:11 2002 -+++ ../sal/osl/unx/nlsupport.c Wed Jul 31 10:28:29 2002 +--- ../sal/osl/unx/nlsupport.c.orig Wed Aug 14 18:22:49 2002 ++++ ../sal/osl/unx/nlsupport.c Wed Aug 14 19:07:18 2002 @@ -63,7 +63,7 @@ #include <osl/diagnose.h> #include <osl/process.h> -#if defined(LINUX) || defined(SOLARIS) || defined(IRIX) || defined(NETBSD) -+#if defined(LINUX) || defined(SOLARIS) || defined(IRIX) || defined(FREEBSD) ++#if defined(LINUX) || defined(SOLARIS) || defined(IRIX) || defined(FREEBSD) || defined(NETBSD) #include <pthread.h> #include <locale.h> #include <langinfo.h> -@@ -87,7 +87,7 @@ - static int - _pair_compare (const char *key, const _pair *pair) - { -- int result = rtl_str_compareIgnoreAsciiCase( key, pair->key ); -+ unsigned int result = rtl_str_compareIgnoreAsciiCase( key, pair->key ); - return result; - } - @@ -114,8 +114,7 @@ comparison = _pair_compare( key, base + current ); if (comparison < 0) @@ -33,56 +24,62 @@ } -#if defined(LINUX) || defined(SOLARIS) || defined(IRIX) || defined(NETBSD) -+#if defined(LINUX) || defined(SOLARIS) || defined(IRIX) || defined(FREEBSD) ++#if defined(LINUX) || defined(SOLARIS) || defined(IRIX) || defined(FREEBSD) || defined(NETBSD) /* * This implementation of osl_getTextEncodingFromLocale maps * from nl_langinfo(CODESET) to rtl_textencoding defines. - * nl_langinfo() is supported only on Linux, Solaris and IRIX. -+ * nl_langinfo() is supported only on Linux, Solaris and IRIX -+ * and FreeBSD. ++ * nl_langinfo() is supported only on Linux, Solaris and IRIX, ++ * >= NetBSD 1.5 and >= FreeBSD 4.4 * * This routine is SLOW because of the setlocale call, so * grab the result and cache it. -@@ -260,6 +260,10 @@ +@@ -260,6 +260,12 @@ #endif #endif +/* + * _nl_language_list[] is an array list of supported encodings. Because + * we are using a binary search, the list has to be in ascending order. ++ * We are comparing the encodings case insensitiv, so the list has ++ * to be completly upper- , or lowercase. + */ #if defined(SOLARIS) -@@ -312,10 +316,33 @@ - { "big5", RTL_TEXTENCODING_BIG5 }, /* China - Traditional Chinese */ - { "eucgbk", RTL_TEXTENCODING_DONTKNOW }, /* China - Simplified Chinese */ - { "gbk", RTL_TEXTENCODING_GBK }, /* China - Simplified Chinese */ -+ { "sjis", RTL_TEXTENCODING_SHIFT_JIS } /* Japan */ -+}; -+ -+#elif defined(FREEBSD) -+ -+const _pair _nl_language_list[] = { -+ { "ascii", RTL_TEXTENCODING_ASCII_US }, /* US-ASCII */ -+ { "big5", RTL_TEXTENCODING_BIG5 }, /* China - Traditional Chinese */ -+ { "cp1251", RTL_TEXTENCODING_MS_1251 }, /* MS-CYRL */ -+ { "cp866", RTL_TEXTENCODING_IBM_866 }, /* CP866 866 */ -+ { "eucCN", RTL_TEXTENCODING_EUC_CN }, /* China - Simplified Chinese */ -+ { "eucJP", RTL_TEXTENCODING_EUC_JP }, /* Japan */ -+ { "eucKR", RTL_TEXTENCODING_EUC_KR }, /* Korea */ -+ { "iso8859-1", RTL_TEXTENCODING_ISO_8859_1 }, /* Western */ -+ { "iso8859-15", RTL_TEXTENCODING_ISO_8859_15 }, /* Western Updated (w/Euro sign) */ -+ { "iso8859-2", RTL_TEXTENCODING_ISO_8859_2 }, /* Central European */ -+ { "iso8859-4", RTL_TEXTENCODING_ISO_8859_4 }, /* LATIN4 L4 */ -+ { "iso8859-5", RTL_TEXTENCODING_ISO_8859_5 }, /* Cyrillic */ -+ { "iso8859-7", RTL_TEXTENCODING_ISO_8859_7 }, /* Greek */ -+ { "iso8859-9", RTL_TEXTENCODING_ISO_8859_9 }, /* Turkish */ -+ { "koi-u", RTL_TEXTENCODING_DONTKNOW }, /* Not supported at the moment */ -+ { "koi8-r", RTL_TEXTENCODING_KOI8_R }, /* KOI8 */ - { "sjis", RTL_TEXTENCODING_SHIFT_JIS }, /* Japan */ -+ { "us-ascii", RTL_TEXTENCODING_ASCII_US } /* US-ASCII */ +@@ -299,23 +305,23 @@ + #elif defined(IRIX) + + const _pair _nl_language_list[] = { +- { "ISO8859-1", RTL_TEXTENCODING_ISO_8859_1 }, /* Western */ +- { "ISO8859-2", RTL_TEXTENCODING_ISO_8859_2 }, /* Central European */ +- { "ISO8859-5", RTL_TEXTENCODING_ISO_8859_5 }, /* Cyrillic */ +- { "ISO8859-7", RTL_TEXTENCODING_ISO_8859_7 }, /* Greek */ +- { "ISO8859-9", RTL_TEXTENCODING_ISO_8859_9 }, /* Turkish */ +- { "ISO8859-15", RTL_TEXTENCODING_ISO_8859_15 }, /* Western Updated (w/Euro sign) */ +- { "eucJP", RTL_TEXTENCODING_EUC_JP }, /* Japan */ +- { "eucKR", RTL_TEXTENCODING_EUC_KR }, /* Korea */ +- { "eucCN", RTL_TEXTENCODING_EUC_CN }, /* China */ +- { "eucTW", RTL_TEXTENCODING_EUC_TW }, /* Taiwan - Traditional Chinese */ +- { "big5", RTL_TEXTENCODING_BIG5 }, /* China - Traditional Chinese */ +- { "eucgbk", RTL_TEXTENCODING_DONTKNOW }, /* China - Simplified Chinese */ +- { "gbk", RTL_TEXTENCODING_GBK }, /* China - Simplified Chinese */ +- { "sjis", RTL_TEXTENCODING_SHIFT_JIS }, /* Japan */ ++ { "BIG5", RTL_TEXTENCODING_BIG5 }, /* China - Traditional Chinese */ ++ { "EUCCN", RTL_TEXTENCODING_EUC_CN }, /* China */ ++ { "EUCGBK", RTL_TEXTENCODING_DONTKNOW }, /* China - Simplified Chinese */ ++ { "EUCJP", RTL_TEXTENCODING_EUC_JP }, /* Japan */ ++ { "EUCKR", RTL_TEXTENCODING_EUC_KR }, /* Korea */ ++ { "EUCTW", RTL_TEXTENCODING_EUC_TW }, /* Taiwan - Traditional Chinese */ ++ { "GBK", RTL_TEXTENCODING_GBK }, /* China - Simplified Chinese */ ++ { "ISO8859-1", RTL_TEXTENCODING_ISO_8859_1 }, /* Western */ ++ { "ISO8859-15", RTL_TEXTENCODING_ISO_8859_15 }, /* Western Updated (w/Euro sign) */ ++ { "ISO8859-2", RTL_TEXTENCODING_ISO_8859_2 }, /* Central European */ ++ { "ISO8859-5", RTL_TEXTENCODING_ISO_8859_5 }, /* Cyrillic */ ++ { "ISO8859-7", RTL_TEXTENCODING_ISO_8859_7 }, /* Greek */ ++ { "ISO8859-9", RTL_TEXTENCODING_ISO_8859_9 }, /* Turkish */ ++ { "SJIS", RTL_TEXTENCODING_SHIFT_JIS } /* Japan */ }; -#elif defined(LINUX) || defined(NETBSD) @@ -90,38 +87,89 @@ const _pair _nl_language_list[] = { { "ANSI_X3.110-1983", RTL_TEXTENCODING_DONTKNOW }, /* ISO-IR-99 NAPLPS */ -@@ -496,7 +523,7 @@ +@@ -496,7 +502,58 @@ { "WIN-SAMI-2", RTL_TEXTENCODING_DONTKNOW } /* WS2 */ }; -#endif /* ifdef LINUX || NETBSD */ -+#endif /* ifdef LINUX || FREEBSD */ ++#elif defined(FREEBSD) ++ ++const _pair _nl_language_list[] = { ++ { "ASCII", RTL_TEXTENCODING_ASCII_US }, /* US-ASCII */ ++ { "BIG5", RTL_TEXTENCODING_BIG5 }, /* China - Traditional Chinese */ ++ { "CP1251", RTL_TEXTENCODING_MS_1251 }, /* MS-CYRL */ ++ { "CP866", RTL_TEXTENCODING_IBM_866 }, /* CP866 866 */ ++ { "EUCCN", RTL_TEXTENCODING_EUC_CN }, /* China - Simplified Chinese */ ++ { "EUCJP", RTL_TEXTENCODING_EUC_JP }, /* Japan */ ++ { "EUCKR", RTL_TEXTENCODING_EUC_KR }, /* Korea */ ++ { "ISO8859-1", RTL_TEXTENCODING_ISO_8859_1 }, /* Western */ ++ { "ISO8859-15", RTL_TEXTENCODING_ISO_8859_15 }, /* Western Updated (w/Euro sign) */ ++ { "ISO8859-2", RTL_TEXTENCODING_ISO_8859_2 }, /* Central European */ ++ { "ISO8859-4", RTL_TEXTENCODING_ISO_8859_4 }, /* LATIN4 L4 */ ++ { "ISO8859-5", RTL_TEXTENCODING_ISO_8859_5 }, /* Cyrillic */ ++ { "ISO8859-7", RTL_TEXTENCODING_ISO_8859_7 }, /* Greek */ ++ { "ISO8859-9", RTL_TEXTENCODING_ISO_8859_9 }, /* Turkish */ ++ { "KOI-U", RTL_TEXTENCODING_DONTKNOW }, /* Not supported at the moment */ ++ { "KOI8-R", RTL_TEXTENCODING_KOI8_R }, /* KOI8 */ ++ { "SJIS", RTL_TEXTENCODING_SHIFT_JIS }, /* Japan */ ++ { "US-ASCII", RTL_TEXTENCODING_ASCII_US } /* US-ASCII */ ++}; ++ ++#elif defined(NETBSD) ++ ++const _pair _nl_language_list[] = { ++ { "ASCII", RTL_TEXTENCODING_ASCII_US }, /* US-ASCII */ ++ { "BIG5", RTL_TEXTENCODING_BIG5 }, /* China - Traditional Chinese */ ++ { "CP1251", RTL_TEXTENCODING_MS_1251 }, /* MS-CYRL */ ++ { "CP866", RTL_TEXTENCODING_IBM_866 }, /* CP866 866 */ ++ { "CTEXT", RTL_TEXTENCODING_ASCII_US }, /* US-ASCII */ ++ { "EUCCN", RTL_TEXTENCODING_EUC_CN }, /* China - Simplified Chinese */ ++ { "EUCJP", RTL_TEXTENCODING_EUC_JP }, /* Japan */ ++ { "EUCKR", RTL_TEXTENCODING_EUC_KR }, /* Korea */ ++ { "EUCTW", RTL_TEXTENCODING_EUC_TW }, /* China - Traditional Chinese */ ++ { "ISO-2022-JP", RTL_TEXTENCODING_DONTKNOW }, /* */ ++ { "ISO-2022-JP-2", RTL_TEXTENCODING_DONTKNOW }, /* */ ++ { "ISO8859-1", RTL_TEXTENCODING_ISO_8859_1 }, /* Western */ ++ { "ISO8859-15", RTL_TEXTENCODING_ISO_8859_15 }, /* Western Updated (w/Euro sign) */ ++ { "ISO8859-2", RTL_TEXTENCODING_ISO_8859_2 }, /* Central European */ ++ { "ISO8859-4", RTL_TEXTENCODING_ISO_8859_4 }, /* LATIN4 L4 */ ++ { "ISO8859-5", RTL_TEXTENCODING_ISO_8859_5 }, /* Cyrillic */ ++ { "ISO8859-7", RTL_TEXTENCODING_ISO_8859_7 }, /* Greek */ ++ { "ISO8859-9", RTL_TEXTENCODING_ISO_8859_9 }, /* Turkish */ ++ { "KOI-U", RTL_TEXTENCODING_DONTKNOW }, /* Not supported at the moment */ ++ { "KOI8-R", RTL_TEXTENCODING_KOI8_R }, /* KOI8 */ ++ { "SJIS", RTL_TEXTENCODING_SHIFT_JIS }, /* Japan */ ++ { "US-ASCII", RTL_TEXTENCODING_ASCII_US }, /* US-ASCII */ ++ { "UTF-8", RTL_TEXTENCODING_UTF8 } /* ISO-10646/UTF-8 */ ++}; ++ ++#endif /* ifdef SOLARIS IRIX LINUX FREEBSD NETBSD */ static pthread_mutex_t aLocalMutex = PTHREAD_MUTEX_INITIALIZER; -@@ -618,7 +645,7 @@ +@@ -618,7 +675,7 @@ return ret; } -#elif defined(MACOSX) /* ifdef LINUX || SOLARIS || NETBSD */ -+#elif defined(MACOSX) /* ifdef LINUX || SOLARIS || FREEBSD */ ++#elif defined(MACOSX) /* ifdef LINUX || SOLARIS || IRIX || FREEBSD || NETBSD */ /* * FIXME: the MacOS X implemetation is missing -@@ -651,7 +678,7 @@ +@@ -651,7 +708,7 @@ return 0; } -#else /* ifdef LINUX || SOLARIS || MACOSX || NETBSD */ -+#else /* ifdef LINUX || SOLARIS || FREEBSD || MACOSX */ ++#else /* ifdef LINUX || SOLARIS || IRIX || FREEBSD || NETBSD || MACOSX */ /* * This implementation of osl_getTextEncodingFromLocale maps -@@ -887,6 +914,6 @@ +@@ -887,6 +944,6 @@ return 0; } -#endif /* ifdef LINUX || SOLARIS || MACOSX || NETBSD */ -+#endif /* ifdef LINUX || SOLARIS || MACOSX || FREEBSD */ ++#endif /* ifdef LINUX || SOLARIS || FREEBSD || NETBSD || MACOSX */ diff --git a/editors/openoffice.org-3/files/patch-sal+osl+unx+nlsupport.c b/editors/openoffice.org-3/files/patch-sal+osl+unx+nlsupport.c index 1a606f1694c1..8107caa02bcc 100644 --- a/editors/openoffice.org-3/files/patch-sal+osl+unx+nlsupport.c +++ b/editors/openoffice.org-3/files/patch-sal+osl+unx+nlsupport.c @@ -1,23 +1,14 @@ ---- ../sal/osl/unx/nlsupport.c.orig Tue May 21 15:22:11 2002 -+++ ../sal/osl/unx/nlsupport.c Wed Jul 31 10:28:29 2002 +--- ../sal/osl/unx/nlsupport.c.orig Wed Aug 14 18:22:49 2002 ++++ ../sal/osl/unx/nlsupport.c Wed Aug 14 19:07:18 2002 @@ -63,7 +63,7 @@ #include <osl/diagnose.h> #include <osl/process.h> -#if defined(LINUX) || defined(SOLARIS) || defined(IRIX) || defined(NETBSD) -+#if defined(LINUX) || defined(SOLARIS) || defined(IRIX) || defined(FREEBSD) ++#if defined(LINUX) || defined(SOLARIS) || defined(IRIX) || defined(FREEBSD) || defined(NETBSD) #include <pthread.h> #include <locale.h> #include <langinfo.h> -@@ -87,7 +87,7 @@ - static int - _pair_compare (const char *key, const _pair *pair) - { -- int result = rtl_str_compareIgnoreAsciiCase( key, pair->key ); -+ unsigned int result = rtl_str_compareIgnoreAsciiCase( key, pair->key ); - return result; - } - @@ -114,8 +114,7 @@ comparison = _pair_compare( key, base + current ); if (comparison < 0) @@ -33,56 +24,62 @@ } -#if defined(LINUX) || defined(SOLARIS) || defined(IRIX) || defined(NETBSD) -+#if defined(LINUX) || defined(SOLARIS) || defined(IRIX) || defined(FREEBSD) ++#if defined(LINUX) || defined(SOLARIS) || defined(IRIX) || defined(FREEBSD) || defined(NETBSD) /* * This implementation of osl_getTextEncodingFromLocale maps * from nl_langinfo(CODESET) to rtl_textencoding defines. - * nl_langinfo() is supported only on Linux, Solaris and IRIX. -+ * nl_langinfo() is supported only on Linux, Solaris and IRIX -+ * and FreeBSD. ++ * nl_langinfo() is supported only on Linux, Solaris and IRIX, ++ * >= NetBSD 1.5 and >= FreeBSD 4.4 * * This routine is SLOW because of the setlocale call, so * grab the result and cache it. -@@ -260,6 +260,10 @@ +@@ -260,6 +260,12 @@ #endif #endif +/* + * _nl_language_list[] is an array list of supported encodings. Because + * we are using a binary search, the list has to be in ascending order. ++ * We are comparing the encodings case insensitiv, so the list has ++ * to be completly upper- , or lowercase. + */ #if defined(SOLARIS) -@@ -312,10 +316,33 @@ - { "big5", RTL_TEXTENCODING_BIG5 }, /* China - Traditional Chinese */ - { "eucgbk", RTL_TEXTENCODING_DONTKNOW }, /* China - Simplified Chinese */ - { "gbk", RTL_TEXTENCODING_GBK }, /* China - Simplified Chinese */ -+ { "sjis", RTL_TEXTENCODING_SHIFT_JIS } /* Japan */ -+}; -+ -+#elif defined(FREEBSD) -+ -+const _pair _nl_language_list[] = { -+ { "ascii", RTL_TEXTENCODING_ASCII_US }, /* US-ASCII */ -+ { "big5", RTL_TEXTENCODING_BIG5 }, /* China - Traditional Chinese */ -+ { "cp1251", RTL_TEXTENCODING_MS_1251 }, /* MS-CYRL */ -+ { "cp866", RTL_TEXTENCODING_IBM_866 }, /* CP866 866 */ -+ { "eucCN", RTL_TEXTENCODING_EUC_CN }, /* China - Simplified Chinese */ -+ { "eucJP", RTL_TEXTENCODING_EUC_JP }, /* Japan */ -+ { "eucKR", RTL_TEXTENCODING_EUC_KR }, /* Korea */ -+ { "iso8859-1", RTL_TEXTENCODING_ISO_8859_1 }, /* Western */ -+ { "iso8859-15", RTL_TEXTENCODING_ISO_8859_15 }, /* Western Updated (w/Euro sign) */ -+ { "iso8859-2", RTL_TEXTENCODING_ISO_8859_2 }, /* Central European */ -+ { "iso8859-4", RTL_TEXTENCODING_ISO_8859_4 }, /* LATIN4 L4 */ -+ { "iso8859-5", RTL_TEXTENCODING_ISO_8859_5 }, /* Cyrillic */ -+ { "iso8859-7", RTL_TEXTENCODING_ISO_8859_7 }, /* Greek */ -+ { "iso8859-9", RTL_TEXTENCODING_ISO_8859_9 }, /* Turkish */ -+ { "koi-u", RTL_TEXTENCODING_DONTKNOW }, /* Not supported at the moment */ -+ { "koi8-r", RTL_TEXTENCODING_KOI8_R }, /* KOI8 */ - { "sjis", RTL_TEXTENCODING_SHIFT_JIS }, /* Japan */ -+ { "us-ascii", RTL_TEXTENCODING_ASCII_US } /* US-ASCII */ +@@ -299,23 +305,23 @@ + #elif defined(IRIX) + + const _pair _nl_language_list[] = { +- { "ISO8859-1", RTL_TEXTENCODING_ISO_8859_1 }, /* Western */ +- { "ISO8859-2", RTL_TEXTENCODING_ISO_8859_2 }, /* Central European */ +- { "ISO8859-5", RTL_TEXTENCODING_ISO_8859_5 }, /* Cyrillic */ +- { "ISO8859-7", RTL_TEXTENCODING_ISO_8859_7 }, /* Greek */ +- { "ISO8859-9", RTL_TEXTENCODING_ISO_8859_9 }, /* Turkish */ +- { "ISO8859-15", RTL_TEXTENCODING_ISO_8859_15 }, /* Western Updated (w/Euro sign) */ +- { "eucJP", RTL_TEXTENCODING_EUC_JP }, /* Japan */ +- { "eucKR", RTL_TEXTENCODING_EUC_KR }, /* Korea */ +- { "eucCN", RTL_TEXTENCODING_EUC_CN }, /* China */ +- { "eucTW", RTL_TEXTENCODING_EUC_TW }, /* Taiwan - Traditional Chinese */ +- { "big5", RTL_TEXTENCODING_BIG5 }, /* China - Traditional Chinese */ +- { "eucgbk", RTL_TEXTENCODING_DONTKNOW }, /* China - Simplified Chinese */ +- { "gbk", RTL_TEXTENCODING_GBK }, /* China - Simplified Chinese */ +- { "sjis", RTL_TEXTENCODING_SHIFT_JIS }, /* Japan */ ++ { "BIG5", RTL_TEXTENCODING_BIG5 }, /* China - Traditional Chinese */ ++ { "EUCCN", RTL_TEXTENCODING_EUC_CN }, /* China */ ++ { "EUCGBK", RTL_TEXTENCODING_DONTKNOW }, /* China - Simplified Chinese */ ++ { "EUCJP", RTL_TEXTENCODING_EUC_JP }, /* Japan */ ++ { "EUCKR", RTL_TEXTENCODING_EUC_KR }, /* Korea */ ++ { "EUCTW", RTL_TEXTENCODING_EUC_TW }, /* Taiwan - Traditional Chinese */ ++ { "GBK", RTL_TEXTENCODING_GBK }, /* China - Simplified Chinese */ ++ { "ISO8859-1", RTL_TEXTENCODING_ISO_8859_1 }, /* Western */ ++ { "ISO8859-15", RTL_TEXTENCODING_ISO_8859_15 }, /* Western Updated (w/Euro sign) */ ++ { "ISO8859-2", RTL_TEXTENCODING_ISO_8859_2 }, /* Central European */ ++ { "ISO8859-5", RTL_TEXTENCODING_ISO_8859_5 }, /* Cyrillic */ ++ { "ISO8859-7", RTL_TEXTENCODING_ISO_8859_7 }, /* Greek */ ++ { "ISO8859-9", RTL_TEXTENCODING_ISO_8859_9 }, /* Turkish */ ++ { "SJIS", RTL_TEXTENCODING_SHIFT_JIS } /* Japan */ }; -#elif defined(LINUX) || defined(NETBSD) @@ -90,38 +87,89 @@ const _pair _nl_language_list[] = { { "ANSI_X3.110-1983", RTL_TEXTENCODING_DONTKNOW }, /* ISO-IR-99 NAPLPS */ -@@ -496,7 +523,7 @@ +@@ -496,7 +502,58 @@ { "WIN-SAMI-2", RTL_TEXTENCODING_DONTKNOW } /* WS2 */ }; -#endif /* ifdef LINUX || NETBSD */ -+#endif /* ifdef LINUX || FREEBSD */ ++#elif defined(FREEBSD) ++ ++const _pair _nl_language_list[] = { ++ { "ASCII", RTL_TEXTENCODING_ASCII_US }, /* US-ASCII */ ++ { "BIG5", RTL_TEXTENCODING_BIG5 }, /* China - Traditional Chinese */ ++ { "CP1251", RTL_TEXTENCODING_MS_1251 }, /* MS-CYRL */ ++ { "CP866", RTL_TEXTENCODING_IBM_866 }, /* CP866 866 */ ++ { "EUCCN", RTL_TEXTENCODING_EUC_CN }, /* China - Simplified Chinese */ ++ { "EUCJP", RTL_TEXTENCODING_EUC_JP }, /* Japan */ ++ { "EUCKR", RTL_TEXTENCODING_EUC_KR }, /* Korea */ ++ { "ISO8859-1", RTL_TEXTENCODING_ISO_8859_1 }, /* Western */ ++ { "ISO8859-15", RTL_TEXTENCODING_ISO_8859_15 }, /* Western Updated (w/Euro sign) */ ++ { "ISO8859-2", RTL_TEXTENCODING_ISO_8859_2 }, /* Central European */ ++ { "ISO8859-4", RTL_TEXTENCODING_ISO_8859_4 }, /* LATIN4 L4 */ ++ { "ISO8859-5", RTL_TEXTENCODING_ISO_8859_5 }, /* Cyrillic */ ++ { "ISO8859-7", RTL_TEXTENCODING_ISO_8859_7 }, /* Greek */ ++ { "ISO8859-9", RTL_TEXTENCODING_ISO_8859_9 }, /* Turkish */ ++ { "KOI-U", RTL_TEXTENCODING_DONTKNOW }, /* Not supported at the moment */ ++ { "KOI8-R", RTL_TEXTENCODING_KOI8_R }, /* KOI8 */ ++ { "SJIS", RTL_TEXTENCODING_SHIFT_JIS }, /* Japan */ ++ { "US-ASCII", RTL_TEXTENCODING_ASCII_US } /* US-ASCII */ ++}; ++ ++#elif defined(NETBSD) ++ ++const _pair _nl_language_list[] = { ++ { "ASCII", RTL_TEXTENCODING_ASCII_US }, /* US-ASCII */ ++ { "BIG5", RTL_TEXTENCODING_BIG5 }, /* China - Traditional Chinese */ ++ { "CP1251", RTL_TEXTENCODING_MS_1251 }, /* MS-CYRL */ ++ { "CP866", RTL_TEXTENCODING_IBM_866 }, /* CP866 866 */ ++ { "CTEXT", RTL_TEXTENCODING_ASCII_US }, /* US-ASCII */ ++ { "EUCCN", RTL_TEXTENCODING_EUC_CN }, /* China - Simplified Chinese */ ++ { "EUCJP", RTL_TEXTENCODING_EUC_JP }, /* Japan */ ++ { "EUCKR", RTL_TEXTENCODING_EUC_KR }, /* Korea */ ++ { "EUCTW", RTL_TEXTENCODING_EUC_TW }, /* China - Traditional Chinese */ ++ { "ISO-2022-JP", RTL_TEXTENCODING_DONTKNOW }, /* */ ++ { "ISO-2022-JP-2", RTL_TEXTENCODING_DONTKNOW }, /* */ ++ { "ISO8859-1", RTL_TEXTENCODING_ISO_8859_1 }, /* Western */ ++ { "ISO8859-15", RTL_TEXTENCODING_ISO_8859_15 }, /* Western Updated (w/Euro sign) */ ++ { "ISO8859-2", RTL_TEXTENCODING_ISO_8859_2 }, /* Central European */ ++ { "ISO8859-4", RTL_TEXTENCODING_ISO_8859_4 }, /* LATIN4 L4 */ ++ { "ISO8859-5", RTL_TEXTENCODING_ISO_8859_5 }, /* Cyrillic */ ++ { "ISO8859-7", RTL_TEXTENCODING_ISO_8859_7 }, /* Greek */ ++ { "ISO8859-9", RTL_TEXTENCODING_ISO_8859_9 }, /* Turkish */ ++ { "KOI-U", RTL_TEXTENCODING_DONTKNOW }, /* Not supported at the moment */ ++ { "KOI8-R", RTL_TEXTENCODING_KOI8_R }, /* KOI8 */ ++ { "SJIS", RTL_TEXTENCODING_SHIFT_JIS }, /* Japan */ ++ { "US-ASCII", RTL_TEXTENCODING_ASCII_US }, /* US-ASCII */ ++ { "UTF-8", RTL_TEXTENCODING_UTF8 } /* ISO-10646/UTF-8 */ ++}; ++ ++#endif /* ifdef SOLARIS IRIX LINUX FREEBSD NETBSD */ static pthread_mutex_t aLocalMutex = PTHREAD_MUTEX_INITIALIZER; -@@ -618,7 +645,7 @@ +@@ -618,7 +675,7 @@ return ret; } -#elif defined(MACOSX) /* ifdef LINUX || SOLARIS || NETBSD */ -+#elif defined(MACOSX) /* ifdef LINUX || SOLARIS || FREEBSD */ ++#elif defined(MACOSX) /* ifdef LINUX || SOLARIS || IRIX || FREEBSD || NETBSD */ /* * FIXME: the MacOS X implemetation is missing -@@ -651,7 +678,7 @@ +@@ -651,7 +708,7 @@ return 0; } -#else /* ifdef LINUX || SOLARIS || MACOSX || NETBSD */ -+#else /* ifdef LINUX || SOLARIS || FREEBSD || MACOSX */ ++#else /* ifdef LINUX || SOLARIS || IRIX || FREEBSD || NETBSD || MACOSX */ /* * This implementation of osl_getTextEncodingFromLocale maps -@@ -887,6 +914,6 @@ +@@ -887,6 +944,6 @@ return 0; } -#endif /* ifdef LINUX || SOLARIS || MACOSX || NETBSD */ -+#endif /* ifdef LINUX || SOLARIS || MACOSX || FREEBSD */ ++#endif /* ifdef LINUX || SOLARIS || FREEBSD || NETBSD || MACOSX */ diff --git a/editors/openoffice.org-vcltesttool/files/patch-sal+osl+unx+nlsupport.c b/editors/openoffice.org-vcltesttool/files/patch-sal+osl+unx+nlsupport.c index 1a606f1694c1..8107caa02bcc 100644 --- a/editors/openoffice.org-vcltesttool/files/patch-sal+osl+unx+nlsupport.c +++ b/editors/openoffice.org-vcltesttool/files/patch-sal+osl+unx+nlsupport.c @@ -1,23 +1,14 @@ ---- ../sal/osl/unx/nlsupport.c.orig Tue May 21 15:22:11 2002 -+++ ../sal/osl/unx/nlsupport.c Wed Jul 31 10:28:29 2002 +--- ../sal/osl/unx/nlsupport.c.orig Wed Aug 14 18:22:49 2002 ++++ ../sal/osl/unx/nlsupport.c Wed Aug 14 19:07:18 2002 @@ -63,7 +63,7 @@ #include <osl/diagnose.h> #include <osl/process.h> -#if defined(LINUX) || defined(SOLARIS) || defined(IRIX) || defined(NETBSD) -+#if defined(LINUX) || defined(SOLARIS) || defined(IRIX) || defined(FREEBSD) ++#if defined(LINUX) || defined(SOLARIS) || defined(IRIX) || defined(FREEBSD) || defined(NETBSD) #include <pthread.h> #include <locale.h> #include <langinfo.h> -@@ -87,7 +87,7 @@ - static int - _pair_compare (const char *key, const _pair *pair) - { -- int result = rtl_str_compareIgnoreAsciiCase( key, pair->key ); -+ unsigned int result = rtl_str_compareIgnoreAsciiCase( key, pair->key ); - return result; - } - @@ -114,8 +114,7 @@ comparison = _pair_compare( key, base + current ); if (comparison < 0) @@ -33,56 +24,62 @@ } -#if defined(LINUX) || defined(SOLARIS) || defined(IRIX) || defined(NETBSD) -+#if defined(LINUX) || defined(SOLARIS) || defined(IRIX) || defined(FREEBSD) ++#if defined(LINUX) || defined(SOLARIS) || defined(IRIX) || defined(FREEBSD) || defined(NETBSD) /* * This implementation of osl_getTextEncodingFromLocale maps * from nl_langinfo(CODESET) to rtl_textencoding defines. - * nl_langinfo() is supported only on Linux, Solaris and IRIX. -+ * nl_langinfo() is supported only on Linux, Solaris and IRIX -+ * and FreeBSD. ++ * nl_langinfo() is supported only on Linux, Solaris and IRIX, ++ * >= NetBSD 1.5 and >= FreeBSD 4.4 * * This routine is SLOW because of the setlocale call, so * grab the result and cache it. -@@ -260,6 +260,10 @@ +@@ -260,6 +260,12 @@ #endif #endif +/* + * _nl_language_list[] is an array list of supported encodings. Because + * we are using a binary search, the list has to be in ascending order. ++ * We are comparing the encodings case insensitiv, so the list has ++ * to be completly upper- , or lowercase. + */ #if defined(SOLARIS) -@@ -312,10 +316,33 @@ - { "big5", RTL_TEXTENCODING_BIG5 }, /* China - Traditional Chinese */ - { "eucgbk", RTL_TEXTENCODING_DONTKNOW }, /* China - Simplified Chinese */ - { "gbk", RTL_TEXTENCODING_GBK }, /* China - Simplified Chinese */ -+ { "sjis", RTL_TEXTENCODING_SHIFT_JIS } /* Japan */ -+}; -+ -+#elif defined(FREEBSD) -+ -+const _pair _nl_language_list[] = { -+ { "ascii", RTL_TEXTENCODING_ASCII_US }, /* US-ASCII */ -+ { "big5", RTL_TEXTENCODING_BIG5 }, /* China - Traditional Chinese */ -+ { "cp1251", RTL_TEXTENCODING_MS_1251 }, /* MS-CYRL */ -+ { "cp866", RTL_TEXTENCODING_IBM_866 }, /* CP866 866 */ -+ { "eucCN", RTL_TEXTENCODING_EUC_CN }, /* China - Simplified Chinese */ -+ { "eucJP", RTL_TEXTENCODING_EUC_JP }, /* Japan */ -+ { "eucKR", RTL_TEXTENCODING_EUC_KR }, /* Korea */ -+ { "iso8859-1", RTL_TEXTENCODING_ISO_8859_1 }, /* Western */ -+ { "iso8859-15", RTL_TEXTENCODING_ISO_8859_15 }, /* Western Updated (w/Euro sign) */ -+ { "iso8859-2", RTL_TEXTENCODING_ISO_8859_2 }, /* Central European */ -+ { "iso8859-4", RTL_TEXTENCODING_ISO_8859_4 }, /* LATIN4 L4 */ -+ { "iso8859-5", RTL_TEXTENCODING_ISO_8859_5 }, /* Cyrillic */ -+ { "iso8859-7", RTL_TEXTENCODING_ISO_8859_7 }, /* Greek */ -+ { "iso8859-9", RTL_TEXTENCODING_ISO_8859_9 }, /* Turkish */ -+ { "koi-u", RTL_TEXTENCODING_DONTKNOW }, /* Not supported at the moment */ -+ { "koi8-r", RTL_TEXTENCODING_KOI8_R }, /* KOI8 */ - { "sjis", RTL_TEXTENCODING_SHIFT_JIS }, /* Japan */ -+ { "us-ascii", RTL_TEXTENCODING_ASCII_US } /* US-ASCII */ +@@ -299,23 +305,23 @@ + #elif defined(IRIX) + + const _pair _nl_language_list[] = { +- { "ISO8859-1", RTL_TEXTENCODING_ISO_8859_1 }, /* Western */ +- { "ISO8859-2", RTL_TEXTENCODING_ISO_8859_2 }, /* Central European */ +- { "ISO8859-5", RTL_TEXTENCODING_ISO_8859_5 }, /* Cyrillic */ +- { "ISO8859-7", RTL_TEXTENCODING_ISO_8859_7 }, /* Greek */ +- { "ISO8859-9", RTL_TEXTENCODING_ISO_8859_9 }, /* Turkish */ +- { "ISO8859-15", RTL_TEXTENCODING_ISO_8859_15 }, /* Western Updated (w/Euro sign) */ +- { "eucJP", RTL_TEXTENCODING_EUC_JP }, /* Japan */ +- { "eucKR", RTL_TEXTENCODING_EUC_KR }, /* Korea */ +- { "eucCN", RTL_TEXTENCODING_EUC_CN }, /* China */ +- { "eucTW", RTL_TEXTENCODING_EUC_TW }, /* Taiwan - Traditional Chinese */ +- { "big5", RTL_TEXTENCODING_BIG5 }, /* China - Traditional Chinese */ +- { "eucgbk", RTL_TEXTENCODING_DONTKNOW }, /* China - Simplified Chinese */ +- { "gbk", RTL_TEXTENCODING_GBK }, /* China - Simplified Chinese */ +- { "sjis", RTL_TEXTENCODING_SHIFT_JIS }, /* Japan */ ++ { "BIG5", RTL_TEXTENCODING_BIG5 }, /* China - Traditional Chinese */ ++ { "EUCCN", RTL_TEXTENCODING_EUC_CN }, /* China */ ++ { "EUCGBK", RTL_TEXTENCODING_DONTKNOW }, /* China - Simplified Chinese */ ++ { "EUCJP", RTL_TEXTENCODING_EUC_JP }, /* Japan */ ++ { "EUCKR", RTL_TEXTENCODING_EUC_KR }, /* Korea */ ++ { "EUCTW", RTL_TEXTENCODING_EUC_TW }, /* Taiwan - Traditional Chinese */ ++ { "GBK", RTL_TEXTENCODING_GBK }, /* China - Simplified Chinese */ ++ { "ISO8859-1", RTL_TEXTENCODING_ISO_8859_1 }, /* Western */ ++ { "ISO8859-15", RTL_TEXTENCODING_ISO_8859_15 }, /* Western Updated (w/Euro sign) */ ++ { "ISO8859-2", RTL_TEXTENCODING_ISO_8859_2 }, /* Central European */ ++ { "ISO8859-5", RTL_TEXTENCODING_ISO_8859_5 }, /* Cyrillic */ ++ { "ISO8859-7", RTL_TEXTENCODING_ISO_8859_7 }, /* Greek */ ++ { "ISO8859-9", RTL_TEXTENCODING_ISO_8859_9 }, /* Turkish */ ++ { "SJIS", RTL_TEXTENCODING_SHIFT_JIS } /* Japan */ }; -#elif defined(LINUX) || defined(NETBSD) @@ -90,38 +87,89 @@ const _pair _nl_language_list[] = { { "ANSI_X3.110-1983", RTL_TEXTENCODING_DONTKNOW }, /* ISO-IR-99 NAPLPS */ -@@ -496,7 +523,7 @@ +@@ -496,7 +502,58 @@ { "WIN-SAMI-2", RTL_TEXTENCODING_DONTKNOW } /* WS2 */ }; -#endif /* ifdef LINUX || NETBSD */ -+#endif /* ifdef LINUX || FREEBSD */ ++#elif defined(FREEBSD) ++ ++const _pair _nl_language_list[] = { ++ { "ASCII", RTL_TEXTENCODING_ASCII_US }, /* US-ASCII */ ++ { "BIG5", RTL_TEXTENCODING_BIG5 }, /* China - Traditional Chinese */ ++ { "CP1251", RTL_TEXTENCODING_MS_1251 }, /* MS-CYRL */ ++ { "CP866", RTL_TEXTENCODING_IBM_866 }, /* CP866 866 */ ++ { "EUCCN", RTL_TEXTENCODING_EUC_CN }, /* China - Simplified Chinese */ ++ { "EUCJP", RTL_TEXTENCODING_EUC_JP }, /* Japan */ ++ { "EUCKR", RTL_TEXTENCODING_EUC_KR }, /* Korea */ ++ { "ISO8859-1", RTL_TEXTENCODING_ISO_8859_1 }, /* Western */ ++ { "ISO8859-15", RTL_TEXTENCODING_ISO_8859_15 }, /* Western Updated (w/Euro sign) */ ++ { "ISO8859-2", RTL_TEXTENCODING_ISO_8859_2 }, /* Central European */ ++ { "ISO8859-4", RTL_TEXTENCODING_ISO_8859_4 }, /* LATIN4 L4 */ ++ { "ISO8859-5", RTL_TEXTENCODING_ISO_8859_5 }, /* Cyrillic */ ++ { "ISO8859-7", RTL_TEXTENCODING_ISO_8859_7 }, /* Greek */ ++ { "ISO8859-9", RTL_TEXTENCODING_ISO_8859_9 }, /* Turkish */ ++ { "KOI-U", RTL_TEXTENCODING_DONTKNOW }, /* Not supported at the moment */ ++ { "KOI8-R", RTL_TEXTENCODING_KOI8_R }, /* KOI8 */ ++ { "SJIS", RTL_TEXTENCODING_SHIFT_JIS }, /* Japan */ ++ { "US-ASCII", RTL_TEXTENCODING_ASCII_US } /* US-ASCII */ ++}; ++ ++#elif defined(NETBSD) ++ ++const _pair _nl_language_list[] = { ++ { "ASCII", RTL_TEXTENCODING_ASCII_US }, /* US-ASCII */ ++ { "BIG5", RTL_TEXTENCODING_BIG5 }, /* China - Traditional Chinese */ ++ { "CP1251", RTL_TEXTENCODING_MS_1251 }, /* MS-CYRL */ ++ { "CP866", RTL_TEXTENCODING_IBM_866 }, /* CP866 866 */ ++ { "CTEXT", RTL_TEXTENCODING_ASCII_US }, /* US-ASCII */ ++ { "EUCCN", RTL_TEXTENCODING_EUC_CN }, /* China - Simplified Chinese */ ++ { "EUCJP", RTL_TEXTENCODING_EUC_JP }, /* Japan */ ++ { "EUCKR", RTL_TEXTENCODING_EUC_KR }, /* Korea */ ++ { "EUCTW", RTL_TEXTENCODING_EUC_TW }, /* China - Traditional Chinese */ ++ { "ISO-2022-JP", RTL_TEXTENCODING_DONTKNOW }, /* */ ++ { "ISO-2022-JP-2", RTL_TEXTENCODING_DONTKNOW }, /* */ ++ { "ISO8859-1", RTL_TEXTENCODING_ISO_8859_1 }, /* Western */ ++ { "ISO8859-15", RTL_TEXTENCODING_ISO_8859_15 }, /* Western Updated (w/Euro sign) */ ++ { "ISO8859-2", RTL_TEXTENCODING_ISO_8859_2 }, /* Central European */ ++ { "ISO8859-4", RTL_TEXTENCODING_ISO_8859_4 }, /* LATIN4 L4 */ ++ { "ISO8859-5", RTL_TEXTENCODING_ISO_8859_5 }, /* Cyrillic */ ++ { "ISO8859-7", RTL_TEXTENCODING_ISO_8859_7 }, /* Greek */ ++ { "ISO8859-9", RTL_TEXTENCODING_ISO_8859_9 }, /* Turkish */ ++ { "KOI-U", RTL_TEXTENCODING_DONTKNOW }, /* Not supported at the moment */ ++ { "KOI8-R", RTL_TEXTENCODING_KOI8_R }, /* KOI8 */ ++ { "SJIS", RTL_TEXTENCODING_SHIFT_JIS }, /* Japan */ ++ { "US-ASCII", RTL_TEXTENCODING_ASCII_US }, /* US-ASCII */ ++ { "UTF-8", RTL_TEXTENCODING_UTF8 } /* ISO-10646/UTF-8 */ ++}; ++ ++#endif /* ifdef SOLARIS IRIX LINUX FREEBSD NETBSD */ static pthread_mutex_t aLocalMutex = PTHREAD_MUTEX_INITIALIZER; -@@ -618,7 +645,7 @@ +@@ -618,7 +675,7 @@ return ret; } -#elif defined(MACOSX) /* ifdef LINUX || SOLARIS || NETBSD */ -+#elif defined(MACOSX) /* ifdef LINUX || SOLARIS || FREEBSD */ ++#elif defined(MACOSX) /* ifdef LINUX || SOLARIS || IRIX || FREEBSD || NETBSD */ /* * FIXME: the MacOS X implemetation is missing -@@ -651,7 +678,7 @@ +@@ -651,7 +708,7 @@ return 0; } -#else /* ifdef LINUX || SOLARIS || MACOSX || NETBSD */ -+#else /* ifdef LINUX || SOLARIS || FREEBSD || MACOSX */ ++#else /* ifdef LINUX || SOLARIS || IRIX || FREEBSD || NETBSD || MACOSX */ /* * This implementation of osl_getTextEncodingFromLocale maps -@@ -887,6 +914,6 @@ +@@ -887,6 +944,6 @@ return 0; } -#endif /* ifdef LINUX || SOLARIS || MACOSX || NETBSD */ -+#endif /* ifdef LINUX || SOLARIS || MACOSX || FREEBSD */ ++#endif /* ifdef LINUX || SOLARIS || FREEBSD || NETBSD || MACOSX */ diff --git a/editors/openoffice/files/patch-sal+osl+unx+nlsupport.c b/editors/openoffice/files/patch-sal+osl+unx+nlsupport.c index 1a606f1694c1..8107caa02bcc 100644 --- a/editors/openoffice/files/patch-sal+osl+unx+nlsupport.c +++ b/editors/openoffice/files/patch-sal+osl+unx+nlsupport.c @@ -1,23 +1,14 @@ ---- ../sal/osl/unx/nlsupport.c.orig Tue May 21 15:22:11 2002 -+++ ../sal/osl/unx/nlsupport.c Wed Jul 31 10:28:29 2002 +--- ../sal/osl/unx/nlsupport.c.orig Wed Aug 14 18:22:49 2002 ++++ ../sal/osl/unx/nlsupport.c Wed Aug 14 19:07:18 2002 @@ -63,7 +63,7 @@ #include <osl/diagnose.h> #include <osl/process.h> -#if defined(LINUX) || defined(SOLARIS) || defined(IRIX) || defined(NETBSD) -+#if defined(LINUX) || defined(SOLARIS) || defined(IRIX) || defined(FREEBSD) ++#if defined(LINUX) || defined(SOLARIS) || defined(IRIX) || defined(FREEBSD) || defined(NETBSD) #include <pthread.h> #include <locale.h> #include <langinfo.h> -@@ -87,7 +87,7 @@ - static int - _pair_compare (const char *key, const _pair *pair) - { -- int result = rtl_str_compareIgnoreAsciiCase( key, pair->key ); -+ unsigned int result = rtl_str_compareIgnoreAsciiCase( key, pair->key ); - return result; - } - @@ -114,8 +114,7 @@ comparison = _pair_compare( key, base + current ); if (comparison < 0) @@ -33,56 +24,62 @@ } -#if defined(LINUX) || defined(SOLARIS) || defined(IRIX) || defined(NETBSD) -+#if defined(LINUX) || defined(SOLARIS) || defined(IRIX) || defined(FREEBSD) ++#if defined(LINUX) || defined(SOLARIS) || defined(IRIX) || defined(FREEBSD) || defined(NETBSD) /* * This implementation of osl_getTextEncodingFromLocale maps * from nl_langinfo(CODESET) to rtl_textencoding defines. - * nl_langinfo() is supported only on Linux, Solaris and IRIX. -+ * nl_langinfo() is supported only on Linux, Solaris and IRIX -+ * and FreeBSD. ++ * nl_langinfo() is supported only on Linux, Solaris and IRIX, ++ * >= NetBSD 1.5 and >= FreeBSD 4.4 * * This routine is SLOW because of the setlocale call, so * grab the result and cache it. -@@ -260,6 +260,10 @@ +@@ -260,6 +260,12 @@ #endif #endif +/* + * _nl_language_list[] is an array list of supported encodings. Because + * we are using a binary search, the list has to be in ascending order. ++ * We are comparing the encodings case insensitiv, so the list has ++ * to be completly upper- , or lowercase. + */ #if defined(SOLARIS) -@@ -312,10 +316,33 @@ - { "big5", RTL_TEXTENCODING_BIG5 }, /* China - Traditional Chinese */ - { "eucgbk", RTL_TEXTENCODING_DONTKNOW }, /* China - Simplified Chinese */ - { "gbk", RTL_TEXTENCODING_GBK }, /* China - Simplified Chinese */ -+ { "sjis", RTL_TEXTENCODING_SHIFT_JIS } /* Japan */ -+}; -+ -+#elif defined(FREEBSD) -+ -+const _pair _nl_language_list[] = { -+ { "ascii", RTL_TEXTENCODING_ASCII_US }, /* US-ASCII */ -+ { "big5", RTL_TEXTENCODING_BIG5 }, /* China - Traditional Chinese */ -+ { "cp1251", RTL_TEXTENCODING_MS_1251 }, /* MS-CYRL */ -+ { "cp866", RTL_TEXTENCODING_IBM_866 }, /* CP866 866 */ -+ { "eucCN", RTL_TEXTENCODING_EUC_CN }, /* China - Simplified Chinese */ -+ { "eucJP", RTL_TEXTENCODING_EUC_JP }, /* Japan */ -+ { "eucKR", RTL_TEXTENCODING_EUC_KR }, /* Korea */ -+ { "iso8859-1", RTL_TEXTENCODING_ISO_8859_1 }, /* Western */ -+ { "iso8859-15", RTL_TEXTENCODING_ISO_8859_15 }, /* Western Updated (w/Euro sign) */ -+ { "iso8859-2", RTL_TEXTENCODING_ISO_8859_2 }, /* Central European */ -+ { "iso8859-4", RTL_TEXTENCODING_ISO_8859_4 }, /* LATIN4 L4 */ -+ { "iso8859-5", RTL_TEXTENCODING_ISO_8859_5 }, /* Cyrillic */ -+ { "iso8859-7", RTL_TEXTENCODING_ISO_8859_7 }, /* Greek */ -+ { "iso8859-9", RTL_TEXTENCODING_ISO_8859_9 }, /* Turkish */ -+ { "koi-u", RTL_TEXTENCODING_DONTKNOW }, /* Not supported at the moment */ -+ { "koi8-r", RTL_TEXTENCODING_KOI8_R }, /* KOI8 */ - { "sjis", RTL_TEXTENCODING_SHIFT_JIS }, /* Japan */ -+ { "us-ascii", RTL_TEXTENCODING_ASCII_US } /* US-ASCII */ +@@ -299,23 +305,23 @@ + #elif defined(IRIX) + + const _pair _nl_language_list[] = { +- { "ISO8859-1", RTL_TEXTENCODING_ISO_8859_1 }, /* Western */ +- { "ISO8859-2", RTL_TEXTENCODING_ISO_8859_2 }, /* Central European */ +- { "ISO8859-5", RTL_TEXTENCODING_ISO_8859_5 }, /* Cyrillic */ +- { "ISO8859-7", RTL_TEXTENCODING_ISO_8859_7 }, /* Greek */ +- { "ISO8859-9", RTL_TEXTENCODING_ISO_8859_9 }, /* Turkish */ +- { "ISO8859-15", RTL_TEXTENCODING_ISO_8859_15 }, /* Western Updated (w/Euro sign) */ +- { "eucJP", RTL_TEXTENCODING_EUC_JP }, /* Japan */ +- { "eucKR", RTL_TEXTENCODING_EUC_KR }, /* Korea */ +- { "eucCN", RTL_TEXTENCODING_EUC_CN }, /* China */ +- { "eucTW", RTL_TEXTENCODING_EUC_TW }, /* Taiwan - Traditional Chinese */ +- { "big5", RTL_TEXTENCODING_BIG5 }, /* China - Traditional Chinese */ +- { "eucgbk", RTL_TEXTENCODING_DONTKNOW }, /* China - Simplified Chinese */ +- { "gbk", RTL_TEXTENCODING_GBK }, /* China - Simplified Chinese */ +- { "sjis", RTL_TEXTENCODING_SHIFT_JIS }, /* Japan */ ++ { "BIG5", RTL_TEXTENCODING_BIG5 }, /* China - Traditional Chinese */ ++ { "EUCCN", RTL_TEXTENCODING_EUC_CN }, /* China */ ++ { "EUCGBK", RTL_TEXTENCODING_DONTKNOW }, /* China - Simplified Chinese */ ++ { "EUCJP", RTL_TEXTENCODING_EUC_JP }, /* Japan */ ++ { "EUCKR", RTL_TEXTENCODING_EUC_KR }, /* Korea */ ++ { "EUCTW", RTL_TEXTENCODING_EUC_TW }, /* Taiwan - Traditional Chinese */ ++ { "GBK", RTL_TEXTENCODING_GBK }, /* China - Simplified Chinese */ ++ { "ISO8859-1", RTL_TEXTENCODING_ISO_8859_1 }, /* Western */ ++ { "ISO8859-15", RTL_TEXTENCODING_ISO_8859_15 }, /* Western Updated (w/Euro sign) */ ++ { "ISO8859-2", RTL_TEXTENCODING_ISO_8859_2 }, /* Central European */ ++ { "ISO8859-5", RTL_TEXTENCODING_ISO_8859_5 }, /* Cyrillic */ ++ { "ISO8859-7", RTL_TEXTENCODING_ISO_8859_7 }, /* Greek */ ++ { "ISO8859-9", RTL_TEXTENCODING_ISO_8859_9 }, /* Turkish */ ++ { "SJIS", RTL_TEXTENCODING_SHIFT_JIS } /* Japan */ }; -#elif defined(LINUX) || defined(NETBSD) @@ -90,38 +87,89 @@ const _pair _nl_language_list[] = { { "ANSI_X3.110-1983", RTL_TEXTENCODING_DONTKNOW }, /* ISO-IR-99 NAPLPS */ -@@ -496,7 +523,7 @@ +@@ -496,7 +502,58 @@ { "WIN-SAMI-2", RTL_TEXTENCODING_DONTKNOW } /* WS2 */ }; -#endif /* ifdef LINUX || NETBSD */ -+#endif /* ifdef LINUX || FREEBSD */ ++#elif defined(FREEBSD) ++ ++const _pair _nl_language_list[] = { ++ { "ASCII", RTL_TEXTENCODING_ASCII_US }, /* US-ASCII */ ++ { "BIG5", RTL_TEXTENCODING_BIG5 }, /* China - Traditional Chinese */ ++ { "CP1251", RTL_TEXTENCODING_MS_1251 }, /* MS-CYRL */ ++ { "CP866", RTL_TEXTENCODING_IBM_866 }, /* CP866 866 */ ++ { "EUCCN", RTL_TEXTENCODING_EUC_CN }, /* China - Simplified Chinese */ ++ { "EUCJP", RTL_TEXTENCODING_EUC_JP }, /* Japan */ ++ { "EUCKR", RTL_TEXTENCODING_EUC_KR }, /* Korea */ ++ { "ISO8859-1", RTL_TEXTENCODING_ISO_8859_1 }, /* Western */ ++ { "ISO8859-15", RTL_TEXTENCODING_ISO_8859_15 }, /* Western Updated (w/Euro sign) */ ++ { "ISO8859-2", RTL_TEXTENCODING_ISO_8859_2 }, /* Central European */ ++ { "ISO8859-4", RTL_TEXTENCODING_ISO_8859_4 }, /* LATIN4 L4 */ ++ { "ISO8859-5", RTL_TEXTENCODING_ISO_8859_5 }, /* Cyrillic */ ++ { "ISO8859-7", RTL_TEXTENCODING_ISO_8859_7 }, /* Greek */ ++ { "ISO8859-9", RTL_TEXTENCODING_ISO_8859_9 }, /* Turkish */ ++ { "KOI-U", RTL_TEXTENCODING_DONTKNOW }, /* Not supported at the moment */ ++ { "KOI8-R", RTL_TEXTENCODING_KOI8_R }, /* KOI8 */ ++ { "SJIS", RTL_TEXTENCODING_SHIFT_JIS }, /* Japan */ ++ { "US-ASCII", RTL_TEXTENCODING_ASCII_US } /* US-ASCII */ ++}; ++ ++#elif defined(NETBSD) ++ ++const _pair _nl_language_list[] = { ++ { "ASCII", RTL_TEXTENCODING_ASCII_US }, /* US-ASCII */ ++ { "BIG5", RTL_TEXTENCODING_BIG5 }, /* China - Traditional Chinese */ ++ { "CP1251", RTL_TEXTENCODING_MS_1251 }, /* MS-CYRL */ ++ { "CP866", RTL_TEXTENCODING_IBM_866 }, /* CP866 866 */ ++ { "CTEXT", RTL_TEXTENCODING_ASCII_US }, /* US-ASCII */ ++ { "EUCCN", RTL_TEXTENCODING_EUC_CN }, /* China - Simplified Chinese */ ++ { "EUCJP", RTL_TEXTENCODING_EUC_JP }, /* Japan */ ++ { "EUCKR", RTL_TEXTENCODING_EUC_KR }, /* Korea */ ++ { "EUCTW", RTL_TEXTENCODING_EUC_TW }, /* China - Traditional Chinese */ ++ { "ISO-2022-JP", RTL_TEXTENCODING_DONTKNOW }, /* */ ++ { "ISO-2022-JP-2", RTL_TEXTENCODING_DONTKNOW }, /* */ ++ { "ISO8859-1", RTL_TEXTENCODING_ISO_8859_1 }, /* Western */ ++ { "ISO8859-15", RTL_TEXTENCODING_ISO_8859_15 }, /* Western Updated (w/Euro sign) */ ++ { "ISO8859-2", RTL_TEXTENCODING_ISO_8859_2 }, /* Central European */ ++ { "ISO8859-4", RTL_TEXTENCODING_ISO_8859_4 }, /* LATIN4 L4 */ ++ { "ISO8859-5", RTL_TEXTENCODING_ISO_8859_5 }, /* Cyrillic */ ++ { "ISO8859-7", RTL_TEXTENCODING_ISO_8859_7 }, /* Greek */ ++ { "ISO8859-9", RTL_TEXTENCODING_ISO_8859_9 }, /* Turkish */ ++ { "KOI-U", RTL_TEXTENCODING_DONTKNOW }, /* Not supported at the moment */ ++ { "KOI8-R", RTL_TEXTENCODING_KOI8_R }, /* KOI8 */ ++ { "SJIS", RTL_TEXTENCODING_SHIFT_JIS }, /* Japan */ ++ { "US-ASCII", RTL_TEXTENCODING_ASCII_US }, /* US-ASCII */ ++ { "UTF-8", RTL_TEXTENCODING_UTF8 } /* ISO-10646/UTF-8 */ ++}; ++ ++#endif /* ifdef SOLARIS IRIX LINUX FREEBSD NETBSD */ static pthread_mutex_t aLocalMutex = PTHREAD_MUTEX_INITIALIZER; -@@ -618,7 +645,7 @@ +@@ -618,7 +675,7 @@ return ret; } -#elif defined(MACOSX) /* ifdef LINUX || SOLARIS || NETBSD */ -+#elif defined(MACOSX) /* ifdef LINUX || SOLARIS || FREEBSD */ ++#elif defined(MACOSX) /* ifdef LINUX || SOLARIS || IRIX || FREEBSD || NETBSD */ /* * FIXME: the MacOS X implemetation is missing -@@ -651,7 +678,7 @@ +@@ -651,7 +708,7 @@ return 0; } -#else /* ifdef LINUX || SOLARIS || MACOSX || NETBSD */ -+#else /* ifdef LINUX || SOLARIS || FREEBSD || MACOSX */ ++#else /* ifdef LINUX || SOLARIS || IRIX || FREEBSD || NETBSD || MACOSX */ /* * This implementation of osl_getTextEncodingFromLocale maps -@@ -887,6 +914,6 @@ +@@ -887,6 +944,6 @@ return 0; } -#endif /* ifdef LINUX || SOLARIS || MACOSX || NETBSD */ -+#endif /* ifdef LINUX || SOLARIS || MACOSX || FREEBSD */ ++#endif /* ifdef LINUX || SOLARIS || FREEBSD || NETBSD || MACOSX */ diff --git a/editors/openoffice/files/patch-sal::osl::unx::nlsupport.c b/editors/openoffice/files/patch-sal::osl::unx::nlsupport.c index 1a606f1694c1..8107caa02bcc 100644 --- a/editors/openoffice/files/patch-sal::osl::unx::nlsupport.c +++ b/editors/openoffice/files/patch-sal::osl::unx::nlsupport.c @@ -1,23 +1,14 @@ ---- ../sal/osl/unx/nlsupport.c.orig Tue May 21 15:22:11 2002 -+++ ../sal/osl/unx/nlsupport.c Wed Jul 31 10:28:29 2002 +--- ../sal/osl/unx/nlsupport.c.orig Wed Aug 14 18:22:49 2002 ++++ ../sal/osl/unx/nlsupport.c Wed Aug 14 19:07:18 2002 @@ -63,7 +63,7 @@ #include <osl/diagnose.h> #include <osl/process.h> -#if defined(LINUX) || defined(SOLARIS) || defined(IRIX) || defined(NETBSD) -+#if defined(LINUX) || defined(SOLARIS) || defined(IRIX) || defined(FREEBSD) ++#if defined(LINUX) || defined(SOLARIS) || defined(IRIX) || defined(FREEBSD) || defined(NETBSD) #include <pthread.h> #include <locale.h> #include <langinfo.h> -@@ -87,7 +87,7 @@ - static int - _pair_compare (const char *key, const _pair *pair) - { -- int result = rtl_str_compareIgnoreAsciiCase( key, pair->key ); -+ unsigned int result = rtl_str_compareIgnoreAsciiCase( key, pair->key ); - return result; - } - @@ -114,8 +114,7 @@ comparison = _pair_compare( key, base + current ); if (comparison < 0) @@ -33,56 +24,62 @@ } -#if defined(LINUX) || defined(SOLARIS) || defined(IRIX) || defined(NETBSD) -+#if defined(LINUX) || defined(SOLARIS) || defined(IRIX) || defined(FREEBSD) ++#if defined(LINUX) || defined(SOLARIS) || defined(IRIX) || defined(FREEBSD) || defined(NETBSD) /* * This implementation of osl_getTextEncodingFromLocale maps * from nl_langinfo(CODESET) to rtl_textencoding defines. - * nl_langinfo() is supported only on Linux, Solaris and IRIX. -+ * nl_langinfo() is supported only on Linux, Solaris and IRIX -+ * and FreeBSD. ++ * nl_langinfo() is supported only on Linux, Solaris and IRIX, ++ * >= NetBSD 1.5 and >= FreeBSD 4.4 * * This routine is SLOW because of the setlocale call, so * grab the result and cache it. -@@ -260,6 +260,10 @@ +@@ -260,6 +260,12 @@ #endif #endif +/* + * _nl_language_list[] is an array list of supported encodings. Because + * we are using a binary search, the list has to be in ascending order. ++ * We are comparing the encodings case insensitiv, so the list has ++ * to be completly upper- , or lowercase. + */ #if defined(SOLARIS) -@@ -312,10 +316,33 @@ - { "big5", RTL_TEXTENCODING_BIG5 }, /* China - Traditional Chinese */ - { "eucgbk", RTL_TEXTENCODING_DONTKNOW }, /* China - Simplified Chinese */ - { "gbk", RTL_TEXTENCODING_GBK }, /* China - Simplified Chinese */ -+ { "sjis", RTL_TEXTENCODING_SHIFT_JIS } /* Japan */ -+}; -+ -+#elif defined(FREEBSD) -+ -+const _pair _nl_language_list[] = { -+ { "ascii", RTL_TEXTENCODING_ASCII_US }, /* US-ASCII */ -+ { "big5", RTL_TEXTENCODING_BIG5 }, /* China - Traditional Chinese */ -+ { "cp1251", RTL_TEXTENCODING_MS_1251 }, /* MS-CYRL */ -+ { "cp866", RTL_TEXTENCODING_IBM_866 }, /* CP866 866 */ -+ { "eucCN", RTL_TEXTENCODING_EUC_CN }, /* China - Simplified Chinese */ -+ { "eucJP", RTL_TEXTENCODING_EUC_JP }, /* Japan */ -+ { "eucKR", RTL_TEXTENCODING_EUC_KR }, /* Korea */ -+ { "iso8859-1", RTL_TEXTENCODING_ISO_8859_1 }, /* Western */ -+ { "iso8859-15", RTL_TEXTENCODING_ISO_8859_15 }, /* Western Updated (w/Euro sign) */ -+ { "iso8859-2", RTL_TEXTENCODING_ISO_8859_2 }, /* Central European */ -+ { "iso8859-4", RTL_TEXTENCODING_ISO_8859_4 }, /* LATIN4 L4 */ -+ { "iso8859-5", RTL_TEXTENCODING_ISO_8859_5 }, /* Cyrillic */ -+ { "iso8859-7", RTL_TEXTENCODING_ISO_8859_7 }, /* Greek */ -+ { "iso8859-9", RTL_TEXTENCODING_ISO_8859_9 }, /* Turkish */ -+ { "koi-u", RTL_TEXTENCODING_DONTKNOW }, /* Not supported at the moment */ -+ { "koi8-r", RTL_TEXTENCODING_KOI8_R }, /* KOI8 */ - { "sjis", RTL_TEXTENCODING_SHIFT_JIS }, /* Japan */ -+ { "us-ascii", RTL_TEXTENCODING_ASCII_US } /* US-ASCII */ +@@ -299,23 +305,23 @@ + #elif defined(IRIX) + + const _pair _nl_language_list[] = { +- { "ISO8859-1", RTL_TEXTENCODING_ISO_8859_1 }, /* Western */ +- { "ISO8859-2", RTL_TEXTENCODING_ISO_8859_2 }, /* Central European */ +- { "ISO8859-5", RTL_TEXTENCODING_ISO_8859_5 }, /* Cyrillic */ +- { "ISO8859-7", RTL_TEXTENCODING_ISO_8859_7 }, /* Greek */ +- { "ISO8859-9", RTL_TEXTENCODING_ISO_8859_9 }, /* Turkish */ +- { "ISO8859-15", RTL_TEXTENCODING_ISO_8859_15 }, /* Western Updated (w/Euro sign) */ +- { "eucJP", RTL_TEXTENCODING_EUC_JP }, /* Japan */ +- { "eucKR", RTL_TEXTENCODING_EUC_KR }, /* Korea */ +- { "eucCN", RTL_TEXTENCODING_EUC_CN }, /* China */ +- { "eucTW", RTL_TEXTENCODING_EUC_TW }, /* Taiwan - Traditional Chinese */ +- { "big5", RTL_TEXTENCODING_BIG5 }, /* China - Traditional Chinese */ +- { "eucgbk", RTL_TEXTENCODING_DONTKNOW }, /* China - Simplified Chinese */ +- { "gbk", RTL_TEXTENCODING_GBK }, /* China - Simplified Chinese */ +- { "sjis", RTL_TEXTENCODING_SHIFT_JIS }, /* Japan */ ++ { "BIG5", RTL_TEXTENCODING_BIG5 }, /* China - Traditional Chinese */ ++ { "EUCCN", RTL_TEXTENCODING_EUC_CN }, /* China */ ++ { "EUCGBK", RTL_TEXTENCODING_DONTKNOW }, /* China - Simplified Chinese */ ++ { "EUCJP", RTL_TEXTENCODING_EUC_JP }, /* Japan */ ++ { "EUCKR", RTL_TEXTENCODING_EUC_KR }, /* Korea */ ++ { "EUCTW", RTL_TEXTENCODING_EUC_TW }, /* Taiwan - Traditional Chinese */ ++ { "GBK", RTL_TEXTENCODING_GBK }, /* China - Simplified Chinese */ ++ { "ISO8859-1", RTL_TEXTENCODING_ISO_8859_1 }, /* Western */ ++ { "ISO8859-15", RTL_TEXTENCODING_ISO_8859_15 }, /* Western Updated (w/Euro sign) */ ++ { "ISO8859-2", RTL_TEXTENCODING_ISO_8859_2 }, /* Central European */ ++ { "ISO8859-5", RTL_TEXTENCODING_ISO_8859_5 }, /* Cyrillic */ ++ { "ISO8859-7", RTL_TEXTENCODING_ISO_8859_7 }, /* Greek */ ++ { "ISO8859-9", RTL_TEXTENCODING_ISO_8859_9 }, /* Turkish */ ++ { "SJIS", RTL_TEXTENCODING_SHIFT_JIS } /* Japan */ }; -#elif defined(LINUX) || defined(NETBSD) @@ -90,38 +87,89 @@ const _pair _nl_language_list[] = { { "ANSI_X3.110-1983", RTL_TEXTENCODING_DONTKNOW }, /* ISO-IR-99 NAPLPS */ -@@ -496,7 +523,7 @@ +@@ -496,7 +502,58 @@ { "WIN-SAMI-2", RTL_TEXTENCODING_DONTKNOW } /* WS2 */ }; -#endif /* ifdef LINUX || NETBSD */ -+#endif /* ifdef LINUX || FREEBSD */ ++#elif defined(FREEBSD) ++ ++const _pair _nl_language_list[] = { ++ { "ASCII", RTL_TEXTENCODING_ASCII_US }, /* US-ASCII */ ++ { "BIG5", RTL_TEXTENCODING_BIG5 }, /* China - Traditional Chinese */ ++ { "CP1251", RTL_TEXTENCODING_MS_1251 }, /* MS-CYRL */ ++ { "CP866", RTL_TEXTENCODING_IBM_866 }, /* CP866 866 */ ++ { "EUCCN", RTL_TEXTENCODING_EUC_CN }, /* China - Simplified Chinese */ ++ { "EUCJP", RTL_TEXTENCODING_EUC_JP }, /* Japan */ ++ { "EUCKR", RTL_TEXTENCODING_EUC_KR }, /* Korea */ ++ { "ISO8859-1", RTL_TEXTENCODING_ISO_8859_1 }, /* Western */ ++ { "ISO8859-15", RTL_TEXTENCODING_ISO_8859_15 }, /* Western Updated (w/Euro sign) */ ++ { "ISO8859-2", RTL_TEXTENCODING_ISO_8859_2 }, /* Central European */ ++ { "ISO8859-4", RTL_TEXTENCODING_ISO_8859_4 }, /* LATIN4 L4 */ ++ { "ISO8859-5", RTL_TEXTENCODING_ISO_8859_5 }, /* Cyrillic */ ++ { "ISO8859-7", RTL_TEXTENCODING_ISO_8859_7 }, /* Greek */ ++ { "ISO8859-9", RTL_TEXTENCODING_ISO_8859_9 }, /* Turkish */ ++ { "KOI-U", RTL_TEXTENCODING_DONTKNOW }, /* Not supported at the moment */ ++ { "KOI8-R", RTL_TEXTENCODING_KOI8_R }, /* KOI8 */ ++ { "SJIS", RTL_TEXTENCODING_SHIFT_JIS }, /* Japan */ ++ { "US-ASCII", RTL_TEXTENCODING_ASCII_US } /* US-ASCII */ ++}; ++ ++#elif defined(NETBSD) ++ ++const _pair _nl_language_list[] = { ++ { "ASCII", RTL_TEXTENCODING_ASCII_US }, /* US-ASCII */ ++ { "BIG5", RTL_TEXTENCODING_BIG5 }, /* China - Traditional Chinese */ ++ { "CP1251", RTL_TEXTENCODING_MS_1251 }, /* MS-CYRL */ ++ { "CP866", RTL_TEXTENCODING_IBM_866 }, /* CP866 866 */ ++ { "CTEXT", RTL_TEXTENCODING_ASCII_US }, /* US-ASCII */ ++ { "EUCCN", RTL_TEXTENCODING_EUC_CN }, /* China - Simplified Chinese */ ++ { "EUCJP", RTL_TEXTENCODING_EUC_JP }, /* Japan */ ++ { "EUCKR", RTL_TEXTENCODING_EUC_KR }, /* Korea */ ++ { "EUCTW", RTL_TEXTENCODING_EUC_TW }, /* China - Traditional Chinese */ ++ { "ISO-2022-JP", RTL_TEXTENCODING_DONTKNOW }, /* */ ++ { "ISO-2022-JP-2", RTL_TEXTENCODING_DONTKNOW }, /* */ ++ { "ISO8859-1", RTL_TEXTENCODING_ISO_8859_1 }, /* Western */ ++ { "ISO8859-15", RTL_TEXTENCODING_ISO_8859_15 }, /* Western Updated (w/Euro sign) */ ++ { "ISO8859-2", RTL_TEXTENCODING_ISO_8859_2 }, /* Central European */ ++ { "ISO8859-4", RTL_TEXTENCODING_ISO_8859_4 }, /* LATIN4 L4 */ ++ { "ISO8859-5", RTL_TEXTENCODING_ISO_8859_5 }, /* Cyrillic */ ++ { "ISO8859-7", RTL_TEXTENCODING_ISO_8859_7 }, /* Greek */ ++ { "ISO8859-9", RTL_TEXTENCODING_ISO_8859_9 }, /* Turkish */ ++ { "KOI-U", RTL_TEXTENCODING_DONTKNOW }, /* Not supported at the moment */ ++ { "KOI8-R", RTL_TEXTENCODING_KOI8_R }, /* KOI8 */ ++ { "SJIS", RTL_TEXTENCODING_SHIFT_JIS }, /* Japan */ ++ { "US-ASCII", RTL_TEXTENCODING_ASCII_US }, /* US-ASCII */ ++ { "UTF-8", RTL_TEXTENCODING_UTF8 } /* ISO-10646/UTF-8 */ ++}; ++ ++#endif /* ifdef SOLARIS IRIX LINUX FREEBSD NETBSD */ static pthread_mutex_t aLocalMutex = PTHREAD_MUTEX_INITIALIZER; -@@ -618,7 +645,7 @@ +@@ -618,7 +675,7 @@ return ret; } -#elif defined(MACOSX) /* ifdef LINUX || SOLARIS || NETBSD */ -+#elif defined(MACOSX) /* ifdef LINUX || SOLARIS || FREEBSD */ ++#elif defined(MACOSX) /* ifdef LINUX || SOLARIS || IRIX || FREEBSD || NETBSD */ /* * FIXME: the MacOS X implemetation is missing -@@ -651,7 +678,7 @@ +@@ -651,7 +708,7 @@ return 0; } -#else /* ifdef LINUX || SOLARIS || MACOSX || NETBSD */ -+#else /* ifdef LINUX || SOLARIS || FREEBSD || MACOSX */ ++#else /* ifdef LINUX || SOLARIS || IRIX || FREEBSD || NETBSD || MACOSX */ /* * This implementation of osl_getTextEncodingFromLocale maps -@@ -887,6 +914,6 @@ +@@ -887,6 +944,6 @@ return 0; } -#endif /* ifdef LINUX || SOLARIS || MACOSX || NETBSD */ -+#endif /* ifdef LINUX || SOLARIS || MACOSX || FREEBSD */ ++#endif /* ifdef LINUX || SOLARIS || FREEBSD || NETBSD || MACOSX */ |