#! /bin/sh # Test that on glibc systems, gettext() works right even with intermediate # setlocale() calls. tmpfiles="" trap 'rm -fr $tmpfiles' 1 2 3 15 # This test works only on glibc systems. : ${GLIBC2=no} test "$GLIBC2" = yes || { echo "Skipping test: not a glibc system" exit 77 } # This test works only on systems that have a de_DE and fr_FR locale installed. LC_ALL=de_DE ./testlocale || { if test -f /usr/bin/localedef; then echo "Skipping test: locale de_DE not installed" else echo "Skipping test: locale de_DE not supported" fi exit 77 } LC_ALL=fr_FR ./testlocale || { if test -f /usr/bin/localedef; then echo "Skipping test: locale fr_FR not installed" else echo "Skipping test: locale fr_FR not supported" fi exit 77 } tmpfiles="$tmpfiles de_DE fr_FR" test -d de_DE || mkdir de_DE test -d de_DE/LC_MESSAGES || mkdir de_DE/LC_MESSAGES test -d fr_FR || mkdir fr_FR test -d fr_FR/LC_MESSAGES || mkdir fr_FR/LC_MESSAGES : ${MSGFMT=msgfmt} ${MSGFMT} -o de_DE/LC_MESSAGES/tstlang.mo ${top_srcdir}/tests/gettext-3-1.po ${MSGFMT} -o fr_FR/LC_MESSAGES/tstlang.mo ${top_srcdir}/tests/gettext-3-2.po tmpfiles="$tmpfiles gt-3.ok" cat < gt-3.ok String1 - Lang1: 1st string String2 - Lang1: 2nd string String1 - Lang2: 1st string String2 - Lang2: 2nd string String1 - First string for testing. String2 - Another string for testing. EOF tmpfiles="$tmpfiles gt-3.out" ./gettext-3-prg > gt-3.out || exit 1 : ${DIFF=diff} ${DIFF} gt-3.ok gt-3.out || exit 1 rm -fr $tmpfiles exit 0