Fix line endings.
authorstevenknight <stevenknight@fdb21ef1-2011-0410-befe-b5e4ea1792b1>
Sun, 22 Feb 2009 02:03:06 +0000 (02:03 +0000)
committerstevenknight <stevenknight@fdb21ef1-2011-0410-befe-b5e4ea1792b1>
Sun, 22 Feb 2009 02:03:06 +0000 (02:03 +0000)
git-svn-id: http://scons.tigris.org/svn/scons/trunk@4032 fdb21ef1-2011-0410-befe-b5e4ea1792b1

test/Decider/unknown.py
test/MSVC/hierarchical.py
test/MSVC/multiple-pdb.py
test/MSVC/pdb-VariantDir-path.py
test/MSVS/vs-8.0Exp-exec.py
test/MSVS/vs-9.0-exec.py
test/MSVS/vs-9.0Exp-exec.py

index a1ae8253f5a4e2b0558cb98567ccf6984202af68..ec24effccdf65a927f69398df3f53daa576af0d6 100644 (file)
@@ -1,49 +1,49 @@
-#!/usr/bin/env python\r
-#\r
-# __COPYRIGHT__\r
-#\r
-# Permission is hereby granted, free of charge, to any person obtaining\r
-# a copy of this software and associated documentation files (the\r
-# "Software"), to deal in the Software without restriction, including\r
-# without limitation the rights to use, copy, modify, merge, publish,\r
-# distribute, sublicense, and/or sell copies of the Software, and to\r
-# permit persons to whom the Software is furnished to do so, subject to\r
-# the following conditions:\r
-#\r
-# The above copyright notice and this permission notice shall be included\r
-# in all copies or substantial portions of the Software.\r
-#\r
-# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY\r
-# KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE\r
-# WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND\r
-# NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE\r
-# LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION\r
-# OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION\r
-# WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\r
-#\r
-\r
-__revision__ = "__FILE__ __REVISION__ __DATE__ __DEVELOPER__"\r
-\r
-"""\r
-Verify the error when the Decider() function is handed an unknown\r
-function string.\r
-"""\r
-\r
-import TestSCons\r
-\r
-test = TestSCons.TestSCons(match = TestSCons.match_re_dotall)\r
-\r
-test.write('SConstruct', """\\r
-Decider('fiddle-dee-dee')\r
-""")\r
-\r
-expect = r"""\r
-scons: \*\*\* Unknown Decider value 'fiddle-dee-dee'\r
-""" + TestSCons.file_expr\r
-\r
-test.run(arguments = '.', status = 2, stderr = expect)\r
-\r
-test.pass_test()\r
+#!/usr/bin/env python
+#
+# __COPYRIGHT__
+#
+# Permission is hereby granted, free of charge, to any person obtaining
+# a copy of this software and associated documentation files (the
+# "Software"), to deal in the Software without restriction, including
+# without limitation the rights to use, copy, modify, merge, publish,
+# distribute, sublicense, and/or sell copies of the Software, and to
+# permit persons to whom the Software is furnished to do so, subject to
+# the following conditions:
+#
+# The above copyright notice and this permission notice shall be included
+# in all copies or substantial portions of the Software.
+#
+# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY
+# KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE
+# WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
+# NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
+# LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
+# OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
+# WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
+#
+
+__revision__ = "__FILE__ __REVISION__ __DATE__ __DEVELOPER__"
+
+"""
+Verify the error when the Decider() function is handed an unknown
+function string.
+"""
+
+import TestSCons
+
+test = TestSCons.TestSCons(match = TestSCons.match_re_dotall)
+
+test.write('SConstruct', """\
+Decider('fiddle-dee-dee')
+""")
+
+expect = r"""
+scons: \*\*\* Unknown Decider value 'fiddle-dee-dee'
+""" + TestSCons.file_expr
+
+test.run(arguments = '.', status = 2, stderr = expect)
+
+test.pass_test()
 
 # Local Variables:
 # tab-width:4
