4 ms·
If a, b, and c are independent and d depends on them all, you could declare: d: a b c With shuffle, a, b, and c could be made in any order, but you are guaran
by lumb63 4y ago
If a, b, and c are independent and d depends on them all, you could declare:
d: a b c
With shuffle, a, b, and c could be made in any order, but you are guaranteed d would be after all of them.
This helps to enforce that a, b, and c are actually independent. If they are not, there is a chance your build will fail. This can happen sometimes when rules get complex and there become hidden dependencies between rules. For example, maybe one target, which always happens to run first, creates a directory that other targets rely on, but those targets would not create that directory if they were run first.
That is the impetus behind this new flag. It would (maybe) expose that there is a hidden dependency on that directory, and it could be made into its own dependency for a, b, and c to depend on, so that it doesn’t matter which runs first.