scons: Track and reuse object nodes for a given source file.
authorGabe Black <gabeblack@google.com>
Fri, 1 Dec 2017 00:09:29 +0000 (16:09 -0800)
committerGabe Black <gabeblack@google.com>
Wed, 6 Dec 2017 01:02:20 +0000 (01:02 +0000)
commit0b11c2ea6d188077b04effe8b80c193fa74c2ca3
tree6ed02c6d62ba5e0b4d7be3b31e64c842ace125a4
parent855660f9c7588497bdda6807064217e289d65f69
scons: Track and reuse object nodes for a given source file.

scons gets upset if two different environments are used to set up a
particular object file. This change adds two dicts to the SourceFile
class, one for static and one for shared object files, which are keyed
off of the appropriate suffix. If a suffix hasn't been set up yet,
a new node of the appropriate type is set up and stored in the cache,
and then whatever is in the cache (new or old) is returned.

Change-Id: Ice4b4fc728b438a4d3316c3ff6667c0480d2a6d7
Reviewed-on: https://gem5-review.googlesource.com/6224
Reviewed-by: Nikos Nikoleris <nikos.nikoleris@arm.com>
Maintainer: Gabe Black <gabeblack@google.com>
src/SConscript