Spec-Zone.ru › CMake 3.15

CMakeForceCompiler

Устарело начиная с версии 3.6: Не использовать.

Макросы, предоставляемые этим модулем, ранее предназначались для использования в файлах цепочки инструментов кросс-компиляции, когда CMake не мог автоматически определить идентификатор компилятора. После внедрения этого модуля возможности CMake по идентификации компилятора улучшились, и теперь их можно научить распознавать любой компилятор. Кроме того, набор информации, которую CMake определяет для компилятора, теперь слишком обширен, чтобы его можно было предоставить в файлах цепочки инструментов с помощью этих макросов.

Одним из распространённых случаев использования этого модуля было пропускание проверок CMake на работоспособность компилятора при использовании кросс-компилятора, который не может связать двоичные файлы без специальных флагов или пользовательских скриптов линковщика. В настоящее время этот случай поддерживается установкой переменной CMAKE_TRY_COMPILE_TARGET_TYPE в файле цепочки инструментов вместо этого.

Макрос CMAKE_FORCE_C_COMPILER имеет следующий синтаксис:

CMAKE_FORCE_C_COMPILER(<compiler> <compiler-id>)

Он устанавливает CMAKE_C_COMPILER в указанный компилятор и внутреннюю переменную cmake CMAKE_C_COMPILER_ID в указанный идентификатор компилятора. Он также пропускает проверку работоспособности компилятора и проверки базовой информации о компиляторе.

Макрос CMAKE_FORCE_CXX_COMPILER имеет следующий синтаксис:

CMAKE_FORCE_CXX_COMPILER(<compiler> <compiler-id>)

Он устанавливает CMAKE_CXX_COMPILER в указанный компилятор и внутреннюю переменную cmake CMAKE_CXX_COMPILER_ID в указанный идентификатор компилятора. Он также пропускает проверку работоспособности компилятора и проверки базовой информации о компиляторе.

Макрос CMAKE_FORCE_Fortran_COMPILER имеет следующий синтаксис:

CMAKE_FORCE_Fortran_COMPILER(<compiler> <compiler-id>)

Он устанавливает CMAKE_Fortran_COMPILER в указанный компилятор и внутреннюю переменную cmake CMAKE_Fortran_COMPILER_ID в указанный идентификатор компилятора. Он также пропускает проверку работоспособности компилятора и проверки базовой информации о компиляторе.

Таким образом, простой файл цепочки инструментов может выглядеть так:

include (CMakeForceCompiler)
set(CMAKE_SYSTEM_NAME Generic)
CMAKE_FORCE_C_COMPILER   (chc12 MetrowerksHicross)
CMAKE_FORCE_CXX_COMPILER (chc12 MetrowerksHicross)

© 2000–2020 Kitware, Inc. and Contributors
Licensed under the BSD 3-clause License.
https://cmake.org/cmake/help/v3.15/module/CMakeForceCompiler.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API