Commit Graph

430 Commits

Author SHA1 Message Date
Brad King 97f4aa1f05 ci: Add OpenJDK to Debian and Fedora base images
This enables the `JavaExportImport` test in CI.
2022-03-21 16:30:58 -04:00
Brad King 78d0613695 ci: Drop p4 binary checksum because the download URL is not stable
In commit f9526f39a1 (ci: Add bzr and p4 to Debian and Fedora base
images, 2022-02-21) we checked the SHA-256 hash of the Perforce binary.
However, content at the download URL has changed in just the last few
weeks, so we cannot consider it stable.
2022-03-18 09:40:34 -04:00
Brad King ff8c0e9c10 ci: Clamp CUDA 'native' architecture to values supported by its toolkit
The `native` architecture compiles for the host's GPUs, but our CI jobs
may may run on hosts with GPUs newer than supported by their version of
the CUDA toolkit.  Add an undocumented environment variable to tell
CMake to clamp the native architecture to that supported by the toolkit.

Without this, we may try to compile for architectures not supported by
the CUDA Toolkit, which fails.  Since commit d1b48bfabd (CUDA: Add
support for CUDA_ARCHITECTURES=native, 2022-03-04), our CUDA 9.2 CI job
fails when it runs on a CI host with a GPU architecture newer than that
CUDA 9.2 supports.  Clamping the architecture level fixes that.

Do not document this clamp behavior publicly, at least for now.
Users can be responsible for building with a CUDA toolkit recent
enough to support their host's GPUs.

Issue: #22375
2022-03-16 13:14:51 -04:00
Brad King 7ada318350 Merge topic 'ci-msvc-19.31'
f2c303f4c7 Merge branch 'backport-3.22-ci-msvc-19.31' into ci-msvc-19.31
e66de43180 gitlab-ci: Update Windows builds to MSVC 19.31 toolset
fade5b5b8c gitlab-ci: Update Windows builds to MSVC 19.31 toolset

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !7059
2022-03-10 06:33:56 -05:00
Brad King e66de43180 gitlab-ci: Update Windows builds to MSVC 19.31 toolset 2022-03-09 10:02:01 -05:00
Brad King fade5b5b8c gitlab-ci: Update Windows builds to MSVC 19.31 toolset 2022-03-09 10:00:57 -05:00
Brad King 8aeabc9d6a Merge topic 'ci-cuda-11.6'
1f601753d7 gitlab-ci: add jobs testing cuda11.6 with nvcc and clang 13
7716750062 ci: add cuda11.6 base image
77bdcc949d gitlab-ci: run CUDA and HIP test jobs in any non-MR pipeline

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !7038
2022-03-04 09:02:25 -05:00
Brad King 1f601753d7 gitlab-ci: add jobs testing cuda11.6 with nvcc and clang 13 2022-03-03 12:46:47 -05:00
Brad King 7716750062 ci: add cuda11.6 base image 2022-03-03 12:02:35 -05:00
Brad King 8c84b2e468 Merge topic 'ci-continuous'
bba3d65bb6 ci: add fedora35-ninja build and test jobs in continuous pipeline
e3519aced4 ci: configure rules to enable dependent jbos in continuous pipeline

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !7034
2022-03-03 11:44:39 -05:00
Brad King e3519aced4 ci: configure rules to enable dependent jbos in continuous pipeline
Apply the rules from commit ff72dbfb14 (gitlab-ci: configure rules to
enable continuous builds of staged MRs, 2020-09-30, v3.19.0-rc1~70^2~1)
and commit 71665c8cb9 (gitlab-ci: Clarify conditions enabling jobs for
continuous build of stage, 2021-05-05, v3.21.0-rc1~218^2) to dependent
jobs too.
2022-03-02 15:05:19 -05:00
Brad King b88f7aad63 ci: add nightly CI job to build CMake in-place 2022-03-02 09:47:02 -05:00
Brad King 2a7ac62c04 ci: Compute processor count earlier in ctest_standalone.cmake
Compute it early enough to use in the configure step.
2022-03-02 09:47:02 -05:00
Brad King 1613d87dee ci: Rename ctest_test_external.cmake to ctest_standalone.cmake
The script is a standalone ctest script that runs all steps.
It can be used for more than just external tests.
2022-03-02 09:47:02 -05:00
Brad King ac37e99453 ci: Rename variable CMake_SKIP_INSTALL to CMAKE_CI_NO_INSTALL
The latter follows our convention for other variable names.
2022-03-02 09:47:02 -05:00
Brad King c1479f08a8 ci: Enable Swift tests in debian10-ninja job in non-MR pipelines
The Swift compiler is too big to put in the Debian base image,
so download it in this specific job instead.
2022-02-25 13:33:46 -05:00
Brad King 4db7020811 ci: Move debian10_ninja job environment to shell script 2022-02-25 13:07:18 -05:00
Brad King 0e7172e615 ci: Add Swift compiler runtime dependencies to Debian base image
The actual compiler is too large to put in the base image.
Install its dependencies so we can download and run it in a job.
Note that Swift binaries are only available for `x86_64`.
2022-02-25 13:07:01 -05:00
Brad King 46da86dcd9 ci: Verify content of ironpython package in Debian base image
Also clean up more temporary files.
2022-02-25 12:07:21 -05:00
Brad King c4b305da63 ci: Explicitly enable CTest.Update{BZR,CVS,GIT,HG,P4,SVN} tests
Avoid relying on heuristics to enable these tests.
Be sure they run in CI where expected.
2022-02-22 14:01:36 -05:00
Brad King f9526f39a1 ci: Add bzr and p4 to Debian and Fedora base images
Perforce does not provide binaries for `aarch64`, so leave it out for
that architecture.

