[Scons-users] Having issue with scanner in Command()
Mats Wichmann
mats at wichmann.us
Tue May 15 08:58:47 EDT 2018
On 05/14/2018 03:21 PM, Bill Deegan wrote:
> Yup..
>
> Something like this.. (patch below won't apply.. just edit the file..)
>
> +++ b/src/engine/SCons/Node/__init__.py
> @@ -1149,7 +1149,9 @@ class Node(object, with_metaclass(NoSlotsPyPy)):
> binfo.bdepends = self.depends
> binfo.bdependsigs = [d.get_ninfo() for d in self.depends if d not
> in ignore_set]
>
> + # TODO: If anything matches the ignore_set: bimplicit and
> bimplicitsigs will have different lengths and potentially the items in each
> list
> will not represent the same file. (any item but the last one matches any
> item in ignore_set)
> binfo.bimplicit = self.implicit or []
> + binfo.bimplicit = [i for i in binfo.bimplicit if i not in
> ignore_set]
> binfo.bimplicitsigs = [i.get_ninfo() for i in binfo.bimplicit if i
> not in ignore_set]
>
>
> On Mon, May 14, 2018 at 5:00 PM, Jason Kenny <dragon512 at live.com> wrote:
>
>> No.. did not know about this utility.
>>
>> I ran it the first round and it dumps a ton of info..
>> I ran scons again, then ran the utility again and it dumps this...
>>
>> LICENSE: cae6da10f4ffd9703214776d2aabce32 1525462589 6128
>> _vcs/openssl/LICENSE: cae6da10f4ffd9703214776d2aabce32 1525462589
>> 6128
>> 55b40265a26683fbced32365cba594b5 [<lambda>(target, source, env)]
>> Makefile: 1d7b4a1b320ff883d02f50dbf26cbfb4 1526331304 498401
>> Traceback (most recent call last):
>> File "/home/jkenny/code/dev/buildenv/bin/sconsign", line 547, in
>> <module>
>> Do_SConsignDB(Map_Module.get(dbm_name, dbm_name), dbm)(a)
>> File "/home/jkenny/code/dev/buildenv/bin/sconsign", line 427, in
>> __call__
>> self.printentries(dir, db[dir])
>> File "/home/jkenny/code/dev/buildenv/bin/sconsign", line 431, in
>> printentries
>> printentries(pickle.loads(val), dir)
>> File "/home/jkenny/code/dev/buildenv/bin/sconsign", line 370, in
>> printentries
>> printfield(name, entry.binfo)
>> File "/home/jkenny/code/dev/buildenv/bin/sconsign", line 334, in
>> printfield
>> outlist = field("implicit", entry, 0)
>> File "/home/jkenny/code/dev/buildenv/bin/sconsign", line 297, in field
>> val = mapper(entry, name)
>> File "/home/jkenny/code/dev/buildenv/bin/sconsign", line 277, in
>> map_bkids
>> result.append(nodeinfo_string(bkids[i], bkidsigs[i], " "))
>> IndexError: list index out of range
>>
>>
>> Does this look like the issue you had mentioned?
>>
>> Jason
>>
Just for grins I ran sconsign here and it dumps with the same type of error:
...
File "/usr/bin/sconsign", line 277, in map_bkids
result.append(nodeinfo_string(bkids[i], bkidsigs[i], " "))
IndexError: list index out of range
More information about the Scons-users
mailing list