Compare commits

...

4 Commits

Author SHA1 Message Date
Colin Xu
026376a13d Add pykd post-build events to package wheel and zip.
Signed-off-by: Colin Xu <colin.xu@gmail.com>
2025-02-01 13:03:21 +08:00
Colin Xu
c9e13175f1 Update solution file and project file.
Unified projects debug or release configuration.

Signed-off-by: Colin Xu <colin.xu@gmail.com>
2025-02-01 10:10:03 +08:00
Colin Xu
c342479aed Rewrite setup.py
Changes to setup.py:
Allow specifying below dirs for clean setuptools build. Be default these
dirs will be set automatically based on solution global configuration.
- "--build-base" for build
- "--dist-dir" for bdist_wheel
- "--egg-base" for egg_info

"--python-tag" is set based on current python major.minor version.

bdist_zip will package symbol along with binary as they should always
match.

Package version is dynamically set:
- Read 1st line of VERSION file as package version, if the file exists.
  Useful for release branch.
- If no VERSION file, parse from pykdver.h, plus +g append commit SHA.

"--pplat-name" accepts both win32 and x86, x64 win-amd64 and x64 due to
VS naming convention.

Changes to buildall.cmd
Simplify batch command by put all python version and configs in array.

Signed-off-by: Colin Xu <colin.xu@gmail.com>
2025-01-31 22:29:40 +08:00
Colin Xu
44519f0f60 Update project file.
Unified intermediate directory.

Signed-off-by: Colin Xu <colin.xu@gmail.com>
2025-01-30 17:45:21 +08:00
5 changed files with 271 additions and 192 deletions

View File

@ -343,8 +343,8 @@ Global
{0E4CC688-F2F5-499F-9C07-0F2CAEE0D3EF}.Release_3.11|Win32.Build.0 = Release|Win32
{0E4CC688-F2F5-499F-9C07-0F2CAEE0D3EF}.Release_3.11|x64.ActiveCfg = Release|x64
{0E4CC688-F2F5-499F-9C07-0F2CAEE0D3EF}.Release_3.11|x64.Build.0 = Release|x64
{0E4CC688-F2F5-499F-9C07-0F2CAEE0D3EF}.Release_3.5|Win32.ActiveCfg = Debug|Win32
{0E4CC688-F2F5-499F-9C07-0F2CAEE0D3EF}.Release_3.5|Win32.Build.0 = Debug|Win32
{0E4CC688-F2F5-499F-9C07-0F2CAEE0D3EF}.Release_3.5|Win32.ActiveCfg = Release|Win32
{0E4CC688-F2F5-499F-9C07-0F2CAEE0D3EF}.Release_3.5|Win32.Build.0 = Release|Win32
{0E4CC688-F2F5-499F-9C07-0F2CAEE0D3EF}.Release_3.5|x64.ActiveCfg = Release|x64
{0E4CC688-F2F5-499F-9C07-0F2CAEE0D3EF}.Release_3.5|x64.Build.0 = Release|x64
{0E4CC688-F2F5-499F-9C07-0F2CAEE0D3EF}.Release_3.6|Win32.ActiveCfg = Release|Win32
@ -357,8 +357,8 @@ Global
{0E4CC688-F2F5-499F-9C07-0F2CAEE0D3EF}.Release_3.7|x64.Build.0 = Release|x64
{0E4CC688-F2F5-499F-9C07-0F2CAEE0D3EF}.Release_3.8|Win32.ActiveCfg = Release|Win32
{0E4CC688-F2F5-499F-9C07-0F2CAEE0D3EF}.Release_3.8|Win32.Build.0 = Release|Win32
{0E4CC688-F2F5-499F-9C07-0F2CAEE0D3EF}.Release_3.8|x64.ActiveCfg = Debug|x64
{0E4CC688-F2F5-499F-9C07-0F2CAEE0D3EF}.Release_3.8|x64.Build.0 = Debug|x64
{0E4CC688-F2F5-499F-9C07-0F2CAEE0D3EF}.Release_3.8|x64.ActiveCfg = Release|x64
{0E4CC688-F2F5-499F-9C07-0F2CAEE0D3EF}.Release_3.8|x64.Build.0 = Release|x64
{0E4CC688-F2F5-499F-9C07-0F2CAEE0D3EF}.Release_3.9|Win32.ActiveCfg = Release|Win32
{0E4CC688-F2F5-499F-9C07-0F2CAEE0D3EF}.Release_3.9|Win32.Build.0 = Release|Win32
{0E4CC688-F2F5-499F-9C07-0F2CAEE0D3EF}.Release_3.9|x64.ActiveCfg = Release|x64

View File

