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

# Test YCP support: --add-comments option.

cat <<EOF > xg-y-2.ycp
// This comment will not be extracted.
print (_("help"));
//  TRANSLATORS: This is an extracted comment.
print (_("me"));
# TRANSLATORS: This is extracted too.
print (_("and you"));
/* Not extracted either. */
print (_("Hey Jude"));
/*  TRANSLATORS:
     Nickname of the Beatles
*/
print (_("The Fabulous Four"));
EOF

: ${XGETTEXT=xgettext}
${XGETTEXT} --omit-header --no-location --add-comments=TRANSLATORS: \
  -d xg-y-2.tmp xg-y-2.ycp || Exit 1
LC_ALL=C tr -d '\r' < xg-y-2.tmp.po > xg-y-2.po || Exit 1

cat <<EOF > xg-y-2.ok
msgid "help"
msgstr ""

#. TRANSLATORS: This is an extracted comment.
msgid "me"
msgstr ""

#. TRANSLATORS: This is extracted too.
msgid "and you"
msgstr ""

msgid "Hey Jude"
msgstr ""

#. TRANSLATORS:
#. Nickname of the Beatles
#.
msgid "The Fabulous Four"
msgstr ""
EOF

: ${DIFF=diff}
${DIFF} xg-y-2.ok xg-y-2.po
result=$?

exit $result
