> On Oct 30, 2024, at 9:37 AM, Paul Smith via austin-group-l at The Open Group > <[email protected]> wrote: > > On Tue, 2024-10-29 at 22:02 +0000, Andrew wrote: >>> GNU Make has supported non-interleaved output since version 4.0 >> (released in 2013). >> >> Is this with the GNU option --output-sync? > > Yes. > > All versions interleave by default. > >> I wish the capability were opt out. Anyone that fixated on >> performance will have bigger problems due to the sheer number of log >> lines involved, nevermind concurrency issues. > > If you want to discuss this, the [email protected] or [email protected] > mailing lists are the proper forum (no subscription required to post to > those lists). It's not really appropriate for the OpenGroup lists. > > However, there are real downsides to synchronized output, since output > (a) goes to a file not a terminal and (b) cannot be printed until the > recipe is completely finished. I don't think output interleaving should be the *default* (it isn't now!). However, I *do* think having a standard way to *request* output interleaving in make would make sense in POSIX. I would suggest using the GNU Make one-letter option "-O" (aka "--output-sync"). Make it clear that adding "-O" to MAKEFLAGS would give output interleaving, and you have the capability. Today's computer systems pretty much *all* have multiple CPUs, and the jobs to be done are much larger. The 2024 edition added "-j" to make to support parallel computation because its use is widespread. A standard option for option interleaving would improve things further. > For example, if the recipe runs a sub- > make then nothing is printed until the entire sub-make is complete > which could be many minutes or even hours. True, but if someone doesn't like that impact, the solution is easy: don't use sub-makes. The make tool must *support* sub-makes, but using sub-makes often leads to incorrect builds, unnecessary builds, and so on. Standardizing output interleaving would be sensible. GNU Make already implements and is widely used, just use its "-O". --- David A. Wheeler
Re: request: make [-j ]
David A. Wheeler via austin-group-l at The Open Group Wed, 30 Oct 2024 08:08:16 -0700
- request: make [-j... Andrew via austin-group-l at The Open Group
- Re: request:... Lawrence Velázquez via austin-group-l at The Open Group
- Re: request:... Rob Landley via austin-group-l at The Open Group
- Re: requ... G. Branden Robinson via austin-group-l at The Open Group
- Re: requ... Andrew via austin-group-l at The Open Group
- Re: requ... Steffen Nurpmeso via austin-group-l at The Open Group
