From 111bb972b2b34f424d22d35ae97a24b9407fca78 Mon Sep 17 00:00:00 2001 From: Ulrich Drepper Date: Wed, 15 Nov 2000 23:56:34 +0000 Subject: Update. 2000-11-15 Ulrich Drepper * intl/Makefile: tst-gettext2.sh does not need a third parameter. * intl/tst-gettext2.sh: Copy locale data. Adjust LOCPATH. Verify output of program. * intl/tst-gettext2.c: Set C locale if setting other locale failed. Use gettext() not _(). * locale/setlocale.c: Increment _nl_msg_cat_cntr whenever we successfully loaded a new locale. 2000-11-13 Andreas Jaeger * configure.in: Require gcc 2.95 or newer. 2000-11-15 Ulrich Drepper * sysdeps/unix/sysv/linux/paths.h: Adjust for FHS. Patch by Arkadiusz Miskiewicz . 2000-11-11 Jim Meyering * string/strndup.c (strndup): Cast return value to `char *'. 2000-11-15 Jim Meyering * sysdeps/generic/memchr.c: Remove some useless parentheses. [HAVE_STDLIB_H || defined _LIBC]: Include . [HAVE_BP_SYM_H || defined _LIBC]: Guard inclusion of bp-sym.h. [! (HAVE_BP_SYM_H || defined _LIBC)] (BP_SYM): Define as no-op. Also #undef __memchr. Use `weak_alias' only if it's defined. 2000-11-10 H.J. Lu * Makefile.in (install): Set LANGUAGE=C LC_ALL=C. --- intl/Makefile | 3 +-- intl/tst-gettext2.c | 16 ++++++++++------ intl/tst-gettext2.sh | 45 ++++++++++++++++++++++++++++++++++++--------- 3 files changed, 47 insertions(+), 17 deletions(-) (limited to 'intl') diff --git a/intl/Makefile b/intl/Makefile index e2df29cb93..fd24fcfe2a 100644 --- a/intl/Makefile +++ b/intl/Makefile @@ -60,8 +60,7 @@ $(objpfx)tst-gettext.out: tst-gettext.sh $(objpfx)tst-gettext $(objpfx)tst-translit.out: tst-translit.sh $(objpfx)tst-translit $(SHELL) -e $< $(common-objpfx) $(common-objpfx)intl/ $(objpfx)tst-gettext2.out: tst-gettext2.sh $(objpfx)tst-gettext2 - $(SHELL) -e $< $(common-objpfx) $(common-objpfx)intl/ \ - $(objpfx)tst-gettext + $(SHELL) -e $< $(common-objpfx) $(common-objpfx)intl/ endif endif endif diff --git a/intl/tst-gettext2.c b/intl/tst-gettext2.c index 0cc4cad84a..1174e8b4cc 100644 --- a/intl/tst-gettext2.c +++ b/intl/tst-gettext2.c @@ -24,15 +24,17 @@ #include #include -struct data_t { +struct data_t +{ const char *selection; const char *description; }; int data_cnt = 2; struct data_t strings[] = -{{"String1", N_("First string for testing.")}, - {"String2", N_("Another string for testing.")} +{ + { "String1", N_("First string for testing.") }, + { "String2", N_("Another string for testing.") } }; const int lang_cnt = 3; @@ -50,18 +52,20 @@ main (void) unsetenv ("LC_CTYPE"); unsetenv ("LANG"); unsetenv ("OUTPUT_CHARSET"); - + textdomain ("tstlang"); for (i = 0; i < lang_cnt; ++i) { int j; - setlocale (LC_ALL, lang[i]); + if (setlocale (LC_ALL, lang[i]) == NULL) + setlocale (LC_ALL, "C"); bindtextdomain ("tstlang", OBJPFX "domaindir"); for (j = 0; j < data_cnt; ++j) - printf ("%s - %s\n", strings[j].selection, _(strings[j].description)); + printf ("%s - %s\n", strings[j].selection, + gettext (strings[j].description)); } return 0; diff --git a/intl/tst-gettext2.sh b/intl/tst-gettext2.sh index 2c1a2e10ca..bb8ce47921 100644 --- a/intl/tst-gettext2.sh +++ b/intl/tst-gettext2.sh @@ -20,11 +20,10 @@ common_objpfx=$1 objpfx=$2 -malloc_trace=$3 GCONV_PATH=${common_objpfx}iconvdata export GCONV_PATH -LOCPATH=${common_objpfx}localedata +LOCPATH=${objpfx}domaindir export LOCPATH LC_ALL=C export LC_ALL @@ -32,10 +31,32 @@ export LC_ALL # Generate the test data. test -d ${objpfx}domaindir || mkdir ${objpfx}domaindir # Create the locale directories. -test -d ${objpfx}domaindir/lang1 || mkdir ${objpfx}domaindir/lang1 -test -d ${objpfx}domaindir/lang2 || mkdir ${objpfx}domaindir/lang2 -test -d ${objpfx}domaindir/lang1/LC_MESSAGES || mkdir ${objpfx}domaindir/lang1/LC_MESSAGES -test -d ${objpfx}domaindir/lang2/LC_MESSAGES || mkdir ${objpfx}domaindir/lang2/LC_MESSAGES +test -d ${objpfx}domaindir/lang1 || { + mkdir ${objpfx}domaindir/lang1 + for f in ADDRESS COLLATE CTYPE IDENTIFICATION MEASUREMENT MONETARY NAME NUMERIC PAPER TELEPHONE TIME; do + cp ${common_objpfx}localedata/de_DE.ISO-8859-1/LC_$f \ + ${objpfx}domaindir/lang1 + done +} +test -d ${objpfx}domaindir/lang2 || { + mkdir ${objpfx}domaindir/lang2 + for f in ADDRESS COLLATE CTYPE IDENTIFICATION MEASUREMENT MONETARY NAME NUMERIC PAPER TELEPHONE TIME; do + cp ${common_objpfx}localedata/de_DE.ISO-8859-1/LC_$f \ + ${objpfx}domaindir/lang2 + done +} +test -d ${objpfx}domaindir/lang1/LC_MESSAGES || { + mkdir ${objpfx}domaindir/lang1/LC_MESSAGES + cp ${common_objpfx}localedata/de_DE.ISO-8859-1/LC_MESSAGES/SYS_LC_MESSAGES \ + ${objpfx}domaindir/lang1/LC_MESSAGES +} +test -d ${objpfx}domaindir/lang2/LC_MESSAGES || { + mkdir ${objpfx}domaindir/lang2/LC_MESSAGES + cp ${common_objpfx}localedata/de_DE.ISO-8859-1/LC_MESSAGES/SYS_LC_MESSAGES \ + ${objpfx}domaindir/lang2/LC_MESSAGES +} + +test -f # Populate them. msgfmt -o ${objpfx}domaindir/lang1/LC_MESSAGES/tstlang.mo \ @@ -46,9 +67,15 @@ msgfmt -o ${objpfx}domaindir/lang2/LC_MESSAGES/tstlang.mo \ # Now run the test. -MALLOC_TRACE=$malloc_trace \ ${common_objpfx}elf/ld.so --library-path $common_objpfx \ -${objpfx}tst-gettext2 > ${objpfx}tst-gettext2.out ${objpfx}domaindir +${objpfx}tst-gettext2 > ${objpfx}tst-gettext2.out ${objpfx}domaindir && +cmp ${objpfx}tst-gettext2.out - <