enable_language
Включение языков (CXX/C/OBJC/OBJCXX/Fortran и др.)
enable_language(<lang>... [OPTIONAL])
Включает поддержку указанных языков в CMake. Это то же самое, что и команда project(), но не создаёт дополнительные переменные, которые создаёт команда project.
Поддерживаемые языки: C, CXX (т.е. C++), CSharp (т.е. C#), CUDA, OBJC (т.е. Objective-C), OBJCXX (т.е. Objective-C++), Fortran, HIP, ISPC, Swift, ASM, ASM_NASM, ASM_MARMASM, ASM_MASM, и ASM-ATT.
Новое в версии 3.8: Добавлена поддержка CSharp и CUDA.
Новое в версии 3.15: Добавлена поддержка Swift.
Новое в версии 3.16: Добавлена поддержка OBJC и OBJCXX.
Новое в версии 3.18: Добавлена поддержка ISPC.
Новое в версии 3.21: Добавлена поддержка HIP.
Новое в версии 3.26: Добавлена поддержка ASM_MARMASM.
Если вы включаете ASM, укажите его в конце списка, чтобы CMake мог проверить, работают ли компиляторы для других языков, таких как C, и для ассемблера тоже.
По умолчанию C и CXX включены, если не указаны параметры языков. Укажите язык NONE, или используйте ключевое слово LANGUAGES и не указывайте языки, чтобы пропустить включение любых языков.
Эта команда должна вызываться в глобальном пространстве имён файла, а не в вызове функции. Кроме того, она должна вызываться в самой верхней директории, общей для всех целей, использующих указанный язык напрямую для компиляции исходных кодов или косвенно через зависимости связывания. Проще всего включить все необходимые языки в корневой директории проекта.
Ключевое слово OPTIONAL является заглушкой для будущей реализации и в настоящее время не работает. Вместо этого вы можете использовать модуль CheckLanguage, чтобы проверить поддержку перед включением.
© 2000–2023 Kitware, Inc. and Contributors
Licensed under the BSD 3-clause License.
https://cmake.org/cmake/help/v3.26/command/enable_language.html