summaryrefslogtreecommitdiffstats
path: root/src/engine/SCons/Node
diff options
context:
space:
mode:
authorSteven Knight <knight@baldmt.com>2005-01-10 13:45:00 (GMT)
committerSteven Knight <knight@baldmt.com>2005-01-10 13:45:00 (GMT)
commit519037f42eb7c90c5fb1f7d2e2b41ccee5fdba86 (patch)
tree44bc33674ae55485c128e0a59a050cbda7a52973 /src/engine/SCons/Node
parent69e3c442cdfb846cbcba7702d500e237b66be71e (diff)
downloadSCons-519037f42eb7c90c5fb1f7d2e2b41ccee5fdba86.zip
SCons-519037f42eb7c90c5fb1f7d2e2b41ccee5fdba86.tar.gz
SCons-519037f42eb7c90c5fb1f7d2e2b41ccee5fdba86.tar.bz2
Eliminate Executor's creation and use of a build_dict and a subst_dict, which were creating a separate OverrideEnvironment for every target and foiling the Memoizer's attempts at speeding up things.
Diffstat (limited to 'src/engine/SCons/Node')
-rw-r--r--src/engine/SCons/Node/FS.py11
-rw-r--r--src/engine/SCons/Node/FSTests.py2
-rw-r--r--src/engine/SCons/Node/NodeTests.py6
-rw-r--r--src/engine/SCons/Node/__init__.py5
4 files changed, 3 insertions, 21 deletions
diff --git a/src/engine/SCons/Node/FS.py b/src/engine/SCons/Node/FS.py
index 1f2b0a8..50e3818 100644
--- a/src/engine/SCons/Node/FS.py
+++ b/src/engine/SCons/Node/FS.py
@@ -1397,13 +1397,6 @@ class File(Base):
return self.fs.Rsearchall(pathlist, clazz=Dir, must_exist=0,
cwd=self.cwd)
- def generate_build_dict(self):
- """Return an appropriate dictionary of values for building
- this File."""
- return {'Dir' : self.Dir,
- 'File' : self.File,
- 'RDirs' : self.RDirs}
-
def _morph(self):
"""Turn a file system node into a File object. __cache_reset__"""
self.scanner_paths = {}
@@ -1480,10 +1473,10 @@ class File(Base):
try:
path = self.scanner_paths[scanner]
except KeyError:
- path = scanner.path(env, self.cwd)
+ path = scanner.path(env, self.cwd, target)
self.scanner_paths[scanner] = path
except KeyError:
- path = scanner.path(env, target.cwd)
+ path = scanner.path(env, target.cwd, target)
target.scanner_paths[scanner] = path
return scanner(self, env, path)
diff --git a/src/engine/SCons/Node/FSTests.py b/src/engine/SCons/Node/FSTests.py
index e71093f..e65c10b 100644
--- a/src/engine/SCons/Node/FSTests.py
+++ b/src/engine/SCons/Node/FSTests.py
@@ -54,7 +54,7 @@ class Scanner:
scanner_count = scanner_count + 1
self.hash = scanner_count
self.node = node
- def path(self, env, target):
+ def path(self, env, dir, target=None):
return ()
def __call__(self, node, env, path):
return [self.node]
diff --git a/src/engine/SCons/Node/NodeTests.py b/src/engine/SCons/Node/NodeTests.py
index ee0e82b..3e5a9f0 100644
--- a/src/engine/SCons/Node/NodeTests.py
+++ b/src/engine/SCons/Node/NodeTests.py
@@ -1128,12 +1128,6 @@ class NodeTestCase(unittest.TestCase):
s = n.get_suffix()
assert s == '', s
- def test_generate_build_dict(self):
- """Test the base Node generate_build_dict() method"""
- n = SCons.Node.Node()
- dict = n.generate_build_dict()
- assert dict == {}, dict
-
def test_postprocess(self):
"""Test calling the base Node postprocess() method"""
n = SCons.Node.Node()
diff --git a/src/engine/SCons/Node/__init__.py b/src/engine/SCons/Node/__init__.py
index 7b443ab..7ffec0e 100644
--- a/src/engine/SCons/Node/__init__.py
+++ b/src/engine/SCons/Node/__init__.py
@@ -143,11 +143,6 @@ class Node:
def get_suffix(self):
return ''
- def generate_build_dict(self):
- """Return an appropriate dictionary of values for building
- this Node."""
- return {}
-
def get_build_env(self):
"""Fetch the appropriate Environment to build this node.
__cacheable__"""