expansion.py

来自「Boost provides free peer-reviewed portab」· Python 代码 · 共 81 行

PY
81
字号
#!/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 BoostBuildt = BoostBuild.Tester()t.write("a.cpp", """#ifdef CF_IS_OFFint main() {}#endif""")t.write("b.cpp", """#ifdef CF_1int main() {}#endif""")t.write("c.cpp", """#ifdef FOOint main() {}#endif""")t.write("jamfile.jam", """# See if default value of composite feature 'cf' will be expanded to# <define>CF_IS_OFF.exe a : a.cpp ;# See if subfeature in requirements in expanded.exe b : b.cpp : <cf>on-1 ;# See if conditional requirements are recursively expanded.exe c : c.cpp : <toolset>$toolset:<variant>release <variant>release:<define>FOO    ;""")t.write("jamroot.jam", """import feature ;feature.feature cf : off on : composite incidental ;feature.compose <cf>off : <define>CF_IS_OFF ;feature.subfeature cf on : version : 1 2 : composite optional incidental ;feature.compose <cf-on:version>1 : <define>CF_1 ;""")t.expand_toolset("jamfile.jam")t.run_build_system()t.expect_addition(["bin/$toolset/debug/a.exe",                   "bin/$toolset/debug/b.exe",                   "bin/$toolset/release/c.exe"])t.rm("bin")# Test for issue BB60.t.write("test.cpp", """#include "header.h"int main() {}""")t.write("jamfile.jam", """project : requirements <toolset>$toolset:<include>foo ;exe test : test.cpp : <toolset>$toolset ;""")t.expand_toolset("jamfile.jam")t.write("foo/header.h", "\n")t.write("jamroot.jam", "")t.run_build_system()t.expect_addition("bin/$toolset/debug/test.exe")t.cleanup()

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?