• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1jobs:
2- job: Build_Docs
3  displayName: Docs build
4  pool:
5    name: 'Windows Release'
6    #vmImage: windows-2019
7
8  workspace:
9    clean: all
10
11  steps:
12  - template: ./checkout.yml
13
14  - script: Doc\make.bat html
15    displayName: 'Build HTML docs'
16    env:
17      BUILDDIR: $(Build.BinariesDirectory)\Doc
18
19  - script: Doc\make.bat htmlhelp
20    displayName: 'Build CHM docs'
21    env:
22      BUILDDIR: $(Build.BinariesDirectory)\Doc
23
24  #- powershell: |
25  #    mkdir -Force "$(Build.BinariesDirectory)\Doc\htmlhelp"
26  #    iwr "https://www.python.org/ftp/python/3.8.0/python380.chm" -OutFile "$(Build.BinariesDirectory)\Doc\htmlhelp\python390a0.chm"
27  #  displayName: 'Cheat at building CHM docs'
28
29  - task: CopyFiles@2
30    displayName: 'Assemble artifact: Doc'
31    inputs:
32      sourceFolder: $(Build.BinariesDirectory)\Doc
33      targetFolder: $(Build.ArtifactStagingDirectory)\Doc
34      contents: |
35        html\**\*
36        htmlhelp\*.chm
37
38  - task: PublishPipelineArtifact@0
39    displayName: 'Publish artifact: doc'
40    inputs:
41      targetPath: $(Build.ArtifactStagingDirectory)\Doc
42      artifactName: doc
43
44- job: Build_Python
45  displayName: Python build
46
47  pool:
48    vmImage: windows-2019
49
50  workspace:
51    clean: all
52
53  strategy:
54    matrix:
55      win32:
56        Name: win32
57        Arch: win32
58        Platform: x86
59        Configuration: Release
60        _HostPython: .\python
61      win32_d:
62        Name: win32_d
63        Arch: win32
64        Platform: x86
65        Configuration: Debug
66        _HostPython: .\python
67      amd64_d:
68        Name: amd64_d
69        Arch: amd64
70        Platform: x64
71        Configuration: Debug
72        _HostPython: .\python
73      arm64:
74        Name: arm64
75        Arch: arm64
76        Platform: ARM64
77        Configuration: Release
78        _HostPython: python
79      arm64_d:
80        Name: arm64_d
81        Arch: arm64
82        Platform: ARM64
83        Configuration: Debug
84        _HostPython: python
85
86  steps:
87    - template: ./build-steps.yml
88
89- job: Build_Python_NonPGO
90  displayName: Python non-PGO build
91  condition: and(succeeded(), ne(variables['DoPGO'], 'true'))
92
93  pool:
94    vmImage: windows-2019
95
96  workspace:
97    clean: all
98
99  strategy:
100    matrix:
101      amd64:
102        Name: amd64
103        Arch: amd64
104        Platform: x64
105        Configuration: Release
106        _HostPython: .\python
107
108  steps:
109    - template: ./build-steps.yml
110
111
112- job: Build_Python_PGO
113  displayName: Python PGO build
114  condition: and(succeeded(), eq(variables['DoPGO'], 'true'))
115
116  # Allow up to five hours for PGO
117  timeoutInMinutes: 300
118
119  pool:
120    name: 'Windows Release'
121
122  workspace:
123    clean: all
124
125  strategy:
126    matrix:
127      amd64:
128        Name: amd64
129        Arch: amd64
130        Platform: x64
131        Configuration: Release
132        _HostPython: .\python
133
134  steps:
135    - template: ./build-steps.yml
136      parameters:
137        ShouldPGO: true
138
139
140- job: TclTk_Lib
141  displayName: Publish Tcl/Tk Library
142
143  pool:
144    vmImage: windows-2019
145
146  workspace:
147    clean: all
148
149  steps:
150  - template: ./checkout.yml
151
152  - script: PCbuild\get_externals.bat --no-openssl --no-libffi
153    displayName: 'Get external dependencies'
154
155  - task: MSBuild@1
156    displayName: 'Copy Tcl/Tk lib for publish'
157    inputs:
158      solution: PCbuild\tcltk.props
159      platform: x86
160      msbuildArguments: /t:CopyTclTkLib /p:OutDir="$(Build.ArtifactStagingDirectory)\tcl_win32"
161
162  - task: MSBuild@1
163    displayName: 'Copy Tcl/Tk lib for publish'
164    inputs:
165      solution: PCbuild\tcltk.props
166      platform: x64
167      msbuildArguments: /t:CopyTclTkLib /p:OutDir="$(Build.ArtifactStagingDirectory)\tcl_amd64"
168
169  - task: PublishPipelineArtifact@0
170    displayName: 'Publish artifact: tcltk_lib_win32'
171    inputs:
172      targetPath: '$(Build.ArtifactStagingDirectory)\tcl_win32'
173      artifactName: tcltk_lib_win32
174
175  - task: PublishPipelineArtifact@0
176    displayName: 'Publish artifact: tcltk_lib_amd64'
177    inputs:
178      targetPath: '$(Build.ArtifactStagingDirectory)\tcl_amd64'
179      artifactName: tcltk_lib_amd64
180