我使用CMake作为中等规模的Fortran项目;有时候我会用gfortran来搭建它,其他时候用ifort来搭建它。当我想要进行调试构建时,编译器标志是不同的;我想让CMake自动检查正在使用哪个编译器并相应地设置标志。CMake Fortran编译器依赖标志
看起来像this answer显示了如何为不同的C++编译器做同样的事情。还有,如何检查的编译器与Fortran语言的example,使用
if (Fortran_COMPILER_NAME MATCHES "gfortran.*")
然而,这不能调用条件,因为CMake的决定使用f95
。当然,f95
发生在别名gfortran
,但CMake没有检测到。
什么是正确的方法来做到这一点?