about summary refs log tree commit diff
path: root/intl
diff options
context:
space:
mode:
Diffstat (limited to 'intl')
-rw-r--r--intl/Makefile3
-rw-r--r--intl/tst-gettext2.c16
-rw-r--r--intl/tst-gettext2.sh45
3 files changed, 47 insertions, 17 deletions
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 <stdlib.h>
 #include <stdio.h>
 
-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 - <<EOF
+String1 - Lang1: 1st string
+String2 - Lang1: 2nd string
+String1 - Lang2: 1st string
+String2 - Lang2: 2nd string
+String1 - First string for testing.
+String2 - Another string for testing.
+EOF
 
 exit $?
-