On Fri, May 29, 2015, at 11:16, Daiki Ueno wrote:
>   $ make
>   /usr/bin/msgmerge --update  --lang=nl nl.po grep.pot
>   ............. done.
>   $ make
>   /usr/bin/msgmerge --update  --lang=nl nl.po grep.pot
>   ............. done.

Yes, I see that.  Even without my apparently unneeded
blunt nl.gmo: nl.po rule.

> This happens because nl.gmo depends on nl.po, and the timestamp of nl.po
> is behind grep.pot.  Actually, nl.po is not updated on each 'make' run
> above (because the '.nop.po-update' rule checks if the file content has
> changed),

Ah, but when that rule notices that none of the string content
has changed, and does not _replace/overwrite the file, it should
nevertheless _touch the file.  This will trigger an unneeded
regeneration of the GMO file, but that is a small price to pay
for having the GMO files properly regenerated when a PO file
_does change.  How often does one regenerate a POT file?
Typically only when making a release or prerelease.

> but it's not good to run 'msgmerge' every time, especially
> when one compiles a package from a tarball.

Having all the PO files timestamped after the POT file will
prevent these unneeded msgmerges.

Regards,

Benno

-- 
http://www.fastmail.com - Email service worth paying for. Try it for free


Reply via email to