mirror of
https://github.com/boostorg/build.git
synced 2026-02-12 12:02:24 +00:00
* new/virtual-target.jam (file-target.specific-main-target): Check not only free, but also dependency properties when deciding if targets is specific to the main target. * new/dependency_property.py: New test. [SVN r18363]
44 lines
1.1 KiB
Python
44 lines
1.1 KiB
Python
#!/usr/bin/python
|
|
|
|
# Copyright (C) Vladimir Prus 2003. Permission to copy, use, modify, sell and
|
|
# distribute this software is granted provided this copyright notice appears in
|
|
# all copies. This software is provided "as is" without express or implied
|
|
# warranty, and with no claim as to its suitability for any purpose.
|
|
|
|
# Regression test: virtual targets with different dependency properties
|
|
# were considered different by 'virtual-target.register', but the code
|
|
# which determined target paths ignored dependency properties --- so both
|
|
# targets used to be placed to the same location.
|
|
|
|
from BoostBuild import Tester, List
|
|
|
|
|
|
t = Tester()
|
|
|
|
t.write("project-root.jam", "")
|
|
t.write("Jamfile", """
|
|
lib foo : foo.cpp ;
|
|
exe hello : hello.cpp ;
|
|
exe hello2 : hello.cpp : <library>foo ;
|
|
""")
|
|
t.write("hello.cpp", """
|
|
int main()
|
|
{
|
|
return 0;
|
|
}
|
|
|
|
""")
|
|
t.write("foo.cpp", """
|
|
#ifdef _WIN32
|
|
__declspec(dllexport)
|
|
#endif
|
|
void foo() {}
|
|
""")
|
|
|
|
t.run_build_system()
|
|
|
|
t.expect_addition("bin/$toolset/debug/hello.obj")
|
|
t.expect_addition("bin/$toolset/debug/main-target-hello2/hello.obj")
|
|
|
|
t.cleanup()
|