Fedora now packages `breezy` instead of the original `bzr`. Note that
breezy does not have the xmloutput plugin needed for `bzr log --xml`.
This is also why commit 1972a75536 (Tests: Drop CTestUpdate.BZR test
check for xmloutput plugin, 2022-02-04) observed that there is no
`bzr xmlplugins` command.
2022-02-22 13:58:59 -05:00
Brad King 4b90688aa0 ci: Explicitly disable Java tests on Windows with Borland and Open Watcom
Extend the change from commit 840fa28d3d (ci: Explicitly disable Java
tests on Windows, 2021-12-16) to cover Borland and Open Watcom builds.
2022-02-14 10:11:49 -05:00
Brad King 90ef30c09d ci: Explicitly disable Java tests on Windows Clang builds
Extend the change from commit 840fa28d3d (ci: Explicitly disable Java
tests on Windows, 2021-12-16) to cover LLVM/Clang builds on Windows too.
2022-02-10 09:20:05 -05:00
Brad King c1f4bd792b ci: Add LLVM/Clang 13.0 nightly CI jobs on Windows
Add jobs covering the `clang-cl` front-end with Ninja and NMake.
Add a job covering the `clang++` front-end with Ninja.
2022-02-04 08:24:53 -05:00
Brad King deb27767e0 Merge topic 'test-mfc-explicit'
9d621ceba1 Tests: Run MFC test only when explicitly enabled

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !6943
2022-02-04 08:08:24 -05:00
Brad King 3900a31f44 Merge topic 'test-mfc-explicit' into release-3.23
9d621ceba1 Tests: Run MFC test only when explicitly enabled

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !6943
2022-02-04 08:08:23 -05:00
Brad King 9d621ceba1 Tests: Run MFC test only when explicitly enabled
Previously we used a complicated heuristic to decide whether or not to
run the MFC test, but it sometimes decided incorrectly to run the test.
Since that was first written, we have developed a convention for other
tests to enable them via undocumented cache entries that are added only
on machines known to meet the tests' requirements.  Do that for MFC.
2022-02-03 06:45:53 -05:00
Brad King 040c509bce gitlab-ci: clarify name of windows fragment for building with ninja 2022-02-02 16:27:02 -05:00
Brad King c76abba044 gitlab-ci: update to Fedora 35 base images 2022-02-01 17:20:29 -05:00
Brad King 0ab6e5ca5b gitlab-ci: update to Fedora 35 for upload jobs 2022-02-01 17:20:29 -05:00
Brad King 1729e1292d ci: update to Fedora 35 for Linux base images 2022-02-01 17:20:29 -05:00
Brad King 4aedf84da3 Merge topic 'ci-assertions'
45feab3c00 gitlab-ci: enable assertions on fedora34-ninja jobs

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !6927
2022-02-01 10:25:50 -05:00
Brad King 45feab3c00 gitlab-ci: enable assertions on fedora34-ninja jobs
We should have at least one CI job in merge request pipelines that
builds CMake with assertions enabled.  We avoid using the `Debug`
configuration in order to keep CI artifacts small, so instead use
the `Release` configuration without `-DNDEBUG`.
2022-01-31 11:34:12 -05:00
Brad King 5140e7bc30 Merge topic 'ci-xcode-13.2'
8cb32fc8ad gitlab-ci: update macOS jobs to use Xcode 13.2

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !6897
2022-01-25 06:55:46 -05:00
Brad King 7f7f3ba277 Merge topic 'ci-xcode-13.2' into release-3.22
8cb32fc8ad gitlab-ci: update macOS jobs to use Xcode 13.2

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !6897
2022-01-25 06:55:45 -05:00
Brad King 8cb32fc8ad gitlab-ci: update macOS jobs to use Xcode 13.2 2022-01-25 05:06:40 -05:00
Brad King 5c9310c714 ci: Enable ccmake on Windows 2022-01-19 10:53:09 -05:00
Brad King e217153dc0 ci: Explicitly disable Java tests on VS builds
Extend the change from commit 840fa28d3d (ci: Explicitly disable Java
tests on Windows, 2021-12-16) to cover VS builds too.
2021-12-22 09:09:33 -05:00
Brad King 85a07b4b49 ci: Explicitly disable Java tests on VS builds
Extend the change from commit 840fa28d3d (ci: Explicitly disable Java
tests on Windows, 2021-12-16) to cover VS builds too.
2021-12-22 09:09:08 -05:00
Brad King 4d471f6630 Merge topic 'ci-windows-no-java'
840fa28d3d ci: Explicitly disable Java tests on Windows

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !6807
2021-12-16 11:08:41 -05:00
Brad King 840fa28d3d ci: Explicitly disable Java tests on Windows
Avoid searching for a Java installation on Windows hosts.
This will allow some CI hosts to have Java for other projects.