index cfc61cd3eb33f001003b680a42c1941609f07e9f..6b4f007ce614839c158ed84f317fc07beb43f457 100644 (file)
@@ -1,96 +1,96 @@
-#!/usr/bin/env python\r
-#\r
-# __COPYRIGHT__\r
-#\r
-# Permission is hereby granted, free of charge, to any person obtaining\r
-# a copy of this software and associated documentation files (the\r
-# "Software"), to deal in the Software without restriction, including\r
-# without limitation the rights to use, copy, modify, merge, publish,\r
-# distribute, sublicense, and/or sell copies of the Software, and to\r
-# permit persons to whom the Software is furnished to do so, subject to\r
-# the following conditions:\r
-#\r
-# The above copyright notice and this permission notice shall be included\r
-# in all copies or substantial portions of the Software.\r
-#\r
-# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY\r
-# KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE\r
-# WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND\r
-# NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE\r
-# LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION\r
-# OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION\r
-# WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\r
-#\r
-\r
-__revision__ = "__FILE__ __REVISION__ __DATE__ __DEVELOPER__"\r
-\r
-"""\r
-Verify use of Visual Studio with a hierarchical build.\r
-"""\r
-\r
-import sys\r
-\r
-import TestSCons\r
-\r
-test = TestSCons.TestSCons(match = TestSCons.match_re)\r
-\r
-if sys.platform != 'win32':\r
-    msg = "Skipping Visual C/C++ test on non-Windows platform '%s'\n" % sys.platform\r
-    test.skip_test(msg)\r
-\r
-\r
-\r
-test.subdir('src', 'build', 'out')\r
-\r
-test.write('SConstruct', """\r
-VariantDir('build', 'src', duplicate=0)\r
-SConscript('build/SConscript')\r
-""")\r
-\r
-test.write('src/SConscript',"""\r
-import os\r
-env = Environment()\r
-env.Append(CPPPATH=os.environ.get('INCLUDE', ''),\r
-           LIBPATH=os.environ.get('LIB', ''))\r
-env['PCH'] = 'StdAfx.pch'\r
-env['PDB'] = '#out/test.pdb'\r
-env['PCHSTOP'] = 'StdAfx.h'\r
-env.PCH('StdAfx.cpp')\r
-env.Program('#out/test.exe', 'test.cpp')\r
-""")\r
-\r
-test.write('src/test.cpp', '''\r
-#include "StdAfx.h"\r
-\r
-int main(void) \r
-{ \r
-    return 1;\r
-}\r
-''')\r
-\r
-test.write('src/StdAfx.h', '''\r
-#include <windows.h>\r
-''')\r
-\r
-test.write('src/StdAfx.cpp', '''\r
-#include "StdAfx.h"\r
-''')\r
-\r
-test.run(arguments='out', stderr=None)\r
-\r
-test.must_exist(test.workpath('out/test.pdb'))\r
-test.must_exist(test.workpath('build/StdAfx.pch'))\r
-test.must_exist(test.workpath('build/StdAfx.obj'))\r
-\r
-test.run(arguments='-c out')\r
-\r
-test.must_not_exist(test.workpath('out/test.pdb'))\r
-test.must_not_exist(test.workpath('build/StdAfx.pch'))\r
-test.must_not_exist(test.workpath('build/StdAfx.obj'))\r
-\r
-\r
-\r
-test.pass_test()\r
+#!/usr/bin/env python
+#
+# __COPYRIGHT__
+#
+# Permission is hereby granted, free of charge, to any person obtaining
+# a copy of this software and associated documentation files (the
+# "Software"), to deal in the Software without restriction, including
+# without limitation the rights to use, copy, modify, merge, publish,
+# distribute, sublicense, and/or sell copies of the Software, and to
+# permit persons to whom the Software is furnished to do so, subject to
+# the following conditions:
+#
+# The above copyright notice and this permission notice shall be included
+# in all copies or substantial portions of the Software.
+#
+# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY
+# KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE
+# WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
+# NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
+# LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
+# OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
+# WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
+#
+
+__revision__ = "__FILE__ __REVISION__ __DATE__ __DEVELOPER__"
+
+"""
+Verify use of Visual Studio with a hierarchical build.
+"""
+
+import sys
+
+import TestSCons
+
+test = TestSCons.TestSCons(match = TestSCons.match_re)
+
+if sys.platform != 'win32':
+    msg = "Skipping Visual C/C++ test on non-Windows platform '%s'\n" % sys.platform
+    test.skip_test(msg)
+
+
+
+test.subdir('src', 'build', 'out')
+
+test.write('SConstruct', """
+VariantDir('build', 'src', duplicate=0)
+SConscript('build/SConscript')
+""")
+
+test.write('src/SConscript',"""
+import os
+env = Environment()
+env.Append(CPPPATH=os.environ.get('INCLUDE', ''),
+           LIBPATH=os.environ.get('LIB', ''))
+env['PCH'] = 'StdAfx.pch'
+env['PDB'] = '#out/test.pdb'
+env['PCHSTOP'] = 'StdAfx.h'
+env.PCH('StdAfx.cpp')
+env.Program('#out/test.exe', 'test.cpp')
+""")
+
+test.write('src/test.cpp', '''
+#include "StdAfx.h"
+
+int main(void) 
+{ 
+    return 1;
+}
+''')
+
+test.write('src/StdAfx.h', '''
+#include <windows.h>
+''')
+
+test.write('src/StdAfx.cpp', '''
+#include "StdAfx.h"
+''')
+
+test.run(arguments='out', stderr=None)
+
+test.must_exist(test.workpath('out/test.pdb'))
+test.must_exist(test.workpath('build/StdAfx.pch'))
+test.must_exist(test.workpath('build/StdAfx.obj'))
+
+test.run(arguments='-c out')
+
+test.must_not_exist(test.workpath('out/test.pdb'))
+test.must_not_exist(test.workpath('build/StdAfx.pch'))
+test.must_not_exist(test.workpath('build/StdAfx.obj'))
+
+
+
+test.pass_test()
 
 # Local Variables:
 # tab-width:4
