cmake - Как установить разные переменные для компилятора Intel - PullRequest
3 голосов
/ 15 сентября 2010

У меня есть простой проект cmake (в linux), который загружает некоторые библиотеки из пользовательских мест.Теперь я хотел бы использовать компилятор Intel вместо компилятора gnu и добавить несколько операторов if в мой CMakeLists.txt, который загружает разные библиотеки в зависимости от типа используемого компилятора.

Поэтому я бы указал использованиеКомпилятор Intel через переменную среды CXX (это правильно?) Во время конфигурации cmake.Тогда мне понадобится оператор if в строке

IF ( INTEL_IS_USED )
  BLA BLA
ELSE
  BLA BLA

Какой самый простой способ сделать это?В частности, есть ли какая-нибудь переменная, которую я могу запросить для типа компилятора, и каково ее значение для компилятора Intel?

Cheers, Oliver

1 Ответ

6 голосов
/ 15 сентября 2010

Вы можете проверить переменные CMAKE_C_COMPILER и CMAKE_CXX_COMPILER.

Примерно так:

if (${CMAKE_C_COMPILER} MATCHES "icc.*$") 
  set(USING_INTEL TRUE)
endif ()
...