|
66 | 66 | </ClCompile> |
67 | 67 | <Link> |
68 | 68 | <AdditionalDependencies>$(OutDir)$(TargetName)stub.lib</AdditionalDependencies> |
69 | | - <ModuleDefinitionFile>$(PySourcePath)PC\python3.def</ModuleDefinitionFile> |
| 69 | + <ModuleDefinitionFile Condition="$(Configuration) != 'Debug'">$(PySourcePath)PC\python3.def</ModuleDefinitionFile> |
| 70 | + <ModuleDefinitionFile Condition="$(Configuration) == 'Debug'">$(IntDir)python3_d.def</ModuleDefinitionFile> |
70 | 71 | <EntryPointSymbol>DllMain</EntryPointSymbol> |
71 | 72 | </Link> |
72 | 73 | <PreLinkEvent> |
|
87 | 88 | <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" /> |
88 | 89 | <ImportGroup Label="ExtensionTargets"> |
89 | 90 | </ImportGroup> |
| 91 | + |
| 92 | + <Target Name="BuildPython3_dDef" BeforeTargets="BuildStubDef" Inputs="..\PC\python3.def" Outputs="$(IntDir)python3_d.def" Condition="$(Configuration) == 'Debug'"> |
| 93 | + <ItemGroup> |
| 94 | + <_DefLines Remove="@(_DefLines)" /> |
| 95 | + <_Lines Remove="@(_Lines)" /> |
| 96 | + </ItemGroup> |
| 97 | + <ReadLinesFromFile File="..\PC\python3.def"> |
| 98 | + <Output TaskParameter="Lines" ItemName="_DefLines" /> |
| 99 | + </ReadLinesFromFile> |
| 100 | + <PropertyGroup> |
| 101 | + <_Pattern1>(=python$(MajorVersionNumber)$(MinorVersionNumber))\.</_Pattern1> |
| 102 | + <_Sub1>$1_d.</_Sub1> |
| 103 | + <_Pattern2>"python3"</_Pattern2> |
| 104 | + <_Sub2>"python3_d"</_Sub2> |
| 105 | + </PropertyGroup> |
| 106 | + <ItemGroup> |
| 107 | + <_Lines Include="@(_DefLines)"> |
| 108 | + <New>$([System.Text.RegularExpressions.Regex]::Replace($([System.Text.RegularExpressions.Regex]::Replace(`%(Identity)`, `$(_Pattern1)`, `$(_Sub1)`)), `$(_Pattern2)`, `$(_Sub2)`))</New> |
| 109 | + </_Lines> |
| 110 | + </ItemGroup> |
| 111 | + <MakeDir Directories="$(IntDir)" /> |
| 112 | + <WriteLinesToFile File="$(IntDir)python3_d.def" Lines="@(_Lines->'%(New)')" /> |
| 113 | + </Target> |
| 114 | + |
90 | 115 | <Target Name="BuildStubDef" BeforeTargets="PreLinkEvent" Inputs="..\PC\python3.def" Outputs="$(IntDir)python3stub.def"> |
| 116 | + <ItemGroup> |
| 117 | + <_DefLines Remove="@(_DefLines)" /> |
| 118 | + <_Lines Remove="@(_Lines)" /> |
| 119 | + </ItemGroup> |
91 | 120 | <ReadLinesFromFile File="..\PC\python3.def"> |
92 | | - <Output TaskParameter="Lines" ItemName="DefLines" /> |
| 121 | + <Output TaskParameter="Lines" ItemName="_DefLines" /> |
93 | 122 | </ReadLinesFromFile> |
94 | 123 | <PropertyGroup> |
95 | 124 | <_Pattern>^[\w.]+=.+?\.([^ ]+).*$</_Pattern> |
96 | 125 | <_Sub>$1</_Sub> |
97 | 126 | </PropertyGroup> |
98 | 127 | <ItemGroup> |
99 | 128 | <_Lines Include="EXPORTS" /> |
100 | | - <_Symbols Include="@(DefLines)" Condition="$([System.Text.RegularExpressions.Regex]::IsMatch(`%(Identity)`, `$(_Pattern)`))"> |
| 129 | + <_Symbols Include="@(_DefLines)" Condition="$([System.Text.RegularExpressions.Regex]::IsMatch(`%(Identity)`, `$(_Pattern)`))"> |
101 | 130 | <Symbol>$([System.Text.RegularExpressions.Regex]::Replace(`%(Identity)`, `$(_Pattern)`, `$(_Sub)`))</Symbol> |
102 | 131 | </_Symbols> |
103 | 132 | <_Lines Include="@(_Symbols->'%(Symbol)')" /> |
|
0 commit comments