mirror of
https://git.savannah.gnu.org/git/make.git
synced 2024-12-26 22:06:00 +00:00
7c4e6b0299
Previously if an included makefile was rebuilt as a prerequisite of another included makefile which didn't need to be rebuilt, make would not realize that it needed to re-exec itself. Ensure that if any included makefile target is rebuilt we re-exec. Also ensure that if an included makefile is not readable, and our rule for rebuilding it doesn't actually change it, we will still fail. * src/remake.c (update_goal_chain): If a goal's update was successful then check its status, even if no actual commands were run because it was already up to date. (show_goal_error): Remove superfluous cast. * src/main.c (main): If the makefile remake did nothing, check that we were able to successfully include all the makefiles we care about; if not fail. When generating error messages about included makefiles be sure to show the filename/linenumber information. * test/scripts/features/reinvoke: Add tests for this behavior. * test/scripts/options/dash-k: Update error messages. |
||
---|---|---|
.. | ||
archives | ||
comments | ||
conditionals | ||
default_names | ||
dircache | ||
double_colon | ||
echoing | ||
errors | ||
escape | ||
exec | ||
export | ||
grouped_targets | ||
include | ||
jobserver | ||
load | ||
loadapi | ||
mult_rules | ||
mult_targets | ||
order_only | ||
output-sync | ||
override | ||
parallelism | ||
patspecific_vars | ||
patternrules | ||
quoting | ||
recursion | ||
reinvoke | ||
rule_glob | ||
se_explicit | ||
se_implicit | ||
se_statpat | ||
shell_assignment | ||
statipattrules | ||
suffixrules | ||
targetvars | ||
utf8 | ||
varnesting | ||
vpath | ||
vpath2 | ||
vpath3 | ||
vpathgpath | ||
vpathplus |