2

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

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

谢谢你的帮助。

4

1 回答 1

2

不,但您可以使用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

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

于 2014-10-16T18:27:32.883 回答