The output of a failed po-check rule (part of "make syntax-check) was unnecessarily cryptic. Here's the fix that I've already applied in upstream coreutils: build: when po-check fails, say why and suggest a fix * Makefile.maint (po-check): Before, when this check failed, it just spat out a diff mentioning two temporary files. Now, it tells you what's wrong and suggests a fix with a patch using the name of the affected file (rather than temporary file names) in the diff output. diff --git a/Makefile.maint b/Makefile.maint index 03800f8..4920112 100644 --- a/Makefile.maint +++ b/Makefile.maint @@ -466,8 +466,12 @@ m4-check: && { echo 'Makefile.maint: quote the first arg to AC_DEFUN' 1>&2; \ exit 1; } || : +fix_po_file_diag = \ +'you have changed the set of files with translatable diagnostics;\n\ +apply the above patch\n' + # Verify that all source files using _() are listed in po/POTFILES.in. -# FIXME: don't hard-code file names below; use a more general mechanism. +po_file = po/POTFILES.in po-check: @if test -f po/POTFILES.in; then \ grep -E -v '^(#|$$)' po/POTFILES.in \ @@ -482,13 +486,14 @@ po-check: *.[ch]) \ base=`expr " $$file" : ' \(.*\)\..'`; \ { test -f $$base.l || test -f $$base.y; } && continue;; \ - *) continue;; \ + *) continue;; \ esac; \ files="$$files $$file"; \ done; \ grep -E -l '\b(N?_|gettext *)\([^)"]*("|$$)' $$files \ | sort -u > $@-2; \ - diff -u $@-1 $@-2 || exit 1; \ + diff -u -L $(po_file) -L $(po_file) $@-1 $@-2 \ + || { printf '$(ME): '$(fix_po_file_diag) 1>&2; exit 1; }; \ rm -f $@-1 $@-2; \ fi -- 1.6.0.2.98.gc82e -- Libvir-list mailing list Libvir-list@xxxxxxxxxx https://www.redhat.com/mailman/listinfo/libvir-list