Intel: Classic Compiler 2021.2.0 20210228 detected as 20.2.2.20210228
Running CMake 3.20.1 with latest ICC 2021.2.0 as the oneAPI standalone component:
$ icc --version
icc (ICC) 2021.2.0 20210228
Copyright (C) 1985-2021 Intel Corporation. All rights reserved.
$ cmake -DCMAKE_CXX_COMPILER=icc ...
-- The C compiler identification is Intel 20.2.2.20210228
-- The CXX compiler identification is Intel 20.2.2.20210228
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Check for working C compiler: /home/mblanchard/intel/oneapi/compiler/2021.2.0/linux/bin/intel64/icc - skipped
-- Detecting C compile features
-- Detecting C compile features - done
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done
-- Check for working CXX compiler: /home/mblanchard/intel/oneapi/compiler/2021.2.0/linux/bin/intel64/icc - skipped
-- Detecting CXX compile features
-- Detecting CXX compile features - done
CMAKE_CXX_COMPILER_ID=Intel
CMAKE_CXX_COMPILER_VERSION=20.2.2.20210228
CMAKE_CXX_COMPILER_VERSION_MAJOR=20
CMAKE_CXX_COMPILER_VERSION_MINOR=2
I wonder how CMake determines that the major version is 20. I'm not an ICC expert - at all - but I haven't been able to find reference to that number in Intel's documentation (I haven't been able to find a release history page in that documentation to be fair, the best I found is Wikipedia). Intel products version numbering has changed with their new oneAPI thing and I ain't sure the new scheme plays well with the old one for ICC.
I may be missing something obvious here though...
Edited by Brad King