summaryrefslogtreecommitdiff
path: root/.azure-pipelines
diff options
context:
space:
mode:
authorSteve Dower <steve.dower@python.org>2022-08-18 21:48:09 +0100
committerGitHub <noreply@github.com>2022-08-18 21:48:09 +0100
commit22a95cb5114891e87f6933482dc6eaa00e6a11ad (patch)
tree17ceff98a6bb3c32dd7a1fe1dea7fd40d07ba1ae /.azure-pipelines
parent29c8f80760869018aa0d7b1d42ab737dc325cfa2 (diff)
downloadcpython-git-22a95cb5114891e87f6933482dc6eaa00e6a11ad.tar.gz
Remove manual build scripts for Windows dependencies and put them in the release-tools repository instead (GH-96088)
Diffstat (limited to '.azure-pipelines')
-rw-r--r--.azure-pipelines/find-tools.yml26
-rw-r--r--.azure-pipelines/libffi-build.yml86
-rw-r--r--.azure-pipelines/openssl-build.yml110
-rw-r--r--.azure-pipelines/tcltk-build.yml71
4 files changed, 0 insertions, 293 deletions
diff --git a/.azure-pipelines/find-tools.yml b/.azure-pipelines/find-tools.yml
deleted file mode 100644
index 9ad0f5622b..0000000000
--- a/.azure-pipelines/find-tools.yml
+++ /dev/null
@@ -1,26 +0,0 @@
-# Locate a set of the tools used for builds
-
-steps:
- - template: windows-release/find-sdk.yml
- parameters:
- toolname: 'signtool.exe'
-
- - powershell: |
- $vcvarsall = (& "${env:ProgramFiles(x86)}\Microsoft Visual Studio\Installer\vswhere.exe" `
- -prerelease `
- -latest `
- -requires Microsoft.VisualStudio.Component.VC.Tools.x86.x64 `
- -find VC\Auxiliary\Build\vcvarsall.bat)
- Write-Host "Found vcvarsall at $vcvarsall"
- Write-Host "##vso[task.setVariable variable=vcvarsall]$vcvarsall"
- displayName: 'Find vcvarsall.bat'
-
- - powershell: |
- $msbuild = (& "${env:ProgramFiles(x86)}\Microsoft Visual Studio\Installer\vswhere.exe" `
- -prerelease `
- -latest `
- -requires Microsoft.VisualStudio.Component.VC.Tools.x86.x64 `
- -find MSBuild\Current\Bin\msbuild.exe)
- Write-Host "Found MSBuild at $msbuild"
- Write-Host "##vso[task.setVariable variable=msbuild]$msbuild"
- displayName: 'Find MSBuild'
diff --git a/.azure-pipelines/libffi-build.yml b/.azure-pipelines/libffi-build.yml
deleted file mode 100644
index dd26ff215a..0000000000
--- a/.azure-pipelines/libffi-build.yml
+++ /dev/null
@@ -1,86 +0,0 @@
-name: $(SourceTag)_$(Date:yyyyMMdd)$(Rev:.rr)
-
-variables:
- IntDir: '$(Build.BinariesDirectory)'
- OutDir: '$(Build.ArtifactStagingDirectory)'
-
- # MUST BE SET AT QUEUE TIME
- # SigningCertificate: 'Python Software Foundation'
- # SourcesRepo: 'https://github.com/python/cpython-source-deps'
- # SourceTag: 'libffi-3.4.2'
-
-jobs:
-- job: Build_LibFFI
- displayName: LibFFI
- pool:
- vmImage: windows-latest
-
- workspace:
- clean: all
-
- steps:
- - checkout: none
-
- - template: ./find-tools.yml
-
- - powershell: |
- mkdir -Force "$(IntDir)\script"
- iwr "https://github.com/python/cpython/raw/main/PCbuild/prepare_libffi.bat" `
- -outfile "$(IntDir)\script\prepare_libffi.bat"
- displayName: 'Download build script'
-
- - powershell: |
- git clone $(SourcesRepo) -b $(SourceTag) --depth 1 -c core.autocrlf=false -c core.eol=lf .
- displayName: 'Check out LibFFI sources'
-
- - script: 'prepare_libffi.bat --install-cygwin'
- workingDirectory: '$(IntDir)\script'
- displayName: 'Install Cygwin and build'
- env:
- VCVARSALL: '$(vcvarsall)'
- LIBFFI_SOURCE: '$(Build.SourcesDirectory)'
- LIBFFI_OUT: '$(OutDir)'
-
- - powershell: |
- if ((gci *\*.dll).Count -lt 4) {
- Write-Error "Did not generate enough DLL files"
- }
- if ((gci *\Include\ffi.h).Count -lt 4) {
- Write-Error "Did not generate enough include files"
- }
- failOnStderr: true
- workingDirectory: '$(OutDir)'
- displayName: 'Verify files were created'
-
- - publish: '$(OutDir)'
- artifact: 'unsigned'
- displayName: 'Publish unsigned build'
-
-- job: Sign_LibFFI
- displayName: Sign LibFFI
- dependsOn: Build_LibFFI
- pool:
- name: 'Windows Release'
-
- workspace:
- clean: all
-
- steps:
- - checkout: none
- - download: current
- artifact: unsigned
-
- - template: ./find-tools.yml
-
- - powershell: |
- signtool sign /q /a `
- /n "Python Software Foundation" `
- /fd sha256 `
- /tr http://timestamp.digicert.com/ /td sha256 `
- /d "LibFFI for Python" `
- (gci "$(Pipeline.Workspace)\unsigned\*.dll" -r)
- displayName: 'Sign files'
-
- - publish: '$(Pipeline.Workspace)\unsigned'
- artifact: 'libffi'
- displayName: 'Publish libffi'
diff --git a/.azure-pipelines/openssl-build.yml b/.azure-pipelines/openssl-build.yml
deleted file mode 100644
index 8aab7ea0b9..0000000000
--- a/.azure-pipelines/openssl-build.yml
+++ /dev/null
@@ -1,110 +0,0 @@
-name: $(SourceTag)_$(Date:yyyyMMdd)$(Rev:.rr)
-
-variables:
- IntDir: '$(Build.BinariesDirectory)'
- OutDir: '$(Build.ArtifactStagingDirectory)'
-
- # MUST BE SET AT QUEUE TIME
- # SigningCertificate: 'Python Software Foundation'
- # SourcesRepo: 'https://github.com/python/cpython-source-deps'
- # SourceTag: 'openssl-1.1.1k'
-
-jobs:
-- job: Build_SSL
- displayName: OpenSSL
- pool:
- name: 'Windows Release'
- #vmImage: windows-latest
-
- strategy:
- matrix:
- win32:
- Platform: 'win32'
- VCPlatform: 'amd64_x86'
- OpenSSLPlatform: 'VC-WIN32 no-asm'
- amd64:
- Platform: 'amd64'
- VCPlatform: 'amd64'
- OpenSSLPlatform: 'VC-WIN64A-masm'
- arm32:
- Platform: 'arm32'
- VCPlatform: 'amd64_arm'
- OpenSSLPlatform: 'VC-WIN32-ARM'
- arm64:
- Platform: 'arm64'
- VCPlatform: 'amd64_arm64'
- OpenSSLPlatform: 'VC-WIN64-ARM'
-
- workspace:
- clean: all
-
- steps:
- - checkout: none
-
- - template: ./find-tools.yml
-
- - powershell: |
- git clone $(SourcesRepo) -b $(SourceTag) --depth 1 .
- displayName: 'Check out OpenSSL sources'
-
- - powershell: |
- $f = gi ms\uplink.c
- $c1 = gc $f
- $c2 = $c1 -replace '\(\(h = GetModuleHandle\(NULL\)\) == NULL\)', '((h = GetModuleHandleA("_ssl.pyd")) == NULL) if ((h = GetModuleHandleA("_ssl_d.pyd")) == NULL) if ((h = GetModuleHandle(NULL)) == NULL /*patched*/)'
- if ($c2 -ne $c1) {
- $c2 | Out-File $f -Encoding ASCII
- } else {
- Write-Host '##warning Failed to patch uplink.c'
- }
- displayName: 'Apply uplink.c patch'
-
- - script: |
- call "$(vcvarsall)" $(VCPlatform)
- perl "$(Build.SourcesDirectory)\Configure" $(OpenSSLPlatform)
- nmake
- workingDirectory: '$(IntDir)'
- displayName: 'Build OpenSSL'
-
- - script: |
- call "$(vcvarsall)" $(VCPlatform)
- signtool sign /q /a /n "$(SigningCertificate)" /fd sha256 /tr http://timestamp.digicert.com/ /td sha256 /d "OpenSSL for Python" *.dll
- workingDirectory: '$(IntDir)'
- displayName: 'Sign OpenSSL Build'
- condition: and(succeeded(), variables['SigningCertificate'])
-
- - task: CopyFiles@2
- displayName: 'Copy built libraries for upload'
- inputs:
- SourceFolder: '$(IntDir)'
- Contents: |
- lib*.dll
- lib*.pdb
- lib*.lib
- include\openssl\*.h
- TargetFolder: '$(OutDir)'
-
- - task: CopyFiles@2
- displayName: 'Copy header files for upload'
- inputs:
- SourceFolder: '$(Build.SourcesDirectory)'
- Contents: |
- include\openssl\*
- TargetFolder: '$(OutDir)'
-
- - task: CopyFiles@2
- displayName: 'Copy applink files for upload'
- inputs:
- SourceFolder: '$(Build.SourcesDirectory)\ms'
- Contents: applink.c
- TargetFolder: '$(OutDir)\include'
-
- - task: CopyFiles@2
- displayName: 'Copy LICENSE for upload'
- inputs:
- SourceFolder: '$(Build.SourcesDirectory)'
- Contents: LICENSE
- TargetFolder: '$(OutDir)'
-
- - publish: '$(OutDir)'
- artifact: '$(Platform)'
- displayName: 'Publishing $(Platform)'
diff --git a/.azure-pipelines/tcltk-build.yml b/.azure-pipelines/tcltk-build.yml
deleted file mode 100644
index f9e50d3711..0000000000
--- a/.azure-pipelines/tcltk-build.yml
+++ /dev/null
@@ -1,71 +0,0 @@
-name: tcl$(TkSourceTag)_$(Date:yyyyMMdd)$(Rev:.rr)
-
-variables:
- IntDir: '$(Build.BinariesDirectory)\obj'
- ExternalsDir: '$(Build.BinariesDirectory)\externals'
- OutDir: '$(Build.ArtifactStagingDirectory)'
- Configuration: 'Release'
-
- # MUST BE SET AT QUEUE TIME
- # SigningCertificate: 'Python Software Foundation'
- # SourcesRepo: 'https://github.com/python/cpython-source-deps'
- # TclSourceTag: 'tcl-core-8.6.12.0'
- # TkSourceTag: 'tk-8.6.12.0'
- # TixSourceTag: 'tix-8.4.3.6'
-
-jobs:
-- job: Build_TclTk
- displayName: 'Tcl/Tk'
- pool:
- name: 'Windows Release'
- #vmImage: windows-latest
-
- workspace:
- clean: all
-
- steps:
- - template: ./find-tools.yml
-
- - powershell: |
- git clone $(SourcesRepo) -b $(TclSourceTag) --depth 1 "$(ExternalsDir)\$(TclSourceTag)"
- displayName: 'Check out Tcl sources'
-
- - powershell: |
- git clone $(SourcesRepo) -b $(TkSourceTag) --depth 1 "$(ExternalsDir)\$(TkSourceTag)"
- displayName: 'Check out Tk sources'
-
- - powershell: |
- git clone $(SourcesRepo) -b $(TixSourceTag) --depth 1 "$(ExternalsDir)\$(TixSourceTag)"
- displayName: 'Check out Tix sources'
-
- # This msbuild.rsp file will be used by the build to forcibly override these variables
- - powershell: |
- del -Force -EA 0 msbuild.rsp
- "/p:IntDir=$(IntDir)\" >> msbuild.rsp
- "/p:ExternalsDir=$(ExternalsDir)\" >> msbuild.rsp
- "/p:tclDir=$(ExternalsDir)\$(TclSourceTag)\" >> msbuild.rsp
- "/p:tkDir=$(ExternalsDir)\$(TkSourceTag)\" >> msbuild.rsp
- "/p:tixDir=$(ExternalsDir)\$(TixSourceTag)\" >> msbuild.rsp
- displayName: 'Generate msbuild.rsp'
-
- - powershell: |
- & "$(msbuild)" PCbuild\tcl.vcxproj "@msbuild.rsp" /p:Platform=Win32 /p:tcltkDir="$(OutDir)\win32"
- & "$(msbuild)" PCbuild\tk.vcxproj "@msbuild.rsp" /p:Platform=Win32 /p:tcltkDir="$(OutDir)\win32"
- & "$(msbuild)" PCbuild\tix.vcxproj "@msbuild.rsp" /p:Platform=Win32 /p:tcltkDir="$(OutDir)\win32"
- displayName: 'Build for win32'
-
- - powershell: |
- & "$(msbuild)" PCbuild\tcl.vcxproj "@msbuild.rsp" /p:Platform=x64 /p:tcltkDir="$(OutDir)\amd64"
- & "$(msbuild)" PCbuild\tk.vcxproj "@msbuild.rsp" /p:Platform=x64 /p:tcltkDir="$(OutDir)\amd64"
- & "$(msbuild)" PCbuild\tix.vcxproj "@msbuild.rsp" /p:Platform=x64 /p:tcltkDir="$(OutDir)\amd64"
- displayName: 'Build for amd64'
-
- - powershell: |
- & "$(msbuild)" PCbuild\tcl.vcxproj "@msbuild.rsp" /p:Platform=ARM64 /p:tcltkDir="$(OutDir)\arm64"
- & "$(msbuild)" PCbuild\tk.vcxproj "@msbuild.rsp" /p:Platform=ARM64 /p:tcltkDir="$(OutDir)\arm64"
- & "$(msbuild)" PCbuild\tix.vcxproj "@msbuild.rsp" /p:Platform=ARM64 /p:tcltkDir="$(OutDir)\arm64"
- displayName: 'Build for arm64'
-
- - publish: '$(OutDir)'
- artifact: 'tcltk'
- displayName: 'Publishing tcltk'