]> git.ipfire.org Git - thirdparty/Python/cpython.git/commitdiff
bpo-43298: Improved error message when building without the Windows SDK installed...
authorMiss Islington (bot) <31488909+miss-islington@users.noreply.github.com>
Sun, 20 Jun 2021 20:12:46 +0000 (13:12 -0700)
committerGitHub <noreply@github.com>
Sun, 20 Jun 2021 20:12:46 +0000 (21:12 +0100)
(cherry picked from commit 80190b3e533097b55077becddc75423318ab2371)

Co-authored-by: Steve Dower <steve.dower@python.org>
Co-authored-by: Steve Dower <steve.dower@python.org>
Misc/NEWS.d/next/Build/2021-06-19-11-50-03.bpo-43298.9ircMb.rst [new file with mode: 0644]
PCbuild/python.props

diff --git a/Misc/NEWS.d/next/Build/2021-06-19-11-50-03.bpo-43298.9ircMb.rst b/Misc/NEWS.d/next/Build/2021-06-19-11-50-03.bpo-43298.9ircMb.rst
new file mode 100644 (file)
index 0000000..3bdc24b
--- /dev/null
@@ -0,0 +1 @@
+Improved error message when building without a Windows SDK installed.
index 419d5ebe84c2d118d940fe5a607ecf8f5626bda4..4a56d50b8b7655d0eebadb744f8f3a70ca49b1f1 100644 (file)
 
     <!-- The minimum allowed SDK version to use for building -->
     <DefaultWindowsSDKVersion>10.0.10586.0</DefaultWindowsSDKVersion>
-    <DefaultWindowsSDKVersion Condition="$([System.Version]::Parse($(_RegistryVersion))) > $([System.Version]::Parse($(DefaultWindowsSDKVersion)))">$(_RegistryVersion)</DefaultWindowsSDKVersion>
+    <DefaultWindowsSDKVersion Condition="$(_RegistryVersion) != '' and $([System.Version]::Parse($(_RegistryVersion))) > $([System.Version]::Parse($(DefaultWindowsSDKVersion)))">$(_RegistryVersion)</DefaultWindowsSDKVersion>
   </PropertyGroup>
-  
+
+  <Target Name="_CheckWindowsSDKFound" BeforeTargets="_CheckWindowsSDKInstalled" Condition="$(_RegistryVersion) == ''">
+    <PropertyGroup>
+      <_Message>Failed to locate a Windows SDK installation.</_Message>
+      <_Message>$(_Message) If the build fails, please use the Visual Studio Installer to install the Windows SDK.</_Message>
+      <_Message>$(_Message) (Ignore the version number specified in the error message and select the latest.)</_Message>
+    </PropertyGroup>
+    <Warning Text="$(_Message)" />
+  </Target>
+
   <PropertyGroup Condition="$(WindowsTargetPlatformVersion) == ''">
     <WindowsTargetPlatformVersion>$(DefaultWindowsSDKVersion)</WindowsTargetPlatformVersion>
   </PropertyGroup>
     <ReleaseLevelNumber Condition="$(_ReleaseLevel) == 'b'">11</ReleaseLevelNumber>
     <ReleaseLevelNumber Condition="$(_ReleaseLevel) == 'rc'">12</ReleaseLevelNumber>
   </PropertyGroup>
-  
+
   <PropertyGroup>
     <PythonVersionNumber>$(MajorVersionNumber).$(MinorVersionNumber).$(MicroVersionNumber)</PythonVersionNumber>
     <PythonVersion>$(MajorVersionNumber).$(MinorVersionNumber).$(MicroVersionNumber)$(ReleaseLevelName)</PythonVersion>