We already do this on macOS.  While at it, clarify the macOS setting.
2021-12-16 11:03:30 -05:00
Brad King 9f5c872ed1 ci: Exclude spuriously failing test from JOM nightly CI job
Since commit 3b9975d9b5 (ci: Add JOM nightly CI job, 2021-11-17) the
`ExternalProject` test often fails spuriously with an internal error
message from JOM.  Exclude it for now pending further investigation.

Prior to covering JOM in CI, it was covered by a standalone nightly
build that excluded the `ExternalProject` test for the same reason.
2021-12-09 10:42:13 -05:00
Ben Boeckel 7d5828e293 gitlab-ci: shorten job prefixes
This helps to maximize the amount of information visible in the GitLab
web interface.

Also document their meaning in the developer documentation and in the CI
configuration file directly.

See: https://gitlab.com/gitlab-org/gitlab/-/issues/8496
2021-11-23 10:11:25 -05:00
Brad King e614cb037b Merge topic 'ci-xcode-13.1'
224d81e804 gitlab-ci: update macOS jobs to use Xcode 13.1

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !6757
2021-11-23 09:52:49 -05:00
Brad King 6bab24e0d3 Merge topic 'ci-xcode-13.1' into release-3.22
224d81e804 gitlab-ci: update macOS jobs to use Xcode 13.1

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !6757
2021-11-23 09:52:48 -05:00
Brad King 224d81e804 gitlab-ci: update macOS jobs to use Xcode 13.1 2021-11-22 18:04:43 -05:00
Ben Boeckel c0d8e42a08 gitlab-ci: shorten job prefixes
This helps to maximize the amount of information visible in the GitLab
web interface.

Also document their meaning in the developer documentation and in the CI
configuration file directly.

See: https://gitlab.com/gitlab-org/gitlab/-/issues/8496
2021-11-22 12:58:25 -05:00
Brad King 5cc6d7058a Merge topic 'ci-gmock'
fae34ea007 ci: add gmock to Debian base images

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !6746
2021-11-19 09:08:16 -05:00
Brad King fae34ea007 ci: add gmock to Debian base images
It is already in the Fedora base images.
2021-11-18 12:54:32 -05:00
Brad King 3b9975d9b5 ci: Add JOM nightly CI job 2021-11-17 12:50:16 -05:00