CMake Nightly Date Stamp
[kiteware-cmake.git] / .gitlab-ci.yml
blob1508615594875643868cd7b28b15349794ca894c
1 include:
2     # Metadata shared by many jobs
3     - local: .gitlab/rules.yml
4     - local: .gitlab/artifacts.yml
6     # OS builds.
7     - local: .gitlab/os-linux.yml
8     - local: .gitlab/os-macos.yml
9     - local: .gitlab/os-windows.yml
11     # Post-build steps
12     - local: .gitlab/upload.yml
14 stages:
15     - prep
16     - build
17     - test
18     - test-ext
19     - upload
21 variables:
22     # Some jobs that place their artifacts in a different directory will override this.
23     CMAKE_CI_BUILD_DIR: build
25 ################################################################################
26 # Job declarations
28 # Each job must pull in each of the following keys:
30 #   - a "base image"
31 #   - a build script
32 #   - tags for the jobs
33 #   - rules for when to run the job
35 # Additionally, jobs may also contain:
37 #   - artifacts
38 #   - dependency/needs jobs for required jobs
39 ################################################################################
41 # Job prefixes:
42 #   - `b:` build
43 #   - `l:` lint
44 #   - `p:` prep
45 #   - `t:` test
46 #   - `u:` upload
48 # Prep jobs
50 p:source-package:
51     extends:
52         - .linux_prep_source
53         - .cmake_prep_source_linux
54         - .linux_x86_64_tags
55         - .cmake_release_artifacts
56         - .run_only_for_package
57     variables:
58         CMAKE_CI_ARTIFACTS_NAME: "artifacts-source"
60 p:doc-package:
61     extends:
62         - .fedora39_sphinx_package
63         - .cmake_prep_doc_linux
64         - .linux_x86_64_tags
65         - .cmake_doc_artifacts
66         - .run_only_for_package
68 u:source-package:
69     extends:
70         - .rsync_upload_package
71         - .run_only_for_package
72     dependencies:
73         - p:source-package
74     needs:
75         - p:source-package
77 # Documentation builds
79 b:cmake.org-help:
80     extends:
81         - .cmake_org_help
82         - .run_cmake_org_help
83     dependencies: []
84     needs: []
86 u:cmake.org-help:
87     extends:
88         - .rsync_upload_help
89         - .run_cmake_org_help
90     dependencies:
91         - b:cmake.org-help
92     needs:
93         - b:cmake.org-help
95 # Lint builds
97 l:codespell:
98     extends:
99         - .cmake_codespell_linux
100         - .linux_x86_64_tags
101         - .run_automatically
103 l:iwyu-debian12:
104     extends:
105         - .debian12_iwyu
106         - .cmake_build_linux
107         - .linux_x86_64_tags
108         - .cmake_cdash_artifacts
109         - .run_automatically
111 l:tidy-fedora39:
112     extends:
113         - .fedora39_tidy
114         - .cmake_build_linux
115         - .cmake_tidy_artifacts
116         - .linux_x86_64_tags
117         - .cmake_cdash_artifacts
118         - .run_automatically
120 l:sphinx-fedora39:
121     extends:
122         - .fedora39_sphinx
123         - .cmake_build_linux
124         - .cmake_sphinx_artifacts
125         - .linux_x86_64_tags
126         - .run_automatically
127     variables:
128         CMAKE_CI_JOB_CONTINUOUS: "true"
129         CMAKE_CI_JOB_HELP: "true"
131 l:clang-analyzer-fedora39:
132     extends:
133         - .fedora39_clang_analyzer
134         - .cmake_build_linux
135         - .linux_x86_64_tags
136         - .run_automatically
137     variables:
138         CMAKE_CI_JOB_NIGHTLY: "true"
140 # Linux builds
142 b:centos7-x86_64:
143     extends:
144         - .linux_release_x86_64
145         - .cmake_build_linux_release
146         - .cmake_release_artifacts
147         - .linux_x86_64_tags
148         - .run_manually
149     variables:
150         CMAKE_CI_ARTIFACTS_NAME: "artifacts-centos7-x86_64"
152 b:centos7-aarch64:
153     extends:
154         - .linux_release_aarch64
155         - .cmake_build_linux_release
156         - .cmake_release_artifacts
157         - .linux_aarch64_tags
158         - .run_manually
159     variables:
160         CMAKE_CI_ARTIFACTS_NAME: "artifacts-centos7-aarch64"
161         CMAKE_CI_NO_MR: "true"
163 t:debian12-ninja:
164     extends:
165         - .debian12_ninja
166         - .cmake_test_linux_release
167         - .linux_x86_64_tags
168         - .cmake_junit_artifacts
169         - .run_dependent
170         - .needs_centos7_x86_64
171     variables:
172         CMAKE_CI_JOB_NIGHTLY_NINJA: "true"
174 t:debian12-aarch64-ninja:
175     extends:
176         - .debian12_aarch64_ninja
177         - .cmake_test_linux_release
178         - .linux_aarch64_tags
179         - .cmake_junit_artifacts
180         - .run_dependent
181         - .needs_centos7_aarch64
182     variables:
183         CMAKE_CI_NO_MR: "true"
185 t:debian12-ninja-clang:
186     extends:
187         - .debian12_ninja_clang
188         - .cmake_test_linux_release
189         - .linux_x86_64_tags
190         - .run_dependent
191         - .needs_centos7_x86_64
192     variables:
193         CMAKE_CI_JOB_NIGHTLY: "true"
195 t:debian12-makefiles-clang:
196     extends:
197         - .debian12_makefiles_clang
198         - .cmake_test_linux_release
199         - .linux_x86_64_tags
200         - .run_dependent
201         - .needs_centos7_x86_64
202     variables:
203         CMAKE_CI_JOB_NIGHTLY: "true"
205 t:debian12-ninja-multi-symlinked:
206     extends:
207         - .debian12_ninja_multi_symlinked
208         - .cmake_test_linux_release
209         - .linux_x86_64_tags
210         - .cmake_junit_artifacts
211         - .run_dependent
212         - .needs_centos7_x86_64
213     variables:
214         CMAKE_CI_JOB_NIGHTLY: "true"
215         CMAKE_CI_JOB_NIGHTLY_NINJA: "true"
217 t:debian12-hip-radeon:
218     extends:
219         - .debian12_hip_radeon
220         - .cmake_test_linux_release
221         - .linux_x86_64_tags_radeon
222         - .run_dependent
223         - .needs_centos7_x86_64
224     variables:
225         CMAKE_CI_JOB_NIGHTLY: "true"
227 t:fedora39-hip-radeon:
228     extends:
229         - .fedora39_hip_radeon
230         - .cmake_test_linux_release
231         - .linux_x86_64_tags_radeon
232         - .run_dependent
233         - .needs_centos7_x86_64
234     variables:
235         CMAKE_CI_JOB_NIGHTLY: "true"
237 t:fedora39-ninja-clang:
238     extends:
239         - .fedora39_ninja_clang
240         - .cmake_test_linux_release
241         - .linux_x86_64_tags
242         - .run_dependent
243         - .needs_centos7_x86_64
244     variables:
245         CMAKE_CI_JOB_NIGHTLY: "true"
247 t:fedora39-ninja-multi-clang:
248     extends:
249         - .fedora39_ninja_multi_clang
250         - .cmake_test_linux_release
251         - .linux_x86_64_tags
252         - .run_dependent
253         - .needs_centos7_x86_64
254     variables:
255         CMAKE_CI_JOB_NIGHTLY: "true"
257 t:fedora39-makefiles-clang:
258     extends:
259         - .fedora39_makefiles_clang
260         - .cmake_test_linux_release
261         - .linux_x86_64_tags
262         - .run_dependent
263         - .needs_centos7_x86_64
264     variables:
265         CMAKE_CI_JOB_NIGHTLY: "true"
267 t:fedora39-makefiles:
268     extends:
269         - .fedora39_makefiles
270         - .cmake_test_linux_release
271         - .linux_x86_64_tags
272         - .run_dependent
273         - .needs_centos7_x86_64
275 t:fedora39-makefiles-nospace:
276     extends:
277         - .fedora39_makefiles
278         - .cmake_test_linux_release
279         - .linux_x86_64_tags
280         - .cmake_junit_artifacts
281         - .run_dependent
282         - .needs_centos7_x86_64
283     variables:
284         GIT_CLONE_PATH: "$CI_BUILDS_DIR/cmake-ci"
285         CMAKE_CI_BUILD_NAME: fedora39_makefiles_nospace
286         CMAKE_CI_JOB_NIGHTLY: "true"
288 t:nvhpc22.11-ninja:
289     extends:
290         - .nvhpc_ninja
291         - .cmake_test_linux_release
292         - .linux_x86_64_v3_tags_cuda
293         - .run_dependent
294         - .needs_centos7_x86_64
295     variables:
296         CMAKE_CI_JOB_NIGHTLY: "true"
298 t:cuda9.2-nvidia:
299     extends:
300         - .cuda9.2_nvidia
301         - .cmake_test_linux_release
302         - .linux_x86_64_tags_cuda
303         - .run_dependent
304         - .needs_centos7_x86_64
305     variables:
306         CMAKE_CI_JOB_NIGHTLY: "true"
308 t:cuda10.2-nvidia:
309     extends:
310         - .cuda10.2_nvidia
311         - .cmake_test_linux_release
312         - .linux_x86_64_tags_cuda
313         - .cmake_junit_artifacts
314         - .run_dependent
315         - .needs_centos7_x86_64
316     variables:
317         CMAKE_CI_JOB_NIGHTLY: "true"
319 t:cuda10.2-clang:
320     extends:
321         - .cuda10.2_clang
322         - .cmake_test_linux_release
323         - .linux_x86_64_tags_cuda
324         - .run_dependent
325         - .needs_centos7_x86_64
326     variables:
327         CMAKE_CI_JOB_NIGHTLY: "true"
329 t:cuda11.6-nvidia:
330     extends:
331         - .cuda11.6_nvidia
332         - .cmake_test_linux_release
333         - .linux_x86_64_tags_cuda
334         - .cmake_junit_artifacts
335         - .run_dependent
336         - .needs_centos7_x86_64
337     variables:
338         CMAKE_CI_JOB_NIGHTLY: "true"
340 t:cuda11.6-clang:
341     extends:
342         - .cuda11.6_clang
343         - .cmake_test_linux_release
344         - .linux_x86_64_tags_cuda
345         - .run_dependent
346         - .needs_centos7_x86_64
347     variables:
348         CMAKE_CI_JOB_NIGHTLY: "true"
350 t:cuda11.8-minimal-ninja:
351     extends:
352         - .cuda11.8_minimal_nvidia
353         - .cmake_test_linux_release
354         - .linux_x86_64_tags_cuda
355         - .run_dependent
356         - .needs_centos7_x86_64
357     variables:
358         CMAKE_CI_JOB_NIGHTLY: "true"
360 t:cuda11.8-minimal-splayed-ninja:
361     extends:
362         - .cuda11.8_splayed_nvidia
363         - .cmake_test_linux_release
364         - .linux_x86_64_tags_cuda
365         - .run_dependent
366         - .needs_centos7_x86_64
367     variables:
368         CMAKE_CI_JOB_NIGHTLY: "true"
370 t:cuda12.2-nvidia:
371     extends:
372         - .cuda12.2_nvidia
373         - .cmake_test_linux_release
374         - .linux_x86_64_tags_cuda
375         - .cmake_junit_artifacts
376         - .run_dependent
377         - .needs_centos7_x86_64
379 t:cuda12.2-clang:
380     extends:
381         - .cuda12.2_clang
382         - .cmake_test_linux_release
383         - .linux_x86_64_tags_cuda
384         - .run_dependent
385         - .needs_centos7_x86_64
386     variables:
387         CMAKE_CI_JOB_NIGHTLY: "true"
389 t:hip5.5-nvidia:
390     extends:
391         - .hip5.5_nvidia
392         - .cmake_test_linux_release
393         - .linux_x86_64_tags_cuda
394         - .run_dependent
395         - .needs_centos7_x86_64
396     variables:
397         CMAKE_CI_JOB_NIGHTLY: "true"
399 t:hip5.5-radeon:
400     extends:
401         - .hip5.5_radeon
402         - .cmake_test_linux_release
403         - .linux_x86_64_tags_radeon
404         - .run_dependent
405         - .needs_centos7_x86_64
406     variables:
407         CMAKE_CI_JOB_NIGHTLY: "true"
409 t:linux-gcc-cxx-modules-ninja:
410     extends:
411         - .gcc_cxx_modules_ninja
412         - .cmake_test_linux_release
413         - .linux_x86_64_tags
414         - .run_dependent
415         - .needs_centos7_x86_64
416     variables:
417         CMAKE_CI_JOB_NIGHTLY: "true"
419 t:linux-gcc-cxx-modules-ninja-multi:
420     extends:
421         - .gcc_cxx_modules_ninja_multi
422         - .cmake_test_linux_release
423         - .linux_x86_64_tags
424         - .run_dependent
425         - .needs_centos7_x86_64
426     variables:
427         CMAKE_CI_JOB_NIGHTLY: "true"
429 t:debian10-legacy:
430     extends:
431         - .debian10_legacy
432         - .cmake_test_linux_release
433         - .linux_x86_64_tags
434         - .cmake_junit_artifacts
435         - .run_dependent
436         - .needs_centos7_x86_64
437     variables:
438         CMAKE_CI_JOB_NIGHTLY: "true"
440 b:fedora39-ninja:
441     extends:
442         - .fedora39_ninja
443         - .cmake_build_linux
444         - .cmake_build_artifacts
445         - .linux_x86_64_tags
446         - .run_manually
447     variables:
448         CMAKE_CI_JOB_CONTINUOUS: "true"
450 b:fedora39-makefiles-symlinked:
451     extends:
452         - .fedora39_makefiles_symlinked
453         - .cmake_build_linux
454         - .cmake_build_artifacts
455         - .linux_x86_64_tags
456         - .run_manually
457     variables:
458         CMAKE_CI_JOB_NIGHTLY: "true"
460 b:debian12-makefiles-inplace:
461     extends:
462         - .debian12_makefiles_inplace
463         - .cmake_build_linux_standalone
464         - .linux_x86_64_tags
465         - .run_manually
466     variables:
467         CMAKE_CI_JOB_NIGHTLY: "true"
469 b:debian12-extdeps:
470     extends:
471         - .debian12_extdeps
472         - .cmake_build_linux_standalone
473         - .linux_x86_64_tags
474         - .run_manually
475     variables:
476         CMAKE_CI_JOB_NIGHTLY: "true"
478 b:debian12-aarch64-extdeps:
479     extends:
480         - .debian12_aarch64_extdeps
481         - .cmake_build_linux_standalone
482         - .linux_aarch64_tags
483         - .run_manually
484     variables:
485         CMAKE_CI_JOB_NIGHTLY: "true"
487 b:fedora39-extdeps:
488     extends:
489         - .fedora39_extdeps
490         - .cmake_build_linux_standalone
491         - .linux_x86_64_tags
492         - .run_manually
493     variables:
494         CMAKE_CI_JOB_NIGHTLY: "true"
496 t:fedora39-ninja:
497     extends:
498         - .fedora39_ninja
499         - .cmake_test_linux
500         - .linux_x86_64_tags_x11
501         - .cmake_test_artifacts
502         - .run_dependent
503     dependencies:
504         - b:fedora39-ninja
505     needs:
506         - b:fedora39-ninja
507     variables:
508         CMAKE_CI_JOB_CONTINUOUS: "true"
510 t:fedora39-makefiles-symlinked:
511     extends:
512         - .fedora39_makefiles_symlinked
513         - .cmake_test_linux
514         - .linux_x86_64_tags_x11
515         - .cmake_test_artifacts
516         - .run_dependent
517     dependencies:
518         - b:fedora39-makefiles-symlinked
519     needs:
520         - b:fedora39-makefiles-symlinked
521     variables:
522         CMAKE_CI_JOB_NIGHTLY: "true"
524 t:fedora39-ninja-multi:
525     extends:
526         - .fedora39_ninja_multi
527         - .cmake_test_linux_external
528         - .linux_x86_64_tags
529         - .cmake_junit_artifacts
530         - .run_dependent
531     dependencies:
532         - t:fedora39-ninja
533     needs:
534         - t:fedora39-ninja
536 t:intel2016u2-makefiles:
537     extends:
538         - .cmake_test_linux_intelclassic_makefiles
539     variables:
540         CMAKE_CI_BUILD_NAME: intel2016u2_makefiles
541         CMAKE_CI_INTELCOMPILER_IMAGE_TAG: 2016u2-el7
543 t:intel2017u8-makefiles:
544     extends:
545         - .cmake_test_linux_intelclassic_makefiles
546     variables:
547         CMAKE_CI_BUILD_NAME: intel2017u8_makefiles
548         CMAKE_CI_INTELCOMPILER_IMAGE_TAG: 2017u8-el7
550 t:intel2018u4-makefiles:
551     extends:
552         - .cmake_test_linux_intelclassic_makefiles
553     variables:
554         CMAKE_CI_BUILD_NAME: intel2018u4_makefiles
555         CMAKE_CI_INTELCOMPILER_IMAGE_TAG: 2018u4-el7
557 t:intel2019u4-makefiles:
558     extends:
559         - .cmake_test_linux_intelclassic_makefiles
560     variables:
561         CMAKE_CI_BUILD_NAME: intel2019u4_makefiles
562         CMAKE_CI_INTELCOMPILER_IMAGE_TAG: 2019u4-el7
564 t:intel2020u4-makefiles:
565     extends:
566         - .cmake_test_linux_intelclassic_makefiles
567     variables:
568         CMAKE_CI_BUILD_NAME: intel2020u4_makefiles
569         CMAKE_CI_INTELCOMPILER_IMAGE_TAG: 2020u4-el8
571 t:intel2021.1.1-makefiles:
572     extends:
573         - .cmake_test_linux_intelclassic_makefiles
574     variables:
575         CMAKE_CI_BUILD_NAME: intel2021.1.1_makefiles
576         CMAKE_CI_INTELCOMPILER_IMAGE_TAG: 2021.1.1-el8
578 t:intel2021.1.2-makefiles:
579     extends:
580         - .cmake_test_linux_intelclassic_makefiles
581     variables:
582         CMAKE_CI_BUILD_NAME: intel2021.1.2_makefiles
583         CMAKE_CI_INTELCOMPILER_IMAGE_TAG: 2021.1.2-el8
585 t:intel2021.2.0-makefiles:
586     extends:
587         - .cmake_test_linux_intelclassic_makefiles
588     variables:
589         CMAKE_CI_BUILD_NAME: intel2021.2.0_makefiles
590         CMAKE_CI_INTELCOMPILER_IMAGE_TAG: 2021.2.0-el8
592 t:intel2021.3.0-makefiles:
593     extends:
594         - .cmake_test_linux_intelclassic_makefiles
595     variables:
596         CMAKE_CI_BUILD_NAME: intel2021.3.0_makefiles
597         CMAKE_CI_INTELCOMPILER_IMAGE_TAG: 2021.3.0-el8
599 t:intel2021.4.0-makefiles:
600     extends:
601         - .cmake_test_linux_intelclassic_makefiles
602     variables:
603         CMAKE_CI_BUILD_NAME: intel2021.4.0_makefiles
604         CMAKE_CI_INTELCOMPILER_IMAGE_TAG: 2021.4.0-el8
606 t:intel2021.5.0-makefiles:
607     extends:
608         - .cmake_test_linux_intelclassic_makefiles
609     variables:
610         CMAKE_CI_BUILD_NAME: intel2021.5.0_makefiles
611         CMAKE_CI_INTELCOMPILER_IMAGE_TAG: 2022.0.2-el8
613 t:intel2021.6.0-makefiles:
614     extends:
615         - .cmake_test_linux_intelclassic_makefiles
616     variables:
617         CMAKE_CI_BUILD_NAME: intel2021.6.0_makefiles
618         CMAKE_CI_INTELCOMPILER_IMAGE_TAG: 2022.1.0-el8
620 t:intel2021.7.0-makefiles:
621     extends:
622         - .cmake_test_linux_intelclassic_makefiles
623     variables:
624         CMAKE_CI_BUILD_NAME: intel2021.7.0_makefiles
625         CMAKE_CI_INTELCOMPILER_IMAGE_TAG: 2022.2.0-el8
627 t:intel2021.8.0-makefiles:
628     extends:
629         - .cmake_test_linux_intelclassic_makefiles
630     variables:
631         CMAKE_CI_BUILD_NAME: intel2021.8.0_makefiles
632         CMAKE_CI_INTELCOMPILER_IMAGE_TAG: 2023.0.0-el8
634 t:intel2021.9.0-makefiles:
635     extends:
636         - .cmake_test_linux_intelclassic_makefiles
637     variables:
638         CMAKE_CI_BUILD_NAME: intel2021.9.0_makefiles
639         CMAKE_CI_INTELCOMPILER_IMAGE_TAG: 2023.1.0-el8
641 t:intel2021.10.0-makefiles:
642     extends:
643         - .cmake_test_linux_intelclassic_makefiles
644     variables:
645         CMAKE_CI_BUILD_NAME: intel2021.10.0_makefiles
646         CMAKE_CI_INTELCOMPILER_IMAGE_TAG: 2023.2.1-el8
648 t:oneapi2021.1.1-makefiles:
649     extends:
650         - .cmake_test_linux_inteloneapi_makefiles
651     variables:
652         CMAKE_CI_BUILD_NAME: oneapi2021.1.1_makefiles
653         CMAKE_CI_INTELCOMPILER_IMAGE_TAG: 2021.1.1-el8
655 t:oneapi2021.1.2-makefiles:
656     extends:
657         - .cmake_test_linux_inteloneapi_makefiles
658     variables:
659         CMAKE_CI_BUILD_NAME: oneapi2021.1.2_makefiles
660         CMAKE_CI_INTELCOMPILER_IMAGE_TAG: 2021.1.2-el8
662 t:oneapi2021.2.0-makefiles:
663     extends:
664         - .cmake_test_linux_inteloneapi_makefiles
665     variables:
666         CMAKE_CI_BUILD_NAME: oneapi2021.2.0_makefiles
667         CMAKE_CI_INTELCOMPILER_IMAGE_TAG: 2021.2.0-el8
669 t:oneapi2021.3.0-makefiles:
670     extends:
671         - .cmake_test_linux_inteloneapi_makefiles
672     variables:
673         CMAKE_CI_BUILD_NAME: oneapi2021.3.0_makefiles
674         CMAKE_CI_INTELCOMPILER_IMAGE_TAG: 2021.3.0-el8
676 t:oneapi2021.4.0-makefiles:
677     extends:
678         - .cmake_test_linux_inteloneapi_makefiles
679     variables:
680         CMAKE_CI_BUILD_NAME: oneapi2021.4.0_makefiles
681         CMAKE_CI_INTELCOMPILER_IMAGE_TAG: 2021.4.0-el8
683 t:oneapi2022.0.2-makefiles:
684     extends:
685         - .cmake_test_linux_inteloneapi_makefiles
686     variables:
687         CMAKE_CI_BUILD_NAME: oneapi2022.0.2_makefiles
688         CMAKE_CI_INTELCOMPILER_IMAGE_TAG: 2022.0.2-el8
690 t:oneapi2022.1.0-makefiles:
691     extends:
692         - .cmake_test_linux_inteloneapi_makefiles
693     variables:
694         CMAKE_CI_BUILD_NAME: oneapi2022.1.0_makefiles
695         CMAKE_CI_INTELCOMPILER_IMAGE_TAG: 2022.1.0-el8
697 t:oneapi2022.2.0-makefiles:
698     extends:
699         - .cmake_test_linux_inteloneapi_makefiles
700     variables:
701         CMAKE_CI_BUILD_NAME: oneapi2022.2.0_makefiles
702         CMAKE_CI_INTELCOMPILER_IMAGE_TAG: 2022.2.0-el8
704 t:oneapi2023.0.0-makefiles:
705     extends:
706         - .cmake_test_linux_inteloneapi_makefiles
707     variables:
708         CMAKE_CI_BUILD_NAME: oneapi2023.0.0_makefiles
709         CMAKE_CI_INTELCOMPILER_IMAGE_TAG: 2023.0.0-el8
711 t:oneapi2023.1.0-makefiles:
712     extends:
713         - .cmake_test_linux_inteloneapi_makefiles
714     variables:
715         CMAKE_CI_BUILD_NAME: oneapi2023.1.0_makefiles
716         CMAKE_CI_INTELCOMPILER_IMAGE_TAG: 2023.1.0-el8
718 t:oneapi2023.2.0-makefiles:
719     extends:
720         - .cmake_test_linux_inteloneapi_makefiles
721     variables:
722         CMAKE_CI_BUILD_NAME: oneapi2023.2.1_makefiles
723         CMAKE_CI_INTELCOMPILER_IMAGE_TAG: 2023.2.1-el8
725 t:oneapi2024.0.0-makefiles:
726     extends:
727         - .cmake_test_linux_inteloneapi_makefiles
728     variables:
729         CMAKE_CI_BUILD_NAME: oneapi2024.0.0_makefiles
730         CMAKE_CI_INTELCOMPILER_IMAGE_TAG: 2024.0.0-el8
732 t:oneapi2024.1.0-makefiles:
733     extends:
734         - .cmake_test_linux_inteloneapi_makefiles
735     variables:
736         CMAKE_CI_BUILD_NAME: oneapi2024.1.0_makefiles
737         CMAKE_CI_INTELCOMPILER_IMAGE_TAG: 2024.1.0-el8
739 b:linux-x86_64-package:
740     extends:
741         - .linux_package
742         - .linux_release_x86_64
743         - .cmake_build_linux_release
744         - .cmake_release_artifacts
745         - .linux_x86_64_tags
746         - .run_only_for_package
747     dependencies:
748         - p:doc-package
749     needs:
750         - p:doc-package
751     variables:
752         CMAKE_CI_ARTIFACTS_NAME: "artifacts-linux-x86_64"
754 u:linux-x86_64-package:
755     extends:
756         - .rsync_upload_package
757         - .run_only_for_package
758     dependencies:
759         - b:linux-x86_64-package
760     needs:
761         - b:linux-x86_64-package
763 b:linux-aarch64-package:
764     extends:
765         - .linux_package
766         - .linux_release_aarch64
767         - .cmake_build_linux_release
768         - .cmake_release_artifacts
769         - .linux_aarch64_tags
770         - .run_only_for_package
771     dependencies:
772         - p:doc-package
773     needs:
774         - p:doc-package
775     variables:
776         CMAKE_CI_ARTIFACTS_NAME: "artifacts-linux-aarch64"
778 u:linux-aarch64-package:
779     extends:
780         - .rsync_upload_package
781         - .run_only_for_package
782     dependencies:
783         - b:linux-aarch64-package
784     needs:
785         - b:linux-aarch64-package
787 ## Sanitizer builds
789 b:fedora39-asan:
790     extends:
791         - .fedora39_asan
792         - .cmake_build_linux
793         - .cmake_build_artifacts
794         - .linux_x86_64_tags
795         - .run_manually
796     variables:
797         CMAKE_CI_JOB_NIGHTLY: "true"
799 t:fedora39-asan:
800     extends:
801         - .fedora39_asan
802         - .cmake_memcheck_linux
803         - .linux_x86_64_tags
804         - .run_dependent
805     dependencies:
806         - b:fedora39-asan
807     needs:
808         - b:fedora39-asan
809     variables:
810         CMAKE_CI_JOB_NIGHTLY: "true"
812 # macOS builds
814 b:macos-x86_64-ninja:
815     extends:
816         - .macos_x86_64_ninja
817         - .cmake_build_macos
818         - .cmake_build_artifacts
819         - .macos_x86_64_tags
820         - .run_manually
821     variables:
822         CMAKE_CI_NO_MR: "true"
824 b:macos-arm64-ninja:
825     extends:
826         - .macos_arm64_ninja
827         - .cmake_build_macos
828         - .cmake_build_artifacts
829         - .macos_arm64_tags
830         - .run_manually
831     variables:
832         CMAKE_CI_JOB_CONTINUOUS: "true"
834 b:macos-arm64-ninja-symlinked:
835     extends:
836         - .macos_arm64_ninja_symlinked
837         - .cmake_build_macos
838         - .cmake_build_artifacts
839         - .macos_arm64_tags
840         - .run_manually
841     variables:
842         CMAKE_CI_JOB_NIGHTLY: "true"
844 b:macos-arm64-pch:
845     extends:
846         - .macos_arm64_pch
847         - .cmake_build_macos
848         - .macos_arm64_tags
849         - .run_manually
850     variables:
851         CMAKE_CI_JOB_NIGHTLY: "true"
853 t:macos-x86_64-ninja:
854     extends:
855         - .macos_x86_64_ninja
856         - .cmake_test_macos
857         - .cmake_test_artifacts
858         - .macos_x86_64_tags
859         - .run_dependent
860     dependencies:
861         - b:macos-x86_64-ninja
862     needs:
863         - b:macos-x86_64-ninja
864     variables:
865         CMAKE_CI_NO_MR: "true"
867 t:macos-arm64-ninja:
868     extends:
869         - .macos_arm64_ninja
870         - .cmake_test_macos
871         - .cmake_test_artifacts
872         - .macos_arm64_tags
873         - .run_dependent
874     dependencies:
875         - b:macos-arm64-ninja
876     needs:
877         - b:macos-arm64-ninja
878     variables:
879         CMAKE_CI_JOB_CONTINUOUS: "true"
880         CMAKE_CI_JOB_NIGHTLY_NINJA: "true"
882 t:macos-arm64-ninja-symlinked:
883     extends:
884         - .macos_arm64_ninja_symlinked
885         - .cmake_test_macos
886         - .cmake_test_artifacts
887         - .macos_arm64_tags
888         - .run_dependent
889     dependencies:
890         - b:macos-arm64-ninja-symlinked
891     needs:
892         - b:macos-arm64-ninja-symlinked
893     variables:
894         CMAKE_CI_JOB_NIGHTLY: "true"
895         CMAKE_CI_JOB_NIGHTLY_NINJA: "true"
897 b:macos-x86_64-makefiles:
898     extends:
899         - .macos_x86_64_makefiles
900         - .cmake_build_macos
901         - .cmake_build_artifacts
902         - .macos_x86_64_tags
903         - .run_manually
905 t:macos-x86_64-makefiles:
906     extends:
907         - .macos_x86_64_makefiles
908         - .cmake_test_macos
909         - .macos_x86_64_tags
910         - .run_dependent
911     dependencies:
912         - b:macos-x86_64-makefiles
913     needs:
914         - b:macos-x86_64-makefiles
916 t:macos-arm64-ninja-multi:
917     extends:
918         - .macos_arm64_ninja_multi
919         - .cmake_test_macos_external
920         - .macos_arm64_tags_ext
921         - .cmake_junit_artifacts
922         - .run_dependent
923     dependencies:
924         - t:macos-arm64-ninja
925     needs:
926         - t:macos-arm64-ninja
927     variables:
928         CMAKE_CI_JOB_NIGHTLY: "true"
930 t:macos-x86_64-xcode:
931     extends:
932         - .macos_x86_64_xcode
933         - .cmake_test_macos_external
934         - .macos_x86_64_tags_ext
935         - .cmake_junit_artifacts
936         - .run_dependent
937     dependencies:
938         - t:macos-x86_64-ninja
939     needs:
940         - t:macos-x86_64-ninja
941     variables:
942         CMAKE_CI_NO_MR: "true"
944 t:macos-arm64-xcode:
945     extends:
946         - .macos_arm64_xcode
947         - .cmake_test_macos_external
948         - .macos_arm64_tags_ext
949         - .cmake_junit_artifacts
950         - .run_dependent
951     dependencies:
952         - t:macos-arm64-ninja
953     needs:
954         - t:macos-arm64-ninja
956 t:macos-arm64-xcode-symlinked:
957     extends:
958         - .macos_arm64_xcode_symlinked
959         - .cmake_test_macos_external
960         - .macos_arm64_tags_ext
961         - .cmake_junit_artifacts
962         - .run_dependent
963     dependencies:
964         - t:macos-arm64-ninja
965     needs:
966         - t:macos-arm64-ninja
967     variables:
968         CMAKE_CI_JOB_NIGHTLY: "true"
970 t:macos-x86_64-ninja-ub:
971     extends:
972         - .macos_x86_64_ninja_ub
973         - .cmake_test_macos_external
974         - .macos_x86_64_tags_ext
975         - .cmake_junit_artifacts
976         - .run_dependent
977     dependencies:
978         - t:macos-x86_64-ninja
979     needs:
980         - t:macos-x86_64-ninja
981     variables:
982         CMAKE_CI_JOB_NIGHTLY: "true"
984 t:macos-arm64-xcode-ub:
985     extends:
986         - .macos_arm64_xcode_ub
987         - .cmake_test_macos_external
988         - .macos_arm64_tags_ext
989         - .cmake_junit_artifacts
990         - .run_dependent
991     dependencies:
992         - t:macos-arm64-ninja
993     needs:
994         - t:macos-arm64-ninja
995     variables:
996         CMAKE_CI_JOB_NIGHTLY: "true"
998 b:macos-package:
999     extends:
1000         - .macos_package
1001         - .cmake_build_macos
1002         - .cmake_release_artifacts
1003         - .macos_arm64_tags_package
1004         - .run_only_for_package
1005     dependencies:
1006         - p:doc-package
1007     needs:
1008         - p:doc-package
1009     variables:
1010         CMAKE_CI_ARTIFACTS_NAME: "artifacts-macos-universal"
1012 u:macos-package:
1013     extends:
1014         - .rsync_upload_package
1015         - .run_only_for_package
1016     dependencies:
1017         - b:macos-package
1018     needs:
1019         - b:macos-package
1021 b:macos10.10-package:
1022     extends:
1023         - .macos10.10_package
1024         - .cmake_build_macos
1025         - .cmake_release_artifacts
1026         - .macos_arm64_tags_package
1027         - .run_only_for_package
1028     dependencies:
1029         - p:doc-package
1030     needs:
1031         - p:doc-package
1032     variables:
1033         CMAKE_CI_ARTIFACTS_NAME: "artifacts-macos10.10-universal"
1035 u:macos10.10-package:
1036     extends:
1037         - .rsync_upload_package
1038         - .run_only_for_package
1039     dependencies:
1040         - b:macos10.10-package
1041     needs:
1042         - b:macos10.10-package
1044 # Windows x86_64 jobs
1046 b:windows-vs2022-x64-ninja:
1047     extends:
1048         - .windows_vs2022_x64_ninja
1049         - .cmake_build_windows
1050         - .cmake_build_artifacts
1051         - .windows_x86_64_tags_nonconcurrent_vs2022
1052         - .run_manually
1053     variables:
1054         CMAKE_CI_JOB_CONTINUOUS: "true"
1056 b:windows-vs2022-x64-pch:
1057     extends:
1058         - .windows_vs2022_x64_pch
1059         - .cmake_build_windows
1060         - .windows_x86_64_tags_nonconcurrent_vs2022
1061         - .run_manually
1062     variables:
1063         CMAKE_CI_JOB_NIGHTLY: "true"
1065 t:windows-vs2022-x64-ninja:
1066     extends:
1067         - .windows_vs2022_x64_ninja
1068         - .cmake_test_windows
1069         - .windows_x86_64_tags_nonconcurrent_vs2022
1070         - .cmake_test_artifacts
1071         - .run_dependent
1072     dependencies:
1073         - b:windows-vs2022-x64-ninja
1074     needs:
1075         - b:windows-vs2022-x64-ninja
1076     variables:
1077         CMAKE_CI_JOB_CONTINUOUS: "true"
1078         CMAKE_CI_JOB_NIGHTLY_NINJA: "true"
1080 t:windows-vs2022-x64-ninja-multi:
1081     extends:
1082         - .windows_vs2022_x64_ninja_multi
1083         - .cmake_test_windows_external
1084         - .windows_x86_64_tags_concurrent_vs2022
1085         - .cmake_junit_artifacts
1086         - .run_dependent
1087     dependencies:
1088         - t:windows-vs2022-x64-ninja
1089     needs:
1090         - t:windows-vs2022-x64-ninja
1091     variables:
1092         CMAKE_CI_JOB_NIGHTLY: "true"
1094 .t:windows-vs2022-x64:
1095     extends:
1096         - .windows_vs2022_x64
1097         - .cmake_test_windows_external
1098         - .cmake_junit_artifacts
1099         - .run_dependent
1100     dependencies:
1101         - t:windows-vs2022-x64-ninja
1102     needs:
1103         - t:windows-vs2022-x64-ninja
1105 t:windows-vs2022-x64:
1106     extends:
1107         - .t:windows-vs2022-x64
1108         - .windows_x86_64_tags_concurrent_vs2022
1109     variables:
1110         CMAKE_CI_JOB_NIGHTLY: "false"
1112 t:windows-vs2022-x64-nightly:
1113     extends:
1114         - .t:windows-vs2022-x64
1115         - .windows_x86_64_tags_concurrent_vs2022_android
1116     variables:
1117         CMAKE_CI_JOB_NIGHTLY: "true"
1119 t:windows-vs2019-x64:
1120     extends:
1121         - .windows_vs2019_x64
1122         - .cmake_test_windows_external
1123         - .windows_x86_64_tags_concurrent_vs2019_android
1124         - .cmake_junit_artifacts
1125         - .run_dependent
1126     dependencies:
1127         - t:windows-vs2022-x64-ninja
1128     needs:
1129         - t:windows-vs2022-x64-ninja
1130     variables:
1131         CMAKE_CI_JOB_NIGHTLY: "true"
1133 t:windows-vs2022-x64-nmake:
1134     extends:
1135         - .windows_vs2022_x64_nmake
1136         - .cmake_test_windows_external
1137         - .windows_x86_64_tags_concurrent_vs2022
1138         - .cmake_junit_artifacts
1139         - .run_dependent
1140     dependencies:
1141         - t:windows-vs2022-x64-ninja
1142     needs:
1143         - t:windows-vs2022-x64-ninja
1144     variables:
1145         CMAKE_CI_JOB_NIGHTLY: "true"
1147 t:windows-vs2022-x64-jom:
1148     extends:
1149         - .windows_vs2022_x64_jom
1150         - .cmake_test_windows_external
1151         - .windows_x86_64_tags_concurrent_vs2022
1152         - .cmake_junit_artifacts
1153         - .run_dependent
1154     dependencies:
1155         - t:windows-vs2022-x64-ninja
1156     needs:
1157         - t:windows-vs2022-x64-ninja
1158     variables:
1159         CMAKE_CI_JOB_NIGHTLY: "true"
1161 t:windows-borland5.5:
1162     extends:
1163         - .windows_borland5.5
1164         - .cmake_test_windows_external
1165         - .windows_x86_64_tags_concurrent
1166         - .cmake_junit_artifacts
1167         - .run_dependent
1168     dependencies:
1169         - t:windows-vs2022-x64-ninja
1170     needs:
1171         - t:windows-vs2022-x64-ninja
1172     variables:
1173         CMAKE_CI_JOB_NIGHTLY: "true"
1175 t:windows-borland5.8:
1176     extends:
1177         - .windows_borland5.8
1178         - .cmake_test_windows_external
1179         - .windows_x86_64_tags_concurrent
1180         - .cmake_junit_artifacts
1181         - .run_dependent
1182     dependencies:
1183         - t:windows-vs2022-x64-ninja
1184     needs:
1185         - t:windows-vs2022-x64-ninja
1186     variables:
1187         CMAKE_CI_JOB_NIGHTLY: "true"
1189 t:windows-clang17.0-cl-ninja:
1190     extends:
1191         - .windows_clang_ninja
1192         - .cmake_test_windows_external
1193         - .windows_x86_64_tags_concurrent
1194         - .cmake_junit_artifacts
1195         - .run_dependent
1196     dependencies:
1197         - t:windows-vs2022-x64-ninja
1198     needs:
1199         - t:windows-vs2022-x64-ninja
1200     variables:
1201         CMAKE_CI_BUILD_NAME: windows_clang17.0_cl_ninja
1202         CMAKE_CI_JOB_NIGHTLY: "true"
1204 t:windows-clang17.0-cl-nmake:
1205     extends:
1206         - .windows_clang_nmake
1207         - .cmake_test_windows_external
1208         - .windows_x86_64_tags_concurrent
1209         - .cmake_junit_artifacts
1210         - .run_dependent
1211     dependencies:
1212         - t:windows-vs2022-x64-ninja
1213     needs:
1214         - t:windows-vs2022-x64-ninja
1215     variables:
1216         CMAKE_CI_BUILD_NAME: windows_clang17.0_cl_nmake
1217         CMAKE_CI_JOB_NIGHTLY: "true"
1219 t:windows-clang17.0-gnu-ninja:
1220     extends:
1221         - .windows_clang_ninja
1222         - .cmake_test_windows_external
1223         - .windows_x86_64_tags_concurrent
1224         - .cmake_junit_artifacts
1225         - .run_dependent
1226     dependencies:
1227         - t:windows-vs2022-x64-ninja
1228     needs:
1229         - t:windows-vs2022-x64-ninja
1230     variables:
1231         CMAKE_CI_BUILD_NAME: windows_clang17.0_gnu_ninja
1232         CMAKE_CI_JOB_NIGHTLY: "true"
1234 t:windows-clang17.0-gnu-nmake:
1235     extends:
1236         - .windows_clang_nmake
1237         - .cmake_test_windows_external
1238         - .windows_x86_64_tags_concurrent
1239         - .cmake_junit_artifacts
1240         - .run_dependent
1241     dependencies:
1242         - t:windows-vs2022-x64-ninja
1243     needs:
1244         - t:windows-vs2022-x64-ninja
1245     variables:
1246         CMAKE_CI_BUILD_NAME: windows_clang17.0_gnu_nmake
1247         CMAKE_CI_JOB_NIGHTLY: "true"
1249 t:windows-intel2021.9.0-ninja:
1250     extends:
1251         - .windows_intelclassic_ninja
1252         - .cmake_test_windows_external
1253         - .windows_x86_64_tags_concurrent
1254         - .cmake_junit_artifacts
1255         - .run_dependent
1256     dependencies:
1257         - t:windows-vs2022-x64-ninja
1258     needs:
1259         - t:windows-vs2022-x64-ninja
1260     variables:
1261         CMAKE_CI_BUILD_NAME: windows_intel2021.9.0_ninja
1262         CMAKE_CI_JOB_NIGHTLY: "true"
1264 t:windows-oneapi2023.1.0-ninja:
1265     extends:
1266         - .windows_inteloneapi_ninja
1267         - .cmake_test_windows_external
1268         - .windows_x86_64_tags_concurrent
1269         - .cmake_junit_artifacts
1270         - .run_dependent
1271     dependencies:
1272         - t:windows-vs2022-x64-ninja
1273     needs:
1274         - t:windows-vs2022-x64-ninja
1275     variables:
1276         CMAKE_CI_BUILD_NAME: windows_oneapi2023.1.0_ninja
1277         CMAKE_CI_JOB_NIGHTLY: "true"
1279 t:mingw_osdn_io-mingw_makefiles:
1280     extends:
1281         - .mingw_osdn_io_mingw_makefiles
1282         - .cmake_test_windows_external
1283         - .windows_x86_64_tags_concurrent
1284         - .cmake_junit_artifacts
1285         - .run_dependent
1286     dependencies:
1287         - t:windows-vs2022-x64-ninja
1288     needs:
1289         - t:windows-vs2022-x64-ninja
1290     variables:
1291         CMAKE_CI_JOB_NIGHTLY: "true"
1293 t:mingw_osdn_io-msys_makefiles:
1294     extends:
1295         - .mingw_osdn_io_msys_makefiles
1296         - .cmake_test_windows_external
1297         - .windows_x86_64_tags_concurrent
1298         - .cmake_junit_artifacts
1299         - .run_dependent
1300     dependencies:
1301         - t:windows-vs2022-x64-ninja
1302     needs:
1303         - t:windows-vs2022-x64-ninja
1304     variables:
1305         CMAKE_CI_JOB_NIGHTLY: "true"
1307 t:windows-msvc-v71-nmake:
1308     extends:
1309         - .windows_msvc_v71_nmake
1310         - .cmake_test_windows_external
1311         - .windows_x86_64_tags_concurrent
1312         - .cmake_junit_artifacts
1313         - .run_dependent
1314     dependencies:
1315         - t:windows-vs2022-x64-ninja
1316     needs:
1317         - t:windows-vs2022-x64-ninja
1318     variables:
1319         CMAKE_CI_JOB_NIGHTLY: "true"
1321 t:windows-openwatcom1.9:
1322     extends:
1323         - .windows_openwatcom1.9
1324         - .cmake_test_windows_external
1325         - .windows_x86_64_tags_concurrent
1326         - .cmake_junit_artifacts
1327         - .run_dependent
1328     dependencies:
1329         - t:windows-vs2022-x64-ninja
1330     needs:
1331         - t:windows-vs2022-x64-ninja
1332     variables:
1333         CMAKE_CI_JOB_NIGHTLY: "true"
1335 t:windows-orangec6.73.1:
1336     extends:
1337         - .windows_orangec6.73.1
1338         - .cmake_test_windows_external
1339         - .windows_x86_64_tags_concurrent
1340         - .cmake_junit_artifacts
1341         - .run_dependent
1342     dependencies:
1343         - t:windows-vs2022-x64-ninja
1344     needs:
1345         - t:windows-vs2022-x64-ninja
1346     variables:
1347         CMAKE_CI_JOB_NIGHTLY: "true"
1349 # Windows arm64 jobs
1351 b:windows-arm64-vs2022-ninja:
1352     extends:
1353         - .windows_arm64_vs2022_ninja
1354         - .cmake_build_windows
1355         - .cmake_build_artifacts
1356         - .windows_arm64_tags_nonconcurrent_vs2022
1357         - .run_manually
1358     variables:
1359         CMAKE_CI_JOB_NIGHTLY: "true"
1361 t:windows-arm64-vs2022-ninja:
1362     extends:
1363         - .windows_arm64_vs2022_ninja
1364         - .cmake_test_windows
1365         - .windows_arm64_tags_nonconcurrent_vs2022
1366         - .cmake_test_artifacts
1367         - .run_dependent
1368     dependencies:
1369         - b:windows-arm64-vs2022-ninja
1370     needs:
1371         - b:windows-arm64-vs2022-ninja
1372     variables:
1373         CMAKE_CI_JOB_NIGHTLY: "true"
1375 t:windows-arm64-vs2022:
1376     extends:
1377         - .windows_arm64_vs2022
1378         - .cmake_test_windows_external
1379         - .windows_arm64_tags_concurrent_vs2022
1380         - .cmake_junit_artifacts
1381         - .run_dependent
1382     dependencies:
1383         - t:windows-arm64-vs2022-ninja
1384     needs:
1385         - t:windows-arm64-vs2022-ninja
1386     variables:
1387         CMAKE_CI_JOB_NIGHTLY: "true"
1389 # Windows package jobs
1391 b:windows-x86_64-package:
1392     extends:
1393         - .windows_x86_64_package
1394         - .cmake_build_windows
1395         - .cmake_release_artifacts
1396         - .windows_x86_64_tags_nonconcurrent_vs2022
1397         - .run_only_for_package
1398     dependencies:
1399         - p:doc-package
1400     needs:
1401         - p:doc-package
1402     variables:
1403         CMAKE_CI_ARTIFACTS_NAME: "artifacts-windows-x86_64"
1405 u:windows-x86_64-package:
1406     extends:
1407         - .rsync_upload_package
1408         - .run_only_for_package
1409     dependencies:
1410         - b:windows-x86_64-package
1411     needs:
1412         - b:windows-x86_64-package
1414 b:windows-i386-package:
1415     extends:
1416         - .windows_i386_package
1417         - .cmake_build_windows
1418         - .cmake_release_artifacts
1419         - .windows_x86_64_tags_nonconcurrent_vs2022
1420         - .run_only_for_package
1421     dependencies:
1422         - p:doc-package
1423     needs:
1424         - p:doc-package
1425     variables:
1426         CMAKE_CI_ARTIFACTS_NAME: "artifacts-windows-i386"
1428 u:windows-i386-package:
1429     extends:
1430         - .rsync_upload_package
1431         - .run_only_for_package
1432     dependencies:
1433         - b:windows-i386-package
1434     needs:
1435         - b:windows-i386-package
1437 b:windows-arm64-package:
1438     extends:
1439         - .windows_arm64_package
1440         - .cmake_build_windows
1441         - .cmake_release_artifacts
1442         - .windows_x86_64_tags_nonconcurrent_vs2022_arm64
1443         - .run_only_for_package
1444     dependencies:
1445         - p:doc-package
1446     needs:
1447         - p:doc-package
1448     variables:
1449         CMAKE_CI_ARTIFACTS_NAME: "artifacts-windows-arm64"
1451 u:windows-arm64-package:
1452     extends:
1453         - .rsync_upload_package
1454         - .run_only_for_package
1455     dependencies:
1456         - b:windows-arm64-package
1457     needs:
1458         - b:windows-arm64-package