John Levon <john.levon(a)Sun.COM> wrote:
...
> > + perl -w @top_srcdir(a)/qemud/rpcgen_fix.pl rp.h-t \
> > + >@top_srcdir(a)/qemud/remote_protocol.h
>
> Please don't redirect directly to something used as a build source.
> Instead, redirect to a temporary file, and rename that into place
> upon successful completion. That makes it less likely you'll ever
> end up with corrupted sources.
Sorry I'm missing why this helps any?
In rules where you're redirecting to $@, it's essential
so that you don't end up with a corrupt-yet-up-to-date target.
Here, it'd be nice.
Otherwise, if the command fails with a disk full or I/O
error, you're left with an incomplete file, and you might
have missed the failure and/or you might then forget to rerun it,
which leaves you to figure out why things don't work.
Not a terribly big deal in this case; since it's version-controlled,
you'll probably notice the diffs pretty quickly.
Oh, also, since you've added the new "rpcgen" target,
please declare it phony to GNU make with this:
.PHONY: rpcgen
otherwise, if you run make -t (or otherwise create a file
name rpcgen), that rule will do nothing.