如何确保 CMakeLists.txt 和 FindXXX.cmake 的编码风格一致

How to ensure consistent coding style for CMakeLists.txt and FindXXX.cmake

有 clang-format 等,以确保不同开发人员对 .cpp 和 .h 文件的编码风格一致。

但是如何确保 CMake 中不同开发人员编写的 CMakeLists.txt 和 FindXXX.cmake 的编码风格一致?

我要执行的主要规则是一致的indention/space,upper/lower 大小写一致性,每行约束 80 个字符

将我的评论变成答案

我不知道有什么方法可以在 CMake 本身中强制执行 CMakeLists.txt 或其他 CMake 脚本文件的编码风格。但是您可以使用编辑器扩展和格式检查器:

  • 我用 .editorconfig

    确保的一些非常基本的东西
    • 您可以配置:indent_styleindent_sizetab_widthend_of_linecharsettrim_trailing_whitespaceinsert_final_newline
    • 并且有许多编辑器可用的 EditorConfig 插件(如果不支持开箱即用)
  • 使用 cmake-lint 您可以 check/filter 获得更多规则

    • 它有过滤器,例如convention/filenamelinelengthpackage/consistencyreadability/logicreadability/mixedcasereadability/wonkycasesyntax
  • 还有 Tools for upper/lower case consistency in CMake source