From: Paul Smith Date: Tue, 13 Sep 2022 22:22:29 +0000 (-0400) Subject: * doc/make.texi (Parallel Disable): Add clarifications. X-Git-Tag: 4.3.90~6 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=88d126d6c4bcd2d97b6cedc729338a63990e8758;p=thirdparty%2Fmake.git * doc/make.texi (Parallel Disable): Add clarifications. * NEWS: Suggest how to change makefiles that use $(MAKEFLAGS). --- diff --git a/NEWS b/NEWS index 4f37ec3f..04cca2a7 100644 --- a/NEWS +++ b/NEWS @@ -30,8 +30,10 @@ https://sv.gnu.org/bugs/index.php?group=make&report_id=111&fix_release_id=109&se * WARNING: Backward-incompatibility! Previously only simple (one-letter) options were added to the MAKEFLAGS - variable that was visible while parsing makefiles. Now, all options - are available in MAKEFLAGS. + variable that was visible while parsing makefiles. Now, all options are + available in MAKEFLAGS. If you want to check MAKEFLAGS for a one-letter + option, expanding "$(firstword -$(MAKEFLAGS))" is a reliable way to return + the set of one-letter options which can be examined via findstring, etc. * WARNING: Backward-incompatibility! Previously makefile variables marked as export were not exported to commands diff --git a/doc/make.texi b/doc/make.texi index 14ad2a37..dc9a5c95 100644 --- a/doc/make.texi +++ b/doc/make.texi @@ -4478,12 +4478,13 @@ If parallel execution is enabled, @code{make} will try to build @file{one} and @file{two} in parallel but will not try to build @file{three} until both are complete. -As with targets provided to @code{.NOTPARALLEL}, @code{.WAIT} has an effect +As with targets provided to @code{.NOTPARALLEL}, @code{.WAIT} takes effect only when building the target in whose prerequisite list it appears. If the same prerequisites are present in other targets, without @code{.WAIT}, then -they may still be run in parallel. Because of this, @code{.WAIT} is an -unreliable way to impose ordering than defining a prerequisite relationship. -However it is easy to use and may suffice for simple needs. +they may still be run in parallel. Because of this, neither +@code{.NOTPARALLEL} with targets nor @code{.WAIT} are as reliable for +controlling parallel execution as defining a prerequisite relationship. +However they are easy to use and may be sufficient in less complex situations. The @code{.WAIT} prerequisite will not be present in any of the automatic variables for the rule.