Re: finding out which env causes this error: Two different environments were specified for target
daggs <[email protected]>
| Newsgroups | gmane.comp.programming.tools.scons.user |
|---|---|
| Message-ID | <trinity-14c58f5d-0b29-423a-828d-027af54cfb52-1648368024993@3c-app-mailcom-bs03> |
Greetings Mats, > Sent: Friday, March 25, 2022 at 8:50 PM > From: "Mats Wichmann" <[email protected]> > To: "daggs" <[email protected]> > Cc: "SCons users mailing list" <[email protected]> > Subject: Re: [Scons-users] finding out which env causes this error: Two different environments were specified for target > > On 3/25/22 11:14, daggs wrote: > > > > > >> Sent: Friday, March 25, 2022 at 8:02 PM > >> From: "Mats Wichmann" <[email protected]> > >> To: "daggs" <[email protected]> > >> Cc: "SCons users mailing list" <[email protected]> > >> Subject: Re: [Scons-users] finding out which env causes this error: Two different environments were specified for target > >> > >> On 3/25/22 09:40, daggs wrote: > >>> > >>> > >>>> Sent: Friday, March 25, 2022 at 6:26 PM > >>>> From: "Mats Wichmann" <[email protected]> > >>>> To: "daggs" <[email protected]> > >>>> Cc: "SCons users mailing list" <[email protected]> > >>>> Subject: Re: [Scons-users] finding out which env causes this error: Two different environments were specified for target > >>>> > >>>> On 3/25/22 09:23, daggs wrote: > >>>> > >>>>> I do something like this: > >>>>> for folder in [ a, b, c ]: > >>>>> for modes in [ y. z ]: > >>>>> export('mode') > >>>>> sconscript("src/" + folder + "/SConscript", variant_dir = "out/" + folder + "." + mode, duplicate = 0. export('env')) > >>>>> > >>>>> the issue occurs when I define InstallAs in folder b > >>>>> if I remove it and add prints to the targets, I see them all ok. > >>>> > >>>> And what target is defined by the InstallAs call? > >>>> > >>>> > >>> > >>> "tgt/" + folder + "." + mode + "/" + bin where bin differs for each folder > >> > >> Okay, you're saying that you've commented out the InstallAs calls and it > >> works, but you've printed what the targets would have been for those and > >> they look suitably unique? Or is my reparsing of the comment from your > >> earlier message wrong? > >> > >> If so, it seems you've proven where the problem comes from (InstallAs) > >> and maybe SCons is interpreting that path differently than the pure > >> Python string comes out? > >> > > > > I'll try to make it clearer, as I pre define the targets, I can print them. > > when I run scons in dry run mode for targets a.y and a.z, I see the dep tree properly. it has a installAs call. > > when I do the same for b.z and b.y with the installAs call, I get two envs error with b.y. > > if I remove the installAs in b and prints the targets, I see no problems in the installAs target dst. > > From the information here, nothing jumps out. I'd run with just the "a" > targets first, capture that tree output; then run with just the "b" > targets and capture that and do a side-by-side comparison of what you > got and see if there are any surprises. > > Issue 2769 suggests from a discussion in the mailing list (the tigris > links are dead so they're no use for prospecting purposes) that calling > the same sconscript twice was the cause of a problem. You do that, > intentionally, so maybe we're looking for it getting called the same way > twice through some accident? > > > my issue is more that you states above, I have 3 folder which is called twice each. folder a is processed without any issue, process b however isn't it doesn't matter what I run Dagg.