build/test/lib_source_property.py
Rene Rivera 40e7f0e8dd Fix tests to pass on Windows after removing toolset requirements ignore.
Various restructure of test framework handling of paths to avoid duplicate path editing which caused failed tests. Adjust many tests to deal with added subdirectories in build outputs now that toolset requirements are active.
2017-07-02 23:28:48 -05:00

46 lines
917 B
Python

#!/usr/bin/python
# Copyright (C) Vladimir Prus 2006.
# Distributed under the Boost Software License, Version 1.0. (See
# accompanying file LICENSE_1_0.txt or copy at
# http://www.boost.org/LICENSE_1_0.txt)
# Regression test: if a library had no explicit sources, but only <source>
# properties, it was built as if it were a searched library, and the specified
# sources were not compiled.
import BoostBuild
t = BoostBuild.Tester(use_test_config=False)
t.write("jamroot.jam", """
lib a : : <source>a.cpp ;
""")
t.write("a.cpp", """
#ifdef _WIN32
__declspec(dllexport)
#endif
void foo() {}
""")
t.run_build_system()
t.expect_addition("bin/$toolset/debug*/a.obj")
t.rm("bin")
# Now try with <conditional>.
t.write("jamroot.jam", """
rule test ( properties * )
{
return <source>a.cpp ;
}
lib a : : <conditional>@test ;
""")
t.run_build_system()
t.expect_addition("bin/$toolset/debug*/a.obj")
t.cleanup()