确定clang-format是否找到.clang-format文件(在shell或cmake脚本中)

时间:2017-01-20 08:10:07

标签: cmake clang-format

我想要实现的目标

我想用我的软件打包一个.clang-format文件,只有在用户不提供自己的软件时才会使用该文件。

到目前为止,我的想法是使用clang-format -style=file,如果用户为"located in one of the parent directories of the source file",则会找到用户.clang-format。 (可能是这种情况,因为它在他们的主目录中,或者因为他们将我的包用作git子模块,或者因为他们在下载我的软件后手动放置它)。

如果找不到.clang-format文件,则应使用我的软件附带的文件 - 例如通过符号链接到顶层的mypackage/auxiliary_files/.clang-format。我想直接从cmake自动化或通过从cmake(或其他)调用shell脚本来实现这一点。

简明工作流程

clang-format找到.clang-format:什么都不做(作为shell脚本exit 0;作为cmake脚本set(I-FOUND-CLANG-FORMAT 1)或类似的东西)

clang-format找不到.clang-format:致电ln -s auxiliary_files/.clang-format

我不想做什么

我不想编写一个循环来复制clang-format的搜索行为(将一个目录向上寻找.clang-format,直到找到它或找到最顶层的目录)内置100%兼容性。

我见过的选项,但没有弄清楚如何用于我的目标

如果设置clang-format,即使设置了style=file,如果未提供样式文件,

-fallback-style=none似乎也不会返回非零状态代码。我也没有在打印输出中看到是否使用了后备选项或常规选项。

0 个答案:

没有答案