blob: 1d22136085737ff65aaed76f009e2690695623ff [file] [log] [blame] [edit]
#! /bin/sh
. "${srcdir=.}/init.sh"; path_prepend_ . ../src
# Test C, C++, PO extractors.
cat <<EOF > xg-po-1.in.po
#: file1.c:199
#, fuzzy
msgid "extract me"
msgstr "some text to get fuzzy copied to result"
#: file2.cc:200
msgid "what about me"
msgstr ""
#: file3.c:10
#, c-format, fuzzy
msgid "hello"
msgstr "Again some text for fuzzy"
EOF
cat <<EOF > xg-po-1.c
#include <libintl.h>
#include <stdio.h>
int
main (int argc, char *argv[])
{
printf (dcgettext ("hello", "Hello, world."));
return 0;
}
EOF
cat <<EOF > xg-po-1.cc
#include <iostream.h>
#include <libintl.h>
#include <locale.h>
int
main (int argc, char *argv[])
{
cout << dcgettext ("hello", "Hello world!", LC_MESSAGES) << endl;
return 0;
}
EOF
: ${XGETTEXT=xgettext}
${XGETTEXT} --omit-header -n \
-d xg-po-1.tmp xg-po-1.in.po xg-po-1.c xg-po-1.cc || Exit 1
LC_ALL=C tr -d '\r' < xg-po-1.tmp.po > xg-po-1.po || Exit 1
cat <<EOF > xg-po-1.ok
#: file1.c:199
#, fuzzy
msgid "extract me"
msgstr "some text to get fuzzy copied to result"
#: file2.cc:200
msgid "what about me"
msgstr ""
#: file3.c:10
#, fuzzy, c-format
msgid "hello"
msgstr "Again some text for fuzzy"
#: xg-po-1.c:6
#, c-format
msgid "Hello, world."
msgstr ""
#: xg-po-1.cc:7
msgid "Hello world!"
msgstr ""
EOF
: ${DIFF=diff}
${DIFF} xg-po-1.ok xg-po-1.po
result=$?
exit $result