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

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

cat <<EOF > xg-j-5.java
// This comment will not be extracted.
System.out.println(gettext("help"));
//  TRANSLATORS: This is an extracted comment.
System.out.println(gettext("me"));
/* Not extracted either. */
System.out.println(gettext("Hey Jude"));
/*  TRANSLATORS:
     Nickname of the Beatles
*/
System.out.println(gettext("The Fabulous Four"));
/* TRANSLATORS: The strings get concatenated.  */
System.out.println(gettext("there is not enough" +
" room on a single line for this entire long, " // confusing, eh?
+ "verbose string"));
EOF

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

cat <<EOF > xg-j-5.ok
msgid "help"
msgstr ""

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

msgid "Hey Jude"
msgstr ""

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

#. TRANSLATORS: The strings get concatenated.
msgid ""
"there is not enough room on a single line for this entire long, verbose "
"string"
msgstr ""
EOF

: ${DIFF=diff}
${DIFF} xg-j-5.ok xg-j-5.po
result=$?

exit $result
