39 lines
1005 B
Python
39 lines
1005 B
Python
|
#!/usr/bin/python
|
||
|
|
||
|
# Copyright 2004 Vladimir Prus
|
||
|
# Distributed under the Boost Software License, Version 1.0.
|
||
|
# (See accompanying file LICENSE.txt or https://www.bfgroup.xyz/b2/LICENSE.txt)
|
||
|
|
||
|
# This test tries to stage the same file to the same location by *two* different
|
||
|
# stage rules, in two different projects. This is not exactly good thing to do,
|
||
|
# but still, V2 should handle this. We had two bugs:
|
||
|
# - since the file is referred from two projects, we created to different
|
||
|
# virtual targets
|
||
|
# - we also failed to figure out that the two target corresponding to the copied
|
||
|
# files (created in two projects) are actually equivalent.
|
||
|
|
||
|
import BoostBuild
|
||
|
|
||
|
t = BoostBuild.Tester()
|
||
|
|
||
|
t.write("a.cpp", """
|
||
|
""")
|
||
|
|
||
|
t.write("jamroot.jam", """
|
||
|
build-project a ;
|
||
|
build-project b ;
|
||
|
""")
|
||
|
|
||
|
t.write("a/jamfile.jam", """
|
||
|
stage bin : ../a.cpp : <location>../dist ;
|
||
|
""")
|
||
|
|
||
|
t.write("b/jamfile.jam", """
|
||
|
stage bin : ../a.cpp : <location>../dist ;
|
||
|
""")
|
||
|
|
||
|
t.run_build_system()
|
||
|
t.expect_addition("dist/a.cpp")
|
||
|
|
||
|
t.cleanup()
|