diff options
Diffstat (limited to 'site_scons/libdeps.py')
-rw-r--r-- | site_scons/libdeps.py | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/site_scons/libdeps.py b/site_scons/libdeps.py index bc1c2e315bb..e17a4fa0f55 100644 --- a/site_scons/libdeps.py +++ b/site_scons/libdeps.py @@ -199,6 +199,9 @@ def get_syslibdeps(source, target, env, for_signature): return result def __append_direct_libdeps(node, prereq_nodes): + # We do not bother to decorate nodes that are not actual Objects + if type(node) == str: + return if getattr(node.attributes, 'libdeps_direct', None) is None: node.attributes.libdeps_direct = [] node.attributes.libdeps_direct.extend(prereq_nodes) @@ -235,6 +238,8 @@ def libdeps_emitter(target, source, env): libdep_files.append(env.File(os.path.join(dir_name, file_name))) for t in target: + # target[0] must be a Node and not a string, or else libdeps will fail to + # work properly. __append_direct_libdeps(t, libdep_files) for dependent in env.Flatten([env.get('LIBDEPS_DEPENDENTS', [])]): |