@ -146,6 +146,7 @@
<CharacterSet>Unicode</CharacterSet>
<PlatformToolset>v143</PlatformToolset>
<PythonVersion>2.7.18</PythonVersion>
<PythonVersionLight>2.7</PythonVersionLight>
<LLVM_USE_CRT_DEBUG>MDd</LLVM_USE_CRT_DEBUG>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug_3.5|Win32'" Label="Configuration">
@ -154,6 +155,7 @@
<CharacterSet>Unicode</CharacterSet>
<PlatformToolset>v143</PlatformToolset>
<PythonVersion>3.5.4</PythonVersion>
<PythonVersionLight>3.5</PythonVersionLight>
<LLVM_USE_CRT_DEBUG>MDd</LLVM_USE_CRT_DEBUG>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug_3.6|Win32'" Label="Configuration">
@ -162,6 +164,7 @@
<CharacterSet>Unicode</CharacterSet>
<PlatformToolset>v143</PlatformToolset>
<PythonVersion>3.6.8</PythonVersion>
<PythonVersionLight>3.6</PythonVersionLight>
<LLVM_USE_CRT_DEBUG>MDd</LLVM_USE_CRT_DEBUG>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug_3.7|Win32'" Label="Configuration">
@ -170,6 +173,7 @@
<CharacterSet>Unicode</CharacterSet>
<PlatformToolset>v143</PlatformToolset>
<PythonVersion>3.7.9</PythonVersion>
<PythonVersionLight>3.7</PythonVersionLight>
<LLVM_USE_CRT_DEBUG>MDd</LLVM_USE_CRT_DEBUG>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug_3.8|Win32'" Label="Configuration">
@ -178,6 +182,7 @@
<CharacterSet>Unicode</CharacterSet>
<PlatformToolset>v143</PlatformToolset>
<PythonVersion>3.8.10</PythonVersion>
<PythonVersionLight>3.8</PythonVersionLight>
<LLVM_USE_CRT_DEBUG>MDd</LLVM_USE_CRT_DEBUG>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug_3.9|Win32'" Label="Configuration">
@ -186,6 +191,7 @@
<CharacterSet>Unicode</CharacterSet>
<PlatformToolset>v143</PlatformToolset>
<PythonVersion>3.9.13</PythonVersion>
<PythonVersionLight>3.9</PythonVersionLight>
<LLVM_USE_CRT_DEBUG>MDd</LLVM_USE_CRT_DEBUG>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug_3.10|Win32'" Label="Configuration">
@ -194,6 +200,7 @@
<CharacterSet>Unicode</CharacterSet>
<PlatformToolset>v143</PlatformToolset>
<PythonVersion>3.10.10</PythonVersion>
<PythonVersionLight>3.10</PythonVersionLight>
<LLVM_USE_CRT_DEBUG>MDd</LLVM_USE_CRT_DEBUG>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug_3.11|Win32'" Label="Configuration">
@ -202,6 +209,7 @@
<CharacterSet>Unicode</CharacterSet>
<PlatformToolset>v143</PlatformToolset>
<PythonVersion>3.11.2</PythonVersion>
<PythonVersionLight>3.11</PythonVersionLight>
<LLVM_USE_CRT_DEBUG>MDd</LLVM_USE_CRT_DEBUG>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug_2.7|x64'" Label="Configuration">
@ -210,6 +218,7 @@
<CharacterSet>Unicode</CharacterSet>
<PlatformToolset>v143</PlatformToolset>
<PythonVersion>2.7.18</PythonVersion>
<PythonVersionLight>2.7</PythonVersionLight>
<LLVM_USE_CRT_DEBUG>MDd</LLVM_USE_CRT_DEBUG>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug_3.5|x64'" Label="Configuration">
@ -218,6 +227,7 @@
<CharacterSet>Unicode</CharacterSet>
<PlatformToolset>v143</PlatformToolset>
<PythonVersion>3.5.4</PythonVersion>
<PythonVersionLight>3.5</PythonVersionLight>
<LLVM_USE_CRT_DEBUG>MDd</LLVM_USE_CRT_DEBUG>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug_3.6|x64'" Label="Configuration">
@ -226,6 +236,7 @@
<CharacterSet>Unicode</CharacterSet>
<PlatformToolset>v143</PlatformToolset>
<PythonVersion>3.6.8</PythonVersion>
<PythonVersionLight>3.6</PythonVersionLight>
<LLVM_USE_CRT_DEBUG>MDd</LLVM_USE_CRT_DEBUG>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug_3.7|x64'" Label="Configuration">
@ -234,6 +245,7 @@
<CharacterSet>Unicode</CharacterSet>
<PlatformToolset>v143</PlatformToolset>
<PythonVersion>3.7.9</PythonVersion>
<PythonVersionLight>3.7</PythonVersionLight>
<LLVM_USE_CRT_DEBUG>MDd</LLVM_USE_CRT_DEBUG>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug_3.8|x64'" Label="Configuration">
@ -242,6 +254,7 @@
<CharacterSet>Unicode</CharacterSet>
<PlatformToolset>v143</PlatformToolset>
<PythonVersion>3.8.10</PythonVersion>
<PythonVersionLight>3.8</PythonVersionLight>
<LLVM_USE_CRT_DEBUG>MDd</LLVM_USE_CRT_DEBUG>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug_3.9|x64'" Label="Configuration">
@ -250,6 +263,7 @@
<CharacterSet>Unicode</CharacterSet>
<PlatformToolset>v143</PlatformToolset>
<PythonVersion>3.9.13</PythonVersion>
<PythonVersionLight>3.9</PythonVersionLight>
<LLVM_USE_CRT_DEBUG>MDd</LLVM_USE_CRT_DEBUG>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug_3.10|x64'" Label="Configuration">
@ -258,6 +272,7 @@
<CharacterSet>Unicode</CharacterSet>
<PlatformToolset>v143</PlatformToolset>
<PythonVersion>3.10.10</PythonVersion>
<PythonVersionLight>3.10</PythonVersionLight>
<LLVM_USE_CRT_DEBUG>MDd</LLVM_USE_CRT_DEBUG>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug_3.11|x64'" Label="Configuration">
@ -266,6 +281,7 @@
<CharacterSet>Unicode</CharacterSet>
<PlatformToolset>v143</PlatformToolset>
<PythonVersion>3.11.2</PythonVersion>
<PythonVersionLight>3.11</PythonVersionLight>
<LLVM_USE_CRT_DEBUG>MDd</LLVM_USE_CRT_DEBUG>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release_2.7|Win32'" Label="Configuration">
@ -275,6 +291,7 @@
<CharacterSet>Unicode</CharacterSet>
<PlatformToolset>v143</PlatformToolset>
<PythonVersion>2.7.18</PythonVersion>
<PythonVersionLight>2.7</PythonVersionLight>
<LLVM_USE_CRT_RELEASE>MT</LLVM_USE_CRT_RELEASE>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release_3.5|Win32'" Label="Configuration">
@ -284,6 +301,7 @@
<CharacterSet>Unicode</CharacterSet>
<PlatformToolset>v143</PlatformToolset>
<PythonVersion>3.5.4</PythonVersion>
<PythonVersionLight>3.5</PythonVersionLight>
<LLVM_USE_CRT_RELEASE>MT</LLVM_USE_CRT_RELEASE>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release_3.6|Win32'" Label="Configuration">
@ -293,6 +311,7 @@
<CharacterSet>Unicode</CharacterSet>
<PlatformToolset>v143</PlatformToolset>
<PythonVersion>3.6.8</PythonVersion>
<PythonVersionLight>3.6</PythonVersionLight>
<LLVM_USE_CRT_RELEASE>MT</LLVM_USE_CRT_RELEASE>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release_3.7|Win32'" Label="Configuration">
@ -302,6 +321,7 @@
<CharacterSet>Unicode</CharacterSet>
<PlatformToolset>v143</PlatformToolset>
<PythonVersion>3.7.9</PythonVersion>
<PythonVersionLight>3.7</PythonVersionLight>
<LLVM_USE_CRT_RELEASE>MT</LLVM_USE_CRT_RELEASE>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release_3.8|Win32'" Label="Configuration">
@ -311,6 +331,7 @@
<CharacterSet>Unicode</CharacterSet>
<PlatformToolset>v143</PlatformToolset>
<PythonVersion>3.8.10</PythonVersion>
<PythonVersionLight>3.8</PythonVersionLight>
<LLVM_USE_CRT_RELEASE>MT</LLVM_USE_CRT_RELEASE>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release_3.9|Win32'" Label="Configuration">
@ -320,6 +341,7 @@
<CharacterSet>Unicode</CharacterSet>
<PlatformToolset>v143</PlatformToolset>
<PythonVersion>3.9.13</PythonVersion>
<PythonVersionLight>3.9</PythonVersionLight>
<LLVM_USE_CRT_RELEASE>MT</LLVM_USE_CRT_RELEASE>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release_3.10|Win32'" Label="Configuration">
@ -329,6 +351,7 @@
<CharacterSet>Unicode</CharacterSet>
<PlatformToolset>v143</PlatformToolset>
<PythonVersion>3.10.10</PythonVersion>
<PythonVersionLight>3.10</PythonVersionLight>
<LLVM_USE_CRT_RELEASE>MT</LLVM_USE_CRT_RELEASE>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release_3.11|Win32'" Label="Configuration">
@ -338,6 +361,7 @@
<CharacterSet>Unicode</CharacterSet>
<PlatformToolset>v143</PlatformToolset>
<PythonVersion>3.11.2</PythonVersion>
<PythonVersionLight>3.11</PythonVersionLight>
<LLVM_USE_CRT_RELEASE>MT</LLVM_USE_CRT_RELEASE>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release_2.7|x64'" Label="Configuration">
@ -347,6 +371,7 @@
<CharacterSet>Unicode</CharacterSet>
<PlatformToolset>v143</PlatformToolset>
<PythonVersion>2.7.18</PythonVersion>
<PythonVersionLight>2.7</PythonVersionLight>
<LLVM_USE_CRT_RELEASE>MT</LLVM_USE_CRT_RELEASE>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release_3.5|x64'" Label="Configuration">
@ -356,6 +381,7 @@
<CharacterSet>Unicode</CharacterSet>
<PlatformToolset>v143</PlatformToolset>
<PythonVersion>3.5.4</PythonVersion>
<PythonVersionLight>3.5</PythonVersionLight>
<LLVM_USE_CRT_RELEASE>MT</LLVM_USE_CRT_RELEASE>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release_3.6|x64'" Label="Configuration">
@ -365,6 +391,7 @@
<CharacterSet>Unicode</CharacterSet>
<PlatformToolset>v143</PlatformToolset>
<PythonVersion>3.6.8</PythonVersion>
<PythonVersionLight>3.6</PythonVersionLight>
<LLVM_USE_CRT_RELEASE>MT</LLVM_USE_CRT_RELEASE>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release_3.7|x64'" Label="Configuration">
@ -374,6 +401,7 @@
<CharacterSet>Unicode</CharacterSet>
<PlatformToolset>v143</PlatformToolset>
<PythonVersion>3.7.9</PythonVersion>
<PythonVersionLight>3.7</PythonVersionLight>
<LLVM_USE_CRT_RELEASE>MT</LLVM_USE_CRT_RELEASE>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release_3.8|x64'" Label="Configuration">
@ -383,6 +411,7 @@
<CharacterSet>Unicode</CharacterSet>
<PlatformToolset>v143</PlatformToolset>
<PythonVersion>3.8.10</PythonVersion>
<PythonVersionLight>3.8</PythonVersionLight>
<LLVM_USE_CRT_RELEASE>MT</LLVM_USE_CRT_RELEASE>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release_3.9|x64'" Label="Configuration">
@ -392,6 +421,7 @@
<CharacterSet>Unicode</CharacterSet>
<PlatformToolset>v143</PlatformToolset>
<PythonVersion>3.9.13</PythonVersion>
<PythonVersionLight>3.9</PythonVersionLight>
<LLVM_USE_CRT_RELEASE>MT</LLVM_USE_CRT_RELEASE>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release_3.10|x64'" Label="Configuration">
@ -401,6 +431,7 @@
<CharacterSet>Unicode</CharacterSet>
<PlatformToolset>v143</PlatformToolset>
<PythonVersion>3.10.10</PythonVersion>
<PythonVersionLight>3.10</PythonVersionLight>
<LLVM_USE_CRT_RELEASE>MT</LLVM_USE_CRT_RELEASE>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release_3.11|x64'" Label="Configuration">
@ -410,6 +441,7 @@
<CharacterSet>Unicode</CharacterSet>
<PlatformToolset>v143</PlatformToolset>
<PythonVersion>3.11.2</PythonVersion>
<PythonVersionLight>3.11</PythonVersionLight>
<LLVM_USE_CRT_RELEASE>MT</LLVM_USE_CRT_RELEASE>
</PropertyGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
@ -523,7 +555,7 @@
<TargetExt>.pyd</TargetExt>
<PostBuildEventUseInBuild>true</PostBuildEventUseInBuild>
<TargetName>$(ProjectName)</TargetName>
<IntDir>$(SolutionDir)Obj\$(ProjectName)$(Platform)\$(Configuration)\</IntDir>
<IntDir>$(SolutionDir)Obj\$(ProjectName)\$(Platform)\$(Configuration)\</IntDir>
<OutDir>$(SolutionDir)Out\$(Platform)\$(Configuration)\</OutDir>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug_3.5|Win32'">
@ -531,7 +563,7 @@
<TargetExt>.pyd</TargetExt>
<PostBuildEventUseInBuild>true</PostBuildEventUseInBuild>
<TargetName>$(ProjectName)</TargetName>
<IntDir>$(SolutionDir)Obj\$(ProjectName)$(Platform)\$(Configuration)\</IntDir>
<IntDir>$(SolutionDir)Obj\$(ProjectName)\$(Platform)\$(Configuration)\</IntDir>
<OutDir>$(SolutionDir)Out\$(Platform)\$(Configuration)\</OutDir>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug_3.6|Win32'">
@ -539,7 +571,7 @@
<TargetExt>.pyd</TargetExt>
<PostBuildEventUseInBuild>true</PostBuildEventUseInBuild>
<TargetName>$(ProjectName)</TargetName>
<IntDir>$(SolutionDir)Obj\$(ProjectName)$(Platform)\$(Configuration)\</IntDir>
<IntDir>$(SolutionDir)Obj\$(ProjectName)\$(Platform)\$(Configuration)\</IntDir>
<OutDir>$(SolutionDir)Out\$(Platform)\$(Configuration)\</OutDir>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug_3.7|Win32'">
@ -547,7 +579,7 @@
<TargetExt>.pyd</TargetExt>
<PostBuildEventUseInBuild>true</PostBuildEventUseInBuild>
<TargetName>$(ProjectName)</TargetName>
<IntDir>$(SolutionDir)Obj\$(ProjectName)$(Platform)\$(Configuration)\</IntDir>
<IntDir>$(SolutionDir)Obj\$(ProjectName)\$(Platform)\$(Configuration)\</IntDir>
<OutDir>$(SolutionDir)Out\$(Platform)\$(Configuration)\</OutDir>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug_3.8|Win32'">
@ -555,7 +587,7 @@
<TargetExt>.pyd</TargetExt>
<PostBuildEventUseInBuild>true</PostBuildEventUseInBuild>
<TargetName>$(ProjectName)</TargetName>
<IntDir>$(SolutionDir)Obj\$(ProjectName)$(Platform)\$(Configuration)\</IntDir>
<IntDir>$(SolutionDir)Obj\$(ProjectName)\$(Platform)\$(Configuration)\</IntDir>
<OutDir>$(SolutionDir)Out\$(Platform)\$(Configuration)\</OutDir>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug_3.9|Win32'">
@ -563,7 +595,7 @@
<TargetExt>.pyd</TargetExt>
<PostBuildEventUseInBuild>true</PostBuildEventUseInBuild>
<TargetName>$(ProjectName)</TargetName>
<IntDir>$(SolutionDir)Obj\$(ProjectName)$(Platform)\$(Configuration)\</IntDir>
<IntDir>$(SolutionDir)Obj\$(ProjectName)\$(Platform)\$(Configuration)\</IntDir>
<OutDir>$(SolutionDir)Out\$(Platform)\$(Configuration)\</OutDir>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug_3.10|Win32'">
@ -571,7 +603,7 @@
<TargetExt>.pyd</TargetExt>
<PostBuildEventUseInBuild>true</PostBuildEventUseInBuild>
<TargetName>$(ProjectName)</TargetName>
<IntDir>$(SolutionDir)Obj\$(ProjectName)$(Platform)\$(Configuration)\</IntDir>
<IntDir>$(SolutionDir)Obj\$(ProjectName)\$(Platform)\$(Configuration)\</IntDir>
<OutDir>$(SolutionDir)Out\$(Platform)\$(Configuration)\</OutDir>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug_3.11|Win32'">
@ -579,7 +611,7 @@
<TargetExt>.pyd</TargetExt>
<PostBuildEventUseInBuild>true</PostBuildEventUseInBuild>
<TargetName>$(ProjectName)</TargetName>
<IntDir>$(SolutionDir)Obj\$(ProjectName)$(Platform)\$(Configuration)\</IntDir>
<IntDir>$(SolutionDir)Obj\$(ProjectName)\$(Platform)\$(Configuration)\</IntDir>
<OutDir>$(SolutionDir)Out\$(Platform)\$(Configuration)\</OutDir>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug_2.7|x64'">
@ -588,7 +620,7 @@
<PostBuildEventUseInBuild>true</PostBuildEventUseInBuild>
<TargetName>$(ProjectName)</TargetName>
<OutDir>$(SolutionDir)Out\$(Platform)\$(Configuration)\</OutDir>
<IntDir>$(SolutionDir)Obj\$(ProjectName)$(Platform)\$(Configuration)\</IntDir>
<IntDir>$(SolutionDir)Obj\$(ProjectName)\$(Platform)\$(Configuration)\</IntDir>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug_3.5|x64'">
<LinkIncremental>true</LinkIncremental>
@ -596,7 +628,7 @@
<PostBuildEventUseInBuild>true</PostBuildEventUseInBuild>
<TargetName>$(ProjectName)</TargetName>
<OutDir>$(SolutionDir)Out\$(Platform)\$(Configuration)\</OutDir>
<IntDir>$(SolutionDir)Obj\$(ProjectName)$(Platform)\$(Configuration)\</IntDir>
<IntDir>$(SolutionDir)Obj\$(ProjectName)\$(Platform)\$(Configuration)\</IntDir>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug_3.6|x64'">
<LinkIncremental>true</LinkIncremental>
@ -604,7 +636,7 @@
<PostBuildEventUseInBuild>true</PostBuildEventUseInBuild>
<TargetName>$(ProjectName)</TargetName>
<OutDir>$(SolutionDir)Out\$(Platform)\$(Configuration)\</OutDir>
<IntDir>$(SolutionDir)Obj\$(ProjectName)$(Platform)\$(Configuration)\</IntDir>
<IntDir>$(SolutionDir)Obj\$(ProjectName)\$(Platform)\$(Configuration)\</IntDir>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug_3.7|x64'">
<LinkIncremental>true</LinkIncremental>
@ -612,7 +644,7 @@
<PostBuildEventUseInBuild>true</PostBuildEventUseInBuild>
<TargetName>$(ProjectName)</TargetName>
<OutDir>$(SolutionDir)Out\$(Platform)\$(Configuration)\</OutDir>
<IntDir>$(SolutionDir)Obj\$(ProjectName)$(Platform)\$(Configuration)\</IntDir>
<IntDir>$(SolutionDir)Obj\$(ProjectName)\$(Platform)\$(Configuration)\</IntDir>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug_3.8|x64'">
<LinkIncremental>true</LinkIncremental>
@ -620,7 +652,7 @@
<PostBuildEventUseInBuild>true</PostBuildEventUseInBuild>
<TargetName>$(ProjectName)</TargetName>
<OutDir>$(SolutionDir)Out\$(Platform)\$(Configuration)\</OutDir>
<IntDir>$(SolutionDir)Obj\$(ProjectName)$(Platform)\$(Configuration)\</IntDir>
<IntDir>$(SolutionDir)Obj\$(ProjectName)\$(Platform)\$(Configuration)\</IntDir>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug_3.9|x64'">
<LinkIncremental>true</LinkIncremental>
@ -628,7 +660,7 @@
<PostBuildEventUseInBuild>true</PostBuildEventUseInBuild>
<TargetName>$(ProjectName)</TargetName>
<OutDir>$(SolutionDir)Out\$(Platform)\$(Configuration)\</OutDir>
<IntDir>$(SolutionDir)Obj\$(ProjectName)$(Platform)\$(Configuration)\</IntDir>
<IntDir>$(SolutionDir)Obj\$(ProjectName)\$(Platform)\$(Configuration)\</IntDir>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug_3.10|x64'">
<LinkIncremental>true</LinkIncremental>
@ -636,7 +668,7 @@
<PostBuildEventUseInBuild>true</PostBuildEventUseInBuild>
<TargetName>$(ProjectName)</TargetName>
<OutDir>$(SolutionDir)Out\$(Platform)\$(Configuration)\</OutDir>
<IntDir>$(SolutionDir)Obj\$(ProjectName)$(Platform)\$(Configuration)\</IntDir>
<IntDir>$(SolutionDir)Obj\$(ProjectName)\$(Platform)\$(Configuration)\</IntDir>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug_3.11|x64'">
<LinkIncremental>true</LinkIncremental>
@ -644,62 +676,62 @@
<PostBuildEventUseInBuild>true</PostBuildEventUseInBuild>
<TargetName>$(ProjectName)</TargetName>
<OutDir>$(SolutionDir)Out\$(Platform)\$(Configuration)\</OutDir>
<IntDir>$(SolutionDir)Obj\$(ProjectName)$(Platform)\$(Configuration)\</IntDir>
<IntDir>$(SolutionDir)Obj\$(ProjectName)\$(Platform)\$(Configuration)\</IntDir>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release_2.7|Win32'">
<LinkIncremental>false</LinkIncremental>
<TargetExt>.pyd</TargetExt>
<TargetName>$(ProjectName)</TargetName>
<IntDir>$(SolutionDir)Obj\$(ProjectName)$(Platform)\$(Configuration)\</IntDir>
<IntDir>$(SolutionDir)Obj\$(ProjectName)\$(Platform)\$(Configuration)\</IntDir>
<OutDir>$(SolutionDir)Out\$(Platform)\$(Configuration)\</OutDir>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release_3.5|Win32'">
<LinkIncremental>false</LinkIncremental>
<TargetExt>.pyd</TargetExt>
<TargetName>$(ProjectName)</TargetName>
<IntDir>$(SolutionDir)Obj\$(ProjectName)$(Platform)\$(Configuration)\</IntDir>
<IntDir>$(SolutionDir)Obj\$(ProjectName)\$(Platform)\$(Configuration)\</IntDir>
<OutDir>$(SolutionDir)Out\$(Platform)\$(Configuration)\</OutDir>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release_3.6|Win32'">
<LinkIncremental>false</LinkIncremental>
<TargetExt>.pyd</TargetExt>
<TargetName>$(ProjectName)</TargetName>
<IntDir>$(SolutionDir)Obj\$(ProjectName)$(Platform)\$(Configuration)\</IntDir>
<IntDir>$(SolutionDir)Obj\$(ProjectName)\$(Platform)\$(Configuration)\</IntDir>
<OutDir>$(SolutionDir)Out\$(Platform)\$(Configuration)\</OutDir>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release_3.7|Win32'">
<LinkIncremental>false</LinkIncremental>
<TargetExt>.pyd</TargetExt>
<TargetName>$(ProjectName)</TargetName>
<IntDir>$(SolutionDir)Obj\$(ProjectName)$(Platform)\$(Configuration)\</IntDir>
<IntDir>$(SolutionDir)Obj\$(ProjectName)\$(Platform)\$(Configuration)\</IntDir>
<OutDir>$(SolutionDir)Out\$(Platform)\$(Configuration)\</OutDir>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release_3.8|Win32'">
<LinkIncremental>false</LinkIncremental>
<TargetExt>.pyd</TargetExt>
<TargetName>$(ProjectName)</TargetName>
<IntDir>$(SolutionDir)Obj\$(ProjectName)$(Platform)\$(Configuration)\</IntDir>
<IntDir>$(SolutionDir)Obj\$(ProjectName)\$(Platform)\$(Configuration)\</IntDir>
<OutDir>$(SolutionDir)Out\$(Platform)\$(Configuration)\</OutDir>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release_3.9|Win32'">
<LinkIncremental>false</LinkIncremental>
<TargetExt>.pyd</TargetExt>
<TargetName>$(ProjectName)</TargetName>
<IntDir>$(SolutionDir)Obj\$(ProjectName)$(Platform)\$(Configuration)\</IntDir>
<IntDir>$(SolutionDir)Obj\$(ProjectName)\$(Platform)\$(Configuration)\</IntDir>
<OutDir>$(SolutionDir)Out\$(Platform)\$(Configuration)\</OutDir>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release_3.10|Win32'">
<LinkIncremental>false</LinkIncremental>
<TargetExt>.pyd</TargetExt>
<TargetName>$(ProjectName)</TargetName>
<IntDir>$(SolutionDir)Obj\$(ProjectName)$(Platform)\$(Configuration)\</IntDir>
<IntDir>$(SolutionDir)Obj\$(ProjectName)\$(Platform)\$(Configuration)\</IntDir>
<OutDir>$(SolutionDir)Out\$(Platform)\$(Configuration)\</OutDir>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release_3.11|Win32'">
<LinkIncremental>false</LinkIncremental>
<TargetExt>.pyd</TargetExt>
<TargetName>$(ProjectName)</TargetName>
<IntDir>$(SolutionDir)Obj\$(ProjectName)$(Platform)\$(Configuration)\</IntDir>
<IntDir>$(SolutionDir)Obj\$(ProjectName)\$(Platform)\$(Configuration)\</IntDir>
<OutDir>$(SolutionDir)Out\$(Platform)\$(Configuration)\</OutDir>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release_2.7|x64'">
@ -707,56 +739,56 @@
<TargetExt>.pyd</TargetExt>
<TargetName>$(ProjectName)</TargetName>
<OutDir>$(SolutionDir)Out\$(Platform)\$(Configuration)\</OutDir>
<IntDir>$(SolutionDir)Obj\$(ProjectName)$(Platform)\$(Configuration)\</IntDir>
<IntDir>$(SolutionDir)Obj\$(ProjectName)\$(Platform)\$(Configuration)\</IntDir>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release_3.5|x64'">
<LinkIncremental>false</LinkIncremental>
<TargetExt>.pyd</TargetExt>
<TargetName>$(ProjectName)</TargetName>
<OutDir>$(SolutionDir)Out\$(Platform)\$(Configuration)\</OutDir>
<IntDir>$(SolutionDir)Obj\$(ProjectName)$(Platform)\$(Configuration)\</IntDir>
<IntDir>$(SolutionDir)Obj\$(ProjectName)\$(Platform)\$(Configuration)\</IntDir>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release_3.6|x64'">
<LinkIncremental>false</LinkIncremental>
<TargetExt>.pyd</TargetExt>
<TargetName>$(ProjectName)</TargetName>
<OutDir>$(SolutionDir)Out\$(Platform)\$(Configuration)\</OutDir>
<IntDir>$(SolutionDir)Obj\$(ProjectName)$(Platform)\$(Configuration)\</IntDir>
<IntDir>$(SolutionDir)Obj\$(ProjectName)\$(Platform)\$(Configuration)\</IntDir>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release_3.7|x64'">
<LinkIncremental>false</LinkIncremental>
<TargetExt>.pyd</TargetExt>
<TargetName>$(ProjectName)</TargetName>
<OutDir>$(SolutionDir)Out\$(Platform)\$(Configuration)\</OutDir>
<IntDir>$(SolutionDir)Obj\$(ProjectName)$(Platform)\$(Configuration)\</IntDir>
<IntDir>$(SolutionDir)Obj\$(ProjectName)\$(Platform)\$(Configuration)\</IntDir>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release_3.8|x64'">
<LinkIncremental>false</LinkIncremental>
<TargetExt>.pyd</TargetExt>
<TargetName>$(ProjectName)</TargetName>
<OutDir>$(SolutionDir)Out\$(Platform)\$(Configuration)\</OutDir>
<IntDir>$(SolutionDir)Obj\$(ProjectName)$(Platform)\$(Configuration)\</IntDir>
<IntDir>$(SolutionDir)Obj\$(ProjectName)\$(Platform)\$(Configuration)\</IntDir>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release_3.9|x64'">
<LinkIncremental>false</LinkIncremental>
<TargetExt>.pyd</TargetExt>
<TargetName>$(ProjectName)</TargetName>
<OutDir>$(SolutionDir)Out\$(Platform)\$(Configuration)\</OutDir>
<IntDir>$(SolutionDir)Obj\$(ProjectName)$(Platform)\$(Configuration)\</IntDir>
<IntDir>$(SolutionDir)Obj\$(ProjectName)\$(Platform)\$(Configuration)\</IntDir>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release_3.10|x64'">
<LinkIncremental>false</LinkIncremental>
<TargetExt>.pyd</TargetExt>
<TargetName>$(ProjectName)</TargetName>
<OutDir>$(SolutionDir)Out\$(Platform)\$(Configuration)\</OutDir>
<IntDir>$(SolutionDir)Obj\$(ProjectName)$(Platform)\$(Configuration)\</IntDir>
<IntDir>$(SolutionDir)Obj\$(ProjectName)\$(Platform)\$(Configuration)\</IntDir>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release_3.11|x64'">
<LinkIncremental>false</LinkIncremental>
<TargetExt>.pyd</TargetExt>
<TargetName>$(ProjectName)</TargetName>
<OutDir>$(SolutionDir)Out\$(Platform)\$(Configuration)\</OutDir>
<IntDir>$(SolutionDir)Obj\$(ProjectName)$(Platform)\$(Configuration)\</IntDir>
<IntDir>$(SolutionDir)Obj\$(ProjectName)\$(Platform)\$(Configuration)\</IntDir>
</PropertyGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug_2.7|Win32'">
<ClCompile>
@ -1179,7 +1211,8 @@
<AdditionalLibraryDirectories>$(SolutionDir)packages\python2x86.$(PythonVersion)\tools\libs</AdditionalLibraryDirectories>
</Link>
<PostBuildEvent>
<Command>copy $(OutDir)..\Debug\targetapp.exe $(OutDir)</Command>
<Command>copy $(OutDir)..\Release\targetapp.exe $(OutDir)
$(SystemRoot)\py.exe -$(PythonVersionLight) $(SolutionDir)setup\setup.py bdist_wheel --plat-name=$(Platform) --build-base=$(SolutionDir)Obj\Wheel\$(Platform)\$(Configuration)\setuptools --dist-dir=$(SolutionDir)Out\$(Platform)\$(Configuration) --egg-base=$(SolutionDir)Obj\Wheel\$(Platform)\$(Configuration)\setuptools bdist_zip</Command>
</PostBuildEvent>
<PreBuildEvent>
<Command>$(SolutionDir).nuget\nuget.exe install python2x86 -OutputDirectory $(SolutionDir)packages -Version $(PythonVersion)</Command>
@ -1205,7 +1238,8 @@
<AdditionalLibraryDirectories>$(SolutionDir)packages\pythonx86.$(PythonVersion)\tools\libs</AdditionalLibraryDirectories>
</Link>
<PostBuildEvent>
<Command>copy $(OutDir)..\Debug\targetapp.exe $(OutDir)</Command>
<Command>copy $(OutDir)..\Release\targetapp.exe $(OutDir)
$(SystemRoot)\py.exe -$(PythonVersionLight) $(SolutionDir)setup\setup.py bdist_wheel --plat-name=$(Platform) --build-base=$(SolutionDir)Obj\Wheel\$(Platform)\$(Configuration)\setuptools --dist-dir=$(SolutionDir)Out\$(Platform)\$(Configuration) --egg-base=$(SolutionDir)Obj\Wheel\$(Platform)\$(Configuration)\setuptools bdist_zip</Command>
</PostBuildEvent>
<PreBuildEvent>
<Command>$(SolutionDir).nuget\nuget.exe install pythonx86 -OutputDirectory $(SolutionDir)packages -Version $(PythonVersion)</Command>
@ -1231,7 +1265,8 @@
<AdditionalLibraryDirectories>$(SolutionDir)packages\pythonx86.$(PythonVersion)\tools\libs</AdditionalLibraryDirectories>
</Link>
<PostBuildEvent>
<Command>copy $(OutDir)..\Debug\targetapp.exe $(OutDir)</Command>
<Command>copy $(OutDir)..\Release\targetapp.exe $(OutDir)
$(SystemRoot)\py.exe -$(PythonVersionLight) $(SolutionDir)setup\setup.py bdist_wheel --plat-name=$(Platform) --build-base=$(SolutionDir)Obj\Wheel\$(Platform)\$(Configuration)\setuptools --dist-dir=$(SolutionDir)Out\$(Platform)\$(Configuration) --egg-base=$(SolutionDir)Obj\Wheel\$(Platform)\$(Configuration)\setuptools bdist_zip</Command>
</PostBuildEvent>
<PreBuildEvent>
<Command>$(SolutionDir).nuget\nuget.exe install pythonx86 -OutputDirectory $(SolutionDir)packages -Version $(PythonVersion)</Command>
@ -1257,7 +1292,8 @@
<AdditionalLibraryDirectories>$(SolutionDir)packages\pythonx86.$(PythonVersion)\tools\libs</AdditionalLibraryDirectories>
</Link>
<PostBuildEvent>
<Command>copy $(OutDir)..\Debug\targetapp.exe $(OutDir)</Command>
<Command>copy $(OutDir)..\Release\targetapp.exe $(OutDir)
$(SystemRoot)\py.exe -$(PythonVersionLight) $(SolutionDir)setup\setup.py bdist_wheel --plat-name=$(Platform) --build-base=$(SolutionDir)Obj\Wheel\$(Platform)\$(Configuration)\setuptools --dist-dir=$(SolutionDir)Out\$(Platform)\$(Configuration) --egg-base=$(SolutionDir)Obj\Wheel\$(Platform)\$(Configuration)\setuptools bdist_zip</Command>
</PostBuildEvent>
<PreBuildEvent>
<Command>$(SolutionDir).nuget\nuget.exe install pythonx86 -OutputDirectory $(SolutionDir)packages -Version $(PythonVersion)</Command>
@ -1283,7 +1319,8 @@
<AdditionalLibraryDirectories>$(SolutionDir)packages\pythonx86.$(PythonVersion)\tools\libs</AdditionalLibraryDirectories>
</Link>
<PostBuildEvent>
<Command>copy $(OutDir)..\Debug\targetapp.exe $(OutDir)</Command>
<Command>copy $(OutDir)..\Release\targetapp.exe $(OutDir)
$(SystemRoot)\py.exe -$(PythonVersionLight) $(SolutionDir)setup\setup.py bdist_wheel --plat-name=$(Platform) --build-base=$(SolutionDir)Obj\Wheel\$(Platform)\$(Configuration)\setuptools --dist-dir=$(SolutionDir)Out\$(Platform)\$(Configuration) --egg-base=$(SolutionDir)Obj\Wheel\$(Platform)\$(Configuration)\setuptools bdist_zip</Command>
</PostBuildEvent>
<PreBuildEvent>
<Command>$(SolutionDir).nuget\nuget.exe install pythonx86 -OutputDirectory $(SolutionDir)packages -Version $(PythonVersion)</Command>
@ -1309,7 +1346,8 @@
<AdditionalLibraryDirectories>$(SolutionDir)packages\pythonx86.$(PythonVersion)\tools\libs</AdditionalLibraryDirectories>
</Link>
<PostBuildEvent>
<Command>copy $(OutDir)..\Debug\targetapp.exe $(OutDir)</Command>
<Command>copy $(OutDir)..\Release\targetapp.exe $(OutDir)
$(SystemRoot)\py.exe -$(PythonVersionLight) $(SolutionDir)setup\setup.py bdist_wheel --plat-name=$(Platform) --build-base=$(SolutionDir)Obj\Wheel\$(Platform)\$(Configuration)\setuptools --dist-dir=$(SolutionDir)Out\$(Platform)\$(Configuration) --egg-base=$(SolutionDir)Obj\Wheel\$(Platform)\$(Configuration)\setuptools bdist_zip</Command>
</PostBuildEvent>
<PreBuildEvent>
<Command>$(SolutionDir).nuget\nuget.exe install pythonx86 -OutputDirectory $(SolutionDir)packages -Version $(PythonVersion)</Command>
@ -1335,7 +1373,8 @@
<AdditionalLibraryDirectories>$(SolutionDir)packages\pythonx86.$(PythonVersion)\tools\libs</AdditionalLibraryDirectories>
</Link>
<PostBuildEvent>
<Command>copy $(OutDir)..\Release\targetapp.exe $(OutDir)</Command>
<Command>copy $(OutDir)..\Release\targetapp.exe $(OutDir)
$(SystemRoot)\py.exe -$(PythonVersionLight) $(SolutionDir)setup\setup.py bdist_wheel --plat-name=$(Platform) --build-base=$(SolutionDir)Obj\Wheel\$(Platform)\$(Configuration)\setuptools --dist-dir=$(SolutionDir)Out\$(Platform)\$(Configuration) --egg-base=$(SolutionDir)Obj\Wheel\$(Platform)\$(Configuration)\setuptools bdist_zip</Command>
</PostBuildEvent>
<PreBuildEvent>
<Command>$(SolutionDir).nuget\nuget.exe install pythonx86 -OutputDirectory $(SolutionDir)packages -Version $(PythonVersion)</Command>
@ -1361,7 +1400,8 @@
<AdditionalLibraryDirectories>$(SolutionDir)packages\pythonx86.$(PythonVersion)\tools\libs</AdditionalLibraryDirectories>
</Link>
<PostBuildEvent>
<Command>copy $(OutDir)..\Release\targetapp.exe $(OutDir)</Command>
<Command>copy $(OutDir)..\Release\targetapp.exe $(OutDir)
$(SystemRoot)\py.exe -$(PythonVersionLight) $(SolutionDir)setup\setup.py bdist_wheel --plat-name=$(Platform) --build-base=$(SolutionDir)Obj\Wheel\$(Platform)\$(Configuration)\setuptools --dist-dir=$(SolutionDir)Out\$(Platform)\$(Configuration) --egg-base=$(SolutionDir)Obj\Wheel\$(Platform)\$(Configuration)\setuptools bdist_zip</Command>
</PostBuildEvent>
<PreBuildEvent>
<Command>$(SolutionDir).nuget\nuget.exe install pythonx86 -OutputDirectory $(SolutionDir)packages -Version $(PythonVersion)</Command>
@ -1387,7 +1427,8 @@
<AdditionalLibraryDirectories>$(SolutionDir)packages\python2.$(PythonVersion)\tools\libs</AdditionalLibraryDirectories>
</Link>
<PostBuildEvent>
<Command>copy $(OutDir)..\Debug\targetapp.exe $(OutDir)</Command>
<Command>copy $(OutDir)..\Release\targetapp.exe $(OutDir)
$(SystemRoot)\py.exe -$(PythonVersionLight) $(SolutionDir)setup\setup.py bdist_wheel --plat-name=$(Platform) --build-base=$(SolutionDir)Obj\Wheel\$(Platform)\$(Configuration)\setuptools --dist-dir=$(SolutionDir)Out\$(Platform)\$(Configuration) --egg-base=$(SolutionDir)Obj\Wheel\$(Platform)\$(Configuration)\setuptools bdist_zip</Command>
</PostBuildEvent>
<PreBuildEvent>
<Command>$(SolutionDir).nuget\nuget.exe install python2 -OutputDirectory $(SolutionDir)packages -Version $(PythonVersion)</Command>
@ -1413,7 +1454,8 @@
<AdditionalLibraryDirectories>$(SolutionDir)packages\python.$(PythonVersion)\tools\libs</AdditionalLibraryDirectories>
</Link>
<PostBuildEvent>
<Command>copy $(OutDir)..\Debug\targetapp.exe $(OutDir)</Command>
<Command>copy $(OutDir)..\Release\targetapp.exe $(OutDir)
$(SystemRoot)\py.exe -$(PythonVersionLight) $(SolutionDir)setup\setup.py bdist_wheel --plat-name=$(Platform) --build-base=$(SolutionDir)Obj\Wheel\$(Platform)\$(Configuration)\setuptools --dist-dir=$(SolutionDir)Out\$(Platform)\$(Configuration) --egg-base=$(SolutionDir)Obj\Wheel\$(Platform)\$(Configuration)\setuptools bdist_zip</Command>
</PostBuildEvent>
<PreBuildEvent>
<Command>$(SolutionDir).nuget\nuget.exe install python -OutputDirectory $(SolutionDir)packages -Version $(PythonVersion)</Command>
@ -1439,7 +1481,8 @@
<AdditionalLibraryDirectories>$(SolutionDir)packages\python.$(PythonVersion)\tools\libs</AdditionalLibraryDirectories>
</Link>
<PostBuildEvent>
<Command>copy $(OutDir)..\Debug\targetapp.exe $(OutDir)</Command>
<Command>copy $(OutDir)..\Release\targetapp.exe $(OutDir)
$(SystemRoot)\py.exe -$(PythonVersionLight) $(SolutionDir)setup\setup.py bdist_wheel --plat-name=$(Platform) --build-base=$(SolutionDir)Obj\Wheel\$(Platform)\$(Configuration)\setuptools --dist-dir=$(SolutionDir)Out\$(Platform)\$(Configuration) --egg-base=$(SolutionDir)Obj\Wheel\$(Platform)\$(Configuration)\setuptools bdist_zip</Command>
</PostBuildEvent>
<PreBuildEvent>
<Command>$(SolutionDir).nuget\nuget.exe install python -OutputDirectory $(SolutionDir)packages -Version $(PythonVersion)</Command>
@ -1465,7 +1508,8 @@
<AdditionalLibraryDirectories>$(SolutionDir)packages\python.$(PythonVersion)\tools\libs</AdditionalLibraryDirectories>
</Link>
<PostBuildEvent>
<Command>copy $(OutDir)..\Debug\targetapp.exe $(OutDir)</Command>
<Command>copy $(OutDir)..\Release\targetapp.exe $(OutDir)
$(SystemRoot)\py.exe -$(PythonVersionLight) $(SolutionDir)setup\setup.py bdist_wheel --plat-name=$(Platform) --build-base=$(SolutionDir)Obj\Wheel\$(Platform)\$(Configuration)\setuptools --dist-dir=$(SolutionDir)Out\$(Platform)\$(Configuration) --egg-base=$(SolutionDir)Obj\Wheel\$(Platform)\$(Configuration)\setuptools bdist_zip</Command>
</PostBuildEvent>
<PreBuildEvent>
<Command>$(SolutionDir).nuget\nuget.exe install python -OutputDirectory $(SolutionDir)packages -Version $(PythonVersion)</Command>
@ -1491,7 +1535,8 @@
<AdditionalLibraryDirectories>$(SolutionDir)packages\python.$(PythonVersion)\tools\libs</AdditionalLibraryDirectories>
</Link>
<PostBuildEvent>
<Command>copy $(OutDir)..\Debug\targetapp.exe $(OutDir)</Command>
<Command>copy $(OutDir)..\Release\targetapp.exe $(OutDir)
$(SystemRoot)\py.exe -$(PythonVersionLight) $(SolutionDir)setup\setup.py bdist_wheel --plat-name=$(Platform) --build-base=$(SolutionDir)Obj\Wheel\$(Platform)\$(Configuration)\setuptools --dist-dir=$(SolutionDir)Out\$(Platform)\$(Configuration) --egg-base=$(SolutionDir)Obj\Wheel\$(Platform)\$(Configuration)\setuptools bdist_zip</Command>
</PostBuildEvent>
<PreBuildEvent>
<Command>$(SolutionDir).nuget\nuget.exe install python -OutputDirectory $(SolutionDir)packages -Version $(PythonVersion)</Command>
@ -1517,7 +1562,8 @@
<AdditionalLibraryDirectories>$(SolutionDir)packages\python.$(PythonVersion)\tools\libs</AdditionalLibraryDirectories>
</Link>
<PostBuildEvent>
<Command>copy $(OutDir)..\Release\targetapp.exe $(OutDir)</Command>
<Command>copy $(OutDir)..\Release\targetapp.exe $(OutDir)
$(SystemRoot)\py.exe -$(PythonVersionLight) $(SolutionDir)setup\setup.py bdist_wheel --plat-name=$(Platform) --build-base=$(SolutionDir)Obj\Wheel\$(Platform)\$(Configuration)\setuptools --dist-dir=$(SolutionDir)Out\$(Platform)\$(Configuration) --egg-base=$(SolutionDir)Obj\Wheel\$(Platform)\$(Configuration)\setuptools bdist_zip</Command>
</PostBuildEvent>
<PreBuildEvent>
<Command>$(SolutionDir).nuget\nuget.exe install python -OutputDirectory $(SolutionDir)packages -Version $(PythonVersion)</Command>
@ -1543,7 +1589,8 @@
<AdditionalLibraryDirectories>$(SolutionDir)packages\python.$(PythonVersion)\tools\libs</AdditionalLibraryDirectories>
</Link>
<PostBuildEvent>
<Command>copy $(OutDir)..\Release\targetapp.exe $(OutDir)</Command>
<Command>copy $(OutDir)..\Release\targetapp.exe $(OutDir)
$(SystemRoot)\py.exe -$(PythonVersionLight) $(SolutionDir)setup\setup.py bdist_wheel --plat-name=$(Platform) --build-base=$(SolutionDir)Obj\Wheel\$(Platform)\$(Configuration)\setuptools --dist-dir=$(SolutionDir)Out\$(Platform)\$(Configuration) --egg-base=$(SolutionDir)Obj\Wheel\$(Platform)\$(Configuration)\setuptools bdist_zip</Command>
</PostBuildEvent>
<PreBuildEvent>
<Command>$(SolutionDir).nuget\nuget.exe install python -OutputDirectory $(SolutionDir)packages -Version $(PythonVersion)</Command>
@ -1569,7 +1616,8 @@
<AdditionalLibraryDirectories>$(SolutionDir)packages\python.$(PythonVersion)\tools\libs</AdditionalLibraryDirectories>
</Link>
<PostBuildEvent>
<Command>copy $(OutDir)..\Release\targetapp.exe $(OutDir)</Command>
<Command>copy $(OutDir)..\Release\targetapp.exe $(OutDir)
$(SystemRoot)\py.exe -$(PythonVersionLight) $(SolutionDir)setup\setup.py bdist_wheel --plat-name=$(Platform) --build-base=$(SolutionDir)Obj\Wheel\$(Platform)\$(Configuration)\setuptools --dist-dir=$(SolutionDir)Out\$(Platform)\$(Configuration) --egg-base=$(SolutionDir)Obj\Wheel\$(Platform)\$(Configuration)\setuptools bdist_zip</Command>
</PostBuildEvent>
<PreBuildEvent>
<Command>$(SolutionDir).nuget\nuget.exe install python -OutputDirectory $(SolutionDir)packages -Version $(PythonVersion)</Command>

