Added fix for TeX includes with same name as subdirs.
[scons.git] / test / ToolSurrogate.py
index dc190dd016ff0829998e2ba74a3f2795dc672d2c..a343d62d8fefce5c9b8a3dd17708889e8cbba84b 100644 (file)
@@ -47,10 +47,13 @@ class Curry:
         else:
             kw = kwargs or self.kwargs
 
-        return apply(self.fun, self.pending + args, kw)
+        return self.fun(*self.pending + args, **kw)
 
 def Str(target, source, env, cmd=""):
-    return env.subst(cmd, target=target, source=source)
+    result = []
+    for cmd in env.subst_list(cmd, target=target, source=source):
+        result.append(" ".join(map(str, cmd)))
+    return '\\n'.join(result)
 
 class ToolSurrogate:
     def __init__(self, tool, variable, func):
@@ -78,7 +81,7 @@ ToolList = {
 }
 
 platform = ARGUMENTS['platform']
-tools = map(lambda t: apply(ToolSurrogate, t), ToolList[platform])
+tools = [ToolSurrogate(*t) for t in ToolList[platform]]
 
 env = Environment(tools=tools, PROGSUFFIX='.exe', OBJSUFFIX='.obj')
 env.Program('foo.c')
@@ -87,15 +90,21 @@ env.Program('foo.c')
 test.write('foo.c', "foo.c posix\n")
 
 test.run(arguments = '. platform=posix', stdout = test.wrap_stdout("""\
-cc -c -o foo.obj foo.c
-c++ -o foo.exe foo.obj
+cc -o foo.obj -c foo.c
+cc -o foo.exe foo.obj
 """))
 
 test.write('foo.c', "foo.c win32\n")
 
 test.run(arguments = '. platform=win32', stdout = test.wrap_stdout("""\
-cl /nologo /c foo.c /Fofoo.obj
+cl /Fofoo.obj /c foo.c /nologo
 link /nologo /OUT:foo.exe foo.obj
 """))
 
 test.pass_test()
+
+# Local Variables:
+# tab-width:4
+# indent-tabs-mode:nil
+# End:
+# vim: set expandtab tabstop=4 shiftwidth=4: