grady@fxgrp.fx.com (Steven Grady) (09/30/89)
Using multiple jobs doesn't work in 3.56. I haven't been able to track it down completely (I gave up after about 2 hours), but it looks like remake_file() is calling execute_file_commands(), then assigns file->command_state = cs_finished, even though the job might be running in parallel and is therefore not finished. Or maybe it's that notice_finished_file() does not set file->update_status. Or both? Anyway, here's an example Makefile: a: b c @echo a done b: @echo doing b c: @echo doing c Here's the output: % gnumake -j2 gnumake: *** Waiting for unfinished jobs.... doing b % (This occurs on a sun3, sun4, and pc/rt.) Steven ...!ucbvax!grady grady@postgres.berkeley.edu "I hate snakes! I hate 'em!!" "C'mon! Show a little backbone, will ya?"