[Scons-users] Forcing projects to build in order

Bill Deegan bill at baddogconsulting.com
Thu Aug 6 11:09:25 EDT 2015


On Thu, Aug 6, 2015 at 8:04 AM, William Blevins <wblevins001 at gmail.com>
wrote:

> I cannot think of many (if any) good reasons to perform CWD.
>
> Can you modify your build to work without?
> On Thu, Aug 6, 2015 at 10:26 AM, Bill Deegan <bill at baddogconsulting.com>
> wrote:
>
>> Ora,
>>
>> Why do you want to force build order and/or limit parallelism?
>>
>>
> He is performing "change working directory" commands which cause issues
> with parallel builds.
>

When I run into those I typically do env.Command(target,source,"cd xyz; do
actual command")  or wrap said command in a script and run that from the
command.


>
>
>> -Bill
>>
>> On Thu, Aug 6, 2015 at 3:58 AM, Ora <orshalev at gmail.com> wrote:
>>
>>> Hi,
>>>
>>> My script builds several different projects which are not necessarily
>>> related.   How can I force those projects to build in a certain order?
>>>
>>> That is, I have three projects: a, b and c.
>>> I want 'b' to start building only after 'a' finishes, and for 'c' to
>>> start building only after 'b' finishes.
>>>
>>> This is necessary in order to avoid problems with changing directories
>>> during parallel builds.
>>>
>>> I tried using 'Requires', with every target requiring the target before
>>> it.
>>> Requires (b, a)
>>> Requires (c, b)
>>>
>>> But that doesn't solve the problem because, if I understood correctly,
>>> it only tells Scons that it should finish building 'a' before it finishes
>>> building 'b', and doesn't prevent it from compiling both projects at the
>>> same time.
>>>
>>> Any suggestions on how to deal with this issue would be appreciated.
>>>
>>> Thanks in advance,
>>> Ora
>>>
>>> _______________________________________________
>>>
>>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://pairlist4.pair.net/pipermail/scons-users/attachments/20150806/77112b13/attachment.html>


More information about the Scons-users mailing list