From 97fa7e4889341f41a3f481361b2e8a6c552d8186 Mon Sep 17 00:00:00 2001 From: Tanaka Akira Date: Fri, 22 Oct 1999 12:56:43 +0000 Subject: zsh-workers/8372 --- INSTALL | 1 + Src/main.c | 2 +- Src/params.c | 8 ++++---- Src/system.h | 6 ++++++ acconfig.h | 3 +++ configure.in | 11 ++++++++++- 6 files changed, 25 insertions(+), 6 deletions(-) diff --git a/INSTALL b/INSTALL index 92399bc0a..f5c08b1c3 100644 --- a/INSTALL +++ b/INSTALL @@ -358,3 +358,4 @@ Features: function-subdirs # if functions will be installed into subdirectories dynamic # allow dynamically loaded binary modules lfs # allow configure check for large files + locale # allow use of locale library diff --git a/Src/main.c b/Src/main.c index 762e06b90..51e929bc7 100644 --- a/Src/main.c +++ b/Src/main.c @@ -35,7 +35,7 @@ int main(int argc, char **argv) { char **t; -#ifdef LC_ALL +#ifdef USE_LOCALE setlocale(LC_ALL, ""); #endif diff --git a/Src/params.c b/Src/params.c index 9f54084af..64aa7c865 100644 --- a/Src/params.c +++ b/Src/params.c @@ -146,7 +146,7 @@ IPDEF2("WORDCHARS", wordcharsgetfn, wordcharssetfn, 0), IPDEF2("IFS", ifsgetfn, ifssetfn, PM_DONTIMPORT), IPDEF2("_", underscoregetfn, nullsetfn, PM_READONLY), -#ifdef LC_ALL +#ifdef USE_LOCALE # define LCIPDEF(name) IPDEF2(name, strgetfn, lcsetfn, PM_UNSET) IPDEF2("LANG", strgetfn, langsetfn, PM_UNSET), IPDEF2("LC_ALL", strgetfn, lc_allsetfn, PM_UNSET), @@ -162,7 +162,7 @@ LCIPDEF("LC_MESSAGES"), # ifdef LC_TIME LCIPDEF("LC_TIME"), # endif -#endif +#endif /* USE_LOCALE */ #define IPDEF4(A,B) {NULL,A,PM_INTEGER|PM_READONLY|PM_SPECIAL,BR((void *)B),SFN(nullsetfn),GFN(intvargetfn),stdunsetfn,10,NULL,NULL,NULL,0} IPDEF4("!", &lastpid), @@ -2444,7 +2444,7 @@ ifssetfn(Param pm, char *x) /* Functions to set value of special parameters `LANG' and `LC_*' */ -#ifdef LC_ALL +#ifdef USE_LOCALE static struct localename { char *name; int category; @@ -2511,7 +2511,7 @@ lcsetfn(Param pm, char *x) if (!strcmp(ln->name, pm->nam)) setlocale(ln->category, x ? x : ""); } -#endif +#endif /* USE_LOCALE */ /* Function to get value for special parameter `HISTSIZE' */ diff --git a/Src/system.h b/Src/system.h index dbc387947..67f919bc8 100644 --- a/Src/system.h +++ b/Src/system.h @@ -632,3 +632,9 @@ extern short ospeed; #undef ESRCH #define ESRCH EINVAL #endif /* BROKEN_KILL_ESRCH */ + +/* Can we do locale stuff? */ +#undef USE_LOCALE +#if defined(CONFIG_LOCALE) && defined(HAVE_SETLOCALE) && defined(LC_ALL) +# define USE_LOCALE 1 +#endif /* CONFIG_LOCALE && HAVE_SETLOCALE && LC_ALL */ diff --git a/acconfig.h b/acconfig.h index 2e61e7bb0..ad041c4ee 100644 --- a/acconfig.h +++ b/acconfig.h @@ -166,6 +166,9 @@ /* Define for Maildir support */ #undef MAILDIR_SUPPORT +/* Define if you want locale features. By default this is defined. */ +#undef CONFIG_LOCALE + /* Define to 1 if your termcap library has the ospeed variable */ #undef HAVE_OSPEED /* Define to 1 if you have ospeed, but it is not defined in termcap.h */ diff --git a/configure.in b/configure.in index e5ac216a3..b975a158c 100644 --- a/configure.in +++ b/configure.in @@ -201,6 +201,15 @@ fi], AC_DEFINE(RESTRICTED_R) ) +dnl Do you want to disable use of locale functions +AC_ARG_ENABLE([locale], +[ --disable-locale turn off locale features], +[if test x$enableval = xyes; then + AC_DEFINE(CONFIG_LOCALE) +fi], +AC_DEFINE(CONFIG_LOCALE) +) + undefine([fndir])dnl AC_ARG_ENABLE(fndir, [ --enable-fndir=DIR where functions go (default DATADIR/zsh/functions)], @@ -774,7 +783,7 @@ AC_CHECK_FUNCS(memcpy memmove \ sigprocmask setuid seteuid setreuid setresuid setsid strerror \ nis_list initgroups fchdir cap_get_proc readlink nice \ getgrgid getgrnam getpwent getpwnam getpwuid setpgrp \ - fseeko ftello mmap munmap msync ftruncate) + fseeko ftello mmap munmap msync ftruncate setlocale) dnl --------------- dnl CHECK FUNCTIONS -- cgit 1.4.1