Skip to content

Commit

Permalink
Fix Windows release build issues (pythonGH-14091)
Browse files Browse the repository at this point in the history
* Increase timeout for PGO builds in Windows release
* Fix test step failures
* Disable MinGW step properly
* Fix embeddable distro name
  • Loading branch information
zooba authored Jun 14, 2019
1 parent bd5798f commit 749e730
Show file tree
Hide file tree
Showing 5 changed files with 16 additions and 8 deletions.
12 changes: 8 additions & 4 deletions .azure-pipelines/windows-release/msi-steps.yml
Original file line number Diff line number Diff line change
Expand Up @@ -94,26 +94,30 @@ steps:
Py_OutDir: $(Build.BinariesDirectory)
- script: |
%MSBUILD% Tools\msi\bundle\releaselocal.wixproj /t:Rebuild /p:RebuildAll=true /p:BuildForRelease=true
%MSBUILD% Tools\msi\bundle\releaseweb.wixproj /t:Rebuild /p:RebuildAll=false /p:BuildForRelease=true
%MSBUILD% Tools\msi\bundle\releaselocal.wixproj /t:Rebuild /p:RebuildAll=true
%MSBUILD% Tools\msi\bundle\releaseweb.wixproj /t:Rebuild /p:RebuildAll=false
displayName: 'Build win32 installer'
env:
Platform: x86
Py_OutDir: $(Build.BinariesDirectory)
PYTHON: $(Build.BinariesDirectory)\win32\python.exe
PYTHONHOME: $(Build.SourcesDirectory)
TclTkLibraryDir: $(Build.BinariesDirectory)\tcltk_lib_win32
BuildForRelease: true
SuppressMinGWLib: true
- script: |
%MSBUILD% Tools\msi\bundle\releaselocal.wixproj /t:Rebuild /p:RebuildAll=true /p:BuildForRelease=true
%MSBUILD% Tools\msi\bundle\releaseweb.wixproj /t:Rebuild /p:RebuildAll=false /p:BuildForRelease=true
%MSBUILD% Tools\msi\bundle\releaselocal.wixproj /t:Rebuild /p:RebuildAll=true
%MSBUILD% Tools\msi\bundle\releaseweb.wixproj /t:Rebuild /p:RebuildAll=false
displayName: 'Build amd64 installer'
env:
Platform: x64
Py_OutDir: $(Build.BinariesDirectory)
PYTHON: $(Build.BinariesDirectory)\amd64\python.exe
PYTHONHOME: $(Build.SourcesDirectory)
TclTkLibraryDir: $(Build.BinariesDirectory)\tcltk_lib_amd64
BuildForRelease: true
SuppressMinGWLib: true
- task: CopyFiles@2
displayName: 'Assemble artifact: msi (1/2)'
Expand Down
3 changes: 3 additions & 0 deletions .azure-pipelines/windows-release/stage-build.yml
Original file line number Diff line number Diff line change
Expand Up @@ -95,6 +95,9 @@ jobs:
displayName: Python PGO build
condition: and(succeeded(), eq(variables['DoPGO'], 'true'))

# Allow up to five hours for PGO
timeoutInMinutes: 300

pool:
name: 'Windows Release'

Expand Down
2 changes: 1 addition & 1 deletion .azure-pipelines/windows-release/stage-layout-embed.yml
Original file line number Diff line number Diff line change
Expand Up @@ -39,7 +39,7 @@ jobs:
- powershell: >
$(LayoutCmd)
--copy "$(Build.ArtifactStagingDirectory)\layout"
--zip "$(Build.ArtifactStagingDirectory)\embed\$(VersionText)-embed-$(Name).zip"
--zip "$(Build.ArtifactStagingDirectory)\embed\python-$(VersionText)-embed-$(Name).zip"
--preset-embed
displayName: 'Generate embeddable layout'
Expand Down
3 changes: 2 additions & 1 deletion .azure-pipelines/windows-release/stage-test-embed.yml
Original file line number Diff line number Diff line change
Expand Up @@ -26,7 +26,8 @@ jobs:
downloadPath: $(Build.BinariesDirectory)

- powershell: |
Expand-Archive -Path "$(Build.BinariesDirectory)\embed\embed-$(Name).zip" -DestinationPath "$(Build.BinariesDirectory)\Python"
$p = gi "$(Build.BinariesDirectory)\embed\python*embed-$(Name).zip"
Expand-Archive -Path $p -DestinationPath "$(Build.BinariesDirectory)\Python"
$p = gi "$(Build.BinariesDirectory)\Python\python.exe"
Write-Host "##vso[task.prependpath]$(Split-Path -Parent $p)"
displayName: 'Install Python and add to PATH'
Expand Down
4 changes: 2 additions & 2 deletions Tools/msi/dev/dev.wixproj
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@
</PropertyGroup>
<Import Project="..\msi.props" />
<PropertyGroup>
<DefineConstants Condition="$(BuildForRelease)">
<DefineConstants Condition="$(BuildForRelease) and $(SuppressMinGWLib) == ''">
$(DefineConstants);
IncludeMinGWLib=1;
</DefineConstants>
Expand All @@ -35,7 +35,7 @@
Inputs="$(BuildPath)$(PyDllName).dll"
Outputs="$(BuildPath)lib$(PyDllName).a"
AfterTargets="PrepareForBuild"
Condition="$(BuildForRelease)">
Condition="$(BuildForRelease) and $(SuppressMinGWLib) == ''">
<!-- Build libpython##.a as part of this project. This requires gendef and dlltool on the path. -->
<PropertyGroup>
<_DllToolOpts>-m i386 --as-flags=--32</_DllToolOpts>
Expand Down

0 comments on commit 749e730

Please sign in to comment.