CheckFortranSourceCompiles
Проверить, компилируется ли данный исходный код Fortran и связывается ли он в исполняемый файл.
-
check_fortran_source_compiles -
check_fortran_source_compiles(code resultVar [FAIL_REGEX regex1 [regex2...]] [SRC_EXT ext] )Проверить, что исходный код, предоставленный в
code, может быть скомпилирован как файл исходного кода Fortran и связан как исполняемый файл (поэтому он должен содержать по крайней мере точку входаPROGRAM). Результат будет сохранен во внутренней переменной кэша, указанной вresultVar, с логическим значением true для успеха и логическим значением false для неудачи. ЕслиFAIL_REGEXпредоставлен, то неудача определяется путем проверки, совпадает ли что-либо в выводе с любым из указанных регулярных выражений.По умолчанию тестовому файлу исходного кода будет присвоено расширение
.Fфайла. ОпцияSRC_EXTможет быть использована для переопределения этого на.ext.Основная проверка выполняется командой
try_compile(). Команды компиляции и компоновки могут быть изменены путем установки любых из следующих переменных перед вызовомcheck_fortran_source_compiles().-
CMAKE_REQUIRED_FLAGS - Дополнительные флаги для передачи компилятору. Обратите внимание, что содержимое
CMAKE_Fortran_FLAGSи его связанной переменной, специфичной для конфигурации, автоматически добавляются к команде компилятора перед содержимымCMAKE_REQUIRED_FLAGS. -
CMAKE_REQUIRED_DEFINITIONS - Список ;-list определений компилятора в формате
-DFOOили-DFOO=bar. Определение для имени, указанного вresultVar, также будет автоматически добавлено. -
CMAKE_REQUIRED_INCLUDES - Список ;-list путей поиска заголовков для передачи компилятору. Эти пути поиска заголовков будут единственными используемыми командой
try_compile(), т.е. содержимое свойства каталогаINCLUDE_DIRECTORIESбудет проигнорировано. -
CMAKE_REQUIRED_LIBRARIES - Список ;-list библиотек для добавления в команду компоновки. Это могут быть имена системных библиотек, или они могут быть Импортированные цели (см.
try_compile()для получения дополнительной информации). -
CMAKE_REQUIRED_QUIET - Если эта переменная принимает логическое значение true, все сообщения состояния, связанные с проверкой, будут подавлены.
Проверка выполняется только один раз, с результатом, кэшированным в переменной, имя которой указано в
resultVar. Каждый последующий запуск CMake будет повторно использовать это кэшированное значение вместо повторного выполнения проверки, даже еслиcodeизменится. Для принудительного повторного оценивания проверки переменная, имя которой указано вresultVar, должна быть вручную удалена из кэша. -
© 2000–2019 Kitware, Inc. and Contributors
Licensed under the BSD 3-clause License.
https://cmake.org/cmake/help/v3.11/module/CheckFortranSourceCompiles.html