URL: <http://savannah.gnu.org/bugs/?30823>
Summary: double-colon rules not always executed in parallel make Project: make Submitted by: None Submitted on: Do 19 Aug 2010 19:24:54 UTC Severity: 3 - Normal Item Group: Bug Status: None Privacy: Public Assigned to: None Open/Closed: Open Discussion Lock: Any Component Version: 3.81 Operating System: None Fixed Release: None Triage Status: None _______________________________________________________ Details: I'm not sure if this has been already reported but at least I can't find a similar report. I have a modular build system using make which uses some double-colon rules which are triggered indirectly. That means these rules are not a direct prerequisite of the make goal provided on command line. With -j1 the rules are executed as expected but with multiple jobs sometimes not all of these rules are made. On my dual core machine I can reproduce this very easily with the attached example Makefile. On may quad core box it happens rather seldom with this example but with the rather complex build system it happens more often. A workaround is to add the double-colon rules as a direct prerequisite of the user specified make goal. But wait - this is not the full truth - it only works when added to targets like all or install. Calling "make -j2 b" in the concrete example it fails as well. The attached Makefile example can be used to reproduce the issue. When called with -j1 the output is: a1 q a2 a3 b which is expected. When called with -j2 the output is often only a1 q b I think while the execution order of the double-colon rules might change they should at least execute before the target counts as being made. I checked make-3.82 as well but it behaves the same way. My system is a Fedora 13 64bit. _______________________________________________________ File Attachments: ------------------------------------------------------- Date: Do 19 Aug 2010 19:24:54 UTC Name: Makefile Size: 100B By: None Makefile example to show the issue <http://savannah.gnu.org/bugs/download.php?file_id=21261> _______________________________________________________ Reply to this item at: <http://savannah.gnu.org/bugs/?30823> _______________________________________________ Nachricht geschickt von/durch Savannah http://savannah.gnu.org/ _______________________________________________ Bug-make mailing list Bug-make@gnu.org http://lists.gnu.org/mailman/listinfo/bug-make