title: How does CMake check for a working compiler?
body: <p>When using CMake, I noticed the output messages:</p>
  <blockquote>
  <p>-- The C compiler identification is GNU</p>
  <p>-- The CXX compiler identification is GNU</p>
  <p>-- Check for working C compiler: /usr/bin/gcc</p>
  <p>-- Check for working C compiler: /usr/bin/gcc -- works</p>
  <p>-- Detecting C compiler ABI info</p>
  <p>-- Detecting C compiler ABI info - done</p>
  <p>-- Check for working CXX compiler: /usr/bin/c++</p>
  <p>-- Check for working CXX compiler: /usr/bin/c++ -- works</p>
  <p>-- Detecting CXX compiler ABI info</p>
  <p>-- Detecting CXX compiler ABI info - done</p>
  </blockquote>
  <p>I am just curious about how CMake checks if the compiler works and the ABI information.</p>