1#! /bin/sh 2 3# Test that on glibc systems, gettext() works right even with intermediate 4# setlocale() calls. 5 6tmpfiles="" 7trap 'rm -fr $tmpfiles' 1 2 3 15 8 9# This test works only on glibc systems. 10: ${GLIBC2=no} 11test "$GLIBC2" = yes || { 12 echo "Skipping test: not a glibc system" 13 exit 77 14} 15 16# This test works only on systems that have a de_DE and fr_FR locale installed. 17LC_ALL=de_DE ./testlocale || { 18 if test -f /usr/bin/localedef; then 19 echo "Skipping test: locale de_DE not installed" 20 else 21 echo "Skipping test: locale de_DE not supported" 22 fi 23 exit 77 24} 25LC_ALL=fr_FR ./testlocale || { 26 if test -f /usr/bin/localedef; then 27 echo "Skipping test: locale fr_FR not installed" 28 else 29 echo "Skipping test: locale fr_FR not supported" 30 fi 31 exit 77 32} 33 34tmpfiles="$tmpfiles de_DE fr_FR" 35test -d de_DE || mkdir de_DE 36test -d de_DE/LC_MESSAGES || mkdir de_DE/LC_MESSAGES 37test -d fr_FR || mkdir fr_FR 38test -d fr_FR/LC_MESSAGES || mkdir fr_FR/LC_MESSAGES 39 40: ${MSGFMT=msgfmt} 41${MSGFMT} -o de_DE/LC_MESSAGES/tstlang.mo ${top_srcdir}/tests/gettext-3-1.po 42${MSGFMT} -o fr_FR/LC_MESSAGES/tstlang.mo ${top_srcdir}/tests/gettext-3-2.po 43 44tmpfiles="$tmpfiles gt-3.ok" 45cat <<EOF > gt-3.ok 46String1 - Lang1: 1st string 47String2 - Lang1: 2nd string 48String1 - Lang2: 1st string 49String2 - Lang2: 2nd string 50String1 - First string for testing. 51String2 - Another string for testing. 52EOF 53 54tmpfiles="$tmpfiles gt-3.out" 55./gettext-3-prg > gt-3.out || exit 1 56 57: ${DIFF=diff} 58${DIFF} gt-3.ok gt-3.out || exit 1 59 60rm -fr $tmpfiles 61 62exit 0 63