summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMiss Islington (bot) <31488909+miss-islington@users.noreply.github.com>2021-06-11 21:21:12 (GMT)
committerGitHub <noreply@github.com>2021-06-11 21:21:12 (GMT)
commit42612db10792dd069149063f67a3b1db700bc7ee (patch)
treea440a9815056eea71706798e93a7d34bf6b92fe1
parent9c0180ae7761b352116a2528aae61eea10e31045 (diff)
downloadcpython-42612db10792dd069149063f67a3b1db700bc7ee.zip
cpython-42612db10792dd069149063f67a3b1db700bc7ee.tar.gz
cpython-42612db10792dd069149063f67a3b1db700bc7ee.tar.bz2
bpo-44381: Windows build now allows enabling control flow guard (GH-26645)
(cherry picked from commit 5af56c6f2a0d11df37fed7ecaaf321cf6926ba13) Co-authored-by: Steve Dower <steve.dower@python.org>
-rw-r--r--Misc/NEWS.d/next/Build/2021-06-10-18-08-44.bpo-44381.Xpc1iX.rst2
-rw-r--r--PCbuild/pyproject.props4
2 files changed, 4 insertions, 2 deletions
diff --git a/Misc/NEWS.d/next/Build/2021-06-10-18-08-44.bpo-44381.Xpc1iX.rst b/Misc/NEWS.d/next/Build/2021-06-10-18-08-44.bpo-44381.Xpc1iX.rst
new file mode 100644
index 0000000..002112c
--- /dev/null
+++ b/Misc/NEWS.d/next/Build/2021-06-10-18-08-44.bpo-44381.Xpc1iX.rst
@@ -0,0 +1,2 @@
+The Windows build now accepts :envvar:`EnableControlFlowGuard` set to
+``guard`` to enable CFG.
diff --git a/PCbuild/pyproject.props b/PCbuild/pyproject.props
index 834b27c..d492b71 100644
--- a/PCbuild/pyproject.props
+++ b/PCbuild/pyproject.props
@@ -44,11 +44,11 @@
<CompileAs>Default</CompileAs>
<SuppressStartupBanner>true</SuppressStartupBanner>
<WholeProgramOptimization>true</WholeProgramOptimization>
- <InlineFunctionExpansion Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">OnlyExplicitInline</InlineFunctionExpansion>
- <InlineFunctionExpansion Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">OnlyExplicitInline</InlineFunctionExpansion>
+ <ControlFlowGuard Condition="$(EnableControlFlowGuard) != ''">$(EnableControlFlowGuard)</ControlFlowGuard>
<AdditionalOptions>/utf-8 %(AdditionalOptions)</AdditionalOptions>
</ClCompile>
<ClCompile Condition="$(Configuration) == 'Debug'">
+ <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>
<Optimization>Disabled</Optimization>
<WholeProgramOptimization>false</WholeProgramOptimization>
<RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>