UNITY_BUILD_BATCH_SIZE
Новое в версии 3.16.
Указывает максимальное количество исходных файлов, которые могут быть объединены в один файл unity при включении сборки unity с помощью свойства цели UNITY_BUILD. Исходные файлы будут распределены по нескольким файлам unity в зависимости от необходимости, чтобы соблюсти это ограничение.
Начальное значение этого свойства взято из переменной CMAKE_UNITY_BUILD_BATCH_SIZE при создании цели. Если эта переменная не установлена, начальное значение будет равно 8.
Размер пакета необходимо тщательно подбирать. Если он установлен слишком высоким, размер объединенных исходных файлов может привести к чрезмерному использованию памяти компилятором или к другим подобным ограничениям. В крайних случаях это может даже привести к сбою сборки. С другой стороны, если размер пакета слишком низкий, выгода для производительности сборки будет невелика.
Хотя это крайне не рекомендуется, размер пакета может быть установлен в значение 0 для объединения всех источников для цели в один файл unity, независимо от количества источников. Это рискует создать чрезмерно большой файл unity и отрицательно повлиять на производительность сборки, поэтому значение 0 обычно не рекомендуется.
© 2000–2021 Kitware, Inc. and Contributors
Licensed under the BSD 3-clause License.
https://cmake.org/cmake/help/v3.22/prop_tgt/UNITY_BUILD_BATCH_SIZE.html