Currently, building IDL targets requires invoking a bit of python code in the sources list to generate the c++ sources. For example:
env.Library( target='some_library', source=[ 'foo.cpp', env.Idlc('bar.idl')[0], ], )
The env.Idlc() invocation creates the generated c++ source and header files and SCons ultimately sees:
env.Library( target='some_library', source=[ 'foo.cpp', 'bar_gen.cpp', ], )
It would be a small, but repeated quality of life improvement to teach SCons about .idl files explicitly so that source lists could be written more simply and readably as:
env.Library( target='some_library', source=[ 'foo.cpp', 'bar.idl', ], )