ctest / cmake在输出文件中搜索字符串

时间:2014-10-16 18:12:09

标签: cmake ctest

我将一些旧测试转换为cmake / ctest,如果输出文件包含特定的警告消息,则希望测试失败。

过去我会在输出文件中搜索特定的字符串。我已经使用execute_process来使用compare_files命令。是否有类似的命令来搜索文件中的字符串?

感谢您的帮助。

1 个答案:

答案 0 :(得分:1)

不,但您可以使用file将文件读入变量。 (http://www.cmake.org/cmake/help/v3.0/command/file.html)然后使用其中一个string子命令。

file(READ foo TMPTXT)

string(FIND "${TMPTXT}" "needle" matchres)

message(STATUS ${matchres})

if(${matchres} EQUAL -1)
    message(FATAL_ERROR "No match found")
endif ()

然后

${CMAKE_COMMAND} -P findmatch.cmake

细节可能有点不同,但这是一般的想法。