⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 clean.py

📁 Boost provides free peer-reviewed portable C++ source libraries. We emphasize libraries that work
💻 PY
字号:
#!/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)import BoostBuildt = BoostBuild.Tester()t.write("a.cpp", """int main() {}""")t.write("jamroot.jam", """exe a : a.cpp sub1//sub1 sub2//sub2 sub3//sub3 ;""")t.write("sub1/jamfile.jam", """lib sub1 : sub1.cpp sub1_2 ../sub2//sub2 ;lib sub1_2 : sub1_2.cpp ;""")t.write("sub1/sub1.cpp", """#ifdef _WIN32__declspec(dllexport)#endifvoid sub1() {}""")t.write("sub1/sub1_2.cpp", """#ifdef _WIN32__declspec(dllexport)#endifvoid sub1() {}""")t.write("sub2/jamfile.jam", """lib sub2 : sub2.cpp ;""")t.write("sub2/sub2.cpp", """#ifdef _WIN32__declspec(dllexport)#endifvoid sub2() {}""")t.write("sub3/jamroot.jam", """lib sub3 : sub3.cpp ;""")t.write("sub3/sub3.cpp", """#ifdef _WIN32__declspec(dllexport)#endifvoid sub3() {}""")# The 'clean' should not remove files under separate jamroot.jam.t.run_build_system()t.run_build_system("--clean")t.expect_removal("bin/$toolset/debug/a.obj")t.expect_removal("sub1/bin/$toolset/debug/sub1.obj")t.expect_removal("sub1/bin/$toolset/debug/sub1_2.obj")t.expect_removal("sub2/bin/$toolset/debug/sub2.obj")t.expect_nothing("sub3/bin/$toolset/debug/sub3.obj")# The 'clean-all' removes everything it can reach.t.run_build_system()t.run_build_system("--clean-all")t.expect_removal("bin/$toolset/debug/a.obj")t.expect_removal("sub1/bin/$toolset/debug/sub1.obj")t.expect_removal("sub1/bin/$toolset/debug/sub1_2.obj")t.expect_removal("sub2/bin/$toolset/debug/sub2.obj")t.expect_nothing("sub3/bin/$toolset/debug/sub3.obj")# The 'clean' together with project target removes only under that project.t.run_build_system()t.run_build_system("sub1 --clean")t.expect_nothing("bin/$toolset/debug/a.obj")t.expect_removal("sub1/bin/$toolset/debug/sub1.obj")t.expect_removal("sub1/bin/$toolset/debug/sub1_2.obj")t.expect_nothing("sub2/bin/$toolset/debug/sub2.obj")t.expect_nothing("sub3/bin/$toolset/debug/sub3.obj")# And 'clean-all' removes everything.t.run_build_system()t.run_build_system("sub1 --clean-all")t.expect_nothing("bin/$toolset/debug/a.obj")t.expect_removal("sub1/bin/$toolset/debug/sub1.obj")t.expect_removal("sub1/bin/$toolset/debug/sub1_2.obj")t.expect_removal("sub2/bin/$toolset/debug/sub2.obj")t.expect_nothing("sub3/bin/$toolset/debug/sub3.obj")# If main target is explicitly named, we should not remove files from other# targets.t.run_build_system()t.run_build_system("sub1//sub1 --clean")t.expect_removal("sub1/bin/$toolset/debug/sub1.obj")t.expect_nothing("sub1/bin/$toolset/debug/sub1_2.obj")t.expect_nothing("sub2/bin/$toolset/debug/sub2.obj")t.expect_nothing("sub3/bin/$toolset/debug/sub3.obj")# Regression test: sources of the 'cast' rule were mistakenly deleted.t.rm(".")t.write("jamroot.jam", """import cast ;cast a cpp : a.h ;""")t.write("a.h", "")t.run_build_system("--clean")t.expect_nothing("a.h")t.cleanup()

⌨️ 快捷键说明

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