More efficient check for environment equivalence when setting up Nodes.
authorstevenknight <stevenknight@fdb21ef1-2011-0410-befe-b5e4ea1792b1>
Wed, 14 Apr 2004 17:14:07 +0000 (17:14 +0000)
committerstevenknight <stevenknight@fdb21ef1-2011-0410-befe-b5e4ea1792b1>
Wed, 14 Apr 2004 17:14:07 +0000 (17:14 +0000)
git-svn-id: http://scons.tigris.org/svn/scons/trunk@956 fdb21ef1-2011-0410-befe-b5e4ea1792b1

src/CHANGES.txt
src/engine/SCons/Builder.py

index b5ed500194d1bb980e021bb1cec4a4c705fe0848..f3e9a3dfdee80c5b3926269ec62ffdf13cd6da42 100644 (file)
@@ -79,6 +79,10 @@ RELEASE 0.96 - XXX
     of suffixes to be scanned by a given type of scanner, allowing these
     suffix lists to be easily added to or overridden.
 
+  - Speed up Node creation when calling a Builder by comparing whether two
+    Environments are the same object, not if their underlying dictionaries
+    are equivalent.
+
   From Gary Oberbrunner:
 
   - Add a --debug=presub option to print actions prior to substitution.
index 3d1fa8738b2c5fa6d011cb096b6f81bfa39afe79..5971056a363ea8388ba2f20c1d301bbb6c7d37c0 100644 (file)
@@ -286,7 +286,7 @@ def _init_nodes(builder, env, overrides, tlist, slist):
         if t.side_effect:
             raise UserError, "Multiple ways to build the same target were specified for: %s" % str(t)
         if t.has_builder():
-            if t.env != env:
+            if not t.env is env:
                 t_contents = t.builder.action.get_contents(tlist, slist, t.env)
                 contents = t.builder.action.get_contents(tlist, slist, env)