]> granicus.if.org Git - python/commitdiff
Fix Windows release build issues (GH-14091)
authorSteve Dower <steve.dower@python.org>
Fri, 14 Jun 2019 21:19:25 +0000 (14:19 -0700)
committerGitHub <noreply@github.com>
Fri, 14 Jun 2019 21:19:25 +0000 (14:19 -0700)
* Increase timeout for PGO builds in Windows release
* Fix test step failures
* Disable MinGW step properly
* Fix embeddable distro name

.azure-pipelines/windows-release/msi-steps.yml
.azure-pipelines/windows-release/stage-build.yml
.azure-pipelines/windows-release/stage-layout-embed.yml
.azure-pipelines/windows-release/stage-test-embed.yml
Tools/msi/dev/dev.wixproj

index 2f80c34eeb7d799cf74ff1688b506dc5894481bf..153408271c711e234eeb3b5687936e92a5d9aa07 100644 (file)
@@ -94,8 +94,8 @@ 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
@@ -103,10 +103,12 @@ steps:
       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
@@ -114,6 +116,8 @@ steps:
       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)'
index 121e4b1a278e0da62acbc9d47afc9ac4d89f2454..a5093a04f08716d777ffc92819050d738aa8b01c 100644 (file)
@@ -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'
 
index c9d58b6b30a28e4b82ce9ddd53f3cfe1b0a1da53..e2689dbb603d6e357f74c5f92ea8ea7b097fc4fe 100644 (file)
@@ -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'
 
index ab377fdfa8c90af3c0e45e879b538bac6d47abe7..b33176266a20da408fcf664c99fc13c919ca5b28 100644 (file)
@@ -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'
index 4a56cec35722cf016b51da13d59a5c1cad43dd3e..c6e3bcf709c6c4a9e766d81dccec066339aec5f3 100644 (file)
@@ -8,7 +8,7 @@
     </PropertyGroup>
     <Import Project="..\msi.props" />
     <PropertyGroup>
-        <DefineConstants Condition="$(BuildForRelease)">
+        <DefineConstants Condition="$(BuildForRelease) and $(SuppressMinGWLib) == ''">
             $(DefineConstants);
             IncludeMinGWLib=1;
         </DefineConstants>
@@ -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>