%% [EMAIL PROTECTED] writes: t> Hello Everybody. I have a question about how the make utility t> reacts to multiple processes of make being spawned at the same time t> to do a "top-down" build. We are using gnu make version 3.78.1.
Please remember to specify what operating system you're using as well, thanks! In 3.78 a new "jobserver" feature was installed for those OS's that can support it (that's why we need to know what system you're running on). This feature enables multiple recursive invocations of make to all communicate with one another and ensure that a maximum of N jobs (for -jN) are running at the same time. However, we were having a problem in that sometimes system calls like stat() would fail with signals. So, GNU make 3.80 introduced a new method of signal handling which, according to the POSIX spec should keep these issues from happening. However now we've been seeing cases where operating systems like Solaris, etc. are not adhering to the POSIX standard in this respect when building on "slow" devices like NFS mounted partitions. Other OS's, like Linux, appear to work properly on both local and NFS disks. So, the next version of GNU make will include some workarounds for this. But it's not done yet. I can't be sure that this is the problem you're seeing. Another problem is that your makefiles are simply incorrectly structured (that is, there's an implicit dependency relationship that works with fewer jobs because they never happen to be building in parallel, but if you build with more jobs then they might). However, based on your description I'd tend to think it's the signal problem: I recommend you upgrade to 3.80: although the problem is still there in some circumstances it's not as noticeable _and_ when it does happen you should see an error message generated, which is easier to work with than random updates of unchanged files. -- ------------------------------------------------------------------------------- Paul D. Smith <[EMAIL PROTECTED]> Find some GNU make tips at: http://www.gnu.org http://make.paulandlesley.org "Please remain calm...I may be mad, but I am a professional." --Mad Scientist _______________________________________________ Help-make mailing list [EMAIL PROTECTED] http://mail.gnu.org/mailman/listinfo/help-make
