On Fri, 2013-05-03 at 23:12 +0300, Eli Zaretskii wrote: > > the "start" and "end" will have other stuff (not just the other targets > > in that sub-make, but ANY other targets that happen to finish during > > that time) between them. > > This last part (about ANY other targets) is not what I thought you had > in mind.
No. With -Otarget and -Ojob it's never the case that an entire sub-make will "own" the output lock such that no other jobs running in parallel from other sub-makes can display output. This is something someone else mentioned the other day. Doing this would seriously compromise the parallelization. Given that today people are more-or-less satisfied to have garbled output rather than slow down their parallel builds, I find it impossible to believe they'd rather have ordered output if it reduced parallelization. When running in parallel it's always been the case, and is still the case with -O, that you must consider all the targets that could possibly be started by any make (at any level of recursion) as big grab-bag of targets that could be run at any time (subject to prerequisite relationships). Recursion is not a "sequence point" in your build, when parallelization is enabled. -O in no way changes that behavior, all it does is ensure that output from any individual line or target of the recipe will not interfere with any other individual line or target. _______________________________________________ Bug-make mailing list Bug-make@gnu.org https://lists.gnu.org/mailman/listinfo/bug-make