diff options
-rw-r--r-- | Modules/CMakeDetermineCompilerId.cmake | 6 | ||||
-rw-r--r-- | Modules/CMakeDetermineFortranCompiler.cmake | 4 | ||||
-rw-r--r-- | Modules/CompilerId/VS-Intel.vfproj.in | 42 | ||||
-rw-r--r-- | Source/cmGlobalVisualStudio7Generator.cxx | 1 |
4 files changed, 47 insertions, 6 deletions
diff --git a/Modules/CMakeDetermineCompilerId.cmake b/Modules/CMakeDetermineCompilerId.cmake index 4c2b506b01..e591f2c429 100644 --- a/Modules/CMakeDetermineCompilerId.cmake +++ b/Modules/CMakeDetermineCompilerId.cmake @@ -114,7 +114,11 @@ Id flags: ${testflags} set(id_platform ${CMAKE_VS_PLATFORM_NAME}) set(id_lang "${lang}") set(id_cl cl.exe) - if(NOT "${vs_version}" VERSION_LESS 10) + if(lang STREQUAL Fortran) + set(v Intel) + set(ext vfproj) + set(id_cl ifort.exe) + elseif(NOT "${vs_version}" VERSION_LESS 10) set(v 10) set(ext vcxproj) elseif(NOT "${vs_version}" VERSION_LESS 7) diff --git a/Modules/CMakeDetermineFortranCompiler.cmake b/Modules/CMakeDetermineFortranCompiler.cmake index 4d3fb90766..13cfb00549 100644 --- a/Modules/CMakeDetermineFortranCompiler.cmake +++ b/Modules/CMakeDetermineFortranCompiler.cmake @@ -26,10 +26,6 @@ if(NOT CMAKE_Fortran_COMPILER_NAMES) endif() if(${CMAKE_GENERATOR} MATCHES "Visual Studio") - set(CMAKE_Fortran_COMPILER_ID_RUN 1) - set(CMAKE_Fortran_PLATFORM_ID "Windows") - set(CMAKE_Fortran_COMPILER_ID "Intel") - set(CMAKE_Fortran_COMPILER "${CMAKE_GENERATOR_FC}") elseif("${CMAKE_GENERATOR}" MATCHES "Xcode") set(CMAKE_Fortran_COMPILER_XCODE_TYPE sourcecode.fortran.f90) else() diff --git a/Modules/CompilerId/VS-Intel.vfproj.in b/Modules/CompilerId/VS-Intel.vfproj.in new file mode 100644 index 0000000000..044dd202dd --- /dev/null +++ b/Modules/CompilerId/VS-Intel.vfproj.in @@ -0,0 +1,42 @@ +<?xml version="1.0" encoding="UTF-8"?> +<VisualStudioProject + ProjectCreator="Intel Fortran" + Keyword="Console Application" + Version="@CMAKE_VS_INTEL_Fortran_PROJECT_VERSION@" + ProjectIdGuid="{AB67BAB7-D7AE-4E97-B492-FE5420447509}" + > + <Platforms> + <Platform Name="@id_platform@"/> + </Platforms> + <Configurations> + <Configuration + Name="Debug|@id_platform@" + OutputDirectory="." + IntermediateDirectory="$(ConfigurationName)" + > + <Tool + Name="VFFortranCompilerTool" + DebugInformationFormat="debugEnabled" + Optimization="optimizeDisabled" + Preprocess="preprocessYes" + RuntimeLibrary="rtMultiThreadedDebugDLL" + /> + <Tool + Name="VFLinkerTool" + LinkIncremental="linkIncrementalNo" + GenerateDebugInformation="true" + SubSystem="subSystemConsole" + /> + <Tool + Name="VFPostBuildEventTool" + CommandLine="for %%i in (@id_cl@) do @echo CMAKE_@id_lang@_COMPILER=%%~$PATH:i" + /> + </Configuration> + </Configurations> + <Files> + <Filter Name="Source Files" Filter="F"> + <File RelativePath="@id_src@"/> + </Filter> + </Files> + <Globals/> +</VisualStudioProject> diff --git a/Source/cmGlobalVisualStudio7Generator.cxx b/Source/cmGlobalVisualStudio7Generator.cxx index 6247f7da6d..d476c24dee 100644 --- a/Source/cmGlobalVisualStudio7Generator.cxx +++ b/Source/cmGlobalVisualStudio7Generator.cxx @@ -76,7 +76,6 @@ void cmGlobalVisualStudio7Generator { mf->AddDefinition("CMAKE_GENERATOR_RC", "rc"); mf->AddDefinition("CMAKE_GENERATOR_NO_COMPILER_ENV", "1"); - mf->AddDefinition("CMAKE_GENERATOR_FC", "ifort"); this->AddPlatformDefinitions(mf); if(!mf->GetDefinition("CMAKE_CONFIGURATION_TYPES")) { |