| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091 |
- #!/usr/bin/python
- # Copyright (C) Vladimir Prus 2006.
- # Distributed under the Boost Software License, Version 1.0. (See
- # accompanying file LICENSE.txt or copy at
- # https://www.bfgroup.xyz/b2/LICENSE.txt)
- import BoostBuild
- t = BoostBuild.Tester(use_test_config=False)
- t.write("jamroot.jam", """
- project : requirements <threading>multi <variant>debug:<link>static ;
- # Force link to be relevant
- project : requirements <link>shared:<define>TEST_DLL ;
- build-project sub ;
- build-project sub2 ;
- build-project sub3 ;
- build-project sub4 ;
- """)
- t.write("sub/jamfile.jam", """
- exe hello : hello.cpp : -<threading>multi ;
- """)
- t.write("sub/hello.cpp", """
- int main() {}
- """)
- t.write("sub2/jamfile.jam", """
- project : requirements -<threading>multi ;
- exe hello : hello.cpp ;
- """)
- t.write("sub2/hello.cpp", """
- int main() {}
- """)
- t.write("sub3/hello.cpp", """
- int main() {}
- """)
- t.write("sub3/jamfile.jam", """
- exe hello : hello.cpp : "-<variant>debug:<link>static" ;
- """)
- t.write("sub4/hello.cpp", """
- int main() {}
- """)
- t.write("sub4/jamfile.jam", """
- project : requirements "-<variant>debug:<link>static" ;
- exe hello : hello.cpp ;
- """)
- t.run_build_system()
- t.expect_addition("sub/bin/$toolset/debug*/link-static*/hello.exe")
- t.expect_addition("sub2/bin/$toolset/debug*/link-static*/hello.exe")
- t.expect_addition("sub3/bin/$toolset/debug*/threading-multi*/hello.exe")
- t.expect_addition("sub4/bin/$toolset/debug*/threading-multi*/hello.exe")
- t.rm(".")
- # Now test that path requirements can be removed as well.
- t.write("jamroot.jam", """
- build-project sub ;
- """)
- t.write("sub/jamfile.jam", """
- project : requirements <include>broken ;
- exe hello : hello.cpp : -<include>broken ;
- """)
- t.write("sub/hello.cpp", """
- #include "math.h"
- int main() {}
- """)
- t.write("sub/broken/math.h", """
- Broken
- """)
- t.run_build_system()
- t.expect_addition("sub/bin/$toolset/debug*/hello.exe")
- t.cleanup()
|