Hi GNU Make Team: I have encountered a situation with GNU Make that doesn't seem right. It could be something simple that I am overlooking, but wanted to forward the example so you folks could check it out.
Attached please find gnumakebug.tar.gz, containing my minimum example. I am running GNU Make 3.79.1 on Solaris 5.8 on a Sun Ultra-5_10. Unfortunately, I do not have the config.h file from when the administrators built the executable. The Makeifle has a simple target "echoit" that echoes a string that is built up by two included makefiles (inclfile[12].mk) that are made from their "sources" (inclfilep[12].stub). At the time of invocation of make, the files inclfile[12].mk do not exist. The twist here is that the rule that is used to make the *.mk files ( the %.mk : rule), makes BOTH *.mk files. However, subsequently, make decides it needs to make the second one again. The file make.out is the output of the commnad make -d echoit >& make.out In make.out, lines 26-31, both files are made due to make making inclfile2.mk. Subsequently, on line 37, make says that inclfile1.mk does not exist! I thought this might be a parallelism problem, but the rule for creating the *.mk files is a single line, so it should be executed in a single shell. For grins I tried adding a .NOTPARALLEL target, but this had no effect. I would really like to get a fix and/or work around for this problem, as it is causing me a non-scalable performance hit with a growing re-usable component build environment. Thanks for any and all help, Tim // Tim Noell // Specialist, Business Printer Division // Lexmark International, Inc. // "Fish heads, fish heads, rolly polly fish heads ..."
gnumakebug.tar.gz
Description: gnumakebug.tar.gz