*** goredo [2021-11-09 13:43]: >For instance, I can force a non-empty target always OOD by creating an -ifcreate dependency on itself. Because the output is now clearly there, which signals OOD. If this is intended, could you document that in the FAQ? Because it's hard for newcomers to grasp the idioms of redo. First of all -- I am definitely could be probably wrong at assumptions and idioms :-). Of course ability of redo-ifcreate to OOD self is not something previously thought. It is just a side effect. Just nothing explicitly prevents you from doing ifcreate-dependency. Of course redo implementation could forbid it explicitly, but I do not know why and how it would harm. I think that if target's author made redo-ifcreate on something already existing -- it is problem (if it is a problem at all) of the .do author. Well, ok, redo tool can help to catch as many mistakes or strange things as much as it can, like warning about simultaneous stdout+$3 output, like touching the $1 directly. Seems that redo-ifcreate to already (currently) existing file is anyway something strange -- goredo can print warning that it records ifcreate-dependency to already existing file. But just a warning, because anyway that file can appear after a microsecond after the check, while .do-target is still not completed. Will add that, because it seems to be harmless, but possibly helpful to somebody. -- Sergey Matveev (http://www.stargrave.org/) OpenPGP: CF60 E89A 5923 1E76 E263 6422 AE1A 8109 E498 57EF