1
setup/VERSION.template Normal file
View File

@ -0,0 +1 @@
0.3.4.15

View File

@ -1,31 +1,18 @@
py -2.7 setup.py bdist_zip --plat-name=win32
py -2.7 setup.py bdist_zip --plat-name=win-amd64
py -2.7 setup.py bdist_wheel --plat-name=win32 --python-tag=cp27
py -2.7 setup.py bdist_wheel --plat-name=win-amd64 --python-tag=cp27
@ECHO OFF
SETLOCAL EnableDelayedExpansion
py -3.5 setup.py bdist_zip --plat-name=win32
py -3.5 setup.py bdist_zip --plat-name=win-amd64
py -3.5 setup.py bdist_wheel --plat-name=win32 --python-tag=cp35
py -3.5 setup.py bdist_wheel --plat-name=win-amd64 --python-tag=cp35
set py_list=2.7 3.5 3.6 3.7 3.8 3.9 3.10 3.11
set plat_list=win32 x64
py -3.6 setup.py bdist_zip --plat-name=win32
py -3.6 setup.py bdist_zip --plat-name=win-amd64
py -3.6 setup.py bdist_wheel --plat-name=win32 --python-tag=cp36
py -3.6 setup.py bdist_wheel --plat-name=win-amd64 --python-tag=cp36
REM Build wheel and zip
REM py -<py version> setup.py bdist_wheel --plat-name=<plat-name> [bdist_zip]
REM py -<py version> setup.py bdist_wheel --plat-name=<plat-name> [--build-base=build_dir] [--dist-dir=bdist_dir] [--egg-base=egg_dir] [bdist_zip]
py -3.7 setup.py bdist_zip --plat-name=win32
py -3.7 setup.py bdist_zip --plat-name=win-amd64
py -3.7 setup.py bdist_wheel --plat-name=win32 --python-tag=cp37
py -3.7 setup.py bdist_wheel --plat-name=win-amd64 --python-tag=cp37
py -3.8 setup.py bdist_zip --plat-name=win32
py -3.8 setup.py bdist_zip --plat-name=win-amd64
py -3.8 setup.py bdist_wheel --plat-name=win32 --python-tag=cp38
py -3.8 setup.py bdist_wheel --plat-name=win-amd64 --python-tag=cp38
py -3.9 setup.py bdist_zip --plat-name=win32
py -3.9 setup.py bdist_zip --plat-name=win-amd64
py -3.9 setup.py bdist_wheel --plat-name=win32 --python-tag=cp39
py -3.9 setup.py bdist_wheel --plat-name=win-amd64 --python-tag=cp39
py setup.py bdist_pdb
for %%a in (%py_list%) do (
for %%b in (%plat_list%) do (
set py_ver=%%a
set plat=%%b
py -!py_ver! setup.py bdist_wheel --plat-name=!plat! bdist_zip
)
)
exit

