[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