FOnline Engine
Current master GitHub
Документация Docs/ru/reference/cmake/stages.md

Стадии и hooks проекта CMake

Сгенерированный справочник. Не редактируйте эту страницу напрямую. Обновите BuildTools/cmake/ProjectInterface.json, затем выполните python BuildTools/docs_cmake.py --write.

Индекс справочника Каноническая JSON-модель Контракт генерации

Подключающие проекты должны вызвать каждую точку входа ровно один раз в указанном ниже порядке. Повторный вызов стадии, нарушение порядка или пропуск предшественника прерывают настройку CMake.

Регистрируйте hooks через AddStageHook(<stage> <Pre|Post> <macro-name>) до выполнения целевой стадии. Hooks выполняются в порядке регистрации.

Порядок Стабильный ID Стадия Точка входа Hooks Источник Ответственность
1 cmake.stage.Init Init StartProjectGeneration Pre, Post BuildTools/cmake/stages/Init.cmake Объявляет параметры, определяет платформу и toolchain и создаёт общее состояние сборки.
2 cmake.stage.ProjectOptions ProjectOptions RegisterProjectOptions Pre, Post BuildTools/cmake/stages/ProjectOptions.cmake Нормализует комбинации параметров проекта и отклоняет несовместимые режимы сборки.
3 cmake.stage.ThirdParty ThirdParty AddThirdPartyLibraries Pre, Post BuildTools/cmake/stages/ThirdParty.cmake Регистрирует встроенные сторонние зависимости и изоляцию поиска пакетов.
4 cmake.stage.EngineSources EngineSources RegisterEngineSources Pre, Post BuildTools/cmake/stages/EngineSources.cmake Собирает списки исходников движка и подключающего проекта, а также входы сгенерированных ресурсов.
5 cmake.stage.Codegen Codegen SetupCodeGeneration Pre, Post BuildTools/cmake/stages/Codegen.cmake Определяет выходы сгенерированных метаданных и исходников и цели генерации кода.
6 cmake.stage.CoreLibs CoreLibs BuildCoreLibraries Pre, Post BuildTools/cmake/stages/CoreLibs.cmake Создаёт переиспользуемые библиотеки движка из зарегистрированных групп исходников.
7 cmake.stage.Applications Applications BuildApplications Pre, Post BuildTools/cmake/stages/Applications.cmake Создаёт включённые приложения клиента, сервера, Mapper, компилятора, baker, viewer и тестов.
8 cmake.stage.ScriptsAndBaking ScriptsAndBaking SetupScriptsAndBaking Pre, Post BuildTools/cmake/stages/ScriptsAndBaking.cmake Создаёт цели компиляции скриптов и запекания ресурсов.
9 cmake.stage.Packages Packages BuildPackages Pre, Post BuildTools/cmake/stages/Packages.cmake Создаёт цели пакетов из объявлений пакетов подключающего проекта.
10 cmake.stage.Finalize Finalize FinalizeProjectGeneration Pre, Post BuildTools/cmake/stages/Finalize.cmake Завершает организацию целей и проверяет, что каждая стадия выполнена ровно один раз.
Введите запрос.