postgres.git / summary / log / commit / refs
commit 165f4eecfeb71581c05f371f72eb99742cbae18c
Author: Andrew Dunstan <andrew@dunslane.net>
Date: Thu Jul 25 15:24:23 2019 +0000
First released in: 13.0, 9.4.24, 9.5.19, 9.6.15, 10.10, 11.5, 12.0
Honor MSVC WindowsSDKVersion if set
Add a line to the project file setting the target SDK. Otherwise, in for
example VS2017, if the default but optional 8.1 SDK is not installed the
build will fail.
Patch from Peifeng Qiu, slightly edited by me.
Discussion: https://postgr.es/m/CABmtVJhw1boP_bd4=b3Qv5YnqEdL696NtHFi2ruiyQ6mFHkeQQ@mail.gmail.com
Backpatch to all live branches.
src/tools/msvc/MSBuildProject.pm | 13 +++++++++++++
1 file changed, 13 insertions(+)
diff --git a/src/tools/msvc/MSBuildProject.pm b/src/tools/msvc/MSBuildProject.pm
index d0f2fe7779e..6da864393ce 100644
--- a/src/tools/msvc/MSBuildProject.pm
+++ b/src/tools/msvc/MSBuildProject.pm
@@ -38,6 +38,19 @@ EOF
</ItemGroup>
<PropertyGroup Label="Globals">
<ProjectGuid>$self->{guid}</ProjectGuid>
+EOF
+ # Check whether WindowsSDKVersion env variable is present.
+ # Add WindowsTargetPlatformVersion node if so.
+ my $sdkVersion = $ENV{'WindowsSDKVersion'};
+ if (defined($sdkVersion))
+ {
+ # remove trailing backslash if necessary.
+ $sdkVersion, =~ s/\\$//;
+ print $f <<EOF
+ <WindowsTargetPlatformVersion>$sdkVersion</WindowsTargetPlatformVersion>
+EOF
+ }
+ print $f <<EOF;
</PropertyGroup>
<Import Project="\$(VCTargetsPath)\\Microsoft.Cpp.Default.props" />
EOF
[parent: 5c3d47287fd7]