blob: ca050d2c4f8d8bf1b9db466afd39d6a45f11b890 [file] [log] [blame]
#!/usr/bin/python
# Copyright 2003 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
import string
t = BoostBuild.Tester(pass_toolset=0)
t.write("a.cpp", """
""")
t.write("yfc1.jam", """
import feature ;
import generators ;
feature.extend toolset : yfc1 ;
rule init ( ) { }
generators.register-standard yfc1.compile : CPP : OBJ : <toolset>yfc1 ;
generators.register-standard yfc1.link : OBJ : EXE : <toolset>yfc1 ;
actions compile { yfc1-compile }
actions link { yfc1-link }
""")
t.write("yfc2.jam", """
import feature ;
import toolset ;
feature.extend toolset : yfc2 ;
toolset.inherit yfc2 : yfc1 ;
rule init ( ) { }
actions link { yfc2-link }
""")
t.write("jamfile.jam", """
exe a : a.cpp ;
""")
t.write("jamroot.jam", """
using yfc1 ;
""")
t.run_build_system("-n -d2 yfc1")
t.fail_test(string.find(t.stdout(), "yfc1-link") == -1)
# Make sure we do not have to explicitly 'use' yfc1.
t.write("jamroot.jam", """
using yfc2 ;
""")
t.run_build_system("-n -d2 yfc2")
t.fail_test(string.find(t.stdout(), "yfc2-link") == -1)
t.cleanup()