UNITY_BUILD_MODE
Добавлено в версии 3.18.
CMake предоставляет различные алгоритмы для выбора исходных файлов, которые группируются в пакет. Алгоритм выбирается с помощью этого свойства, допустимые значения которого перечислены ниже:
-
BATCH -
В этом режиме CMake определяет, какие файлы группировать. Свойство
UNITY_BUILD_BATCH_SIZEзадаёт максимальное количество исходных файлов, которые можно объединить в один unity-файл.Пример использования:
add_library(example_library source1.cxx source2.cxx source3.cxx source4.cxx) set_target_properties(example_library PROPERTIES UNITY_BUILD_MODE BATCH UNITY_BUILD_BATCH_SIZE 2 ) -
GROUP -
В этом режиме каждая цель явно задаёт способ группировки исходных файлов. Все исходные файлы с одинаковым значением
UNITY_GROUPгруппируются вместе. Исходные файлы без этого свойства компилируются по отдельности. При использовании этого режима свойствоUNITY_BUILD_BATCH_SIZEигнорируется.Пример использования:
add_library(example_library source1.cxx source2.cxx source3.cxx source4.cxx) set_target_properties(example_library PROPERTIES UNITY_BUILD_MODE GROUP ) set_source_files_properties(source1.cxx source2.cxx source3.cxx PROPERTIES UNITY_GROUP "bucket1" ) set_source_files_properties(source4.cxx PROPERTIES UNITY_GROUP "bucket2" )
Если значение UNITY_BUILD_MODE явно не задано, по умолчанию CMake использует BATCH.
© 2000–2026 Kitware, Inc. and Contributors
Licensed under the BSD 3-clause License.
https://cmake.org/cmake/help/latest/prop_tgt/UNITY_BUILD_MODE.html