index 053fd5a165ac85367515166849e091549d9cbed5..0e8caa3a3289a4b911760b18222de485bebcd250 100644 (file)
@@ -1,86 +1,86 @@
-#!/usr/bin/env python\r
-#\r
-# __COPYRIGHT__\r
-#\r
-# Permission is hereby granted, free of charge, to any person obtaining\r
-# a copy of this software and associated documentation files (the\r
-# "Software"), to deal in the Software without restriction, including\r
-# without limitation the rights to use, copy, modify, merge, publish,\r
-# distribute, sublicense, and/or sell copies of the Software, and to\r
-# permit persons to whom the Software is furnished to do so, subject to\r
-# the following conditions:\r
-#\r
-# The above copyright notice and this permission notice shall be included\r
-# in all copies or substantial portions of the Software.\r
-#\r
-# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY\r
-# KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE\r
-# WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND\r
-# NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE\r
-# LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION\r
-# OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION\r
-# WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\r
-#\r
-\r
-__revision__ = "__FILE__ __REVISION__ __DATE__ __DEVELOPER__"\r
-\r
-"""\r
-Verify that setting $PDB to '${TARGET}.pdb allows us to build multiple\r
-programs with separate .pdb files from the same environment.\r
-\r
-Under the covers, this verifies that emitters support expansion of the\r
-$TARGET variable (and implicitly $SOURCE), using the original specified\r
-list(s).\r
-"""\r
-\r
-import sys\r
-\r
-import TestSCons\r
-\r
-_exe = TestSCons._exe\r
-\r
-test = TestSCons.TestSCons()\r
-\r
-if sys.platform != 'win32':\r
-    msg = "Skipping Visual C/C++ test on non-Windows platform '%s'\n" % sys.platform\r
-    test.skip_test(msg)\r
-\r
-test.write('SConstruct', """\\r
-env = Environment(PDB = '${TARGET.base}.pdb')\r
-env.Program('test1.cpp')\r
-env.Program('test2.cpp')\r
-""")\r
-\r
-test.write('test1.cpp', """\\r
-#include <stdio.h>\r
-#include <stdlib.h>\r
-int\r
-main(int argc, char *argv)\r
-{\r
-    printf("test1.cpp\\n");\r
-    exit (0);\r
-}\r
-""")\r
-\r
-test.write('test2.cpp', """\\r
-#include <stdio.h>\r
-#include <stdlib.h>\r
-int\r
-main(int argc, char *argv)\r
-{\r
-    printf("test2.cpp\\n");\r
-    exit (0);\r
-}\r
-""")\r
-\r
-test.run(arguments = '.')\r
-\r
-test.must_exist('test1%s' % _exe)\r
-test.must_exist('test1.pdb')\r
-test.must_exist('test2%s' % _exe)\r
-test.must_exist('test2.pdb')\r
-\r
-test.pass_test()\r
+#!/usr/bin/env python
+#
+# __COPYRIGHT__
+#
+# Permission is hereby granted, free of charge, to any person obtaining
+# a copy of this software and associated documentation files (the
+# "Software"), to deal in the Software without restriction, including
+# without limitation the rights to use, copy, modify, merge, publish,
+# distribute, sublicense, and/or sell copies of the Software, and to
+# permit persons to whom the Software is furnished to do so, subject to
+# the following conditions:
+#
+# The above copyright notice and this permission notice shall be included
+# in all copies or substantial portions of the Software.
+#
+# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY
+# KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE
+# WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
+# NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
+# LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
+# OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
+# WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
+#
+
+__revision__ = "__FILE__ __REVISION__ __DATE__ __DEVELOPER__"
+
+"""
+Verify that setting $PDB to '${TARGET}.pdb allows us to build multiple
+programs with separate .pdb files from the same environment.
+
+Under the covers, this verifies that emitters support expansion of the
+$TARGET variable (and implicitly $SOURCE), using the original specified
+list(s).
+"""
+
+import sys
+
+import TestSCons
+
+_exe = TestSCons._exe
+
+test = TestSCons.TestSCons()
+
+if sys.platform != 'win32':
+    msg = "Skipping Visual C/C++ test on non-Windows platform '%s'\n" % sys.platform
+    test.skip_test(msg)
+
+test.write('SConstruct', """\
+env = Environment(PDB = '${TARGET.base}.pdb')
+env.Program('test1.cpp')
+env.Program('test2.cpp')
+""")
+
+test.write('test1.cpp', """\
+#include <stdio.h>
+#include <stdlib.h>
+int
+main(int argc, char *argv)
+{
+    printf("test1.cpp\\n");
+    exit (0);
+}
+""")
+
+test.write('test2.cpp', """\
+#include <stdio.h>
+#include <stdlib.h>
+int
+main(int argc, char *argv)
+{
+    printf("test2.cpp\\n");
+    exit (0);
+}
+""")
+
+test.run(arguments = '.')
+
+test.must_exist('test1%s' % _exe)
+test.must_exist('test1.pdb')
+test.must_exist('test2%s' % _exe)
+test.must_exist('test2.pdb')
+
+test.pass_test()
 
 # Local Variables:
 # tab-width:4
