#! /bin/sh # Test that on glibc systems, gettext() in multithreaded applications works # correctly if different threads operate in different locales referring to # the same catalog file but with different encodings. tmpfiles="" trap 'rm -fr $tmpfiles' 1 2 3 15 # This test works only on glibc systems. grep '@GLIBC2@.*yes' ../config.status >/dev/null || { echo "Skipping test: not a glibc system" exit 77 } # This test works only on systems that have a de_DE.ISO-8859-1 and # de_DE.UTF-8 locale installed. LC_ALL=de_DE.ISO-8859-1 ./testlocale || { if test -f /usr/bin/localedef; then echo "Skipping test: locale de_DE.ISO-8859-1 not installed" else echo "Skipping test: locale de_DE.ISO-8859-1 not supported" fi exit 77 } LC_ALL=de_DE.UTF-8 ./testlocale || { if test -f /usr/bin/localedef; then echo "Skipping test: locale de_DE.UTF-8 not installed" else echo "Skipping test: locale de_DE.UTF-8 not supported" fi exit 77 } tmpfiles="$tmpfiles de_DE" test -d de_DE || mkdir de_DE test -d de_DE/LC_MESSAGES || mkdir de_DE/LC_MESSAGES : ${MSGFMT=msgfmt} ${MSGFMT} -o de_DE/LC_MESSAGES/tstthread.mo ${top_srcdir}/tests/gettext-7.po tmpfiles="$tmpfiles gt-7.out" ./gettext-7-prg > gt-7.out case $? in 0) ;; 77) echo "Skipping test: not a glibc 2.3 system" rm -fr $tmpfiles; exit 77 ;; esac rm -fr $tmpfiles exit 0