===== The Solaris `sed' doesn't flush the last data line if that line isn't terminated with a NEWLINE. The problem surfaces in the "po" directory and the problem code is in the "Rules-quot" file where `msgfilter' passes some un-newline terminated data to a `sed' invocation (see my quick and dirty patch below). If you have access to a Solaris box, you can duplicate the problem effects with
> sh -c 'echo "xxx\c" | sed -e "s,^,,"' <== bad > The GNU sed works correctly. > sh -c 'echo "xxx\c" | gsed -e "s,^,,"' <== good xxx> If the Solaris `sed' is used, a `gmake dist' invocation aborts and, even if it didn't, the output from the code line below generates incorrect <msgstr ""> and <msgstr "\n"> values for a number of the lines in the "[EMAIL PROTECTED]" files. The source code that I used was obtained from http://hg.addictivecode.org/wget/mainline -- Paul Townsend (alpha alpha Beta (at) purdue _dot_ edu) diff -u mainline/po/Rules-quot.orig mainline/po/Rules-quot --- mainline/po/Rules-quot.orig 2008-01-08 20:02:29.000000000 -0500 +++ mainline/po/Rules-quot 2008-01-08 20:02:32.437186475 -0500 @@ -20,7 +20,7 @@ ll=`echo $$lang | sed -e 's/@.*//'`; \ LC_ALL=C; export LC_ALL; \ cd $(srcdir); \ - if $(MSGINIT) -i $(DOMAIN).pot --no-translator -l $$ll -o - 2>/dev/null | sed -f $$tmpdir/$$lang.insert-header | $(MSGCONV) -t UTF-8 | $(MSGFILTER) sed -f `echo $$lang | sed -e 's/.*@//'`.sed 2>/dev/null > $$tmpdir/$$lang.new.po; then \ + if $(MSGINIT) -i $(DOMAIN).pot --no-translator -l $$ll -o - 2>/dev/null | sed -f $$tmpdir/$$lang.insert-header | $(MSGCONV) -t UTF-8 | $(MSGFILTER) /opt/sfw/bin/gsed -f `echo $$lang | sed -e 's/.*@//'`.sed 2>/dev/null > $$tmpdir/$$lang.new.po; then \ if cmp $$lang.po $$tmpdir/$$lang.new.po >/dev/null 2>&1; then \ rm -f $$tmpdir/$$lang.new.po; \ else \