gpt4 book ai didi

cmake - 对于 CMakeLists.txt 中的特定项目,将 ctest 命令永久替换为 "ctest --output-on-failure"

转载 作者:行者123 更新时间:2023-12-04 20:35:23 26 4
gpt4 key购买 nike

我发现通用 ctest命令没有提供关于测试的太多信息,所以我想添加 ctest --output-on-failure但不必让用户担心标志。我希望他们只是cmake , make项目并运行 ctest,它应该运行 ctest --output-on-failure旗帜。是否可以在 CMakeLists.txt 中做到这一点?

编辑:
env CTEST_OUTPUT_ON_FAILURE=1 make test 的输出

 4/13 Test  #4: TEST_SSSP ........................***Failed  Required regular expression not found.Regex=[CORRECT
] 0.00 sec
Loading Matrix-market coordinate-formatted graph ...
Input graph file /home/muhammad/gunrock/dataset/small/chesapeake.mtx does not exis
set_property(TEST TestName PROPERTY ENVIRONMENT "CTEST_OUTPUT_ON_FAILURE=1") 的输出
 4/13 Test  #4: TEST_SSSP ........................***Failed  Required regular expression not found.Regex=[CORRECT
] 0.00 sec

旗帜在 set_property不管用。

最佳答案

在 CMake 3.17 release notes ,有一个新变量 CMAKE_CTEST_ARGUMENTS您可以设置将任何命令行参数传递给 CTest,包括 --output-on-failure .在您的特定情况下,您现在可以简单地将其添加到您的 CMakeLists.txt:

list(APPEND CMAKE_CTEST_ARGUMENTS "--output-on-failure")

关于cmake - 对于 CMakeLists.txt 中的特定项目,将 ctest 命令永久替换为 "ctest --output-on-failure",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36726545/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com