在我的构建中,我想将源文件列表提供给clang格式。我在MsBuild做这个。我发现ItemGroup中的文件列表可能非常大。我可以像这样格式化命令行:
$(MSBuildThisFileDirectory)clang-format.exe -style=file -output-replacements-xml %(ClangFilesToFormat.Identity)
但是,我认为我超过了最大命令行长度,命令失败。所以,我想在批量的X文件中调用clang-format。我不想为每个单独的文件调用它,因为如果我这样做的话,它太慢了。
如何将ItemGroup拆分为多个X项,或以其他方式解决此问题?
由于
答案 0 :(得分:0)
没有上下文很难说,但我希望语法%(ClangFilesToFormat.Identity)
能够导致批处理(因此,为每个单独的文件调用命令)。假设clang-format.exe
期望文件以空格分隔,我想您会想要使用@(ClangFilesToFormat, ' ')
。首先考虑使用诊断线(如下所示)来验证您是否获得了所需的字符串。
<Error Text="ClangFilesToFormat: @(ClangFilesToFormat, ' ')" />