Open lgarron opened 1 year ago
Looks like some of the challenges would be solved by using the -O
flag to make
:
‘-O[type]’
‘--output-sync[=type]’
Ensure that the complete output from each recipe is printed in one uninterrupted sequence. This option is only useful when using the --jobs option to run multiple recipes simultaneously (see [Parallel Execution](https://www.gnu.org/software/make/manual/html_node/Parallel.html)) Without this option output will be displayed as it is generated by the recipes.
With no type or the type ‘target’, output from the entire recipe of each target is grouped together. With the type ‘line’, output from each line in the recipe is grouped together. With the type ‘recurse’, the output from an entire recursive make is grouped together. With the type ‘none’, no output synchronization is performed. See [Output During Parallel Execution](https://www.gnu.org/software/make/manual/html_node/Parallel-Output.html).
https://www.gnu.org/software/make/manual/html_node/Options-Summary.html
… but this is not available on macOS. ðŸ˜
Right now,
make test-all
is serialized because we were limited by the generated string worker. Now that #214 is resolved we can probably parallelize a lot more. Ideally this should happen by default, but we need to make sure the output is possible to debug.Challenges:
make -j16 test-all
seems to fail when invoked from inside aMakefile
. I currently suspect this is becauserm -rf
causes race conditions even after it's supposedly done.