我正在将一些旧测试转换为cmake/ctest,如果输出文件包含特定的警告消息,我希望测试失败。
过去,我会搜索输出文件以查找特定字符串。我已经使用execute_process来使用compare_files命令。是否有类似于搜索文件中字符串的命令?
感谢您的帮助。
过去,我会搜索输出文件以查找特定字符串。我已经使用execute_process来使用compare_files命令。是否有类似于搜索文件中字符串的命令?
感谢您的帮助。
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
具体情况可能有所不同,但这是一般思路。