|
From: | klouis |
Subject: | Dear whom it may concern: |
Date: | Tue, 7 Oct 2008 17:19:56 +0900 (KST) |
I have several question about mainly ‘jobserver’ of Make utility. 1. What's the jobserver exactly doing? If GNU make has -j option as --jobs, how GNU make(version 3.81 or later) can determine that a command is completely independent of each other or not? Please explain the solutions including of "GNU make jobserver implementation" in detail. 2. I want to know what's the meaning of "not_parallel" variable in main.c, is it means the command which has 'not_parallel == 1' cannot execute in parallel or the command will be a sync point? Moreover, I'm very curious about how and where the "not_parallel" variable is defined in make utility(source inside). Could you explain about this in detail? In addition, how make can handle below kind of compilation script? The statement after 'then' of first compilation command has a dependency with second compilation command. Can make handle that kind of dependency? ----------------------------------------------------------------------------------------------------------------------------- if gcc -I/home/test/include -g -c read_1.c base_1.h; \ then echo "#define value 0" >> base_2.h; else echo "#define value 1" >> base_2.h; fi if gcc -I/home/test/include -g -c read_2.c base_2.h; \ then echo "#define value 0" >> base_3.h; else echo "#define value 1" >> base_3.h; fi ----------------------------------------------------------------------------------------------------------------------------- 3. Finally, if you have any documents for developer, would you kindly send me? I would greatly appreciate your prompt reply. Sincerely |
[Prev in Thread] | Current Thread | [Next in Thread] |