diff options
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 1a606f1..8107caa 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 1a606f1..8107caa 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 1a606f1..8107caa 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 1a606f1..8107caa 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 1a606f1..8107caa 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 1a606f1..8107caa 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 1a606f1..8107caa 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 1a606f1..8107caa 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 1a606f1..8107caa 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 1a606f1..8107caa 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 1a606f1..8107caa 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 1a606f1..8107caa 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 1a606f1..8107caa 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 1a606f1..8107caa 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 1a606f1..8107caa 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 1a606f1..8107caa 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 1a606f1..8107caa 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 1a606f1..8107caa 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 1a606f1..8107caa 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 1a606f1..8107caa 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 1a606f1..8107caa 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 1a606f1..8107caa 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 1a606f1..8107caa 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 */ |