I typically build daily and its been fine until today -
msgfmt --desktop -d . --template gvim.desktop.in -o tmp_gvim.desktop
rm -f LINGUAS
if command -v desktop-file-validate; then desktop-file-validate tmp_gvim.desktop; fi
/usr/bin/desktop-file-validate
tmp_gvim.desktop: warning: file contains lines that are not UTF-8 encoded. There is no guarantee the validator will correctly work.
[Invalid UTF-8] tmp_gvim.desktop: error: value "\xe0\xac\xaa\xe0\xac\xbe\xe0\xac\xa0\xe0\xad\x8d\xe0\xac\xaf \xe0\xac\xab\xe0\xac\xbe\xe0\xac\x87\xe0\xac\xb2\xe0\xac\x97\xe0\xad\x81\xe0\xac\xa1\xe0\xac\xbc\xe0\xac\xbf\xe0\xac\x95\xe0\xad\x81 \xe0\xac\xb8\xe0\xac\xae\xe0\xad\x8d\xe0\xac\xaa\xe0\xac\xbe\xe0\xac\xa6\xe0\xac\xa8 \xe0\xac\x95\xe0\xac\xb0\xe0\xac\xa8\xe0\xad\x8d\xe0\xac\xa4\xe0\xad" for locale string key "Comment[or]" in group "Desktop Entry" contains y characters, locale string values should be encoded in UTF-8
I'm on
linux 4.15.0-51-generic
gcc --version
gcc (Ubuntu 5.4.0-6ubuntu1~16.04.11) 5.4.0 20160609
msgfmt (GNU gettext-tools) 0.19.7
GDM_LANG=en_US
LANG=en_US.UTF-8
LANGUAGE=en_US
Any ideas ?
thx,
-m
* 2019-06-06 773a97c25 (HEAD -> master, origin/master, origin/HEAD) Update runtime files - Add typescript syntax and indent. (Bram Moolenaar)
I see someone else posted earlier about the same issue.
But those suggestions and also latest git rev do not resolve issue for me.
-m
2019/6/7 Fri 5:51:02 UTC+9 Bram Moolenaar wrote:
> > I see someone else posted earlier about the same issue.
> > But those suggestions and also latest git rev do not resolve issue for me.
>
> The problem appears to be a broken version of msgfmt.
> We can't fix that in Vim. And it appears to be a real problem, thus
> ignoring it also doesn't appear to be a good idea.
>
> Is this a build error or an error for "make install"?
This is an error for "make".
How about checking the version of broken msgfmt?
It seems that v0.19.7 is broken.
--- a/src/configure.ac
+++ b/src/configure.ac
@@ -4302,8 +4302,13 @@ if test "$enable_nls" = "yes"; then
AC_MSG_CHECKING([if msgfmt supports --desktop])
MSGFMT_DESKTOP=
if "$MSGFMT" --help | grep -e '--desktop' >/dev/null; then
- AC_MSG_RESULT([yes])
- MSGFMT_DESKTOP="gvim.desktop vim.desktop"
+ if "$MSGFMT" --version | grep '0.19.7$' >/dev/null; then
+ dnl GNU gettext 0.19.7's --desktop is broken.
+ AC_MSG_RESULT([no])
+ else
+ AC_MSG_RESULT([yes])
+ MSGFMT_DESKTOP="gvim.desktop vim.desktop"
+ fi
else
AC_MSG_RESULT([no])
fi
Regards,
Ken Takata
Or, should we also mark gettext v0.19 to v0.19.6 as broken?
If so:
--- a/src/configure.ac
+++ b/src/configure.ac
@@ -4302,8 +4302,13 @@ if test "$enable_nls" = "yes"; then
AC_MSG_CHECKING([if msgfmt supports --desktop])
MSGFMT_DESKTOP=
if "$MSGFMT" --help | grep -e '--desktop' >/dev/null; then
- AC_MSG_RESULT([yes])
- MSGFMT_DESKTOP="gvim.desktop vim.desktop"
+ if "$MSGFMT" --version | grep '0.19$\|0.19.[[1-7]]$' >/dev/null; then
+ dnl GNU gettext 0.19.7's --desktop is broken.
+ AC_MSG_RESULT([broken])
2019/6/7 Fri 15:12:59 UTC+9 Christian Brabandt wrote:
> On Do, 06 Jun 2019, Ken Takata wrote:
>
> > Or, should we also mark gettext v0.19 to v0.19.6 as broken?
>
> I believe, when I tried to git bisect the issue yesterday, the first bad
> commit was around 0.19.3
>
> But I don't think it matters much, Ubuntu 14.04 has version 0.18.3 and
> is already end-of-life for standard support. That leaves us with Ubuntu
> 16.04 which is at version 0.19.7 However the version might look like
> this for non-tagged releases: 0.19.7-<sha_hash>
Even it is a non-tagged version, `msgfmt --version` on Ubuntu 16.04 returns
0.19.7.
> So I would just check for 0.19.7 (without '$')
So I think we can keep '$'.
Checking 0.19.3 to 0.19.6 might be not so useful, but checking them doesn't
have any penalty, I think.
--- a/src/configure.ac
+++ b/src/configure.ac
@@ -4302,8 +4302,13 @@ if test "$enable_nls" = "yes"; then
AC_MSG_CHECKING([if msgfmt supports --desktop])
MSGFMT_DESKTOP=
if "$MSGFMT" --help | grep -e '--desktop' >/dev/null; then
- AC_MSG_RESULT([yes])
- MSGFMT_DESKTOP="gvim.desktop vim.desktop"
+ if "$MSGFMT" --version | grep '0.19.[[3-7]]$' >/dev/null; then
Thank you all so much. 8.1.1487 builds fine :-)
-mark