[Scons-users] Disambiguating Entry in variant directory

Ilya L mephi42 at gmail.com
Thu Jan 29 15:27:17 EST 2015

On Thu, Jan 29, 2015 at 10:28 PM, Dirk Bächle <tshortik at gmx.de> wrote:

> Hi Ilya,
> On 29.01.2015 13:01, Ilya L wrote:
>> Sorry, I used the *over*simplified example, that bumps into a different
>> issue due to variant directory being under source directory. The
>> following one is closer to reality:
>> $ cat sconstruct
>> VariantDir('#build', '#source')
>> Dir('#source/foo')
>> Dir('#build').glob('*')
> can you please tell us what kind of output you would expect from this? If
> SCons would run through successfully (without the offending error message)
> which folders/sources should exist afterwards?
> I still don't understand which of the Nodes above is your actual target,
> and what you're trying to accomplish in general. So some more infos in this
> direction would be very helpful.
> Thanks a lot in advance, and best regards,
> Dirk
> _______________________________________________
> Scons-users mailing list
> Scons-users at scons.org
> https://pairlist4.pair.net/mailman/listinfo/scons-users

Hi Dirk,

The expected behavior of this particular script should be a no-op. I
wrote it only to isolate the issue that I've been seeing in otherwise
successful real builds.

I realize that I can fix this by preventing bogus Dir('#source/foo')
from being created. I do not have a full understanding yet of what
triggers its creation, though it must be related to the variant and
repository directory setup the real build is using. But before diving
too deeply into that, I was wondering how hard would it be to teach
SCons to tolerate such call sequences? At a glance, a new branch in
disambiguate(), that would check for an already existing source
SCons.Node.FS.Dir, should do the trick.

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://pairlist4.pair.net/pipermail/scons-users/attachments/20150130/7bd3e46e/attachment.html>

More information about the Scons-users mailing list