scons icon indicating copy to clipboard operation
scons copied to clipboard

Compilation database displayed incorrectly with `--tree`

Open rico-chet opened this issue 1 year ago • 1 comments

  • Version of SCons 4.4.0 and 4.8.1
$ scons --tree=all compile_commands.json
scons: Reading SConscript files ...
scons: done reading SConscript files.
scons: Building targets ...
Building compilation database compile_commands.json
+-compile_commands.json
  +-[<SCons.Node.FS.File object at 0x3ddc6a50>]
  +-[<SCons.Node.FS.File object at 0x3ddc8680>]
scons: done building targets.

should rather be this:

$ scons --tree=all compile_commands.json
scons: Reading SConscript files ...
scons: done reading SConscript files.
scons: Building targets ...
Building compilation database compile_commands.json
+-compile_commands.json
  +-main.cpp
  +-another.cpp
scons: done building targets.

Seems like __CompilationDbNode is missing a __str__() method, or its base class is not the right one.

edit:

I believe that the SCons-generated compile_commands.json should show no dependencies but the SCons{script,truct} file, if at all.

rico-chet avatar Nov 13 '24 16:11 rico-chet

I think normally, Value (Python) nodes don't get included in the tree?

mwichmann avatar Nov 13 '24 18:11 mwichmann