about summary refs log tree commit diff
path: root/intl/tst-gettext2.c
diff options
context:
space:
mode:
authorUlrich Drepper <drepper@redhat.com>2000-10-31 03:10:13 +0000
committerUlrich Drepper <drepper@redhat.com>2000-10-31 03:10:13 +0000
commitcdfb970dd9c20861d7fdac16435d70792b8a027a (patch)
treedfa5497c0b5b06408284073aa184688091b065c4 /intl/tst-gettext2.c
parent42fea164a2f975da1b1bb687bf1a50506b59a668 (diff)
downloadglibc-cdfb970dd9c20861d7fdac16435d70792b8a027a.tar.gz
glibc-cdfb970dd9c20861d7fdac16435d70792b8a027a.tar.xz
glibc-cdfb970dd9c20861d7fdac16435d70792b8a027a.zip
Update.
	* locale/findlocale.c (free_mem): We can remove NODELETE marked
	data, just not the C locale data.

	* intl/tst-gettext.c: Use setlocale() in addition to setting envvar.
	* intl/tst-gettext.sh: Copy locale data if necessary.
	* intl/Makefile (generated-dirs): Add localedir.

	* intl/dcigettext.c (guess_category_value): For libc always use
	the setlocale() method.

	* intl/Makefile: Add rules to build, run and, distribute  tst-gettext2.
	* intl/tst-gettext2.c: New file.
	* intl/tst-gettext2.sh: New file.
	* intl/tstlang1.po: New file.
	* intl/tstlang2.po: New file.
	Patch by Andreas Jaeger <aj@suse.de>.

2000-10-26  GOTO Masanori  <gotom@debian.or.jp>

	* intl/locale.alias: Add ja_JP.ujis alias.

2000-10-30  Ulrich Drepper  <drepper@redhat.com>
Diffstat (limited to 'intl/tst-gettext2.c')
-rw-r--r--intl/tst-gettext2.c68
1 files changed, 68 insertions, 0 deletions
diff --git a/intl/tst-gettext2.c b/intl/tst-gettext2.c
new file mode 100644
index 0000000000..0cc4cad84a
--- /dev/null
+++ b/intl/tst-gettext2.c
@@ -0,0 +1,68 @@
+/* Test of the gettext functions.
+   Copyright (C) 2000 Free Software Foundation, Inc.
+   Contributed by Thorsten Kukuk <kukuk@suse.de> and
+   Andreas Jaeger <aj@suse.de>, 2000.
+
+   The GNU C Library is free software; you can redistribute it and/or
+   modify it under the terms of the GNU Library General Public License as
+   published by the Free Software Foundation; either version 2 of the
+   License, or (at your option) any later version.
+
+   The GNU C Library is distributed in the hope that it will be useful,
+   but WITHOUT ANY WARRANTY; without even the implied warranty of
+   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+   Library General Public License for more details.
+
+   You should have received a copy of the GNU Library General Public
+   License along with the GNU C Library; see the file COPYING.LIB.  If not,
+   write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330,
+   Boston, MA 02111-1307, USA.  */
+
+
+#include <locale.h>
+#include <libintl.h>
+#include <stdlib.h>
+#include <stdio.h>
+
+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.")}
+};
+
+const int lang_cnt = 3;
+const char *lang[] = {"lang1", "lang2", "lang3"};
+
+int
+main (void)
+{
+  int i;
+
+  /* Clean up environment.  */
+  unsetenv ("LANGUAGE");
+  unsetenv ("LC_ALL");
+  unsetenv ("LC_MESSAGES");
+  unsetenv ("LC_CTYPE");
+  unsetenv ("LANG");
+  unsetenv ("OUTPUT_CHARSET");
+  
+  textdomain ("tstlang");
+
+  for (i = 0; i < lang_cnt; ++i)
+    {
+      int j;
+
+      setlocale (LC_ALL, lang[i]);
+      bindtextdomain ("tstlang", OBJPFX "domaindir");
+
+      for (j = 0; j < data_cnt; ++j)
+	printf ("%s - %s\n", strings[j].selection, _(strings[j].description));
+    }
+
+  return 0;
+}