-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy path.gitlab-ci.yml
More file actions
225 lines (198 loc) · 5.55 KB
/
Copy path.gitlab-ci.yml
File metadata and controls
225 lines (198 loc) · 5.55 KB
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
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
default:
tags: [linux,docker]
image: registry.gitlab.com/libtiff/libtiff-ci-ubuntu24.04:latest
stages:
- pre-build
- compat
- build
- static-analysis
- pages
# Basic build that runs on all repositories (including forks)
# This acts as a gate - if this fails, other jobs won't run
# Split into two jobs because tags cannot be set conditionally
basic-build-fork:
stage: pre-build
tags: [saas-linux-small-amd64]
rules:
- if: '$CI_PROJECT_PATH != "libtiff/libtiff"'
script:
- sh build/gitlab-ci cmake "Unix Makefiles" Debug static
basic-build:
stage: pre-build
rules:
- if: '$CI_PROJECT_PATH == "libtiff/libtiff"'
script:
- sh build/gitlab-ci cmake "Unix Makefiles" Debug static
# All jobs below only run on the main libtiff/libtiff repository
# Forks will only run the basic-build-fork job above
linux-ac-current:
stage: build
rules:
- if: '$CI_PROJECT_PATH == "libtiff/libtiff"'
script:
- sh build/gitlab-ci autoconf
after_script:
- 'cat autoconf-build/test/test-suite.log'
artifacts:
name: distribution
paths:
- distribution
linux-ac-old:
stage: build
rules:
- if: '$CI_PROJECT_PATH == "libtiff/libtiff"'
image: registry.gitlab.com/libtiff/libtiff-ci-ubuntu22.04:latest
script:
- sh build/gitlab-ci autoconf-minimal
after_script:
- 'cat autoconf-build/test/test-suite.log'
linux-cmake-make-current:
stage: build
rules:
- if: '$CI_PROJECT_PATH == "libtiff/libtiff"'
script:
- sh build/gitlab-ci cmake "Unix Makefiles" Release
linux-cmake-make-current-static:
stage: build
rules:
- if: '$CI_PROJECT_PATH == "libtiff/libtiff"'
script:
- sh build/gitlab-ci cmake "Unix Makefiles" Release static
linux-cmake-ninja-current:
stage: build
rules:
- if: '$CI_PROJECT_PATH == "libtiff/libtiff"'
script:
- sh build/gitlab-ci cmake "Ninja" Debug
linux-cmake-make-old:
stage: build
rules:
- if: '$CI_PROJECT_PATH == "libtiff/libtiff"'
image: registry.gitlab.com/libtiff/libtiff-ci-ubuntu22.04:latest
script:
- sh build/gitlab-ci cmake "Unix Makefiles" Release
gcc-cpp-compat:
stage: compat
rules:
- if: '$CI_PROJECT_PATH == "libtiff/libtiff"'
script:
- sh build/gitlab-ci cmake "Ninja" Debug cxxcompat
freebsd15-release:
stage: build
rules:
- if: '$CI_PROJECT_PATH == "libtiff/libtiff"'
tags: [freebsd15]
script:
- sh build/gitlab-ci cmake Ninja Release
freebsd15-debug:
stage: build
rules:
- if: '$CI_PROJECT_PATH == "libtiff/libtiff"'
tags: [freebsd15]
script:
- sh build/gitlab-ci cmake Ninja Debug
clang-cpp-compat:
stage: compat
rules:
- if: '$CI_PROJECT_PATH == "libtiff/libtiff"'
tags: [freebsd15]
script:
- sh build/gitlab-ci cmake Ninja Debug cxxcompat
macos26-release:
stage: build
rules:
- if: '$CI_PROJECT_PATH == "libtiff/libtiff"'
tags: [macos26]
script:
- sh build/gitlab-ci cmake Ninja Release
macos26-debug:
stage: build
rules:
- if: '$CI_PROJECT_PATH == "libtiff/libtiff"'
tags: [macos26]
script:
- sh build/gitlab-ci cmake Ninja Debug
windows-vs2026-release:
stage: build
rules:
- if: '$CI_PROJECT_PATH == "libtiff/libtiff"'
tags: [windows, docker]
image: registry.gitlab.com/codelibre/containers/vs2026-libtiff:latest
script:
- powershell build/gitlab-ci.ps1 Ninja Release
windows-vs2026-debug:
stage: build
rules:
- if: '$CI_PROJECT_PATH == "libtiff/libtiff"'
tags: [windows, docker]
image: registry.gitlab.com/codelibre/containers/vs2026-libtiff:latest
script:
- powershell build/gitlab-ci.ps1 Ninja Debug
windows-vs2022-release:
stage: build
rules:
- if: '$CI_PROJECT_PATH == "libtiff/libtiff"'
tags: [windows, docker]
image: registry.gitlab.com/codelibre/containers/vs2022-libtiff:latest
script:
- powershell build/gitlab-ci.ps1 Ninja Release
windows-vs2022-debug:
stage: build
rules:
- if: '$CI_PROJECT_PATH == "libtiff/libtiff"'
tags: [windows, docker]
image: registry.gitlab.com/codelibre/containers/vs2022-libtiff:latest
script:
- powershell build/gitlab-ci.ps1 Ninja Debug
windows-cygwin-release:
stage: build
rules:
- if: '$CI_PROJECT_PATH == "libtiff/libtiff"'
tags: [windows, cygwin]
variables:
CHERE_INVOKING: 1
script:
- c:/tools/cygwin/bin/bash -l build/gitlab-ci-cygwin Ninja Release
windows-cygwin-debug:
stage: build
rules:
- if: '$CI_PROJECT_PATH == "libtiff/libtiff"'
tags: [windows, cygwin]
variables:
CHERE_INVOKING: 1
script:
- c:/tools/cygwin/bin/bash -l build/gitlab-ci-cygwin Ninja Debug
windows-mingw-release:
stage: build
rules:
- if: '$CI_PROJECT_PATH == "libtiff/libtiff"'
tags: [windows, docker]
image: registry.gitlab.com/codelibre/containers/mingw-libtiff:latest
script:
- bash build/gitlab-ci-mingw Ninja Release
windows-mingw-debug:
stage: build
rules:
- if: '$CI_PROJECT_PATH == "libtiff/libtiff"'
tags: [windows, docker]
image: registry.gitlab.com/codelibre/containers/mingw-libtiff:latest
script:
- bash build/gitlab-ci-mingw Ninja Debug
coverity:
stage: static-analysis
rules:
- if: '$CI_PROJECT_PATH == "libtiff/libtiff" && $CI_COMMIT_BRANCH == "master"'
image: registry.gitlab.com/libtiff/libtiff-ci-ubuntu24.04-coverity:latest
script:
- sh build/gitlab-ci coverity "Ninja" Debug
pages:
stage: pages
rules:
- if: '$CI_PROJECT_PATH == "libtiff/libtiff" && $CI_COMMIT_BRANCH == "master"'
script:
- sh build/gitlab-ci cmake "Ninja" Debug
- cp -r cmake-install/share/doc/tiff/manual/html public
artifacts:
name: $CI_PROJECT_NAME-$CI_JOB_NAME
paths:
- public