Follow-up Comment #1, bug #60730 (project make):

Just to be clear, this only happens if you use -j to enable the jobserver
along with -O.

The reason for it is that when there are multiple jobs running we don't know
if the next output to be printed will be from this instance of make or from
another instance of make (another sub-make running in the same jobserver
domain).  Since these targets are potentially running in completely different
processes, we can't leave the printing of our "Leaving" message until the next

What I typically do is (a) use a fully-qualified path to run the remote
configure, and (b) set GNUMAKEFLAGS=--no-print-directory.

This removes the enter/leave text everywhere, which isn't always great but is
usually OK, and any error messages should have fully-qualified paths to source
files, etc. in them so it's not very important for Emacs to be able to track
the current directory via enter/leave.

Of course this might not work for some environments, YMMV.

The final option is to use -Orecurse instead.  This groups the entire output
of a recursive make together.  Because the entire output of a single make is
grouped, the individual enter/leave lines per recipe are not needed.  The big
downside here is that you won't get any incremental output (for any submake). 
So, it seems like nothing is happening then everything appears at once at the
end.  That can be annoying if you, like me, like to watch builds and "get a
jump on" errors as they appear before the build is complete.


Reply to this item at:


  Message sent via Savannah

Reply via email to