File: intl-thread-2

package info (click to toggle)
gettext 0.23.2-1
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid
  • size: 168,104 kB
  • sloc: ansic: 532,579; sh: 68,252; perl: 28,011; makefile: 9,066; lisp: 3,184; yacc: 1,055; java: 615; cs: 589; cpp: 397; objc: 343; sed: 79; tcl: 63; xml: 40; pascal: 11; php: 7; awk: 7
file content (55 lines) | stat: -rwxr-xr-x 1,532 bytes parent folder | download | duplicates (2)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
#! /bin/sh
. "${srcdir=.}/init.sh"; path_prepend_ . ../src

# Test that gettext() in multithreaded applications works correctly if
# different threads operate in different locales with the same encoding.

# Let's use two UTF-8 locales that configure already checked for:
# French and German.

test -d in-th-2 || mkdir in-th-2
test -d in-th-2/fr || mkdir in-th-2/fr
test -d in-th-2/fr/LC_MESSAGES || mkdir in-th-2/fr/LC_MESSAGES
test -d in-th-2/de || mkdir in-th-2/de
test -d in-th-2/de/LC_MESSAGES || mkdir in-th-2/de/LC_MESSAGES

: ${MSGFMT=msgfmt}
${MSGFMT} -o in-th-2/fr/LC_MESSAGES/tstthread.mo "$wabs_srcdir"/intl-thread-2-1.po
${MSGFMT} -o in-th-2/de/LC_MESSAGES/tstthread.mo "$wabs_srcdir"/intl-thread-2-2.po

: ${DIFF=diff}
cat <<\EOF > in-th-2.ok
beauté
Schönheit
beauté
Schönheit
EOF

: ${LOCALE_FR_UTF8=fr_FR.UTF-8}
: ${LOCALE_DE_UTF8=de_DE.UTF-8}
if test $LOCALE_FR_UTF8 != none && test $LOCALE_DE_UTF8 != none; then
  prepare_locale_ in-th-2/fr in-th-2/$LOCALE_FR_UTF8
  prepare_locale_ in-th-2/de in-th-2/$LOCALE_DE_UTF8
  ../intl-thread-2-prg $LOCALE_FR_UTF8 $LOCALE_DE_UTF8 > in-th-2.out
  case $? in
    0)
      ${DIFF} in-th-2.ok in-th-2.out || Exit 1
      ;;
    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 french and german locales are installed"
  else
    echo "Skipping test: no french and german locales are supported"
  fi
  Exit 77
fi

Exit 0