[Scons-users] scons --tree=status not working

William Deegan bill at baddogconsulting.com
Thu Apr 3 13:41:46 EDT 2014


Brady,

I believe the preference is for a list of Nodes, but SCons will create them when needed from strings.  Perhaps you have a None object in either of those lists in your emitter(s).

-Bill

On April 3, 2014 at 2:24:50 AM, Brady Johnson (bradyallenjohnson at gmail.com) wrote:

> Bill,

>

> Sorry for the delay in answering...

>

> Technically, Im not supposed to publish the code

>

> I dont have any custom Node types. Now that you mention it, it does indeed

> make sense that that command calls the emitters. I'll revise them and look

> for the problem.

>

> One quick question first: Do the (target, source) lists returned by the

> emitters have to be lists of Nodes? or can they be lists of Strings? I have

> some emitters that return lists of strings and work fine while building,

> but perhaps that feature is expecting lists of Nodes.

>

> Thanks for the help.

>

> Regards,

>

> Brady

>

>

>

> On Wed, Apr 2, 2014 at 12:01 AM, Bill Deegan wrote:

>

> > Brady,

> >

> > Can you pastebin your emitters?

> > Looks like you have a Value node with None in it?

> > Have you created a custom Node type?

> >

> > -Bill

> >

> >

> > On Tue, Apr 1, 2014 at 2:29 PM, Brady Johnson > > > wrote:

> >

> >> Bill,

> >>

> >> Yes, I have several custom builders, each with an emitter. Is there

> >> something special that needs to be done in those builders/emitters to be

> >> able to use the tree status feature?

> >>

> >> Thanks,

> >>

> >> Brady

> >> On Apr 1, 2014 11:17 PM, "William Deegan"

> >> wrote:

> >>

> >>> Brady,

> >>>

> >>> On April 1, 2014 at 6:34:29 AM, Brady Johnson (

> >>> bradyallenjohnson at gmail.com) wrote:

> >>> > When I try to get the dependency info with --tree=status, scons throws

> >>> the

> >>> > exception below.

> >>> >

> >>> > Can this be due to my build scripts?

> >>>

> >>> Very likely. Are you using any customer builders/emitters/ Value Nodes?

> >>>

> >>> -Bill

> >>>

> >>> >

> >>> > Brady

> >>> >

> >>> >

> >>> > $ scons --tree=status > scons_tree_status

> >>> > E = exists

> >>> > R = exists in repository only

> >>> > b = implicit builder

> >>> > B = explicit builder

> >>> > S = side effect

> >>> > P = precious

> >>> > A = always build

> >>> > C = current

> >>> > N = no clean

> >>> > H = no cache

> >>> >

> >>> > [E b ]+-SccfAllPackages

> >>> > [E B C ]

> >>> >

> >>> +-software/Code/WebServices/build/Axis2/ERIC-SCCF_Axis2-CXP9030406_2-R4A01.sdp

> >>> > [E B C ] |

> >>> >

> >>> +-software/Code/WebServices/build/Axis2/rpmtopdir/RPMS/x86_64/Axis2-R4A01-0.x86_64.rpm

> >>> > AttributeError: 'NoneType' object has no attribute 'get_contents':

> >>> > File

> >>> >

> >>> "/tmp/ebrjohn/pythonbrew/pythons/Python-2.7.2/lib/scons-2.3.1/SCons/Script/Main.py",

> >>> > line 1357:

> >>> > _exec_main(parser, values)

> >>> > File

> >>> >

> >>> "/tmp/ebrjohn/pythonbrew/pythons/Python-2.7.2/lib/scons-2.3.1/SCons/Script/Main.py",

> >>> > line 1320:

> >>> > _main(parser)

> >>> > File

> >>> >

> >>> "/tmp/ebrjohn/pythonbrew/pythons/Python-2.7.2/lib/scons-2.3.1/SCons/Script/Main.py",

> >>> > line 1084:

> >>> > nodes = _build_targets(fs, options, targets, target_top)

> >>> > File

> >>> >

> >>> "/tmp/ebrjohn/pythonbrew/pythons/Python-2.7.2/lib/scons-2.3.1/SCons/Script/Main.py",

> >>> > line 1282:

> >>> > jobs.run(postfunc = jobs_postfunc)

> >>> > File

> >>> >

> >>> "/tmp/ebrjohn/pythonbrew/pythons/Python-2.7.2/lib/scons-2.3.1/SCons/Job.py",

> >>> > line 111:

> >>> > self.job.start()

> >>> > File

> >>> >

> >>> "/tmp/ebrjohn/pythonbrew/pythons/Python-2.7.2/lib/scons-2.3.1/SCons/Job.py",

> >>> > line 423:

> >>> > task.postprocess()

> >>> > File

> >>> >

> >>> "/tmp/ebrjohn/pythonbrew/pythons/Python-2.7.2/lib/scons-2.3.1/SCons/Script/Main.py",

> >>> > line 297:

> >>> > tp.display(t)

> >>> > File

> >>> >

> >>> "/tmp/ebrjohn/pythonbrew/pythons/Python-2.7.2/lib/scons-2.3.1/SCons/Script/Main.py",

> >>> > line 424:

> >>> > SCons.Util.print_tree(t, func, prune=self.prune, showtags=s)

> >>> > File

> >>> >

> >>> "/tmp/ebrjohn/pythonbrew/pythons/Python-2.7.2/lib/scons-2.3.1/SCons/Util.py",

> >>> > line 278:

> >>> > print_tree(C, child_func, prune, idx, margin, visited)

> >>> > File

> >>> >

> >>> "/tmp/ebrjohn/pythonbrew/pythons/Python-2.7.2/lib/scons-2.3.1/SCons/Util.py",

> >>> > line 278:

> >>> > print_tree(C, child_func, prune, idx, margin, visited)

> >>> > File

> >>> >

> >>> "/tmp/ebrjohn/pythonbrew/pythons/Python-2.7.2/lib/scons-2.3.1/SCons/Util.py",

> >>> > line 278:

> >>> > print_tree(C, child_func, prune, idx, margin, visited)

> >>> > File

> >>> >

> >>> "/tmp/ebrjohn/pythonbrew/pythons/Python-2.7.2/lib/scons-2.3.1/SCons/Util.py",

> >>> > line 252:

> >>> > tags.append(' C'[IDX(root.is_up_to_date())])

> >>> > File

> >>> >

> >>> "/tmp/ebrjohn/pythonbrew/pythons/Python-2.7.2/lib/scons-2.3.1/SCons/Node/FS.py",

> >>> > line 3110:

> >>> > if not self.changed(r):

> >>> > File

> >>> >

> >>> "/tmp/ebrjohn/pythonbrew/pythons/Python-2.7.2/lib/scons-2.3.1/SCons/Node/FS.py",

> >>> > line 3055:

> >>> > has_changed = SCons.Node.Node.changed(self, node)

> >>> > File

> >>> >

> >>> "/tmp/ebrjohn/pythonbrew/pythons/Python-2.7.2/lib/scons-2.3.1/SCons/Node/__init__.py",

> >>> > line 1102:

> >>> > contents = self.get_executor().get_contents()

> >>> > _______________________________________________

> >>> > Scons-users mailing list

> >>> > Scons-users at scons.org

> >>> > http://four.pairlist.net/mailman/listinfo/scons-users

> >>> >

> >>>

> >>>

> >

>




More information about the Scons-users mailing list