blob: 9de04fbf9d14c3fb803ee87c38f2771584ee114b (
plain) (
blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
|
jobs:
- job: Distfiles
pool:
vmImage: ubuntu-16.04
steps:
- script: build-scripts/make-distfiles
displayName: 'Create distfiles.zip'
- task: PublishBuildArtifacts@1
inputs:
pathtoPublish: '$(System.DefaultWorkingDirectory)/distfiles.zip'
artifactName: distfiles
displayName: 'Upload extra distribution files'
condition: eq(variables['System.PullRequest.IsFork'], 'False')
- job: Linux
pool:
vmImage: ubuntu-16.04
steps:
- script: build-scripts/build-linux
displayName: 'Generate, build, and test'
- task: PublishBuildArtifacts@1
inputs:
pathtoPublish: '$(System.DefaultWorkingDirectory)/distribution'
artifactName: distribution
displayName: 'Upload source distribution'
condition: eq(variables['System.PullRequest.IsFork'], 'False')
- task: PublishTestResults@2
inputs:
testRunTitle: Linux
buildPlatform: Linux
- job: Windows
pool:
# If updating this, see note in TODO about MSVC wildcard expansion.
vmImage: windows-2019
strategy:
matrix:
msvc32:
wordsize: 32
tool: msvc
msvc64:
wordsize: 64
tool: msvc
mingw32:
wordsize: 32
tool: mingw
mingw64:
wordsize: 64
tool: mingw
maxParallel: 4
steps:
- bash: git config --global core.autocrlf input
displayName: 'Disable git autocrlf'
- checkout: self
displayName: 'Get sources'
- task: DownloadBuildArtifacts@0
displayName: 'Download distribution files'
inputs:
artifactName: distfiles
downloadPath: $(System.DefaultWorkingDirectory)
condition: eq(variables['System.PullRequest.IsFork'], 'False')
- script: build-scripts/build-windows.bat $(wordsize) $(tool)
displayName: 'Build, test, generate binary distributions'
- task: PublishBuildArtifacts@1
inputs:
pathtoPublish: '$(System.DefaultWorkingDirectory)/distribution'
artifactName: distribution
displayName: 'Upload binary distributions'
condition: eq(variables['System.PullRequest.IsFork'], 'False')
- task: PublishTestResults@2
inputs:
testRunTitle: Windows-$(wordsize)$(tool)
buildPlatform: Windows-$(wordsize)$(tool)
dependsOn: Distfiles
condition: succeeded()
- job: macOS
pool:
vmImage: macOS-10.14
steps:
- task: DownloadBuildArtifacts@0
displayName: 'Download distribution files'
inputs:
artifactName: distfiles
downloadPath: $(System.DefaultWorkingDirectory)
condition: eq(variables['System.PullRequest.IsFork'], 'False')
- script: build-scripts/build-mac
displayName: 'Mac build and test'
- task: PublishTestResults@2
inputs:
testRunTitle: MacOS
buildPlatform: MacOS
dependsOn: Distfiles
condition: succeeded()
- job: AppImage
pool:
vmImage: ubuntu-16.04
steps:
- script: build-scripts/build-appimage
displayName: 'Build AppImage'
- task: PublishBuildArtifacts@1
inputs:
pathtoPublish: '$(System.DefaultWorkingDirectory)/distribution'
artifactName: distribution
displayName: 'Upload AppImage'
condition: eq(variables['System.PullRequest.IsFork'], 'False')
- task: PublishTestResults@2
inputs:
testRunTitle: AppImage
buildPlatform: AppImage
- job: Linux32
pool:
vmImage: ubuntu-16.04
steps:
- script: build-scripts/build-linux32
displayName: 'Linux 32-bit'
- task: PublishTestResults@2
inputs:
testRunTitle: Linux32
buildPlatform: Linux32
- job: Fuzzers
pool:
vmImage: ubuntu-16.04
steps:
- script: build-scripts/build-fuzzer
displayName: 'Build Fuzzer'
- job: Sanitizers
pool:
vmImage: ubuntu-16.04
steps:
- script: build-scripts/test-sanitizers
displayName: 'Sanitizer Tests'
- task: PublishTestResults@2
inputs:
testRunTitle: Sanitizers
buildPlatform: Sanitizers
|