index 1ecb9a3243dbf3f00f693a420ab429e3236c2d89..796c36e5ed78d4d2f22e512e2f7aad11e0c69eec 100644 (file)
@@ -1,79 +1,79 @@
-#!/usr/bin/env python\r
-#\r
-# __COPYRIGHT__\r
-#\r
-# Permission is hereby granted, free of charge, to any person obtaining\r
-# a copy of this software and associated documentation files (the\r
-# "Software"), to deal in the Software without restriction, including\r
-# without limitation the rights to use, copy, modify, merge, publish,\r
-# distribute, sublicense, and/or sell copies of the Software, and to\r
-# permit persons to whom the Software is furnished to do so, subject to\r
-# the following conditions:\r
-#\r
-# The above copyright notice and this permission notice shall be included\r
-# in all copies or substantial portions of the Software.\r
-#\r
-# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY\r
-# KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE\r
-# WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND\r
-# NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE\r
-# LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION\r
-# OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION\r
-# WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\r
-#\r
-\r
-__revision__ = "__FILE__ __REVISION__ __DATE__ __DEVELOPER__"\r
-\r
-"""\r
-Verify that .pdb files get put in a variant_dir correctly.\r
-"""\r
-\r
-import sys\r
-\r
-import TestSCons\r
-\r
-_exe = TestSCons._exe\r
-\r
-test = TestSCons.TestSCons()\r
-\r
-if sys.platform != 'win32':\r
-    msg = "Skipping Visual C/C++ test on non-Windows platform '%s'\n" % sys.platform\r
-    test.skip_test(msg)\r
-\r
-test.subdir('src')\r
-\r
-test.write('SConstruct', """\\r
-env = Environment()\r
-env.Append(BINDIR = '#bin')\r
-\r
-Export('env')\r
-SConscript('#src/SConscript', duplicate = 0, variant_dir = '#.build')\r
-""")\r
-\r
-test.write(['src', 'SConscript'], """\\r
-Import('env')\r
-env['PDB'] = '${TARGET}.pdb'\r
-p = env.Program('test.exe', 'test.cpp')\r
-env.Install(env['BINDIR'], p)\r
-""")\r
-\r
-test.write(['src', 'test.cpp'], """\\r
-#include <stdio.h>\r
-#include <stdlib.h>\r
-int\r
-main(int argc, char *argv)\r
-{\r
-    printf("test.cpp\\n");\r
-    exit (0);\r
-}\r
-""")\r
-\r
-test.run(arguments = '.')\r
-\r
-test.must_exist(['.build', 'test%s'     % _exe])\r
-test.must_exist(['.build', 'test%s.pdb' % _exe])\r
-\r
-test.pass_test()\r
+#!/usr/bin/env python
+#
+# __COPYRIGHT__
+#
+# Permission is hereby granted, free of charge, to any person obtaining
+# a copy of this software and associated documentation files (the
+# "Software"), to deal in the Software without restriction, including
+# without limitation the rights to use, copy, modify, merge, publish,
+# distribute, sublicense, and/or sell copies of the Software, and to
+# permit persons to whom the Software is furnished to do so, subject to
+# the following conditions:
+#
+# The above copyright notice and this permission notice shall be included
+# in all copies or substantial portions of the Software.
+#
+# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY
+# KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE
+# WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
+# NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
+# LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
+# OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
+# WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
+#
+
+__revision__ = "__FILE__ __REVISION__ __DATE__ __DEVELOPER__"
+
+"""
+Verify that .pdb files get put in a variant_dir correctly.
+"""
+
+import sys
+
+import TestSCons
+
+_exe = TestSCons._exe
+
+test = TestSCons.TestSCons()
+
+if sys.platform != 'win32':
+    msg = "Skipping Visual C/C++ test on non-Windows platform '%s'\n" % sys.platform
+    test.skip_test(msg)
+
+test.subdir('src')
+
+test.write('SConstruct', """\
+env = Environment()
+env.Append(BINDIR = '#bin')
+
+Export('env')
+SConscript('#src/SConscript', duplicate = 0, variant_dir = '#.build')
+""")
+
+test.write(['src', 'SConscript'], """\
+Import('env')
+env['PDB'] = '${TARGET}.pdb'
+p = env.Program('test.exe', 'test.cpp')
+env.Install(env['BINDIR'], p)
+""")
+
+test.write(['src', 'test.cpp'], """\
+#include <stdio.h>
+#include <stdlib.h>
+int
+main(int argc, char *argv)
+{
+    printf("test.cpp\\n");
+    exit (0);
+}
+""")
+
+test.run(arguments = '.')
+
+test.must_exist(['.build', 'test%s'     % _exe])
+test.must_exist(['.build', 'test%s.pdb' % _exe])
+
+test.pass_test()
 
 # Local Variables:
 # tab-width:4
