Support setting overridden python path via VS properties page

This commit is contained in:
baldurk
2024-01-30 20:18:04 +00:00
parent 9c163aaeca
commit 1e70124bd6
6 changed files with 62 additions and 8 deletions
+13 -3
View File
@@ -26,7 +26,11 @@
uses the Lib/ folder with all the loose uncompiled library source).
It will need to be generated manually or obtained from the embeddable zip.
As a result we use the existance of the .lib, .h and .zip as a key to
ensure we only use -->
ensure we only use a valid install -->
<!-- We want to keep supporting the old environment variable path for compatibility
but encourage users to use the new property page method. So we check for that first
to determine PythonOverride, and only fall back to env vars if it's not set. -->
<!-- MSBuild doesn't implement a simple loop so just do this by hand by
taking advantage of MSBuild evaluating these in-order.
@@ -38,8 +42,9 @@
<!-- first define the override prefix we're searching against -->
<PropertyGroup>
<PythonOverride Condition="'$(Platform)'=='Win32'">$(RENDERDOC_PYTHON_PREFIX32)</PythonOverride>
<PythonOverride Condition="'$(Platform)'=='x64'">$(RENDERDOC_PYTHON_PREFIX64)</PythonOverride>
<PythonOverride>$(VSPythonOverridePath)</PythonOverride>
<PythonOverride Condition="'$(VSPythonOverridePath)'=='' AND '$(Platform)'=='Win32'">$(RENDERDOC_PYTHON_PREFIX32)</PythonOverride>
<PythonOverride Condition="'$(VSPythonOverridePath)'=='' AND '$(Platform)'=='x64'">$(RENDERDOC_PYTHON_PREFIX64)</PythonOverride>
</PropertyGroup>
<PropertyGroup><PythonMajorMinorTest>312</PythonMajorMinorTest></PropertyGroup>
@@ -90,4 +95,9 @@
<Message Importance="high" Text="Built against python from $(PythonOverride)" />
</Target>
<Target Name="PythonFailedOverridden" AfterTargets="Build" Condition="'$(CustomPythonUsed)'=='0' AND $(PythonOverride)!=''">
<Message Importance="high" Text="** Could not use python version $(PythonOverride) due to missing requirements." />
<Message Importance="high" Text="** Check for $(PythonOverride)\include\Python.h, $(PythonOverride)\pythonMAJMIN.zip, and either $(PythonOverride)\pythonMAJMIN.lib or $(PythonOverride)\libs\pythonMAJMIN.lib" />
</Target>
</Project>