UNITY_BUILD_BATCH_SIZE¶
3.16 版本中添加。
指定通过 UNITY_BUILD
目标属性启用统一构建时可以合并到任何一个统一源文件中的源文件最大数量。原始源文件将根据需要分布到尽可能多的统一源文件中,以遵守此限制。
此属性的初始值取自创建目标时的 CMAKE_UNITY_BUILD_BATCH_SIZE
变量。如果尚未设置该变量,则初始值将为 8。
需要仔细选择批处理大小。如果设置得太高,合并的源文件的大小可能会导致编译器使用过多的内存或达到其他类似限制。在极端情况下,这甚至会导致构建失败。另一方面,如果批处理大小太小,则构建性能几乎没有提升。
虽然极不推荐,但可以将批处理大小设置为 0,以将目标的所有源合并到一个统一文件中,而不管涉及多少源。这有可能会创建一个过大的统一源文件并对构建性能产生负面影响,因此通常不建议使用 0 的值。