Skip to content

Fixed infinite loop

Simon Rose requested to merge loop into master

I believe this fixes the infinite loop issue.

The problem was essentially one of timestamps: the dependency tree worked out something like:

verify.d --> $(ASVERIFY) (from the makefile) verify.d --> verify.c (implicit rule from RULES_BUILD in EPICS base)

And the fact I had removed the action to be done in the verify.d rule in autosave.Makefile meant it used the other rule. However, this meant that the timestamp on the generated verify.d was updated after being included, so make forces a recompilation.

As a confusing aside, the reason that I did not notice this on my local machine was that it was using a filesystem that is shared with the host MacOS, which has per-second resolution instead of finer than that. In nearly every such case on MacOS, verify.d is updated twice but has the same timestamp, so make does not believe it needs to be rebuilt.

Fun error!

Merge request reports