diff options
Diffstat (limited to 'src/xlibi18n/lcInit.c')
-rw-r--r-- | src/xlibi18n/lcInit.c | 129 |
1 files changed, 39 insertions, 90 deletions
diff --git a/src/xlibi18n/lcInit.c b/src/xlibi18n/lcInit.c index e4d3a7a4..cfa2b076 100644 --- a/src/xlibi18n/lcInit.c +++ b/src/xlibi18n/lcInit.c @@ -74,156 +74,105 @@ Sun Microsystems, Inc. or its licensors is granted. * Modifier: Masayoshi Shimamura FUJITSU LIMITED * */ +/* $XFree86: xc/lib/X11/lcInit.c,v 3.10 2002/11/01 13:43:31 alanh Exp $ */ #include "Xlibint.h" #include "Xlcint.h" #ifdef USE_DYNAMIC_LC #undef USE_DEFAULT_LOADER +#undef USE_GENERIC_LOADER +#undef USE_UTF8_LOADER #else #define USE_GENERIC_LOADER #define USE_DEFAULT_LOADER +#define USE_UTF8_LOADER #ifdef X_LOCALE # define USE_EUC_LOADER # define USE_SJIS_LOADER # define USE_JIS_LOADER -# define USE_UTF_LOADER #endif #endif -#ifdef USE_DEFAULT_LOADER -extern XLCd _XlcDefaultLoader( -#if NeedFunctionPrototypes - char* -#endif -); -#endif +/* + * The _XlcInitLoader function initializes the locale object loader list + * with vendor specific manner. + */ -#ifdef USE_DYNAMIC_LC -extern XLCd _XlcDynamicLoad( -#if NeedFunctionPrototypes - char* -#endif -); -#endif +void +_XlcInitLoader() +{ -#ifdef DYNAMIC_LOAD -#ifdef AIXV3 -extern XLCd _XaixOsDynamicLoad( -#if NeedFunctionPrototypes - char* -#endif -); -#endif /* AIXV3 */ -#endif +#ifdef USE_DYNAMIC_LC + _XlcAddLoader(_XlcDynamicLoad, XlcHead); +#else /* USE_DYNAMIC_LC */ #ifdef USE_GENERIC_LOADER -extern XLCd _XlcGenericLoader( -#if NeedFunctionPrototypes - char* -#endif -); + _XlcAddLoader(_XlcGenericLoader, XlcHead); #endif -#ifdef USE_UTF_LOADER -extern XLCd _XlcUtfLoader( -#if NeedFunctionPrototypes - char* +#ifdef USE_DEFAULT_LOADER + _XlcAddLoader(_XlcDefaultLoader, XlcHead); #endif -); + +#ifdef USE_UTF8_LOADER + _XlcAddLoader(_XlcUtf8Loader, XlcHead); #endif #ifdef USE_EUC_LOADER -extern XLCd _XlcEucLoader( -#if NeedFunctionPrototypes - char* -#endif -); + _XlcAddLoader(_XlcEucLoader, XlcHead); #endif #ifdef USE_SJIS_LOADER -extern XLCd _XlcSjisLoader( -#if NeedFunctionPrototypes - char* -#endif -); + _XlcAddLoader(_XlcSjisLoader, XlcHead); #endif #ifdef USE_JIS_LOADER -extern XLCd _XlcJisLoader( -#if NeedFunctionPrototypes - char* -#endif -); + _XlcAddLoader(_XlcJisLoader, XlcHead); #endif #ifdef USE_DYNAMIC_LOADER -extern XLCd _XlcDynamicLoader( -#if NeedFunctionPrototypes - char* -#endif -); + _XlcAddLoader(_XlcDynamicLoader, XlcHead); #endif -/* - * The _XlcInitLoader function initializes the locale object loader list - * with vendor specific manner. - */ +#endif /* USE_DYNAMIC_LC */ +} void -#if NeedFunctionPrototypes -_XlcInitLoader(char *name) -#else -_XlcInitLoader(name) - char *name; -#endif +_XlcDeInitLoader() { #ifdef USE_DYNAMIC_LC - _XlcAddLoader(_XlcDynamicLoad, XlcHead); - -#ifdef USE_DEFAULT_LOADER - if (strcmp(name, "C") == 0 || strcmp(name, "POSIX") == 0) - _XlcAddLoader(_XlcDefaultLoader, XlcHead); - else - _XlcAddLoader(_XlcDefaultLoader, XlcTail); -#endif - + _XlcRemoveLoader(_XlcDynamicLoad); #else /* USE_DYNAMIC_LC */ #ifdef USE_GENERIC_LOADER - _XlcAddLoader(_XlcGenericLoader, XlcHead); + _XlcRemoveLoader(_XlcGenericLoader); #endif #ifdef USE_DEFAULT_LOADER - _XlcAddLoader(_XlcDefaultLoader, XlcHead); + _XlcRemoveLoader(_XlcDefaultLoader); +#endif + +#ifdef USE_UTF8_LOADER + _XlcRemoveLoader(_XlcUtf8Loader); #endif #ifdef USE_EUC_LOADER - _XlcAddLoader(_XlcEucLoader, XlcHead); + _XlcRemoveLoader(_XlcEucLoader); #endif #ifdef USE_SJIS_LOADER - _XlcAddLoader(_XlcSjisLoader, XlcHead); + _XlcRemoveLoader(_XlcSjisLoader); #endif #ifdef USE_JIS_LOADER - _XlcAddLoader(_XlcJisLoader, XlcHead); + _XlcRemoveLoader(_XlcJisLoader); #endif -#ifdef USE_UTF_LOADER - _XlcAddLoader(_XlcUtfLoader, XlcHead); +#ifdef USE_DYNAMIC_LOADER + _XlcRemoveLoader(_XlcDynamicLoader); #endif #endif /* USE_DYNAMIC_LC */ - -#ifdef DYNAMIC_LOAD -#ifdef AIXV3 - _XlcAddLoader(_XaixOsDynamicLoad, XlcHead); -#endif /* AIXV3 */ -#endif /* DYNAMIC_LOAD */ - -#ifdef USE_DYNAMIC_LOADER - _XlcAddLoader(_XlcDynamicLoader, XlcHead); -#endif } |