Follow-up Comment #6, bug #63111 (project make): I took a shot at creating a warning. It's not so simple.
I think that the thing we want to warn about is: * we used a pattern rule with multiple targets to build the wanted target * the wanted target was actually updated * some also-make target was not updated This is because we don't want to raise a warning about a pattern rule that intentionally doesn't update any of its targets (maybe it decides that things are up to date even if the timestamps don't show this). We only want to warn about pattern rules that don't update ALL the targets. Unfortunately this is not so easy to determine the way things work today. The main problem is that we don't do all the investigation of an also-make target that we do of the primary target, so we don't actually know whether it was updated or not. We can detect whether it was not created at all, but not whether it was updated. Maybe that's good enough? It won't help the situation where the also-make file exists but is not up to date and is not updated by running the recipe: in this case there would be no warning but (with the changes for bug #12078 ) the target would still be rebuilt every time you run make. The smaller problem is that whether the main target was updated or not can only be determined in specific spots and there are more than one: there's at least one for goal targets and one for non-goal targets, so we'd need to add the check in two places. _______________________________________________________ Reply to this item at: <https://savannah.gnu.org/bugs/?63111> _______________________________________________ Message sent via Savannah https://savannah.gnu.org/