有没有办法让CMake退出时使用非0退出代码来响应警告"项目没有使用手动指定的变量"?
我喜欢严格的编程,最大警告和警告被视为错误,但是在出现此CMake警告的情况下,如果在某些构建管道的早期未被捕获,可能会导致意外的失败,可能会解决{{ 3}}不会触发非0 CMake退出代码,--no-warn-unused-cli
与我正在寻找的相反。
作为CMake似乎不支持此功能的解决方法,我通过-Werror=dev
检查" CMake Warning"来装饰我的C ++ Jenkins作业。如果在构建输出中找到该字符串,则使构建失败。
答案 0 :(得分:1)
我检查了代码,但您无法将此Warning
变为错误。如果您查看cmake::RunCheckForUnusedVariables()
,就会发出
CMake Warning ...
而不是
CMake Warning (dev) ...
因此,您无法通过命令行选项将正常警告提升为错误。
在这些情况下,命令行调用将始终返回0
。
您可以更改CMake的源代码,也可以在CMake脚本代码中重写未使用的变量。