mirror of
https://github.com/boostorg/build.git
synced 2026-02-10 11:22:12 +00:00
85 lines
1.4 KiB
Python
85 lines
1.4 KiB
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)
|
|
|
|
from BoostBuild import Tester, List
|
|
import string
|
|
|
|
t = Tester()
|
|
|
|
t.write("Jamroot", """
|
|
exe a1 : a1.cpp : <conditional>@a1-rule ;
|
|
|
|
rule a1-rule ( properties * )
|
|
{
|
|
if <variant>debug in $(properties)
|
|
{
|
|
return <define>OK ;
|
|
}
|
|
}
|
|
|
|
exe a2 : a2.cpp : <conditional>@$(__name__).a2-rule <variant>debug:<optimization>speed ;
|
|
|
|
rule a2-rule ( properties * )
|
|
{
|
|
if <optimization>speed in $(properties)
|
|
{
|
|
return <define>OK ;
|
|
}
|
|
}
|
|
|
|
exe a3 : a3.cpp : <conditional>@$(__name__).a3-rule-1 <conditional>@$(__name__).a3-rule-2 ;
|
|
|
|
rule a3-rule-1 ( properties * )
|
|
{
|
|
if <optimization>speed in $(properties)
|
|
{
|
|
return <define>OK ;
|
|
}
|
|
}
|
|
|
|
rule a3-rule-2 ( properties * )
|
|
{
|
|
if <variant>debug in $(properties)
|
|
{
|
|
return <optimization>speed ;
|
|
}
|
|
}
|
|
|
|
""")
|
|
|
|
t.write("a1.cpp", """
|
|
#ifdef OK
|
|
int main() {}
|
|
#endif
|
|
|
|
""")
|
|
|
|
t.write("a2.cpp", """
|
|
#ifdef OK
|
|
int main() {}
|
|
#endif
|
|
|
|
""")
|
|
|
|
t.write("a3.cpp", """
|
|
#ifdef OK
|
|
int main() {}
|
|
#endif
|
|
|
|
""")
|
|
|
|
|
|
|
|
t.run_build_system()
|
|
|
|
t.expect_addition("bin/$toolset/debug/a1.exe")
|
|
t.expect_addition("bin/$toolset/debug/optimization-speed/a2.exe")
|
|
t.expect_addition("bin/$toolset/debug/optimization-speed/a3.exe")
|
|
|
|
t.cleanup()
|
|
|