View File

@ -1,131 +1,174 @@
from setuptools import setup
from wheel.bdist_wheel import bdist_wheel
import os
import os
import shutil
import zipfile
import sys
import itertools
import argparse
import re
import setuptools
import git
if sys.version_info.major == 2:
import pathlib2
_name = "pykd"
_desc = "python windbg extension"
_version = '0.3.4.15'
def getReleaseSrc():
return 'Release_%d.%d' % sys.version_info[0:2]
def main():
parser = argparse.ArgumentParser()
parser.add_argument('--plat-name', choices = ['win32', 'win-amd64', 'x86', 'x64'], required = True, type = str.lower)
parser.add_argument('--build-base', type = str, required = False)
parser.add_argument('--dist-dir', type = str, required = False)
parser.add_argument('--egg-base', type = str, required = False)
args, unkonwn_args = parser.parse_known_args()
if "bdist_wheel" in sys.argv:
# remove build catalog
build_dir = os.path.join(os.path.curdir, 'build' )
if os.path.exists(build_dir):
shutil.rmtree(build_dir)
# make package catalog
package_dir = os.path.join(os.path.curdir, _name )
if os.path.exists(package_dir):
shutil.rmtree(package_dir)
os.mkdir(package_dir)
shutil.copy("__init__.py", package_dir)
bin_dir = os.path.join( os.path.curdir, '..', 'kdlibcpp/bin')
pykd_dir = os.path.join( os.path.curdir, '..', 'out')
if "--plat-name=win32" in sys.argv:
bin_dir = os.path.join( bin_dir, 'x86')
pykd_dir = os.path.join(pykd_dir, 'Win32', getReleaseSrc())
elif "--plat-name=win-amd64" in sys.argv:
bin_dir = os.path.join( bin_dir, 'x64')
pykd_dir = os.path.join(pykd_dir, 'X64', getReleaseSrc())
platform = ''
platform_alt = ''
configuration = 'Release'
if (args.plat_name == 'win32') or (args.plat_name == 'x86'):
args.plat_name = 'win32'
platform = 'win32'
platform_alt = 'x86'
elif (args.plat_name == 'win-amd64') or (args.plat_name == 'x64'):
args.plat_name = 'win-amd64'
platform = 'x64'
platform_alt = 'x64'
else:
assert(0)
print("Unsupported platform %s" %(args.plat_name))
exit
assert(os.path.isdir(bin_dir))
python_tag = "cp%d%d" %(sys.version_info.major, sys.version_info.minor)
for binFile in [ f for f in os.listdir(bin_dir) if not os.path.isdir(f) ]:
shutil.copy( os.path.join(bin_dir, binFile), os.path.join(package_dir, binFile) )
dir_solution = os.path.dirname(os.path.dirname(os.path.abspath(__file__)))
shutil.copy( os.path.join(pykd_dir, 'pykd.pyd'), os.path.join(package_dir, 'pykd.pyd') )
_version = ''
setup(
name = _name,
version = _version,
description = _desc,
# cmdclass = { 'bdist_wheel' : bdist_wheel },
packages = ['pykd'],
package_dir = {'pykd': package_dir},
package_data = { 'pykd' :["*.pyd", "*.dll"]},
include_package_data=True,
zip_safe = False
# Using VERSION file on releaase branch
if os.path.isfile(os.path.join(os.path.dirname(__file__), 'VERSION')):
with open(os.path.join(os.path.dirname(__file__), 'VERSION'), 'r') as verf:
_version = verf.readline()
# Using versions from pykdver.h and branch HEAD
if _version == '':
versions = ['', '', '', '']
if os.path.isfile(os.path.join(dir_solution, 'pykd', 'pykdver.h')):
with open(os.path.join(os.path.join(dir_solution, 'pykd', 'pykdver.h')), 'r') as verf:
lines = verf.readlines()
for line in lines:
ver_raw_match = re.findall(r"^#define\s*PYKD_VERSION_MAJOR\s*(.*)$", line)
if (len(ver_raw_match)):
versions[0] = ver_raw_match[0]
continue
ver_raw_match = re.findall(r"^#define\s*PYKD_VERSION_MINOR\s*(.*)$", line)
if (len(ver_raw_match)):
versions[1] = ver_raw_match[0]
continue
ver_raw_match = re.findall(r"^#define\s*PYKD_VERSION_SUBVERSION\s*(.*)$", line)
if (len(ver_raw_match)):
versions[2] = ver_raw_match[0]
continue
ver_raw_match = re.findall(r"^#define\s*PYKD_VERSION_BUILDNO\s*(.*)$", line)
if (len(ver_raw_match)):
versions[3] = ver_raw_match[0]
continue
_version = "%s.%s.%s.%s+g" % (versions[0], versions[1], versions[2], versions[3])
try:
repo = git.Repo(dir_solution)
_version = "%s%s" % (_version, repo.git.rev_parse(repo.head, short = True))
except:
print("Skip using HEAD SHA as non git repo")
dir_dbgsdk_bin = os.path.join(dir_solution, 'kdlibcpp', 'bin', platform_alt)
if not os.path.exists(dir_dbgsdk_bin):
print("DbgSDK bin path %s doesn't exist" %(dir_dbgsdk_bin))
sys.exit()
dir_pykd_bin = os.path.join(dir_solution, 'Out', platform, "%s_%d.%d" %(configuration, sys.version_info.major, sys.version_info.minor))
if not os.path.exists(os.path.join(dir_pykd_bin, 'pykd.pyd')):
print("pykd.pyd doesn't exist in %s" %(dir_pykd_bin))
sys.exit()
if args.build_base is not None:
dir_build_base = args.build_base
else:
dir_build_base = os.path.join(dir_solution, 'Obj', 'Wheel', platform, "%s_%d.%d" %(configuration, sys.version_info.major, sys.version_info.minor), 'setuptools')
if args.dist_dir is not None:
dir_dist_wheel = args.dist_dir
else:
dir_dist_wheel = dir_pykd_bin
if args.egg_base is not None:
dir_egg_base = args.egg_base
else:
dir_egg_base = dir_build_base
dir_wheel_package = os.path.join(dir_build_base, _name)
if os.path.exists(dir_build_base):
shutil.rmtree(dir_build_base)
if sys.version_info.major == 2:
pathlib2.Path(dir_build_base).mkdir(exist_ok = True, parents = True)
else:
os.makedirs(dir_build_base, exist_ok = True)
if os.path.exists(dir_wheel_package):
shutil.rmtree(dir_wheel_package)
if sys.version_info.major == 2:
pathlib2.Path(dir_wheel_package).mkdir(exist_ok = True, parents = True)
else:
os.makedirs(dir_wheel_package, exist_ok = True)
print("Using DbgSDK from %s" %(dir_dbgsdk_bin))
print("Using pykd binary from %s" %(dir_pykd_bin))
print("Using build directory as %s" %(dir_build_base))
print("Using egg info directory as %s" %(dir_egg_base))
print("Using Wheel output directory as %s" %(dir_dist_wheel))
shutil.copy2(os.path.join(dir_solution, 'setup', '__init__.py'), dir_wheel_package)
shutil.copy2(os.path.join(dir_pykd_bin, 'pykd.pyd'), dir_wheel_package)
for dbgSdkBin in [ f for f in os.listdir(dir_dbgsdk_bin) if not os.path.isdir(f) ]:
shutil.copy2(os.path.join(dir_dbgsdk_bin, dbgSdkBin), dir_wheel_package)
if 'bdist_wheel' in unkonwn_args:
print("Building bdist_wheel ...")
sys.argv = ['setup.py']
sys.argv.append("build")
sys.argv.append("--build-base=%s" %(dir_build_base))
sys.argv.append("--plat-name=%s" %(args.plat_name))
sys.argv.append("bdist_wheel")
sys.argv.append("--dist-dir=%s" %(dir_dist_wheel))
sys.argv.append("--plat-name=%s" %(args.plat_name))
sys.argv.append("--python-tag=%s" %(python_tag))
sys.argv.append("egg_info")
sys.argv.append("--egg-base=%s" %(dir_egg_base))
setuptools.setup(
name = _name,
version = _version,
description = _desc,
packages = ['pykd'],
package_dir = {'pykd': os.path.relpath(dir_wheel_package)},
package_data = { 'pykd' :["*.pyd", "*.dll"]},
include_package_data=True,
zip_safe = False
)
elif "bdist_zip" in sys.argv:
if 'bdist_zip' in unkonwn_args:
zip_name = "pykd-%s-%s-%s.zip" %(_version, python_tag, args.plat_name)
print("Building bdist_zip %s ..." %(zip_name))
with zipfile.ZipFile(os.path.join(dir_dist_wheel, zip_name), mode='w') as archive:
for dbgSdkBin in [ f for f in os.listdir(dir_dbgsdk_bin) if not os.path.isdir(f) ]:
print("zipped %s" %(dbgSdkBin))
archive.write(os.path.join(dir_dbgsdk_bin, dbgSdkBin), arcname = dbgSdkBin, compress_type = zipfile.ZIP_DEFLATED)
print("zipped pykd.pyd")
archive.write(os.path.join(dir_pykd_bin, 'pykd.pyd'), arcname = 'pykd.pyd', compress_type = zipfile.ZIP_DEFLATED)
print("zipped pykd.pdb")
archive.write(os.path.join(dir_pykd_bin, 'pykd.pdb'), arcname = 'pykd.pdb', compress_type = zipfile.ZIP_DEFLATED)
#make package catalog
if "--plat-name=win32" in sys.argv:
plat_name="win32"
elif "--plat-name=win-amd64" in sys.argv:
plat_name="win-amd64"
package_dir = os.path.join(os.path.curdir, _name )
if os.path.exists(package_dir):
shutil.rmtree(package_dir)
os.mkdir(package_dir)
bin_dir = os.path.join( os.path.curdir, '..', 'kdlibcpp/bin')
pykd_dir = os.path.join( os.path.curdir, '..', 'out')
if plat_name=="win32":
bin_dir = os.path.join( bin_dir, 'x86')
pykd_dir = os.path.join(pykd_dir, 'Win32', getReleaseSrc())
elif plat_name=="win-amd64":
bin_dir = os.path.join( bin_dir, 'x64')
pykd_dir = os.path.join(pykd_dir, 'X64', getReleaseSrc())
else:
assert(0)
pyver="%d%d" % sys.version_info[0:2]
zip_str = "pykd-%s-cp%s-%s" % ( _version, pyver, plat_name )
zip_name = zip_str + ".zip"
assert(os.path.isdir(bin_dir))
for binFile in [ f for f in os.listdir(bin_dir) if not os.path.isdir(f) ]:
shutil.copy( os.path.join(bin_dir, binFile), os.path.join(package_dir, binFile) )
shutil.copy( os.path.join(pykd_dir, 'pykd.pyd'), os.path.join(package_dir, 'pykd.pyd') )
dist_dir = os.path.join(os.path.curdir, 'dist')
if not os.path.exists(dist_dir):
os.mkdir(dist_dir)
with zipfile.ZipFile(os.path.join(os.path.curdir, 'dist', zip_name), mode='w' ) as archive:
for srcFile in os.listdir(package_dir):
print( "zipped %s" % (srcFile) )
archive.write( os.path.join(package_dir, srcFile), compress_type = zipfile.ZIP_DEFLATED)
print("OK")
elif "bdist_pdb" in sys.argv:
#make pdb archive
pyVersion = ('2.7', '3.5', '3.6', '3.7', '3.8', '3.9', '3.10', '3.11')
platform = ('Win32', 'x64')
pdbFiles = [ os.path.join( platform, 'Release_' + version, 'pykd.pdb') for version, platform in itertools.product( pyVersion, platform ) ]
zip_name = "pykd-%s-symbols.zip" % _version
with zipfile.ZipFile(os.path.join(os.path.curdir, 'dist', zip_name), mode='w' ) as archive:
for pdbFile in pdbFiles:
print( "zipped %s" % (pdbFile) )
archive.write( os.path.join(os.path.curdir, '..', 'out', pdbFile), pdbFile, compress_type = zipfile.ZIP_DEFLATED)
#pdbFileList = [ os.path.join( os.path.curdir, '..', 'out', fileName) for fileName in (
pass
if __name__ == '__main__':
main()