summary refs log tree commit diff
path: root/localedata
diff options
context:
space:
mode:
Diffstat (limited to 'localedata')
-rw-r--r--localedata/ChangeLog5
-rw-r--r--localedata/Makefile8
-rw-r--r--localedata/locales/de_AT4
-rw-r--r--localedata/locales/de_DE4
-rw-r--r--localedata/locales/ru_RU78
-rw-r--r--localedata/tst-rpmatch.c37
-rwxr-xr-xlocaledata/tst-rpmatch.sh64
7 files changed, 154 insertions, 46 deletions
diff --git a/localedata/ChangeLog b/localedata/ChangeLog
index ed255649de..e968fe07b9 100644
--- a/localedata/ChangeLog
+++ b/localedata/ChangeLog
@@ -1,3 +1,8 @@
+1998-03-08  Ulrich Drepper  <drepper@cygnus.com>
+
+	* locales/ru_RU: Correct inconsistencies in mon data.
+	Patch by Alexander V. Lukyanov <lav@alpha.netis.ru>.
+
 1997-10-09 04:56  Ulrich Drepper  <drepper@cygnus.com>
 
 	* locales/is_IS: Update from Debian version.
diff --git a/localedata/Makefile b/localedata/Makefile
index 4e26d15374..d62a6a346c 100644
--- a/localedata/Makefile
+++ b/localedata/Makefile
@@ -30,7 +30,7 @@ charmaps := $(filter-out $(addprefix charmaps/, CVS RCS %~), \
 locales := $(filter-out $(addprefix locales/, CVS RCS %~), \
 				    $(wildcard locales/*))
 
-test-srcs := collate-test xfrm-test tst-fmon
+test-srcs := collate-test xfrm-test tst-fmon tst-rpmatch
 test-input := de_DE.ISO-8859-1 da_DK.ISO-8859-1 fr_CA,2.13.ISO-8859-1
 test-output := $(foreach s, .out .xout, \
 			 $(addsuffix $s, $(basename $(test-input))))
@@ -43,7 +43,7 @@ ld-test-srcs := $(addprefix tests/,$(addsuffix .cm,$(ld-test-names)) \
 
 distribute := CHECKSUMS tst-fmon.sh tst-fmon.data ChangeLog sort-test.sh \
 	      README mnemonic.ds fr_CA,2.13.in de_DE.in da_DK.in	 \
-	      $(charmaps) $(locales) $(ld-test-srcs)
+	      $(charmaps) $(locales) $(ld-test-srcs) tst-rpmatch.sh
 
 # Get $(inst_i18ndir) defined.
 include ../Makeconfig
@@ -59,8 +59,10 @@ $(inst_i18ndir)/locales/%: locales/%; $(do-install)
 
 
 ifeq (no,$(cross-compiling))
-tests: $(objpfx)collate-test $(objpfx)xfrm-test $(objpfx)tst-fmon
+tests: $(objpfx)collate-test $(objpfx)xfrm-test $(objpfx)tst-fmon \
+       $(objpfx)tst-rpmatch
 	$(SHELL) -e sort-test.sh $(common-objpfx) $(test-input)
 	$(SHELL) -e tst-fmon.sh $(common-objpfx) tst-fmon.data
 	$(SHELL) -e tst-locale.sh $(common-objpfx)
+	$(SHELL) -e tst-rpmatch.sh $(common-objpfx)
 endif
diff --git a/localedata/locales/de_AT b/localedata/locales/de_AT
index 2c75d68694..a4642179d4 100644
--- a/localedata/locales/de_AT
+++ b/localedata/locales/de_AT
@@ -27,8 +27,8 @@ copy "en_DK"
 END LC_COLLATE
 
 LC_MESSAGES
-yesexpr "<<(><j><J><y><Y><)/>><.><*>"
-noexpr  "<<(><n><N><)/>><.><*>"
+yesexpr "<'/>><<(><j><J><y><Y><)/>><.><*>"
+noexpr  "<'/>><<(><n><N><)/>><.><*>"
 END LC_MESSAGES
 
 LC_MONETARY
diff --git a/localedata/locales/de_DE b/localedata/locales/de_DE
index 6308ff3b5d..b13f52f5c9 100644
--- a/localedata/locales/de_DE
+++ b/localedata/locales/de_DE
@@ -2138,8 +2138,8 @@ copy "en_DK"
 END LC_CTYPE
 
 LC_MESSAGES
-yesexpr "<<(><j><J><y><Y><)/>><.><*>"
-noexpr  "<<(><n><N><)/>><.><*>"
+yesexpr "<'/>><<(><j><J><y><Y><)/>><.><*>"
+noexpr  "<'/>><<(><n><N><)/>><.><*>"
 END LC_MESSAGES
 
 LC_MONETARY
diff --git a/localedata/locales/ru_RU b/localedata/locales/ru_RU
index 9da6982624..d898f63eec 100644
--- a/localedata/locales/ru_RU
+++ b/localedata/locales/ru_RU
@@ -38,7 +38,7 @@ LC_COLLATE
 %     members of equivalence classes
 %  3. A distinction is made with regards
 %     to case as noted below.
-%  4. Special characters are ignored 
+%  4. Special characters are ignored
 %     when comparing letters, but then
 %     they are considered
 %  5. The alphabets are sorted in order
@@ -66,10 +66,10 @@ collating-symbol <SMALL>
 % and Spanish <C><h> being treated
 % as one letter.
 
-% The <a8> ...... <z8> collating 
+% The <a8> ...... <z8> collating
 % symbols have defined weights as
 % the last character in a group of
-% Latin letters. They are used 
+% Latin letters. They are used
 % to specify deltas by locales using
 % a locale as the default ordering
 % and by "replace-after" statements
@@ -992,7 +992,7 @@ UNDEFINED	IGNORE;IGNORE;IGNORE
 <a->	<A>;<MACRON>;<SMALL>;IGNORE
 <A7>	<A>;<MACRON+DOT>;<CAPITAL>;IGNORE
 <a7>	<A>;<MACRON+DOT>;<SMALL>;IGNORE
-<a8>	
+<a8>
 <AE>	"<A><E>";"<AE><AE>";"<CAPITAL><CAPITAL>";IGNORE
 <ae>	"<A><E>";"<AE><AE>";"<SMALL><SMALL>";IGNORE
 <AE'>	"<A><E>";"<AE'><AE'>";"<CAPITAL><CAPITAL>";IGNORE
@@ -1007,7 +1007,7 @@ UNDEFINED	IGNORE;IGNORE;IGNORE
 <b-.>	<B>;<DOT-BELOW>;<SMALL>;IGNORE
 <B_>	<B>;<LINE-BELOW>;<CAPITAL>;IGNORE
 <b_>	<B>;<LINE-BELOW>;<SMALL>;IGNORE
-<b8>	
+<b8>
 <C>	<C>;<NONE>;<CAPITAL>;IGNORE
 <c>	<C>;<NONE>;<SMALL>;IGNORE
 <C'>	<C>;<ACUTE>;<CAPITAL>;IGNORE
@@ -1024,7 +1024,7 @@ UNDEFINED	IGNORE;IGNORE;IGNORE
 <c,>	<C>;<CEDILLA>;<SMALL>;IGNORE
 <C,'>	<C>;<CEDILLA+ACUTE>;<CAPITAL>;IGNORE
 <c,'>	<C>;<CEDILLA+ACUTE>;<SMALL>;IGNORE
-<c8>	
+<c8>
 <D>	<D>;<NONE>;<CAPITAL>;IGNORE
 <d>	<D>;<NONE>;<SMALL>;IGNORE
 <D<>	<D>;<CARON>;<CAPITAL>;IGNORE
@@ -1041,7 +1041,7 @@ UNDEFINED	IGNORE;IGNORE;IGNORE
 <d-/>>	<D>;<MACRON+CIRCUMFLEX>;<SMALL>;IGNORE
 <D_>	<D>;<LINE-BELOW>;<CAPITAL>;IGNORE
 <d_>	<D>;<LINE-BELOW>;<SMALL>;IGNORE
-<d8>	
+<d8>
 <E>	<E>;<NONE>;<CAPITAL>;IGNORE
 <e>	<E>;<NONE>;<SMALL>;IGNORE
 <E'>	<E>;<ACUTE>;<CAPITAL>;IGNORE
@@ -1092,14 +1092,14 @@ UNDEFINED	IGNORE;IGNORE;IGNORE
 <e-!>	<E>;<MACRON+GRAVE>;<SMALL>;IGNORE
 <E-/>>	<E>;<MACRON+CIRCUMFLEX>;<CAPITAL>;IGNORE
 <e-/>>	<E>;<MACRON+CIRCUMFLEX>;<SMALL>;IGNORE
-<e8>	
+<e8>
 <F>	<F>;<NONE>;<CAPITAL>;IGNORE
 <f>	<F>;<NONE>;<SMALL>;IGNORE
 <F2>	<F>;<HOOK>;<CAPITAL>;IGNORE
 <f2>	<F>;<HOOK>;<SMALL>;IGNORE
 <F.>	<F>;<DOT>;<CAPITAL>;IGNORE
 <f.>	<F>;<DOT>;<SMALL>;IGNORE
-<f8>	
+<f8>
 <ff>	"<F><F>";"<NONE><NONE>";"<ff><ff>";IGNORE
 <fi>	"<F><I>";"<NONE><NONE>";"<fi><fi>";IGNORE
 <fl>	"<F><L>";"<NONE><NONE>";"<fl><fl>";IGNORE
@@ -1124,7 +1124,7 @@ UNDEFINED	IGNORE;IGNORE;IGNORE
 <g,>	<G>;<CEDILLA>;<SMALL>;IGNORE
 <G->	<G>;<MACRON>;<CAPITAL>;IGNORE
 <g->	<G>;<MACRON>;<SMALL>;IGNORE
-<g8>	
+<g8>
 <H>	<H>;<NONE>;<CAPITAL>;IGNORE
 <h>	<H>;<NONE>;<SMALL>;IGNORE
 <H-(>	<H>;<BREVE-BELOW>;<CAPITAL>;IGNORE
@@ -1141,7 +1141,7 @@ UNDEFINED	IGNORE;IGNORE;IGNORE
 <h//>	<H>;<STROKE>;<SMALL>;IGNORE
 <H,>	<H>;<CEDILLA>;<CAPITAL>;IGNORE
 <h,>	<H>;<CEDILLA>;<SMALL>;IGNORE
-<h8>	
+<h8>
 <I>	<I>;<NONE>;<CAPITAL>;IGNORE
 <i>	<I>;<NONE>;<SMALL>;IGNORE
 <I'>	<I>;<ACUTE>;<CAPITAL>;IGNORE
@@ -1176,14 +1176,14 @@ UNDEFINED	IGNORE;IGNORE;IGNORE
 <i;>	<I>;<OGONEK>;<SMALL>;IGNORE
 <I->	<I>;<MACRON>;<CAPITAL>;IGNORE
 <i->	<I>;<MACRON>;<SMALL>;IGNORE
-<i8>	
+<i8>
 <IJ>	"<I><J>";"<IJ><IJ>";"<CAPITAL><CAPITAL>";IGNORE
 <ij>	"<I><J>";"<IJ><IJ>";"<SMALL><SMALL>";IGNORE
 <J>	<J>;<NONE>;<CAPITAL>;IGNORE
 <j>	<J>;<NONE>;<SMALL>;IGNORE
 <J/>>	<J>;<CIRCUMFLEX>;<CAPITAL>;IGNORE
 <j/>>	<J>;<CIRCUMFLEX>;<SMALL>;IGNORE
-<j8>	
+<j8>
 <K>	<K>;<NONE>;<CAPITAL>;IGNORE
 <k>	<K>;<NONE>;<SMALL>;IGNORE
 <K'>	<K>;<ACUTE>;<CAPITAL>;IGNORE
@@ -1198,7 +1198,7 @@ UNDEFINED	IGNORE;IGNORE;IGNORE
 <k,>	<K>;<CEDILLA>;<SMALL>;IGNORE
 <K_>	<K>;<LINE-BELOW>;<CAPITAL>;IGNORE
 <k_>	<K>;<LINE-BELOW>;<SMALL>;IGNORE
-<k8>	
+<k8>
 <kk>	<K>;<kk>;<SMALL>;IGNORE
 <L>	<L>;<NONE>;<CAPITAL>;IGNORE
 <l>	<L>;<NONE>;<SMALL>;IGNORE
@@ -1220,7 +1220,7 @@ UNDEFINED	IGNORE;IGNORE;IGNORE
 <l-/>>	<L>;<MACRON+CIRCUMFLEX>;<SMALL>;IGNORE
 <L_>	<L>;<LINE-BELOW>;<CAPITAL>;IGNORE
 <l_>	<L>;<LINE-BELOW>;<SMALL>;IGNORE
-<l8>	
+<l8>
 <M>	<M>;<NONE>;<CAPITAL>;IGNORE
 <m>	<M>;<NONE>;<SMALL>;IGNORE
 <M'>	<M>;<ACUTE>;<CAPITAL>;IGNORE
@@ -1229,7 +1229,7 @@ UNDEFINED	IGNORE;IGNORE;IGNORE
 <m.>	<M>;<DOT>;<SMALL>;IGNORE
 <M-.>	<M>;<DOT-BELOW>;<CAPITAL>;IGNORE
 <m-.>	<M>;<DOT-BELOW>;<SMALL>;IGNORE
-<m8>	
+<m8>
 <N>	<N>;<NONE>;<CAPITAL>;IGNORE
 <n>	<N>;<NONE>;<SMALL>;IGNORE
 <N'>	<N>;<ACUTE>;<CAPITAL>;IGNORE
@@ -1249,7 +1249,7 @@ UNDEFINED	IGNORE;IGNORE;IGNORE
 <N_>	<N>;<LINE-BELOW>;<CAPITAL>;IGNORE
 <n_>	<N>;<LINE-BELOW>;<SMALL>;IGNORE
 <'n>	<N>;<PRECEDED-BY-APOSTROPHE>;<SMALL>;IGNORE
-<n8>	
+<n8>
 <NG>	"<N><G>";"<NG><NG>";"<CAPITAL><CAPITAL>";IGNORE
 <ng>	"<N><G>";"<NG><NG>";"<SMALL><SMALL>";IGNORE
 <O>	<O>;<NONE>;<CAPITAL>;IGNORE
@@ -1319,7 +1319,7 @@ UNDEFINED	IGNORE;IGNORE;IGNORE
 <o9?>	<O>;<HORN+TILDE>;<SMALL>;IGNORE
 <O9-.>	<O>;<HORN+DOT-BELOW>;<CAPITAL>;IGNORE
 <o9-.>	<O>;<HORN+DOT-BELOW>;<SMALL>;IGNORE
-<o8>	
+<o8>
 <OE>	"<O><E>";"<OE><OE>";"<CAPITAL><CAPITAL>";IGNORE
 <oe>	"<O><E>";"<OE><OE>";"<SMALL><SMALL>";IGNORE
 <P>	<P>;<NONE>;<CAPITAL>;IGNORE
@@ -1328,10 +1328,10 @@ UNDEFINED	IGNORE;IGNORE;IGNORE
 <p'>	<P>;<ACUTE>;<SMALL>;IGNORE
 <P.>	<P>;<DOT>;<CAPITAL>;IGNORE
 <p.>	<P>;<DOT>;<SMALL>;IGNORE
-<p8>	
+<p8>
 <Q>	<Q>;<NONE>;<CAPITAL>;IGNORE
 <q>	<Q>;<NONE>;<SMALL>;IGNORE
-<q8>	
+<q8>
 <R>	<R>;<NONE>;<CAPITAL>;IGNORE
 <r>	<R>;<NONE>;<SMALL>;IGNORE
 <R'>	<R>;<ACUTE>;<CAPITAL>;IGNORE
@@ -1352,7 +1352,7 @@ UNDEFINED	IGNORE;IGNORE;IGNORE
 <r--.>	<R>;<MACRON+DOT-BELOW>;<SMALL>;IGNORE
 <R_>	<R>;<LINE-BELOW>;<CAPITAL>;IGNORE
 <r_>	<R>;<LINE-BELOW>;<SMALL>;IGNORE
-<r8>	
+<r8>
 <S>	<S>;<NONE>;<CAPITAL>;IGNORE
 <s>	<S>;<NONE>;<SMALL>;IGNORE
 <st>	"<S><T>";"<NONE><NONE>";"<st><st>";IGNORE
@@ -1374,7 +1374,7 @@ UNDEFINED	IGNORE;IGNORE;IGNORE
 <s.-.>	<S>;<DOT+DOT-BELOW>;<SMALL>;IGNORE
 <S,>	<S>;<CEDILLA>;<CAPITAL>;IGNORE
 <s,>	<S>;<CEDILLA>;<SMALL>;IGNORE
-<s8>	
+<s8>
 <s1>	<S>;<s1>;<SMALL>;IGNORE
 <ss>	"<S><S>";"<NONE><NONE>";"<SMALL><ss>";IGNORE
 <T>	<T>;<NONE>;<CAPITAL>;IGNORE
@@ -1393,7 +1393,7 @@ UNDEFINED	IGNORE;IGNORE;IGNORE
 <t-/>>	<T>;<MACRON+CIRCUMFLEX>;<SMALL>;IGNORE
 <T_>	<T>;<LINE-BELOW>;<CAPITAL>;IGNORE
 <t_>	<T>;<LINE-BELOW>;<SMALL>;IGNORE
-<t8>	
+<t8>
 <TH>	"<T><H>";"<TH><TH>";"<CAPITAL><CAPITAL>";IGNORE
 <th>	"<T><H>";"<TH><TH>";"<SMALL><SMALL>";IGNORE
 <U>	<U>;<NONE>;<CAPITAL>;IGNORE
@@ -1458,14 +1458,14 @@ UNDEFINED	IGNORE;IGNORE;IGNORE
 <u9?>	<U>;<HORN+TILDE>;<SMALL>;IGNORE
 <U9-.>	<U>;<HORN+DOT-BELOW>;<CAPITAL>;IGNORE
 <u9-.>	<U>;<HORN+DOT-BELOW>;<SMALL>;IGNORE
-<u8>	
+<u8>
 <V>	<V>;<NONE>;<CAPITAL>;IGNORE
 <v>	<V>;<NONE>;<SMALL>;IGNORE
 <V?>	<V>;<TILDE>;<CAPITAL>;IGNORE
 <v?>	<V>;<TILDE>;<SMALL>;IGNORE
 <V-.>	<V>;<DOT-BELOW>;<CAPITAL>;IGNORE
 <v-.>	<V>;<DOT-BELOW>;<SMALL>;IGNORE
-<v8>	
+<v8>
 <W>	<W>;<NONE>;<CAPITAL>;IGNORE
 <w>	<W>;<NONE>;<SMALL>;IGNORE
 <W'>	<W>;<ACUTE>;<CAPITAL>;IGNORE
@@ -1480,14 +1480,14 @@ UNDEFINED	IGNORE;IGNORE;IGNORE
 <w.>	<W>;<DOT>;<SMALL>;IGNORE
 <W-.>	<W>;<DOT-BELOW>;<CAPITAL>;IGNORE
 <w-.>	<W>;<DOT-BELOW>;<SMALL>;IGNORE
-<w8>	
+<w8>
 <X>	<X>;<NONE>;<CAPITAL>;IGNORE
 <x>	<X>;<NONE>;<SMALL>;IGNORE
 <X:>	<X>;<DIAERESIS>;<CAPITAL>;IGNORE
 <x:>	<X>;<DIAERESIS>;<SMALL>;IGNORE
 <X.>	<X>;<DOT>;<CAPITAL>;IGNORE
 <x.>	<X>;<DOT>;<SMALL>;IGNORE
-<x8>	
+<x8>
 <Y>	<Y>;<NONE>;<CAPITAL>;IGNORE
 <y>	<Y>;<NONE>;<SMALL>;IGNORE
 <Y'>	<Y>;<ACUTE>;<CAPITAL>;IGNORE
@@ -1506,7 +1506,7 @@ UNDEFINED	IGNORE;IGNORE;IGNORE
 <y.>	<Y>;<DOT>;<SMALL>;IGNORE
 <Y-.>	<Y>;<DOT-BELOW>;<CAPITAL>;IGNORE
 <y-.>	<Y>;<DOT-BELOW>;<SMALL>;IGNORE
-<y8>	
+<y8>
 <Z>	<Z>;<NONE>;<CAPITAL>;IGNORE
 <z>	<Z>;<NONE>;<SMALL>;IGNORE
 <Z'>	<Z>;<ACUTE>;<CAPITAL>;IGNORE
@@ -1523,7 +1523,7 @@ UNDEFINED	IGNORE;IGNORE;IGNORE
 <z//>	<Z>;<STROKE>;<SMALL>;IGNORE
 <Z_>	<Z>;<LINE-BELOW>;<CAPITAL>;IGNORE
 <z_>	<Z>;<LINE-BELOW>;<SMALL>;IGNORE
-<z8>	
+<z8>
 <A*>	<A*>;<CAPITAL>;<GREEK>;IGNORE
 <A%>	<A*>;<CAPITAL>;<TONOS>;IGNORE
 <a*>	<A*>;<SMALL>;<GREEK>;IGNORE
@@ -2134,18 +2134,18 @@ abday   "<V=><s=><k=>";/
         "<C%><t=><v=>";/
         "<P=><t=><n=>";/
         "<S=><u=><b=>"
-mon     "<JA><n=><v=><a=><r=><ja>";/
-        "<F=><e=><v=><r=><a=><l=><ja>";/
+mon     "<JA><n=><v=><a=><r=><%'>";/
+	"<F=><e=><v=><r=><a=><l=><%'>";/
         "<M=><a=><r=><t=>";/
-        "<A=><p=><r=><e=><l=><ja>";/
+        "<A=><p=><r=><e=><l=><%'>";/
         "<M=><a=><j=>";/
-        "<I=><ju><n=><ja>";/
-        "<I=><ju><l=><ja>";/
-        "<A=><v=><g=><u=><s=><t=><a=>";/
-        "<S=><e=><n=><t=><ja><b=><r=><ja>";/
-        "<O=><k=><t=><ja><b=><r=><ja>";/
-        "<N=><o=><ja><b=><r=><ja>";/
-        "<D=><e=><k=><a=><b=><r=><ja>"
+        "<I=><ju><n=><%'>";/
+        "<I=><ju><l=><%'>";/
+        "<A=><v=><g=><u=><s=><t=>";/
+        "<S=><e=><n=><t=><ja><b=><r=><%'>";/
+        "<O=><k=><t=><ja><b=><r=><%'>";/
+        "<N=><o=><ja><b=><r=><%'>";/
+        "<D=><e=><k=><a=><b=><r=><%'>"
 abmon   "<JA><n=><v=>";/
         "<F=><e=><v=>";/
         "<M=><a=><r=>";/
diff --git a/localedata/tst-rpmatch.c b/localedata/tst-rpmatch.c
new file mode 100644
index 0000000000..f79930408e
--- /dev/null
+++ b/localedata/tst-rpmatch.c
@@ -0,0 +1,37 @@
+/* Test program for
+   Copyright (C) 1998 Free Software Foundation, Inc.
+   This file is part of the GNU C Library.
+   Contributed by Jochen Hein <jochen.hein@delphi.central.de>.
+
+   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 <stdio.h>
+#include <stdlib.h>
+
+int
+main (int argc, char* argv[])
+{
+  setlocale (LC_ALL, argv[1]);
+
+  if (rpmatch (argv[2]) != atol (argv[3]))
+    {
+      fprintf (stderr,"Failed: Locale %s, String %s, Exp: %s, got %d\n",
+	       argv[1], argv[2], argv[3], rpmatch (argv[2]));
+      exit (EXIT_FAILURE);
+    }
+  exit (EXIT_SUCCESS);
+}
diff --git a/localedata/tst-rpmatch.sh b/localedata/tst-rpmatch.sh
new file mode 100755
index 0000000000..7718b54aaf
--- /dev/null
+++ b/localedata/tst-rpmatch.sh
@@ -0,0 +1,64 @@
+#! /bin/sh -f
+#
+# Copyright (C) 1998 Free Software Foundation, Inc.
+# This file is part of the GNU C Library and contains tests for
+# the rpmatch(3)-implementation.
+# contributed by Jochen Hein <jochen.hein@delphi.central.de>
+
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation; either version 2, or (at your option)
+# any later version.
+#
+# This program 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 General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
+
+common_objpfx=$1
+IFS="§"
+rc=0
+while read locale string result dummy; do
+    if [ "$locale" != "#" ]; then
+	LOCPATH=${common_objpfx}localedata \
+	${common_objpfx}elf/ld.so --library-path $common_objpfx \
+	${common_objpfx}localedata/tst-rpmatch $locale $string $result \
+	|| exit 1
+    fi
+done <<EOF
+#§ These are the tests for rpmatch in glibc.  Each line contains one test,
+#§ comments start with #§ in the first column.  The fields are seperated
+#§ by paragraph signs and contain: the locale, the string, the expected
+#§ return value of rpmatch(3).  If the test fails, test-rpmatch prints
+#§ all these informations
+C§Yes§1
+C§yes§1
+C§YES§1
+C§YeS§1
+C§YEs§1
+C§yEs§1
+C§yES§1
+C§yeS§1
+C§No§0
+C§no§0
+#§ Uh, that's nonsense
+C§nonsens§0
+C§Error§-1
+de_DE§Yes§1
+de_DE§Ja§1
+de_DE§Jammerschade§1
+de_DE§dejavu§-1
+de_DE§Nein§0
+de_DE§Fehler§-1
+de_DE§jein§1
+EOF
+
+rc=$?
+if [ $rc -eq 1 ]; then
+    echo "Errors"
+fi
+exit $rc