diff options
Diffstat (limited to 'tools/build/test/project_test4.py')
-rw-r--r-- | tools/build/test/project_test4.py | 65 |
1 files changed, 65 insertions, 0 deletions
diff --git a/tools/build/test/project_test4.py b/tools/build/test/project_test4.py new file mode 100644 index 0000000000..fc4115017b --- /dev/null +++ b/tools/build/test/project_test4.py @@ -0,0 +1,65 @@ +#!/usr/bin/python + +# Copyright 2003 Dave Abrahams +# Copyright 2002, 2003, 2004 Vladimir Prus +# Distributed under the Boost Software License, Version 1.0. +# (See accompanying file LICENSE_1_0.txt or http://www.boost.org/LICENSE_1_0.txt) + +import BoostBuild + +t = BoostBuild.Tester(translate_suffixes=0) + + +t.set_tree("project-test4") + +t.run_build_system() + +t.expect_addition("bin/$toolset/debug/a.obj") +t.expect_content("bin/$toolset/debug/a.obj", +"""$toolset/debug/include-everything +a.cpp +""") + +t.expect_addition("bin/$toolset/debug/a.exe") +t.expect_content("bin/$toolset/debug/a.exe", +"$toolset/debug/include-everything\n" + +"bin/$toolset/debug/a.obj lib/bin/$toolset/debug/optimization-speed/b.obj\n" +) + +t.expect_addition("lib/bin/$toolset/debug/optimization-speed/b.obj") +t.expect_content("lib/bin/$toolset/debug/optimization-speed/b.obj", +"""$toolset/debug/include-everything/optimization-speed +lib/b.cpp +""") + +t.expect_addition("bin/$toolset/debug/b.exe") +t.expect_content("bin/$toolset/debug/b.exe", +"$toolset/debug/define-MACROS/include-everything\n" + +"bin/$toolset/debug/a.obj\n" +) + +t.copy("lib/jamfile3.jam", "lib/jamfile.jam") + +# Link-compatibility check for rtti is disabled... +#t.run_build_system(status=None) +#import string +#t.fail_test(string.find(t.stdout(), +#"""warning: targets produced from b.obj are link incompatible +#warning: with main target a.exe""") !=-0) + +# Test that if we specified composite property in target reference, everything +# works OK. + +t.copy("lib/jamfile1.jam", "lib/jamfile.jam") +t.copy("jamfile5.jam", "jamfile.jam") + +t.run_build_system() + +t.expect_addition("lib/bin/$toolset/release/b.obj") + +t.expect_content("bin/$toolset/debug/a.exe", +"$toolset/debug/include-everything\n" + +"bin/$toolset/debug/a.obj lib/bin/$toolset/release/b.obj\n" +) + +t.cleanup() |