| include(CMakeDetermineVSServicePack) | 
 |  | 
 | # The code is almost identical to the CMake version. The only difference is that we remove | 
 | # _DetermineVSServicePack_FastCheckVersionWithCompiler which lead to errors on some systems. | 
 | function(EigenDetermineVSServicePack _pack) | 
 |     if(NOT DETERMINED_VS_SERVICE_PACK OR NOT ${_pack}) | 
 |         if(NOT DETERMINED_VS_SERVICE_PACK) | 
 |             _DetermineVSServicePack_CheckVersionWithTryCompile(DETERMINED_VS_SERVICE_PACK _cl_version) | 
 |             if(NOT DETERMINED_VS_SERVICE_PACK) | 
 |                 _DetermineVSServicePack_CheckVersionWithTryRun(DETERMINED_VS_SERVICE_PACK _cl_version) | 
 |             endif() | 
 |         endif() | 
 |  | 
 |         if(DETERMINED_VS_SERVICE_PACK) | 
 |             if(_cl_version) | 
 |                 # Call helper function to determine VS version | 
 |                 _DetermineVSServicePackFromCompiler(_sp "${_cl_version}") | 
 |                | 
 |                 # temporary fix, until CMake catches up | 
 |                 if (NOT _sp) | 
 |                     if(${_cl_version} VERSION_EQUAL "17.00.50727.1") | 
 |                         set(_sp "vc110") | 
 |                     elseif(${_cl_version} VERSION_EQUAL "17.00.51106.1") | 
 |                         set(_sp "vc110sp1") | 
 |                     elseif(${_cl_version} VERSION_EQUAL "17.00.60315.1") | 
 |                         set(_sp "vc110sp2") | 
 |                     elseif(${_cl_version} VERSION_EQUAL "17.00.60610.1") | 
 |                         set(_sp "vc110sp3") | 
 |                     else() | 
 |                         set(_sp ${CMAKE_CXX_COMPILER_VERSION}) | 
 |                     endif() | 
 |                 endif() | 
 |                  | 
 |                 if(_sp) | 
 |                     set(${_pack} ${_sp} CACHE INTERNAL | 
 |                         "The Visual Studio Release with Service Pack") | 
 |                 endif() | 
 |             endif() | 
 |         endif() | 
 |     endif() | 
 | endfunction() |