I have this kind of rule:
"foo" *> \out do
need something
create "foo" somehow
It's built correctly, and running the build twice won't build the target. Then I add a system' to this rule:
"foo" *> \out do
...
system' something
Running shake now doesn't rebuild the "foo" target, because no dependencies changed. Anyway, the rule changed. So I expect the newly added system' action to change the history of the rule, and in turn force a rebuild of "foo", but it wasn't the case. Usually in autoconf/automake systems, or even in non-trivial makefiles, the rules depend on Makefile itself, so that whenever it changes the project is rebuilt. In Shake I expect this to work and to be fine grained.
In the source code of system' I can't see anything that adds an implicit dependency on the command being run.
Am I doing something wrong? Is it intentional to not support this kind of dependencies, or it's simply not implemented?