我有一个简单的cmake项目(在linux上),它从自定义位置加载一些库。我现在想使用英特尔编译器而不是gnu编译器,并在我的CMakeLists.txt中添加一些if语句,根据所使用的编译器类型加载不同的库。
所以我会在cmake配置时通过CXX环境变量指定英特尔编译器的使用情况(这是正确的吗?)。 然后,我需要在
行中使用if语句IF ( INTEL_IS_USED )
BLA BLA
ELSE
BLA BLA
最简单的方法是什么?特别是,是否有一些变量我可以查询编译器类型以及它对英特尔编译器的价值是什么?
干杯, 奥利弗
答案 0 :(得分:6)
您可以查看CMAKE_C_COMPILER
和CMAKE_CXX_COMPILER
变量。
这样的事情:
if (${CMAKE_C_COMPILER} MATCHES "icc.*$")
set(USING_INTEL TRUE)
endif ()