Update copyright notices with scripts/update-copyrights
[jlayton/glibc.git] / intl / tst-gettext2.sh
1 #! /bin/sh
2 # Test of gettext functions.
3 # Copyright (C) 2000-2014 Free Software Foundation, Inc.
4 # This file is part of the GNU C Library.
5
6 # The GNU C Library is free software; you can redistribute it and/or
7 # modify it under the terms of the GNU Lesser General Public
8 # License as published by the Free Software Foundation; either
9 # version 2.1 of the License, or (at your option) any later version.
10
11 # The GNU C Library is distributed in the hope that it will be useful,
12 # but WITHOUT ANY WARRANTY; without even the implied warranty of
13 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
14 # Lesser General Public License for more details.
15
16 # You should have received a copy of the GNU Lesser General Public
17 # License along with the GNU C Library; if not, see
18 # <http://www.gnu.org/licenses/>.
19
20 set -e
21
22 common_objpfx=$1
23 test_program_prefix=$2
24 objpfx=$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 ${test_program_prefix} \
71 ${objpfx}tst-gettext2 > ${objpfx}tst-gettext2.out ${objpfx}domaindir &&
72 cmp ${objpfx}tst-gettext2.out - <<EOF
73 String1 - Lang1: 1st string
74 String2 - Lang1: 2nd string
75 String1 - Lang2: 1st string
76 String2 - Lang2: 2nd string
77 String1 - First string for testing.
78 String2 - Another string for testing.
79 EOF
80
81 exit $?