Brad King
e731afd8b3
ci: Add VS 2019 nightly CI jobs
...
Now that the primary VS jobs have been converted to VS 2022,
add nightly CI jobs to cover VS 2019.
2021-11-12 11:06:17 -05:00
Brad King
b63a87582f
gitlab-ci: Update Windows jobs to VS 2022
2021-11-11 13:12:42 -05:00
Brad King
190d2b5d55
gitlab-ci: Update Windows jobs to VS 2022
2021-11-11 13:12:27 -05:00
Brad King
ac32794983
gitlab-ci: Re-organize Windows job tags
...
Name the tag groups based on the VS version needed.
2021-11-11 12:51:32 -05:00
Brad King
39bdb1e332
gitlab-ci: Re-organize Windows job tags
...
Name the tag groups based on the VS version needed, if any. Drop
VS-related tags from Windows jobs that do not need any pre-installed VS
version.
2021-11-11 12:06:48 -05:00
Brad King
11903f1b5f
ci: Add MSVC v71 NMake nightly CI job
2021-11-01 17:35:00 -04:00
Brad King
14f2dbad03
ci: Add Open Watcom 1.9 nightly CI job
2021-10-18 10:17:47 -04:00
Brad King
45d02c9fdc
ci: Add Borland 5.5 and 5.8 nightly CI jobs
2021-10-13 13:59:30 -04:00
Brad King
3068ea834f
Begin post-3.22 development
2021-10-08 10:05:53 -04:00
Brad King
e137ce0a52
gitlab-ci: Drop package pipeline upload jobs for release branch
...
The package pipeline for release versions should not upload packages
automatically to our archive of nightly development versions.
2021-10-08 10:01:41 -04:00
Brad King
fbf47ee8be
Merge topic 'ci-asan'
...
915ef42cab
gitlab-ci: Fix asan test job rules
Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Ben Boeckel <ben.boeckel@kitware.com>
Merge-request: !6601
2021-10-07 09:19:49 -04:00
Brad King
915ef42cab
gitlab-ci: Fix asan test job rules
...
The job runs dependently after the asan build job. Fix the rules for
the job added by commit 20bc209a0c
(gitlab-ci: add clang asan job,
2021-06-07, v3.21.0-rc1~61^2).
2021-10-06 15:42:12 -04:00
Brad King
b5a59251cb
gitlab-ci: Try upstream ninja development branch in some nightly jobs
2021-10-06 13:38:57 -04:00
Brad King
71ab24015f
gitlab-ci: add job testing hip4.2 with Ninja Multi-Config
2021-07-09 13:48:28 -04:00
Brad King
52749ed81f
Merge topic 'cmake-upload-junit-reports'
...
cb5c03ed04
gitlab-ci: upload JUnit reports for builds
722270ff50
ci: update to 3.21.0-rc2 for CI usage
Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Craig Scott <craig.scott@crascit.com>
Merge-request: !6072
2021-07-02 08:06:54 -04:00
Brad King
6b0b6efc75
gitlab-ci: add job testing cuda9.2 with Ninja Multi-Config
2021-07-01 11:47:02 -04:00
Ben Boeckel
cb5c03ed04
gitlab-ci: upload JUnit reports for builds
...
GitLab can render test results which come from JUnit files and inform
which tests have started failing on an MR.
2021-06-30 11:56:05 -04:00
Brad King
11695f5985
Begin post-3.21 development
2021-06-17 13:18:30 -04:00
Brad King
f52b5aba20
gitlab-ci: Drop package pipeline upload jobs for release branch
...
The package pipeline for release versions should not upload packages
automatically to our archive of nightly development versions.
2021-06-17 13:15:33 -04:00
Brad King
54860f1f6b
Merge topic 'ci-clang'
...
886a97cbe7
gitlab-ci: add job to test with clang-7 and ninja on debian10
Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Ben Boeckel <ben.boeckel@kitware.com>
Merge-request: !6237
2021-06-17 06:36:32 -04:00
Brad King
886a97cbe7
gitlab-ci: add job to test with clang-7 and ninja on debian10
...
In commit 7e5e558d0f
(gitlab-ci: add job to test with clang-7 on
debian10, 2021-06-04) we added coverage of clang-7 with the Unix
Makefiles generator. Do the same for Ninja.
2021-06-16 14:57:34 -04:00
Brad King
f7af01efb6
gitlab-ci: add job testing cuda10.2 with clang 11
2021-06-16 14:25:38 -04:00
Brad King
369725faa5
gitlab-ci: add job to run CPack RPM tests
...
Run tests on Fedora in a path without spaces so the RPM tests activate.
2021-06-10 14:46:22 -04:00
Brad King
20bc209a0c
gitlab-ci: add clang asan job
2021-06-08 09:54:08 -04:00
Brad King
7e5e558d0f
gitlab-ci: add job to test with clang-7 on debian10
...
Test with a Clang version old enough to have caught the regression fixed
by commit 9411766c35
(BinUtils: Avoid llvm-objdump versions older than
Clang 9, 2021-05-29).
2021-06-04 13:30:19 -04:00
Brad King
da14f4e19e
gitlab-ci: add job to build with clang-analyzer
...
Update the exceptions in `CTestCustom.cmake.in` to match this job's
needs. Drop exceptions needed only by our previous nightly build.
2021-06-03 15:06:42 -04:00
Brad King
bca69d4272
gitlab-ci: add codespell lint job
2021-05-12 07:35:16 -04:00
Brad King
bf35f3848a
gitlab-ci: rename lint builds to start in lint:
2021-05-12 07:35:16 -04:00
Brad King
89478e643f
gitlab-ci: update to Fedora 34 base images
2021-05-12 07:17:54 -04:00
Brad King
a5a4b0b6ab
gitlab-ci: add jobs to upload cmake.org/cmake/help/git-{master,stage} docs
2021-05-07 10:14:29 -04:00
Brad King
354ae6fe2e
gitlab-ci: add jobs to build cmake.org/cmake/help/git-{master,stage} docs
2021-05-07 09:52:59 -04:00
Brad King
eb7cbb577e
gitlab-ci: clarify name of rsync upload block for binaries
2021-05-07 09:52:59 -04:00
Brad King
8f03c24bfc
gitlab-ci: add jobs testing Intel 2021.2.0 compilers on Linux
2021-05-03 13:33:25 -04:00
Brad King
d1b23dd468
gitlab-ci: update Intel Compiler base image tag naming convention
2021-03-24 16:45:47 -04:00
Brad King
1610c0f034
gitlab-ci: add jobs testing Intel oneAPI compilers on Linux
2021-03-17 11:41:26 -04:00
Brad King
c076833310
gitlab-ci: add jobs testing Intel Classic compilers on Linux
2021-03-17 11:41:26 -04:00
Brad King
5ea928d9d2
gitlab-ci: factor out job dependencies on release-style binaries
2021-03-17 11:41:25 -04:00
Brad King
8697701100
Merge topic 'ci-macos-arm64'
...
397ced99d7
gitlab-ci: Add macos-arm64 jobs for Ninja and Xcode
0755c2ffbb
gitlab-ci: rename macos build and test jobs to macos-x86_64
73150a3798
ci: add sccache 0.2.15 custom build for aarch64-apple-darwin
cab41b96ac
ci: update to sccache 0.2.15 on linux builds
8dcbe5688a
ci: Use Qt macOS 10.13+ package for macOS build and test jobs
Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Ben Boeckel <ben.boeckel@kitware.com>
Merge-request: !5851
2021-02-23 13:00:46 -05:00
Brad King
397ced99d7
gitlab-ci: Add macos-arm64 jobs for Ninja and Xcode
...
For now, leave these jobs out during merge requests.
2021-02-23 11:21:59 -05:00
Brad King
0755c2ffbb
gitlab-ci: rename macos build and test jobs to macos-x86_64
...
This makes room for future equivalents for other architectures.
The packaging jobs produce universal binaries, so leave them as-is.
2021-02-23 11:21:59 -05:00
Brad King
693f4c70ff
Begin post-3.20 development
2021-02-10 08:29:46 -05:00
Brad King
809b114979
gitlab-ci: Drop package pipeline upload jobs for release branch
...
The package pipeline for release versions should not upload packages
automatically to our archive of nightly development versions.
2021-02-10 08:26:15 -05:00
Brad King
430224b6e8
gitlab-ci: add test:debian10-aarch64-ninja job
2021-01-27 11:59:54 -05:00
Brad King
300a91d42d
gitlab-ci: add build:centos7-aarch64 job
...
Test building our release for the `aarch64` architecture.
For now, leave this job out during merge requests.
2021-01-27 11:59:54 -05:00
Brad King
a54e43670d
gitlab-ci: rename build:centos6-{release => x86_64}
...
This makes room for a future equivalent for other architectures.
2021-01-27 10:29:38 -05:00
Brad King
616bf0d2f0
gitlab-ci: consolidate release and package job infrastructure
...
Use `linux_release` in names associated with building or testing
release-style binaries. Add a `.linux_package` helper to adjust
the release binary build behavior for package-specific jobs.
2021-01-27 10:29:38 -05:00
Brad King
dbac5b6934
gitlab-ci: add a job to upload macOS 10.10 binaries
2021-01-07 16:57:07 -05:00
Brad King
2d4d9cd37a
Merge branch 'backport-rel-macos-modern' into rel-macos-modern
2021-01-07 16:56:48 -05:00
Brad King
6410425e5b
ci: build separate macOS packages for macOS 10.13+ and macOS 10.10+
...
In order to support modern macOS features like Dark Mode, we need to use
Qt 5.15, which requires macOS 10.13. However, we still want to support
macOS 10.10 as well, for which we need to use Qt 5.9. Build separate
macOS packages for these use cases.
Fixes : #21606
Issue: #20825
2021-01-07 16:56:05 -05:00
Hi Key
fe1bd15ad7
gitlab-ci: add jobs to make Linux release packages for aarch64
2020-12-22 14:05:17 -05:00
Hi Key
76742c4cbe
gitlab-ci: add jobs to make Linux release packages for aarch64 on 3.19 branch
2020-12-22 14:04:39 -05:00
Ben Boeckel
3d1183c457
Merge branch 'ci-fedora33-release' into ci-fedora33
...
* ci-fedora33-release:
gitlab-ci: use Fedora 33 to build sources
gitlab-ci: update Linux CI to use Fedora 33
ci: update to Fedora 33 for Linux builds
ci: install gmock in the Fedora 31 image
Tests/FindBoost/TestPython: support finding 3.8 and 3.9
clang-tidy: ignore new warnings from newer versions
clang-tidy: ignore `misc-no-recursion`
2020-11-13 09:46:40 -05:00
Ben Boeckel
061f7d5ca3
gitlab-ci: update Linux CI to use Fedora 33
2020-11-13 08:58:17 -05:00
Brad King
0cd84434ac
Begin post-3.19 development
2020-10-08 11:28:48 -04:00
Brad King
16324555ab
gitlab-ci: Drop package pipeline upload jobs for release branch
...
The package pipeline for release versions should not upload packages
automatically to our archive of nightly development versions.
2020-10-08 11:22:56 -04:00
Brad King
02e8befb74
gitlab-ci: add job to run test suite on Debian 10 with ninja
2020-10-05 08:57:10 -04:00
Ben Boeckel
bd83c9f073
gitlab-ci: add jobs to make Linux release packages
...
These reuse the doc artifacts as the macOS package does.
2020-10-01 07:32:14 -04:00
Brad King
46b1fc2387
gitlab-ci: rename package-pipeline jobs to end in "-package"
2020-10-01 07:26:37 -04:00
Brad King
4e08ce720b
gitlab-ci: add sphinx job to continuous build
2020-09-30 15:00:59 -04:00
Brad King
a7afd8d3b0
gitlab-ci: use separate rules for dependent jobs
2020-09-30 14:29:20 -04:00
Brad King
448b411d99
gitlab-ci: add a job to upload source packages
2020-09-29 11:19:08 -04:00
Brad King
45633a6297
gitlab-ci: add a job to make source packages
2020-09-29 11:18:45 -04:00
Brad King
17decc4691
gitlab-ci: re-organize packaging pipeline
...
Move the macOS package build job into the `build` stage. Since it
depends on the sphinx doc package job, add a preceding `prep` stage.
2020-09-29 11:13:14 -04:00
Kyle Edwards
1dcc569828
gitlab-ci: Add GUI testing to each OS
2020-09-23 14:10:40 -04:00
Ben Boeckel
9671282bcc
gitlab-ci: add a job to upload macOS binaries
2020-09-16 16:09:01 -04:00
Ben Boeckel
8ff3ce730d
gitlab-ci: add a job to make macOS packages
2020-09-16 14:03:31 -04:00
Ben Boeckel
7d4ec05c6f
gitlab-ci: add a job to make a doc "bundle"
...
This can be added to any other platform's package by reusing the
artifact.
2020-09-16 13:35:53 -04:00
Ben Boeckel
6d168c41e3
gitlab-ci: split linux and macos shared before scripts
...
They're not actually the same anyways and the anchors can't be shared
between the files. We can figure out refactoring in the future.
2020-06-12 12:59:55 -04:00
Ben Boeckel
a1fe6ad621
gitlab-ci: use extends
...
YAML anchors are not supported across include files.
2020-06-12 12:56:03 -04:00
Ben Boeckel
fda8b79f88
gitlab-ci: add a comment describing what goes into a job
2020-06-12 12:28:29 -04:00
Ben Boeckel
2b4523c5f2
gitlab-ci: make rules a bit more uniform
2020-06-12 12:28:29 -04:00
Ben Boeckel
d6fe877cf9
gitlab-ci: split into multiple files
...
Also add comments for sections to make it easier to figure out what's
going on.
Also rename the `cmake_test_unix_package` to be Linux-specific since it
actually is.
2020-06-12 12:28:29 -04:00
Ben Boeckel
77b44ed4ba
gitlab-ci: add an Xcode tester
2020-06-12 11:23:36 -04:00
Ben Boeckel
d33b38d4aa
gitlab-ci: rename some scripts to be Linux-specific
...
macOS install trees have a different layout and package names.
2020-06-12 11:23:19 -04:00
Brad King
3145264449
Merge topic 'gitlab-ci-ext-test-sets' into release-3.18
...
2e7cefec03
gitlab-ci: add a cuda10.2 builder
1a2961b895
Tests: add CUDA labels to tests which are affected by CUDA
2caa7502d5
ci: support running just a set of tests with external builders
26b4cbcf93
gitlab-ci: move Makefiles Linux tests to use the package
Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !4877
2020-06-12 11:02:35 -04:00
Ben Boeckel
2e7cefec03
gitlab-ci: add a cuda10.2 builder
2020-06-12 09:13:21 -04:00
Ben Boeckel
26b4cbcf93
gitlab-ci: move Makefiles Linux tests to use the package
2020-06-11 13:03:38 -04:00
Ben Boeckel
973fc56020
gitlab-ci: test QtDialog on macOS
2020-06-10 16:42:56 -04:00
Ben Boeckel
881c0b86dd
gitlab-ci: test QtDialog on Windows
2020-06-10 15:57:16 -04:00
Brad King
cc746c5b7e
Merge topic 'linux-release-builders'
...
922cd3affe
ci: fix the project detection for CDash submissions
c5b072800d
gitlab-ci: add jobs for reproducing the release binaries
45f2786ff7
Release/linux: remove explicit LANG setting
c540fcaa6b
Sphinx/create_identifiers: handle qhp contents as utf-8
e237fc65b7
Sphinx/create_identifiers: use `not in` not `not _ in`
0aa061f6f8
Sphinx/create_identifiers: remove unused import
Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !4852
2020-06-03 15:20:05 -04:00
Ben Boeckel
c5b072800d
gitlab-ci: add jobs for reproducing the release binaries
2020-06-03 12:50:15 -04:00
Brad King
f65ba96043
gitlab-ci: Update Windows builds to MSVC 19.26
2020-06-03 12:22:30 -04:00
Ben Boeckel
cbe80818e2
gitlab-ci: support Windows jobs which support concurrent builds
2020-06-03 10:24:02 -04:00
Ben Boeckel
d3e02f1a48
gitlab-ci: support macOS jobs which support concurrent builds
2020-06-03 10:23:45 -04:00
Ben Boeckel
e1b2c0108f
gitlab-ci: add a Ninja Multi-Config test job
...
This reuses the Ninja generator's tested build.
2020-06-02 07:40:00 -04:00
Ben Boeckel
1e8ecfccdd
gitlab-ci: also build ncurses and Qt code on Linux
2020-06-02 07:37:56 -04:00
Brad King
0eebd0a0e3
gitlab-ci: pin macOS and Windows jobs to nonconcurrent runners
...
On macOS and Windows, our jobs use a `GIT_CLONE_PATH` that does not
contain `$CI_CONCURRENCY_ID` so that the build and test jobs always use
the same path. Since we use shell runners for these platforms, all
concurrent jobs would use the same path and conflict. Therefore we can
only use runners with a concurrency level of 1 for jobs in the `build`
and `test` stages. However, jobs in the `test-ext` stage configure a
new build tree for the tests and therefore can use `$CI_CONCURRENCY_ID`
and support shell runners with higher concurrency levels.
Prepare to make that distinction in the future by pinning all jobs to
runners with a `nonconcurrent` tag.
2020-05-29 11:23:16 -04:00
Brad King
0508a80c1a
gitlab-ci: update macOS jobs to Xcode 11.5
2020-05-29 09:52:48 -04:00
Brad King
0d5a1fd6e2
gitlab-ci: pin windows and macos jobs to runners with matching toolsets
...
The toolsets available on machines hosting shell runners will evolve
over time. Require the runners to have tags indicating that they have
specific toolsets available. When toolsets are eventually removed from
a runner, its tags can then be updated accordingly to prevent pipelines
created for old commits from ever running on them.
2020-05-29 07:15:16 -04:00
Ben Boeckel
72a7697901
gitlab-ci: pin macOS to a specific Xcode version
2020-05-28 11:40:32 -04:00
Brad King
dc2f964e16
gitlab-ci: Use stable build path on Windows
2020-05-27 12:56:33 -04:00
Brad King
fb20f4f70b
gitlab-ci: Use a shorter work directory
2020-05-27 12:55:26 -04:00
Ben Boeckel
9812e87ee4
gitlab-ci: add a test of the VS generator based off of the ninja build
2020-05-26 12:50:16 -04:00
Ben Boeckel
f5e6738051
gitlab-ci: get the VS2019 location from the runner
2020-05-26 12:50:16 -04:00
Ben Boeckel
79f3790c1a
gitlab-ci: get sccache location from the runner on Windows
...
When the sccache executable is in the build directory, it can fail to be
removed if the daemon is still running when another job starts. It
continues to run when a job is canceled or fails and then is "in use"
and cannot be deleted.
2020-05-26 12:50:16 -04:00
Ben Boeckel
b368c2d2f7
gitlab-ci: delay manual jobs on merges for 5 minutes
...
This should avoid races with merge trains canceling in-progress builds
leaving "rubble" around for further builds to trip over.
2020-05-26 12:50:16 -04:00
Ben Boeckel
d8fb1ffc9c
gitlab-ci: use rules to only be manual on a merge request
2020-05-25 20:07:04 -04:00
Ben Boeckel
b566f0b308
gitlab-ci: add windows builder
2020-05-22 11:34:14 -04:00
Ben Boeckel
5b564c371e
gitlab-ci: add Windows infrastructure
2020-05-22 11:34:14 -04:00
Ben Boeckel
02c56b71a1
gitlab-ci: add a macos builder
2020-05-22 11:34:14 -04:00
Ben Boeckel
a1b1fc611b
gitlab-ci: add Linux makefiles and ninja builders
2020-05-22 11:34:14 -04:00
Ben Boeckel
0ed7e424ab
gitlab-ci: use the cmake_build_unix anchor
2020-05-22 11:34:14 -04:00
Ben Boeckel
20fbf69f67
gitlab-ci: add linux-3.17 tag to the sphinx build
...
This build uses Qt libraries in a Fedora container. This library is
tagged with a note which says it requires Linux 3.17. Some of or CI
runners do not have this kernel on the host which causes glibc to refuse
to load it. Add a tag to indicate that we need a newer kernel on the
runner.
2020-05-08 08:52:00 -04:00
Ben Boeckel
50cbc9b77a
gitlab-ci: add a sphinx builder
2020-05-07 13:25:58 -04:00
Ben Boeckel
4318e8ed35
gitlab-ci: add iwyu job
2020-04-29 11:18:02 -04:00
Ben Boeckel
0866b9253b
gitlab-ci: add initial clang-tidy build
2020-04-29 11:18:02 -04:00