summaryrefslogtreecommitdiffstats
path: root/src/engine/SCons/Scanner
diff options
context:
space:
mode:
authorSteven Knight <knight@baldmt.com>2005-04-13 13:49:21 (GMT)
committerSteven Knight <knight@baldmt.com>2005-04-13 13:49:21 (GMT)
commit4222b5aa00cf823693509e28a086b1fe7077482e (patch)
tree2fc86327262ad237e894e84d6c5a4157b9fa3abd /src/engine/SCons/Scanner
parent829d0fa89c2d93bb1461df2a8bb2fd2bb28a67da (diff)
downloadSCons-4222b5aa00cf823693509e28a086b1fe7077482e.zip
SCons-4222b5aa00cf823693509e28a086b1fe7077482e.tar.gz
SCons-4222b5aa00cf823693509e28a086b1fe7077482e.tar.bz2
Refactor the Rsearch*() methods out of existence in favor of simpler utility methods that return lists of repository directories.
Diffstat (limited to 'src/engine/SCons/Scanner')
-rw-r--r--src/engine/SCons/Scanner/CTests.py8
-rw-r--r--src/engine/SCons/Scanner/FortranTests.py10
-rw-r--r--src/engine/SCons/Scanner/IDLTests.py10
-rw-r--r--src/engine/SCons/Scanner/ScannerTests.py4
-rw-r--r--src/engine/SCons/Scanner/__init__.py5
5 files changed, 17 insertions, 20 deletions
diff --git a/src/engine/SCons/Scanner/CTests.py b/src/engine/SCons/Scanner/CTests.py
index 138b788..c57e7f7 100644
--- a/src/engine/SCons/Scanner/CTests.py
+++ b/src/engine/SCons/Scanner/CTests.py
@@ -201,10 +201,10 @@ class DummyEnvironment(UserDict.UserDict):
return factory or self.fs.File
def Dir(self, filename):
- return self.fs.Dir(test.workpath(filename))
+ return self.fs.Dir(filename)
def File(self, filename):
- return self.fs.File(test.workpath(filename))
+ return self.fs.File(filename)
if os.path.normcase('foo') == os.path.normcase('FOO'):
my_normpath = os.path.normcase
@@ -303,8 +303,8 @@ class CScannerTestCase8(unittest.TestCase):
env.fs.chdir(env.Dir(''))
path = s.path(env, dir)
deps2 = s(env.File('#fa.cpp'), env, path)
- headers1 = ['include/fa.h', 'include/fb.h']
- headers2 = ['subdir/include/fa.h', 'subdir/include/fb.h']
+ headers1 = map(test.workpath, ['include/fa.h', 'include/fb.h'])
+ headers2 = ['include/fa.h', 'include/fb.h']
deps_match(self, deps1, headers1)
deps_match(self, deps2, headers2)
diff --git a/src/engine/SCons/Scanner/FortranTests.py b/src/engine/SCons/Scanner/FortranTests.py
index 141f375..da4a023 100644
--- a/src/engine/SCons/Scanner/FortranTests.py
+++ b/src/engine/SCons/Scanner/FortranTests.py
@@ -249,10 +249,10 @@ class DummyEnvironment:
return factory or self.fs.File
def Dir(self, filename):
- return self.fs.Dir(test.workpath(filename))
+ return self.fs.Dir(filename)
def File(self, filename):
- return self.fs.File(test.workpath(filename))
+ return self.fs.File(filename)
def deps_match(self, deps, headers):
scanned = map(os.path.normpath, map(str, deps))
@@ -382,8 +382,8 @@ class FortranScannerTestCase10(unittest.TestCase):
env.fs.chdir(env.Dir(''))
path = s.path(env, dir)
deps2 = s(env.File('#fff4.f'), env, path)
- headers1 = ['include/f4.f']
- headers2 = ['subdir/include/f4.f']
+ headers1 = map(test.workpath, ['include/f4.f'])
+ headers2 = ['include/f4.f']
deps_match(self, deps1, headers1)
deps_match(self, deps2, headers2)
@@ -416,7 +416,7 @@ class FortranScannerTestCase12(unittest.TestCase):
test.write('include/fff4.f', test.read('fff4.f'))
deps = s(env.File('#include/fff4.f'), env, path)
env.fs.chdir(env.Dir(''))
- deps_match(self, deps, ['include/f4.f'])
+ deps_match(self, deps, ['f4.f'])
test.unlink('include/fff4.f')
class FortranScannerTestCase13(unittest.TestCase):
diff --git a/src/engine/SCons/Scanner/IDLTests.py b/src/engine/SCons/Scanner/IDLTests.py
index d1a0941..5f2bb1f 100644
--- a/src/engine/SCons/Scanner/IDLTests.py
+++ b/src/engine/SCons/Scanner/IDLTests.py
@@ -226,10 +226,10 @@ class DummyEnvironment:
return factory or self.fs.File
def Dir(self, filename):
- return self.fs.Dir(test.workpath(filename))
+ return self.fs.Dir(filename)
def File(self, filename):
- return self.fs.File(test.workpath(filename))
+ return self.fs.File(filename)
global my_normpath
my_normpath = os.path.normpath
@@ -329,8 +329,8 @@ class IDLScannerTestCase7(unittest.TestCase):
env.fs.chdir(env.Dir(''))
path = s.path(env, dir)
deps2 = s(env.File('#t4.idl'), env, path)
- headers1 = ['include/fa.idl', 'include/fb.idl']
- headers2 = ['subdir/include/fa.idl', 'subdir/include/fb.idl']
+ headers1 = map(test.workpath, ['include/fa.idl', 'include/fb.idl'])
+ headers2 = ['include/fa.idl', 'include/fb.idl']
deps_match(self, deps1, headers1)
deps_match(self, deps2, headers2)
@@ -365,7 +365,7 @@ class IDLScannerTestCase9(unittest.TestCase):
test.write('include/t4.idl', test.read('t4.idl'))
deps = s(env.File('#include/t4.idl'), env, path)
env.fs.chdir(env.Dir(''))
- deps_match(self, deps, [ 'include/fa.idl', 'include/fb.idl' ])
+ deps_match(self, deps, [ 'fa.idl', 'fb.idl' ])
test.unlink('include/t4.idl')
class IDLScannerTestCase10(unittest.TestCase):
diff --git a/src/engine/SCons/Scanner/ScannerTests.py b/src/engine/SCons/Scanner/ScannerTests.py
index 0d0ccec..29ca063 100644
--- a/src/engine/SCons/Scanner/ScannerTests.py
+++ b/src/engine/SCons/Scanner/ScannerTests.py
@@ -35,8 +35,8 @@ class DummyFS:
self.search_result = search_result
def File(self, name):
return DummyNode(name)
- def Rsearchall(self, nodes, must_exist=0, clazz=None, cwd=dir):
- return self.search_result + nodes
+ def Rfindalldirs(self, pathlist, cwd):
+ return self.search_result + pathlist
class DummyEnvironment(UserDict.UserDict):
def __init__(self, dict=None, **kw):
diff --git a/src/engine/SCons/Scanner/__init__.py b/src/engine/SCons/Scanner/__init__.py
index 504b6df..3010159 100644
--- a/src/engine/SCons/Scanner/__init__.py
+++ b/src/engine/SCons/Scanner/__init__.py
@@ -88,10 +88,7 @@ class FindPathDirs:
return ()
path = env.subst_path(path, target=target, source=source)
- path_tuple = tuple(env.fs.Rsearchall(path,
- must_exist = 0, #kwq!
- clazz = SCons.Node.FS.Dir,
- cwd = dir))
+ path_tuple = tuple(env.fs.Rfindalldirs(path, dir))
return Binder(path_tuple)
class Base: