spack/var/spack/repos/builtin/packages/msmpi/ifort_compat.patch
John W. Parent 793a7bc6a9
Windows: add registry query and SDK/WDK packages (#33021)
* Add a WindowsRegistryView class, which can query for existing
  package installations on Windows. This is particularly important
  because some Windows packages (including those added here)
  do not allow two simultaneous installs, and this can be
  queried in order to provide a clear error message.
* Consolidate external path detection logic for Windows into
  WindowsKitExternalPaths and WindowsCompilerExternalPaths objects.
* Add external-only packages win-sdk and wgl
* Add win-wdk (including external detection) which depends on
  win-sdk
* Replace prior msmpi implementation with a source-based install
  (depends on win-wdk). This install can control the install
  destination (unlike the binary installation).
* Update MSVC compiler to choose vcvars based on win-sdk dependency
* Provide "msbuild" module-level variable to packages during build
* When creating symlinks on Windows, need to explicitly specify when
  a symlink target is a directory
* executables_in_path no-longer defaults to using PATH (this is
  now expected to be taken care of by the caller)
2022-11-22 00:27:42 -08:00

35 lines
1.8 KiB
Diff

diff --git a/src/mpi/msmpi/dll/msmpi.vcxproj b/src/mpi/msmpi/dll/msmpi.vcxproj
index 255b9f5..cc4f096 100644
--- a/src/mpi/msmpi/dll/msmpi.vcxproj
+++ b/src/mpi/msmpi/dll/msmpi.vcxproj
@@ -57,6 +57,9 @@
$(OutDir)\..\mpi_debugger\mpi_debugger.lib;
$(CRT_Libs);
</AdditionalDependencies>
+ <AdditionalLibraryDirectories>
+ $(SPACK_IFORT)compiler\lib\intel64
+ </AdditionalLibraryDirectories>
<ModuleDefinitionFile>.\msmpi.def</ModuleDefinitionFile>
</Link>
</ItemDefinitionGroup>
diff --git a/src/mpi/msmpi/fortran/lib/mpifort.vcxproj b/src/mpi/msmpi/fortran/lib/mpifort.vcxproj
index 24bd29d..57d0292 100644
--- a/src/mpi/msmpi/fortran/lib/mpifort.vcxproj
+++ b/src/mpi/msmpi/fortran/lib/mpifort.vcxproj
@@ -8,12 +8,12 @@
</PropertyGroup>
<Target Name="CompileFortran" AfterTargets="ClCompile" Inputs="@(ForCompile)" Outputs="@(ForCompile->'$(O)%(FileName).obj')">
<PropertyGroup Condition="'$(BuildArchitecture)'=='i386'">
- <Fort_Flags>-fno-underscoring -D_X86_=1 -Di386=1 -march=x86-64 -m32</Fort_Flags>
+ <Fort_Flags>/D _X86_=1 /D i386=1 -march=x86-64 -m32</Fort_Flags>
</PropertyGroup>
<PropertyGroup Condition="'$(BuildArchitecture)'=='amd64'">
- <Fort_Flags>-fno-underscoring -D_WIN64 -D_AMD64_ -DAMD64</Fort_Flags>
+ <Fort_Flags>/D _WIN64=1 /D _AMD64_=1 /D AMD64=1</Fort_Flags>
</PropertyGroup>
- <Exec Command="$(GFORTRAN_BIN)\gfortran.exe -I$(MPI_INC_ROOT) -c %(ForCompile.Identity) $(Fort_Flags) -o $(O)\%(ForCompile.FileName).obj" />
+ <Exec Command="$(IFORT_BIN)\ifort.exe /I$(MPI_INC_ROOT) /c %(ForCompile.Identity) $(Fort_Flags) /names:lowercase /assume:nounderscore /o $(O)\%(ForCompile.FileName).obj" />
<ItemGroup>
<Lib Condition="'$(ConfigurationType)'=='StaticLibrary'" Include="@(ForCompile->'$(O)\%(Filename).obj')" />
</ItemGroup>