chiark / gitweb /
eglibc (2.11.3-4+deb6u3) squeeze-lts; urgency=medium
[eglibc.git] / intl / tst-gettext2.sh
1 #! /bin/sh
2 # Test of gettext functions.
3 # Copyright (C) 2000, 2003, 2005 Free Software Foundation, Inc.
4 # This file is part of the GNU C Library.
5 #
6
7 # The GNU C Library is free software; you can redistribute it and/or
8 # modify it under the terms of the GNU Lesser General Public
9 # License as published by the Free Software Foundation; either
10 # version 2.1 of the License, or (at your option) any later version.
11
12 # The GNU C Library is distributed in the hope that it will be useful,
13 # but WITHOUT ANY WARRANTY; without even the implied warranty of
14 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
15 # Lesser General Public License for more details.
16
17 # You should have received a copy of the GNU Lesser General Public
18 # License along with the GNU C Library; if not, write to the Free
19 # Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
20 # 02111-1307 USA.
21
22 common_objpfx=$1
23 objpfx=$2
24 cross_test_wrapper=$3
25
26 LC_ALL=C
27 export LC_ALL
28
29 # Generate the test data.
30 mkdir -p ${objpfx}domaindir
31 # Create the locale directories.
32 test -d ${objpfx}domaindir/lang1 || {
33   mkdir ${objpfx}domaindir/lang1
34   for f in ADDRESS COLLATE CTYPE IDENTIFICATION MEASUREMENT MONETARY NAME NUMERIC PAPER TELEPHONE TIME; do
35     cp ${common_objpfx}localedata/de_DE.ISO-8859-1/LC_$f \
36        ${objpfx}domaindir/lang1
37   done
38 }
39 test -d ${objpfx}domaindir/lang2 || {
40   mkdir ${objpfx}domaindir/lang2
41   for f in ADDRESS COLLATE CTYPE IDENTIFICATION MEASUREMENT MONETARY NAME NUMERIC PAPER TELEPHONE TIME; do
42     cp ${common_objpfx}localedata/de_DE.ISO-8859-1/LC_$f \
43        ${objpfx}domaindir/lang2
44   done
45 }
46 test -d ${objpfx}domaindir/lang1/LC_MESSAGES || {
47   mkdir ${objpfx}domaindir/lang1/LC_MESSAGES
48   cp ${common_objpfx}localedata/de_DE.ISO-8859-1/LC_MESSAGES/SYS_LC_MESSAGES \
49      ${objpfx}domaindir/lang1/LC_MESSAGES
50 }
51 test -d ${objpfx}domaindir/lang2/LC_MESSAGES || {
52   mkdir ${objpfx}domaindir/lang2/LC_MESSAGES
53   cp ${common_objpfx}localedata/de_DE.ISO-8859-1/LC_MESSAGES/SYS_LC_MESSAGES \
54      ${objpfx}domaindir/lang2/LC_MESSAGES
55 }
56
57 # Populate them.
58 msgfmt -o ${objpfx}domaindir/lang1/LC_MESSAGES/tstlang.mo \
59        tstlang1.po
60
61 msgfmt -o ${objpfx}domaindir/lang2/LC_MESSAGES/tstlang.mo \
62        tstlang2.po
63
64 GCONV_PATH=${common_objpfx}iconvdata
65 export GCONV_PATH
66 LOCPATH=${objpfx}domaindir
67 export LOCPATH
68
69 # Now run the test.
70 ${cross_test_wrapper} \
71 ${common_objpfx}elf/ld.so --library-path $common_objpfx \
72 ${objpfx}tst-gettext2 > ${objpfx}tst-gettext2.out ${objpfx}domaindir &&
73 cmp ${objpfx}tst-gettext2.out - <<EOF
74 String1 - Lang1: 1st string
75 String2 - Lang1: 2nd string
76 String1 - Lang2: 1st string
77 String2 - Lang2: 2nd string
78 String1 - First string for testing.
79 String2 - Another string for testing.
80 EOF
81
82 exit $?