blob: 6e35f36369172212b85dc7901e4817c2a3442e18 [file] [log] [blame]
#! /bin/sh
. "${srcdir=.}/init.sh"; path_prepend_ . ../src
# Test that gettext() in multithreaded applications works correctly if
# different threads operate in different locales referring to the same
# catalog file but with different encodings.
# Let's use two locales that configure already checked for: French.
# The PO file is actually German, not French, but that doesn't matter.
test -d in-th-3 || mkdir in-th-3
test -d in-th-3/fr || mkdir in-th-3/fr
test -d in-th-3/fr/LC_MESSAGES || mkdir in-th-3/fr/LC_MESSAGES
: ${MSGFMT=msgfmt}
${MSGFMT} -o in-th-3/fr/LC_MESSAGES/tstthread.mo "$wabs_srcdir"/intl-thread-3.po
: ${LOCALE_FR=fr_FR}
: ${LOCALE_FR_UTF8=fr_FR.UTF-8}
if test $LOCALE_FR != none && test $LOCALE_FR_UTF8 != none; then
prepare_locale_ in-th-3/fr in-th-3/$LOCALE_FR
prepare_locale_ in-th-3/fr in-th-3/$LOCALE_FR_UTF8
../intl-thread-3-prg $LOCALE_FR $LOCALE_FR_UTF8 > in-th-3.out
case $? in
0) ;;
77)
echo "Skipping test: POSIX per-thread locales not supported"
Exit 77
;;
*)
Exit 1
;;
esac
else
if test -f /usr/bin/localedef; then
echo "Skipping test: no traditional and modern french locales are installed"
else
echo "Skipping test: no traditional and modern french locales are supported"
fi
Exit 77
fi
Exit 0