Blob Blame History Raw
#! /bin/sh
. "${srcdir=.}/init.sh"; path_prepend_ . ../src

# Test C++ support: test kde-format and format recognition heuristics.

cat <<\EOF > xg-c-17.cc
/* When xgettext has no info, it flags both c-format and kde-format, based
   on the heuristics.  */
gettext ("used time: %1m %2s");

/* When the programmer says it's kde-format, xgettext does not apply the
   heuristics.  */
/* xgettext: kde-format */
gettext ("remaining time: %1m %2s");
EOF

: ${XGETTEXT=xgettext}
${XGETTEXT} --omit-header --no-location -d xg-c-17.tmp --language=C++ --kde \
  xg-c-17.cc || exit 1
LC_ALL=C tr -d '\r' < xg-c-17.tmp.po > xg-c-17.po || exit 1

cat <<EOF > xg-c-17.ok
#, c-format, kde-format
msgid "used time: %1m %2s"
msgstr ""

#, kde-format
msgid "remaining time: %1m %2s"
msgstr ""
EOF

: ${DIFF=diff}
${DIFF} xg-c-17.ok xg-c-17.po
result=$?

exit $result