index c7ceb5a06f5d34d2f1ae3215aa709c171d5821a9..5132d6dfb77fb15020dcb1bc2fd76ee527d3c2d3 100644 (file)
-#!/usr/bin/env python\r
-#\r
-# __COPYRIGHT__\r
-#\r
-# Permission is hereby granted, free of charge, to any person obtaining\r
-# a copy of this software and associated documentation files (the\r
-# "Software"), to deal in the Software without restriction, including\r
-# without limitation the rights to use, copy, modify, merge, publish,\r
-# distribute, sublicense, and/or sell copies of the Software, and to\r
-# permit persons to whom the Software is furnished to do so, subject to\r
-# the following conditions:\r
-#\r
-# The above copyright notice and this permission notice shall be included\r
-# in all copies or substantial portions of the Software.\r
-#\r
-# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY\r
-# KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE\r
-# WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND\r
-# NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE\r
-# LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION\r
-# OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION\r
-# WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\r
-#\r
-\r
-__revision__ = "__FILE__ __REVISION__ __DATE__ __DEVELOPER__"\r
-\r
-"""\r
-Test that we can actually build a simple program using our generated\r
-Visual Studio 8.0 project (.vcproj) and solution (.sln) files\r
-using Visual C++ 8.0 Express edition.\r
-"""\r
-\r
-import os\r
-import sys\r
-\r
-import TestSConsMSVS\r
-\r
-test = TestSConsMSVS.TestSConsMSVS()\r
-\r
-if sys.platform != 'win32':\r
-    msg = "Skipping Visual Studio test on non-Windows platform '%s'\n" % sys.platform\r
-    test.skip_test(msg)\r
-\r
-msvs_version = '8.0Exp'\r
-\r
-if not msvs_version in test.msvs_versions():\r
-    msg = "Visual Studio %s not installed; skipping test.\n" % msvs_version\r
-    test.skip_test(msg)\r
-\r
-\r
-\r
-# Let SCons figure out the Visual Studio environment variables for us and\r
-# print out a statement that we can exec to suck them into our external\r
-# environment so we can execute devenv and really try to build something.\r
-\r
-test.run(arguments = '-n -q -Q -f -', stdin = """\\r
-env = Environment(tools = ['msvc'], MSVS_VERSION='%(msvs_version)s')\r
-print "os.environ.update(%%s)" %% repr(env['ENV'])\r
-""" % locals())\r
-\r
-exec(test.stdout())\r
-\r
-\r
-\r
-test.subdir('sub dir')\r
-\r
-test.write(['sub dir', 'SConstruct'], """\\r
-env=Environment(MSVS_VERSION = '%(msvs_version)s')\r
-\r
-env.MSVSProject(target = 'foo.vcproj',\r
-                srcs = ['foo.c'],\r
-                buildtarget = 'foo.exe',\r
-                variant = 'Release')\r
-\r
-env.Program('foo.c')\r
-""" % locals())\r
-\r
-test.write(['sub dir', 'foo.c'], r"""\r
-int\r
-main(int argc, char *argv)\r
-{\r
-    printf("foo.c\n");\r
-    exit (0);\r
-}\r
-""")\r
-\r
-test.run(chdir='sub dir', arguments='.')\r
-\r
-test.vcproj_sys_path(test.workpath('sub dir', 'foo.vcproj'))\r
-\r
-import SCons.Platform.win32\r
-system_dll_path = os.path.join( SCons.Platform.win32.get_system_root(), 'System32' )\r
-os.environ['PATH'] = os.environ['PATH'] + os.pathsep + system_dll_path\r
-\r
-test.run(chdir='sub dir',\r
-         program=[test.get_msvs_executable(msvs_version)],\r
-         arguments=['foo.sln', '/build', 'Release'])\r
-\r
-test.run(program=test.workpath('sub dir', 'foo'), stdout="foo.c\n")\r
-\r
-\r
-\r
-test.pass_test()\r
-\r
-# Local Variables:\r
-# tab-width:4\r
-# indent-tabs-mode:nil\r
-# End:\r
-# vim: set expandtab tabstop=4 shiftwidth=4:\r
+#!/usr/bin/env python
+#
+# __COPYRIGHT__
+#
+# Permission is hereby granted, free of charge, to any person obtaining
+# a copy of this software and associated documentation files (the
+# "Software"), to deal in the Software without restriction, including
+# without limitation the rights to use, copy, modify, merge, publish,
+# distribute, sublicense, and/or sell copies of the Software, and to
+# permit persons to whom the Software is furnished to do so, subject to
+# the following conditions:
+#
+# The above copyright notice and this permission notice shall be included
+# in all copies or substantial portions of the Software.
+#
+# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY
+# KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE
+# WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
+# NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
+# LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
+# OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
+# WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
+#
+
+__revision__ = "__FILE__ __REVISION__ __DATE__ __DEVELOPER__"
+
+"""
+Test that we can actually build a simple program using our generated
+Visual Studio 8.0 project (.vcproj) and solution (.sln) files
+using Visual C++ 8.0 Express edition.
+"""
+
+import os
+import sys
+
+import TestSConsMSVS
+
+test = TestSConsMSVS.TestSConsMSVS()
+
+if sys.platform != 'win32':
+    msg = "Skipping Visual Studio test on non-Windows platform '%s'\n" % sys.platform
+    test.skip_test(msg)
+
+msvs_version = '8.0Exp'
+
+if not msvs_version in test.msvs_versions():
+    msg = "Visual Studio %s not installed; skipping test.\n" % msvs_version
+    test.skip_test(msg)
+
+
+
+# Let SCons figure out the Visual Studio environment variables for us and
+# print out a statement that we can exec to suck them into our external
+# environment so we can execute devenv and really try to build something.
+
+test.run(arguments = '-n -q -Q -f -', stdin = """\
+env = Environment(tools = ['msvc'], MSVS_VERSION='%(msvs_version)s')
+print "os.environ.update(%%s)" %% repr(env['ENV'])
+""" % locals())
+
+exec(test.stdout())
+
+
+
+test.subdir('sub dir')
+
+test.write(['sub dir', 'SConstruct'], """\
+env=Environment(MSVS_VERSION = '%(msvs_version)s')
+
+env.MSVSProject(target = 'foo.vcproj',
+                srcs = ['foo.c'],
+                buildtarget = 'foo.exe',
+                variant = 'Release')
+
+env.Program('foo.c')
+""" % locals())
+
+test.write(['sub dir', 'foo.c'], r"""
+int
+main(int argc, char *argv)
+{
+    printf("foo.c\n");
+    exit (0);
+}
+""")
+
+test.run(chdir='sub dir', arguments='.')
+
+test.vcproj_sys_path(test.workpath('sub dir', 'foo.vcproj'))
+
+import SCons.Platform.win32
+system_dll_path = os.path.join( SCons.Platform.win32.get_system_root(), 'System32' )
+os.environ['PATH'] = os.environ['PATH'] + os.pathsep + system_dll_path
+
+test.run(chdir='sub dir',
+         program=[test.get_msvs_executable(msvs_version)],
+         arguments=['foo.sln', '/build', 'Release'])
+
+test.run(program=test.workpath('sub dir', 'foo'), stdout="foo.c\n")
+
+
+
+test.pass_test()
+
+# Local Variables:
+# tab-width:4
+# indent-tabs-mode:nil
+# End:
+# vim: set expandtab tabstop=4 shiftwidth=4:
index be968854937f5ba2f7520a33028ee14672cbb1fb..0e50de488c292c6501ef320b89ce8503f954c329 100644 (file)
-#!/usr/bin/env python\r
-#\r
-# __COPYRIGHT__\r
-#\r
-# Permission is hereby granted, free of charge, to any person obtaining\r
-# a copy of this software and associated documentation files (the\r
-# "Software"), to deal in the Software without restriction, including\r
-# without limitation the rights to use, copy, modify, merge, publish,\r
-# distribute, sublicense, and/or sell copies of the Software, and to\r
-# permit persons to whom the Software is furnished to do so, subject to\r
-# the following conditions:\r
-#\r
-# The above copyright notice and this permission notice shall be included\r
-# in all copies or substantial portions of the Software.\r
-#\r
-# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY\r
-# KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE\r
-# WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND\r
-# NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE\r
-# LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION\r
-# OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION\r
-# WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\r
-#\r
-\r
-__revision__ = "__FILE__ __REVISION__ __DATE__ __DEVELOPER__"\r
-\r
-"""\r
-Test that we can actually build a simple program using our generated\r
-Visual Studio 9.0 project (.vcproj) and solution (.sln) files\r
-using Visual Studio 9.0 (Professional edition).\r
-"""\r
-\r
-import os\r
-import sys\r
-\r
-import TestSConsMSVS\r
-\r
-test = TestSConsMSVS.TestSConsMSVS()\r
-\r
-if sys.platform != 'win32':\r
-    msg = "Skipping Visual Studio test on non-Windows platform '%s'\n" % sys.platform\r
-    test.skip_test(msg)\r
-\r
-msvs_version = '9.0'\r
-\r
-# TODO:  remove when we add support\r
-msg = "Generating Visual Studio %s project files is not supported yet; skipping test.\n"\r
-test.skip_test(msg % msvs_version)\r
-\r
-if not msvs_version in test.msvs_versions():\r
-    msg = "Visual Studio %s not installed; skipping test.\n" % msvs_version\r
-    test.skip_test(msg)\r
-\r
-\r
-\r
-# Let SCons figure out the Visual Studio environment variables for us and\r
-# print out a statement that we can exec to suck them into our external\r
-# environment so we can execute devenv and really try to build something.\r
-\r
-test.run(arguments = '-n -q -Q -f -', stdin = """\\r
-env = Environment(tools = ['msvc'], MSVS_VERSION='%(msvs_version)s')\r
-print "os.environ.update(%%s)" %% repr(env['ENV'])\r
-""" % locals())\r
-\r
-exec(test.stdout())\r
-\r
-\r
-\r
-test.subdir('sub dir')\r
-\r
-test.write(['sub dir', 'SConstruct'], """\\r
-env=Environment(MSVS_VERSION = '%(msvs_version)s')\r
-\r
-env.MSVSProject(target = 'foo.vcproj',\r
-                srcs = ['foo.c'],\r
-                buildtarget = 'foo.exe',\r
-                variant = 'Release')\r
-\r
-env.Program('foo.c')\r
-""" % locals())\r
-\r
-test.write(['sub dir', 'foo.c'], r"""\r
-int\r
-main(int argc, char *argv)\r
-{\r
-    printf("foo.c\n");\r
-    exit (0);\r
-}\r
-""")\r
-\r
-test.run(chdir='sub dir', arguments='.')\r
-\r
-test.vcproj_sys_path(test.workpath('sub dir', 'foo.vcproj'))\r
-\r
-import SCons.Platform.win32\r
-system_dll_path = os.path.join( SCons.Platform.win32.get_system_root(), 'System32' )\r
-os.environ['PATH'] = os.environ['PATH'] + os.pathsep + system_dll_path\r
-\r
-test.run(chdir='sub dir',\r
-         program=[test.get_msvs_executable(msvs_version)],\r
-         arguments=['foo.sln', '/build', 'Release'])\r
-\r
-test.run(program=test.workpath('sub dir', 'foo'), stdout="foo.c\n")\r
-\r
-\r
-\r
-test.pass_test()\r
-\r
-# Local Variables:\r
-# tab-width:4\r
-# indent-tabs-mode:nil\r
-# End:\r
-# vim: set expandtab tabstop=4 shiftwidth=4:\r
+#!/usr/bin/env python
+#
+# __COPYRIGHT__
+#
+# Permission is hereby granted, free of charge, to any person obtaining
+# a copy of this software and associated documentation files (the
+# "Software"), to deal in the Software without restriction, including
+# without limitation the rights to use, copy, modify, merge, publish,
+# distribute, sublicense, and/or sell copies of the Software, and to
+# permit persons to whom the Software is furnished to do so, subject to
+# the following conditions:
+#
+# The above copyright notice and this permission notice shall be included
+# in all copies or substantial portions of the Software.
+#
+# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY
+# KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE
+# WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
+# NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
+# LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
+# OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
+# WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
+#
+
+__revision__ = "__FILE__ __REVISION__ __DATE__ __DEVELOPER__"
+
+"""
+Test that we can actually build a simple program using our generated
+Visual Studio 9.0 project (.vcproj) and solution (.sln) files
+using Visual Studio 9.0 (Professional edition).
+"""
+
+import os
+import sys
+
+import TestSConsMSVS
+
+test = TestSConsMSVS.TestSConsMSVS()
+
+if sys.platform != 'win32':
+    msg = "Skipping Visual Studio test on non-Windows platform '%s'\n" % sys.platform
+    test.skip_test(msg)
+
+msvs_version = '9.0'
+
+# TODO:  remove when we add support
+msg = "Generating Visual Studio %s project files is not supported yet; skipping test.\n"
+test.skip_test(msg % msvs_version)
+
+if not msvs_version in test.msvs_versions():
+    msg = "Visual Studio %s not installed; skipping test.\n" % msvs_version
+    test.skip_test(msg)
+
+
+
+# Let SCons figure out the Visual Studio environment variables for us and
+# print out a statement that we can exec to suck them into our external
+# environment so we can execute devenv and really try to build something.
+
+test.run(arguments = '-n -q -Q -f -', stdin = """\
+env = Environment(tools = ['msvc'], MSVS_VERSION='%(msvs_version)s')
+print "os.environ.update(%%s)" %% repr(env['ENV'])
+""" % locals())
+
+exec(test.stdout())
+
+
+
+test.subdir('sub dir')
+
+test.write(['sub dir', 'SConstruct'], """\
+env=Environment(MSVS_VERSION = '%(msvs_version)s')
+
+env.MSVSProject(target = 'foo.vcproj',
+                srcs = ['foo.c'],
+                buildtarget = 'foo.exe',
+                variant = 'Release')
+
+env.Program('foo.c')
+""" % locals())
+
+test.write(['sub dir', 'foo.c'], r"""
+int
+main(int argc, char *argv)
+{
+    printf("foo.c\n");
+    exit (0);
+}
+""")
+
+test.run(chdir='sub dir', arguments='.')
+
+test.vcproj_sys_path(test.workpath('sub dir', 'foo.vcproj'))
+
+import SCons.Platform.win32
+system_dll_path = os.path.join( SCons.Platform.win32.get_system_root(), 'System32' )
+os.environ['PATH'] = os.environ['PATH'] + os.pathsep + system_dll_path
+
+test.run(chdir='sub dir',
+         program=[test.get_msvs_executable(msvs_version)],
+         arguments=['foo.sln', '/build', 'Release'])
+
+test.run(program=test.workpath('sub dir', 'foo'), stdout="foo.c\n")
+
+
+
+test.pass_test()
+
+# Local Variables:
+# tab-width:4
+# indent-tabs-mode:nil
+# End:
+# vim: set expandtab tabstop=4 shiftwidth=4:
index eb8e32df2a724c10498f6d94ad03c6a5d2502001..7c04cda5ca3c544a84a720b88711aaba382f9ada 100644 (file)
-#!/usr/bin/env python\r
-#\r
-# __COPYRIGHT__\r
-#\r
-# Permission is hereby granted, free of charge, to any person obtaining\r
-# a copy of this software and associated documentation files (the\r
-# "Software"), to deal in the Software without restriction, including\r
-# without limitation the rights to use, copy, modify, merge, publish,\r
-# distribute, sublicense, and/or sell copies of the Software, and to\r
-# permit persons to whom the Software is furnished to do so, subject to\r
-# the following conditions:\r
-#\r
-# The above copyright notice and this permission notice shall be included\r
-# in all copies or substantial portions of the Software.\r
-#\r
-# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY\r
-# KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE\r
-# WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND\r
-# NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE\r
-# LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION\r
-# OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION\r
-# WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\r
-#\r
-\r
-__revision__ = "__FILE__ __REVISION__ __DATE__ __DEVELOPER__"\r
-\r
-"""\r
-Test that we can actually build a simple program using our generated\r
-Visual Studio 9.0 project (.vcproj) and solution (.sln) files\r
-using Visual C++ 9.0 Express edition.\r
-"""\r
-\r
-import os\r
-import sys\r
-\r
-import TestSConsMSVS\r
-\r
-test = TestSConsMSVS.TestSConsMSVS()\r
-\r
-if sys.platform != 'win32':\r
-    msg = "Skipping Visual Studio test on non-Windows platform '%s'\n" % sys.platform\r
-    test.skip_test(msg)\r
-\r
-msvs_version = '9.0Exp'\r
-\r
-# TODO:  remove when we add support\r
-msg = "Generating Visual Studio %s project files is not supported yet; skipping test.\n"\r
-test.skip_test(msg % msvs_version)\r
-\r
-if not msvs_version in test.msvs_versions():\r
-    msg = "Visual Studio %s not installed; skipping test.\n" % msvs_version\r
-    test.skip_test(msg)\r
-\r
-\r
-\r
-# Let SCons figure out the Visual Studio environment variables for us and\r
-# print out a statement that we can exec to suck them into our external\r
-# environment so we can execute devenv and really try to build something.\r
-\r
-test.run(arguments = '-n -q -Q -f -', stdin = """\\r
-env = Environment(tools = ['msvc'], MSVS_VERSION='%(msvs_version)s')\r
-print "os.environ.update(%%s)" %% repr(env['ENV'])\r
-""" % locals())\r
-\r
-exec(test.stdout())\r
-\r
-\r
-\r
-test.subdir('sub dir')\r
-\r
-test.write(['sub dir', 'SConstruct'], """\\r
-env=Environment(MSVS_VERSION = '%(msvs_version)s')\r
-\r
-env.MSVSProject(target = 'foo.vcproj',\r
-                srcs = ['foo.c'],\r
-                buildtarget = 'foo.exe',\r
-                variant = 'Release')\r
-\r
-env.Program('foo.c')\r
-""" % locals())\r
-\r
-test.write(['sub dir', 'foo.c'], r"""\r
-int\r
-main(int argc, char *argv)\r
-{\r
-    printf("foo.c\n");\r
-    exit (0);\r
-}\r
-""")\r
-\r
-test.run(chdir='sub dir', arguments='.')\r
-\r
-test.vcproj_sys_path(test.workpath('sub dir', 'foo.vcproj'))\r
-\r
-import SCons.Platform.win32\r
-system_dll_path = os.path.join( SCons.Platform.win32.get_system_root(), 'System32' )\r
-os.environ['PATH'] = os.environ['PATH'] + os.pathsep + system_dll_path\r
-\r
-test.run(chdir='sub dir',\r
-         program=[test.get_msvs_executable(msvs_version)],\r
-         arguments=['foo.sln', '/build', 'Release'])\r
-\r
-test.run(program=test.workpath('sub dir', 'foo'), stdout="foo.c\n")\r
-\r
-\r
-\r
-test.pass_test()\r
-\r
-# Local Variables:\r
-# tab-width:4\r
-# indent-tabs-mode:nil\r
-# End:\r
-# vim: set expandtab tabstop=4 shiftwidth=4:\r
+#!/usr/bin/env python
+#
+# __COPYRIGHT__
+#
+# Permission is hereby granted, free of charge, to any person obtaining
+# a copy of this software and associated documentation files (the
+# "Software"), to deal in the Software without restriction, including
+# without limitation the rights to use, copy, modify, merge, publish,
+# distribute, sublicense, and/or sell copies of the Software, and to
+# permit persons to whom the Software is furnished to do so, subject to
+# the following conditions:
+#
+# The above copyright notice and this permission notice shall be included
+# in all copies or substantial portions of the Software.
+#
+# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY
+# KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE
+# WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
+# NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
+# LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
+# OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
+# WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
+#
+
+__revision__ = "__FILE__ __REVISION__ __DATE__ __DEVELOPER__"
+
+"""
+Test that we can actually build a simple program using our generated
+Visual Studio 9.0 project (.vcproj) and solution (.sln) files
+using Visual C++ 9.0 Express edition.
+"""
+
+import os
+import sys
+
+import TestSConsMSVS
+
+test = TestSConsMSVS.TestSConsMSVS()
+
+if sys.platform != 'win32':
+    msg = "Skipping Visual Studio test on non-Windows platform '%s'\n" % sys.platform
+    test.skip_test(msg)
+
+msvs_version = '9.0Exp'
+
+# TODO:  remove when we add support
+msg = "Generating Visual Studio %s project files is not supported yet; skipping test.\n"
+test.skip_test(msg % msvs_version)
+
+if not msvs_version in test.msvs_versions():
+    msg = "Visual Studio %s not installed; skipping test.\n" % msvs_version
+    test.skip_test(msg)
+
+
+
+# Let SCons figure out the Visual Studio environment variables for us and
+# print out a statement that we can exec to suck them into our external
+# environment so we can execute devenv and really try to build something.
+
+test.run(arguments = '-n -q -Q -f -', stdin = """\
+env = Environment(tools = ['msvc'], MSVS_VERSION='%(msvs_version)s')
+print "os.environ.update(%%s)" %% repr(env['ENV'])
+""" % locals())
+
+exec(test.stdout())
+
+
+
+test.subdir('sub dir')
+
+test.write(['sub dir', 'SConstruct'], """\
+env=Environment(MSVS_VERSION = '%(msvs_version)s')
+
+env.MSVSProject(target = 'foo.vcproj',
+                srcs = ['foo.c'],
+                buildtarget = 'foo.exe',
+                variant = 'Release')
+
+env.Program('foo.c')
+""" % locals())
+
+test.write(['sub dir', 'foo.c'], r"""
+int
+main(int argc, char *argv)
+{
+    printf("foo.c\n");
+    exit (0);
+}
+""")
+
+test.run(chdir='sub dir', arguments='.')
+
+test.vcproj_sys_path(test.workpath('sub dir', 'foo.vcproj'))
+
+import SCons.Platform.win32
+system_dll_path = os.path.join( SCons.Platform.win32.get_system_root(), 'System32' )
+os.environ['PATH'] = os.environ['PATH'] + os.pathsep + system_dll_path
+
+test.run(chdir='sub dir',
+         program=[test.get_msvs_executable(msvs_version)],
+         arguments=['foo.sln', '/build', 'Release'])
+
+test.run(program=test.workpath('sub dir', 'foo'), stdout="foo.c\n")
+
+
+
+test.pass_test()
+
+# Local Variables:
+# tab-width:4
+# indent-tabs-mode:nil
+# End:
+# vim: set expandtab tabstop=4 shiftwidth=4: