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