develooper Front page | perl.perl5.porters | Postings from September 2005

kill mv-if-diff?

Thread Next
Nicholas Clark
September 24, 2005 08:31
kill mv-if-diff?
Message ID:
The distribution contains a shell script mv-if-diff, which does what it says.
The Makefile uses it to avoid touching the timestamps on automatically
generated files, if they've not actually changed. For example, lib/

I notice that on my local checkout of maint, when I do a clean rebuild,
lib/unicore/mktables is being run 7 times.

I also observe that sometimes when I edit files and rebuild, later files
needlessly get rebuilt, probably because make thinks something is out of
date, something that never gets updated, probably because it's not being
"touch"ed, due to mv-if-diff, and there are non-file targets in the
dependency tree.

Parallel makes are also broken.

I wonder if all this is related.

Should we just get rid of mv-if-diff, and let make be the sole arbiter of
what needs updating? And trust that if make wants to rebuild something, it
should. I think that doing this would make our rebuilds cleaner, and make it
easier to work out the correct set of dependencies such that we can make
parallel makes work.

Nicholas Clark

Thread Next Perl Programming lists via nntp and http.
Comments to Ask Bjørn Hansen at | Group listing | About