Issue 54766 - $(shell ...) commands in parallel builds can be executed outside the expected order
Summary: $(shell ...) commands in parallel builds can be executed outside the expected...
Status: CLOSED FIXED
Alias: None
Product: Build Tools
Classification: Code
Component: dmake (show other issues)
Version: 680m130
Hardware: All All
: P3 Trivial (vote)
Target Milestone: ---
Assignee: hjs
QA Contact: issues@tools
URL:
Keywords:
Depends on: 53148
Blocks:
  Show dependency tree
 
Reported: 2005-09-18 18:34 UTC by quetschke
Modified: 2013-08-07 15:34 UTC (History)
3 users (show)

See Also:
Issue Type: DEFECT
Latest Confirmation in: ---
Developer Difficulty: ---


Attachments

Note You need to log in before you can comment on or make changes to this issue.
Description quetschke 2005-09-18 18:34:56 UTC
The currently used dmake 4.3 can run into problems when using the $(shell ...)
command in parrallel builds.

This example:

mytarget : myfile                                  (1)
    +echo something ; sleep 10                     (2)
    +mkdir -p somedir                              (3)
    +echo foo $(shell +cp myfile somedir/ ) bar    (4)

Will most propably fail in a parallel build as for the current dmake line (3)
will be scheduled after line (2), but the shell escape in line (4) will be
executed immediately without waiting for the rest (so far) of the recipe lines
to finish. In this example this means that "somedir" is still missing when
cp tries to copy something into it.
Comment 1 quetschke 2005-09-18 18:38:10 UTC
I forgot to mention this issue is not really new, this problem is already
mentioned along the lines of issue 53148 and hopefully fixed in CWS dmake43p01
but I wanted to have an issue with this problem in the summary.
Comment 2 quetschke 2005-09-20 01:09:52 UTC
Fixed in issue 53148
Comment 3 quetschke 2005-09-20 01:10:40 UTC
Verify together with issue 53148.
Comment 4 hjs 2006-04-07 15:37:02 UTC
.
Comment 5 hjs 2006-04-21 17:29:59 UTC
.