summaryrefslogtreecommitdiffstats
path: root/PCbuild
diff options
context:
space:
mode:
authorZachary Ware <zachary.ware@gmail.com>2016-01-30 01:08:55 (GMT)
committerZachary Ware <zachary.ware@gmail.com>2016-01-30 01:08:55 (GMT)
commit4c5ad9452b171acb15e8b8a2277cceb1c363db47 (patch)
tree9277ea04c1768a1abadc94e86da8a2c74c7d7f71 /PCbuild
parent407b62f3e5a55705f000768b765addd1d11fbe42 (diff)
downloadcpython-4c5ad9452b171acb15e8b8a2277cceb1c363db47.zip
cpython-4c5ad9452b171acb15e8b8a2277cceb1c363db47.tar.gz
cpython-4c5ad9452b171acb15e8b8a2277cceb1c363db47.tar.bz2
Issue #25934: Default to /fp:strict for ICC builds
Diffstat (limited to 'PCbuild')
-rw-r--r--PCbuild/pyproject.props3
-rw-r--r--PCbuild/python.props16
2 files changed, 14 insertions, 5 deletions
diff --git a/PCbuild/pyproject.props b/PCbuild/pyproject.props
index 25cdfcc..f32b1bf 100644
--- a/PCbuild/pyproject.props
+++ b/PCbuild/pyproject.props
@@ -50,6 +50,9 @@
<WholeProgramOptimization>false</WholeProgramOptimization>
<RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
</ClCompile>
+ <ClCompile Condition="$(ICCBuild) == 'true'">
+ <FloatingPointModel>Strict</FloatingPointModel>
+ </ClCompile>
<Link>
<AdditionalLibraryDirectories>$(OutDir);%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
<GenerateDebugInformation>true</GenerateDebugInformation>
diff --git a/PCbuild/python.props b/PCbuild/python.props
index 862f041..4d8f603 100644
--- a/PCbuild/python.props
+++ b/PCbuild/python.props
@@ -7,12 +7,18 @@
Use the latest available version of Visual Studio to build. To override
this and build with an earlier version, pass "/p:PlatformToolset=v100"
(for example) when building.
+
+ We set BasePlatformToolset for ICC's benefit, it's otherwise ignored.
-->
- <PlatformToolset Condition="'$(PlatformToolset)' == '' and '$(VCTargetsPath14)' != ''">v140</PlatformToolset>
- <PlatformToolset Condition="'$(PlatformToolset)' == '' and '$(VCTargetsPath12)' != ''">v120</PlatformToolset>
- <PlatformToolset Condition="'$(PlatformToolset)' == '' and '$(VCTargetsPath11)' != ''">v110</PlatformToolset>
- <PlatformToolset Condition="'$(PlatformToolset)' == '' and '$(VCTargetsPath10)' != ''">v100</PlatformToolset>
-
+ <BasePlatformToolset Condition="'$(BasePlatformToolset)' == '' and '$(VCTargetsPath14)' != ''">v140</BasePlatformToolset>
+ <BasePlatformToolset Condition="'$(BasePlatformToolset)' == '' and '$(VCTargetsPath12)' != ''">v120</BasePlatformToolset>
+ <BasePlatformToolset Condition="'$(BasePlatformToolset)' == '' and '$(VCTargetsPath11)' != ''">v110</BasePlatformToolset>
+ <BasePlatformToolset Condition="'$(BasePlatformToolset)' == '' and '$(VCTargetsPath10)' != ''">v100</BasePlatformToolset>
+
+ <PlatformToolset Condition="'$(PlatformToolset)' == ''">$(BasePlatformToolset)</PlatformToolset>
+ <ICCBuild>false</ICCBuild>
+ <ICCBuild Condition="$(PlatformToolset.StartsWith(`Intel C++ Compiler`))">true</ICCBuild>
+
<!--
Convincing MSVC/MSBuild to prefer our platform names is too difficult,
so we define our own constant ArchName and use wherever we need it.