+2002-01-12 Bruno Haible <bruno@clisp.org>
+
+ * msgattrib-*: Use \EOF, not EOF, to create here documents containing
+ non-ASCII characters. Needed on FreeBSD.
+ * msgcat-*: Likewise.
+ * msgcomm-*: Likewise.
+ * msgconv-*: Likewise.
+ * msgexec-*: Likewise.
+ * msgfilter-*: Likewise.
+ * msgfmt-*: Likewise.
+ * msgmerge-*: Likewise.
+
2002-01-12 Bruno Haible <bruno@clisp.org>
* tstgettext.c (main): Update year in --version output.
trap 'rm -fr $tmpfiles' 1 2 3 15
tmpfiles="$tmpfiles ma-test1.po"
-cat <<EOF > ma-test1.po
+cat <<\EOF > ma-test1.po
# HEADER.
#
msgid ""
test $? = 0 || { rm -fr $tmpfiles; exit 1; }
tmpfiles="$tmpfiles ma-test1.ok"
-cat <<EOF > ma-test1.ok
+cat <<\EOF > ma-test1.ok
# HEADER.
#
msgid ""
trap 'rm -fr $tmpfiles' 1 2 3 15
tmpfiles="$tmpfiles ma-test10.po"
-cat <<EOF > ma-test10.po
+cat <<\EOF > ma-test10.po
# HEADER.
#
msgid ""
test $? = 0 || { rm -fr $tmpfiles; exit 1; }
tmpfiles="$tmpfiles ma-test10.ok"
-cat <<EOF > ma-test10.ok
+cat <<\EOF > ma-test10.ok
# HEADER.
#
msgid ""
trap 'rm -fr $tmpfiles' 1 2 3 15
tmpfiles="$tmpfiles ma-test11.po"
-cat <<EOF > ma-test11.po
+cat <<\EOF > ma-test11.po
# HEADER.
#
msgid ""
test $? = 0 || { rm -fr $tmpfiles; exit 1; }
tmpfiles="$tmpfiles ma-test11.ok"
-cat <<EOF > ma-test11.ok
+cat <<\EOF > ma-test11.ok
# HEADER.
#
msgid ""
trap 'rm -fr $tmpfiles' 1 2 3 15
tmpfiles="$tmpfiles ma-test12.po"
-cat <<EOF > ma-test12.po
+cat <<\EOF > ma-test12.po
# HEADER.
#
msgid ""
test $? = 0 || { rm -fr $tmpfiles; exit 1; }
tmpfiles="$tmpfiles ma-test12.ok"
-cat <<EOF > ma-test12.ok
+cat <<\EOF > ma-test12.ok
# HEADER.
#
msgid ""
trap 'rm -fr $tmpfiles' 1 2 3 15
tmpfiles="$tmpfiles ma-test13.po"
-cat <<EOF > ma-test13.po
+cat <<\EOF > ma-test13.po
# HEADER.
#
msgid ""
test $? = 0 || { rm -fr $tmpfiles; exit 1; }
tmpfiles="$tmpfiles ma-test13.ok"
-cat <<EOF > ma-test13.ok
+cat <<\EOF > ma-test13.ok
# HEADER.
#
msgid ""
trap 'rm -fr $tmpfiles' 1 2 3 15
tmpfiles="$tmpfiles ma-test14.po"
-cat <<EOF > ma-test14.po
+cat <<\EOF > ma-test14.po
# HEADER.
#
msgid ""
test $? = 0 || { rm -fr $tmpfiles; exit 1; }
tmpfiles="$tmpfiles ma-test14.ok"
-cat <<EOF > ma-test14.ok
+cat <<\EOF > ma-test14.ok
# HEADER.
#
msgid ""
trap 'rm -fr $tmpfiles' 1 2 3 15
tmpfiles="$tmpfiles ma-test2.po"
-cat <<EOF > ma-test2.po
+cat <<\EOF > ma-test2.po
# HEADER.
#
msgid ""
test $? = 0 || { rm -fr $tmpfiles; exit 1; }
tmpfiles="$tmpfiles ma-test2.ok"
-cat <<EOF > ma-test2.ok
+cat <<\EOF > ma-test2.ok
# HEADER.
#
msgid ""
trap 'rm -fr $tmpfiles' 1 2 3 15
tmpfiles="$tmpfiles ma-test3.po"
-cat <<EOF > ma-test3.po
+cat <<\EOF > ma-test3.po
# HEADER.
#
msgid ""
test $? = 0 || { rm -fr $tmpfiles; exit 1; }
tmpfiles="$tmpfiles ma-test3.ok"
-cat <<EOF > ma-test3.ok
+cat <<\EOF > ma-test3.ok
# HEADER.
#
msgid ""
trap 'rm -fr $tmpfiles' 1 2 3 15
tmpfiles="$tmpfiles ma-test4.po"
-cat <<EOF > ma-test4.po
+cat <<\EOF > ma-test4.po
# HEADER.
#
msgid ""
test $? = 0 || { rm -fr $tmpfiles; exit 1; }
tmpfiles="$tmpfiles ma-test4.ok"
-cat <<EOF > ma-test4.ok
+cat <<\EOF > ma-test4.ok
# HEADER.
#
msgid ""
trap 'rm -fr $tmpfiles' 1 2 3 15
tmpfiles="$tmpfiles ma-test5.po"
-cat <<EOF > ma-test5.po
+cat <<\EOF > ma-test5.po
# HEADER.
#
msgid ""
test $? = 0 || { rm -fr $tmpfiles; exit 1; }
tmpfiles="$tmpfiles ma-test5.ok"
-cat <<EOF > ma-test5.ok
+cat <<\EOF > ma-test5.ok
# HEADER.
#
msgid ""
trap 'rm -fr $tmpfiles' 1 2 3 15
tmpfiles="$tmpfiles ma-test6.po"
-cat <<EOF > ma-test6.po
+cat <<\EOF > ma-test6.po
# HEADER.
#
msgid ""
test $? = 0 || { rm -fr $tmpfiles; exit 1; }
tmpfiles="$tmpfiles ma-test6.ok"
-cat <<EOF > ma-test6.ok
+cat <<\EOF > ma-test6.ok
# HEADER.
#
msgid ""
trap 'rm -fr $tmpfiles' 1 2 3 15
tmpfiles="$tmpfiles ma-test7.po"
-cat <<EOF > ma-test7.po
+cat <<\EOF > ma-test7.po
# HEADER.
#
msgid ""
test $? = 0 || { rm -fr $tmpfiles; exit 1; }
tmpfiles="$tmpfiles ma-test7.ok"
-cat <<EOF > ma-test7.ok
+cat <<\EOF > ma-test7.ok
# HEADER.
#
msgid ""
trap 'rm -fr $tmpfiles' 1 2 3 15
tmpfiles="$tmpfiles ma-test8.po"
-cat <<EOF > ma-test8.po
+cat <<\EOF > ma-test8.po
# HEADER.
#
msgid ""
test $? = 0 || { rm -fr $tmpfiles; exit 1; }
tmpfiles="$tmpfiles ma-test8.ok"
-cat <<EOF > ma-test8.ok
+cat <<\EOF > ma-test8.ok
# HEADER.
#
#, fuzzy
trap 'rm -fr $tmpfiles' 1 2 3 15
tmpfiles="$tmpfiles ma-test9.po"
-cat <<EOF > ma-test9.po
+cat <<\EOF > ma-test9.po
# HEADER.
#
msgid ""
test $? = 0 || { rm -fr $tmpfiles; exit 1; }
tmpfiles="$tmpfiles ma-test9.ok"
-cat <<EOF > ma-test9.ok
+cat <<\EOF > ma-test9.ok
# HEADER.
#
msgid ""
# try --use-first
tmpfiles="$tmpfiles mcat-test5.in1 mcat-test5.in2"
-cat <<EOF > mcat-test5.in1
+cat <<\EOF > mcat-test5.in1
# German message file for xyz.
# Copyright (C) 1999, 2000, 2001 xyz.
# Kab Def <ke@zzz.uucp>, 2000.
"Glückwunsch!"
EOF
-cat <<EOF > mcat-test5.in2
+cat <<\EOF > mcat-test5.in2
# German message file for xyz.
# Copyright (C) 1999, 2000, 2001 xyz.
# Kab Def <ke@zzz.uucp>, 2000.
test $? = 0 || { rm -fr $tmpfiles; exit 1; }
tmpfiles="$tmpfiles mcat-test5.ok"
-cat << EOF > mcat-test5.ok
+cat << \EOF > mcat-test5.ok
# German message file for xyz.
# Copyright (C) 1999, 2000, 2001 xyz.
# Kab Def <ke@zzz.uucp>, 2000.
# preserve all variants, add markers
tmpfiles="$tmpfiles mcat-test6.in1 mcat-test6.in2"
-cat <<EOF > mcat-test6.in1
+cat <<\EOF > mcat-test6.in1
# German message file for xyz.
# Copyright (C) 1999, 2000, 2001 xyz.
# Kab Def <ke@zzz.uucp>, 2000.
"Glückwunsch!"
EOF
-cat <<EOF > mcat-test6.in2
+cat <<\EOF > mcat-test6.in2
# German message file for xyz.
# Copyright (C) 1999, 2000, 2001 xyz.
# Kab Def <ke@zzz.uucp>, 2000.
test $? = 0 || { rm -fr $tmpfiles; exit 1; }
tmpfiles="$tmpfiles mcat-test6.ok"
-cat << EOF > mcat-test6.ok
+cat << \EOF > mcat-test6.ok
# German message file for xyz.
# Copyright (C) 1999, 2000, 2001 xyz.
# Kab Def <ke@zzz.uucp>, 2000.
msgstr ""
EOF
-cat <<EOF > mcomm-test17.in3
+cat <<\EOF > mcomm-test17.in3
msgid ""
msgstr ""
"Project-Id-Version: GNU one 1.2.3\n"
test $? = 0 || { rm -fr $tmpfiles; exit 1; }
tmpfiles="$tmpfiles mcomm-test17.ok"
-cat << EOF > mcomm-test17.ok
+cat << \EOF > mcomm-test17.ok
msgid ""
msgstr ""
"Project-Id-Version: GNU one 1.2.3\n"
# keep header file entry, otherwise the encoding is unknown
tmpfiles="$tmpfiles mcomm-test22.in1 mcomm-test22.in2"
-cat <<EOF > mcomm-test22.in1
+cat <<\EOF > mcomm-test22.in1
# German translations for GNU gettext package.
# Copyright (C) 1995, 1996, 1997, 2001 Free Software Foundation, Inc.
# Karl Eichwalder <ke@suse.de>, 2001.
"die VERWENDBARKEIT ZU EINEN ANGEGEBENEN ZWECK.\n"
EOF
-cat <<EOF > mcomm-test22.in2
+cat <<\EOF > mcomm-test22.in2
# German translations for GNU gettext package.
# Copyright (C) 1995, 1996, 1997, 2001 Free Software Foundation, Inc.
# Karl Eichwalder <ke@suse.de>, 2001.
test $? = 0 || { rm -fr $tmpfiles; exit 1; }
tmpfiles="$tmpfiles mcomm-test22.ok"
-cat << EOF > mcomm-test22.ok
+cat << \EOF > mcomm-test22.ok
# German translations for GNU gettext package.
# Copyright (C) 1995, 1996, 1997, 2001 Free Software Foundation, Inc.
# Karl Eichwalder <ke@suse.de>, 2001.
trap 'rm -fr $tmpfiles' 1 2 3 15
tmpfiles="$tmpfiles mco-test1.po"
-cat <<EOF > mco-test1.po
+cat <<\EOF > mco-test1.po
# Chinese translation for GNU gettext messages.
#
msgid ""
test $? = 0 || { rm -fr $tmpfiles; exit 1; }
tmpfiles="$tmpfiles mco-test1.ok"
-cat <<EOF > mco-test1.ok
+cat <<\EOF > mco-test1.ok
# Chinese translation for GNU gettext messages.
#
msgid ""
trap 'rm -fr $tmpfiles' 1 2 3 15
tmpfiles="$tmpfiles mco-test2.po"
-cat <<EOF > mco-test2.po
+cat <<\EOF > mco-test2.po
# Chinese translation for GNU gettext messages.
#
msgid ""
test $? = 0 || { rm -fr $tmpfiles; exit 1; }
tmpfiles="$tmpfiles mco-test2.ok"
-cat <<EOF > mco-test2.ok
+cat <<\EOF > mco-test2.ok
# Chinese translation for GNU gettext messages.
#
msgid ""
trap 'rm -fr $tmpfiles' 1 2 3 15
tmpfiles="$tmpfiles mco-test3.po"
-cat <<EOF > mco-test3.po
+cat <<\EOF > mco-test3.po
msgid ""
msgstr ""
"Project-Id-Version: GNU one 1.2.3\n"
trap 'rm -fr $tmpfiles' 1 2 3 15
tmpfiles="$tmpfiles mex-test1.po"
-cat <<EOF > mex-test1.po
+cat <<\EOF > mex-test1.po
# HEADER.
#
msgid ""
test $? = 0 || { rm -fr $tmpfiles; exit 1; }
tmpfiles="$tmpfiles mex-test1.ok"
-cat <<EOF > mex-test1.ok
+cat <<\EOF > mex-test1.ok
========================= mex-test1.po:4 =========================
---
trap 'rm -fr $tmpfiles' 1 2 3 15
tmpfiles="$tmpfiles mex-test2.po"
-cat <<EOF > mex-test2.po
+cat <<\EOF > mex-test2.po
# HEADER.
#
msgid ""
test "$foldoutputcount" = 3 || { echo "SKIP: msgfilter-1"; rm -fr $tmpfiles; exit 77; }
tmpfiles="$tmpfiles mfi-test1.po"
-cat <<EOF > mfi-test1.po
+cat <<\EOF > mfi-test1.po
# HEADER.
#
msgid ""
test $result = 0 || { rm -fr $tmpfiles; exit 1; }
tmpfiles="$tmpfiles mfi-test1.ok"
-cat <<EOF > mfi-test1.ok
+cat <<\EOF > mfi-test1.ok
# HEADER.
#
msgid ""
test "$sedoutputcount" = 3 || { echo "SKIP: msgfilter-2"; rm -fr $tmpfiles; exit 77; }
tmpfiles="$tmpfiles mfi-test2.po"
-cat <<EOF > mfi-test2.po
+cat <<\EOF > mfi-test2.po
# HEADER.
#
msgid ""
test $result = 0 || { rm -fr $tmpfiles; exit 1; }
tmpfiles="$tmpfiles mfi-test2.ok"
-cat <<EOF > mfi-test2.ok
+cat <<\EOF > mfi-test2.ok
# HEADER.
#
msgid ""
trap 'rm -fr $tmpfiles' 1 2 3 15
tmpfiles="$tmpfiles mf-test10.po1"
-cat <<EOF > mf-test10.po1
+cat <<\EOF > mf-test10.po1
# SOME DESCRIPTIVE TITLE.
# Copyright (C) YEAR Free Software Foundation, Inc.
# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
test $? = 0 || { rm -fr $tmpfiles; exit 1; }
tmpfiles="$tmpfiles mf-test10.po2"
-cat <<EOF > mf-test10.po2
+cat <<\EOF > mf-test10.po2
# SOME DESCRIPTIVE TITLE.
# Copyright (C) YEAR Free Software Foundation, Inc.
# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
trap 'rm -fr $tmpfiles' 1 2 3 15
tmpfiles="$tmpfiles foo.po"
-cat <<EOF > foo.po
+cat <<\EOF > foo.po
domain "foo-de"
msgid ""
msgstr "Content-Type: text/plain; charset=ISO-8859-1\n"
test $? = 0 || { rm -fr $tmpfiles; exit 1; }
tmpfiles="$tmpfiles foo-de.ok"
-cat <<EOF > foo-de.ok
+cat <<\EOF > foo-de.ok
msgid ""
msgstr "Content-Type: text/plain; charset=ISO-8859-1\n"
EOF
tmpfiles="$tmpfiles foo-fr.ok"
-cat <<EOF > foo-fr.ok
+cat <<\EOF > foo-fr.ok
msgid ""
msgstr "Content-Type: text/plain; charset=ISO-8859-1\n"
trap 'rm -fr $tmpfiles' 1 2 3 15
tmpfiles="$tmpfiles foo.po"
-cat <<EOF > foo.po
+cat <<\EOF > foo.po
domain "foo-de"
msgid ""
msgstr "Content-Type: text/plain; charset=ISO-8859-1\n"
test $? = 0 || { rm -fr $tmpfiles; exit 1; }
tmpfiles="$tmpfiles foo.ok"
-cat <<EOF > foo.ok
+cat <<\EOF > foo.ok
domain "foo-de"
msgid ""
trap 'rm -fr $tmpfiles' 1 2 3 15
tmpfiles="$tmpfiles foo.po"
-cat <<EOF > foo.po
+cat <<\EOF > foo.po
domain "foo-de"
msgid ""
msgstr "Content-Type: text/plain; charset=ISO-8859-1\n"
test $? = 0 || { rm -fr $tmpfiles; exit 1; }
tmpfiles="$tmpfiles foo.ok"
-cat <<EOF > foo.ok
+cat <<\EOF > foo.ok
domain "foo-de"
msgid ""
tmpfiles="$tmpfiles mm-test12.com mm-test12.pot"
-cat <<EOF > mm-test12.com
+cat <<\EOF > mm-test12.com
msgid ""
msgstr ""
"Content-Type: text/plain; charset=iso-8859-1\n"
test $? = 0 || { rm -fr $tmpfiles; exit 1; }
tmpfiles="$tmpfiles mm-test12.ok"
-cat << EOF > mm-test12.ok
+cat << \EOF > mm-test12.ok
msgid ""
msgstr ""
"Content-Type: text/plain; charset=iso-8859-1\n"
trap 'rm -fr $tmpfiles' 1 2 3 15
tmpfiles="$tmpfiles mm-test14.po"
-cat <<EOF > mm-test14.po
+cat <<\EOF > mm-test14.po
# SOME DESCRIPTIVE TITLE.
# Copyright (C) YEAR Free Software Foundation, Inc.
# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
trap 'rm -fr $tmpfiles' 1 2 3 15
tmpfiles="$tmpfiles mm-test15.po"
-cat <<EOF > mm-test15.po
+cat <<\EOF > mm-test15.po
# SOME DESCRIPTIVE TITLE.
# Copyright (C) YEAR Free Software Foundation, Inc.
# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
test $? = 0 || { rm -fr $tmpfiles; exit 1; }
tmpfiles="$tmpfiles mm-test15.ok"
-cat <<EOF > mm-test15.ok
+cat <<\EOF > mm-test15.ok
# SOME DESCRIPTIVE TITLE.
# Copyright (C) YEAR Free Software Foundation, Inc.
# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
trap 'rm -fr $tmpfiles' 1 2 3 15
tmpfiles="$tmpfiles mm-test16.po"
-cat <<EOF > mm-test16.po
+cat <<\EOF > mm-test16.po
# SOME DESCRIPTIVE TITLE.
# Copyright (C) YEAR Free Software Foundation, Inc.
# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
test $? = 0 || { rm -fr $tmpfiles; exit 1; }
tmpfiles="$tmpfiles mm-test16.ok"
-cat <<EOF > mm-test16.ok
+cat <<\EOF > mm-test16.ok
# SOME DESCRIPTIVE TITLE.
# Copyright (C) YEAR Free Software Foundation, Inc.
# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
trap 'rm -fr $tmpfiles' 1 2 3 15
tmpfiles="$tmpfiles mm-test9.in1.po mm-test9.in2.po"
-cat <<EOF > mm-test9.in1.po
+cat <<\EOF > mm-test9.in1.po
# SOME DESCRIPTIVE TITLE.
# Copyright (C) YEAR Free Software Foundation, Inc.
# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
test $? = 0 || { rm -fr $tmpfiles; exit 1; }
tmpfiles="$tmpfiles mm-test9.ok"
-cat <<EOF > mm-test9.ok
+cat <<\EOF > mm-test9.ok
# SOME DESCRIPTIVE TITLE.
# Copyright (C) YEAR Free Software Foundation, Inc.
# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.