Commit Graph

59888 Commits

Author SHA1 Message Date
Brad King
09c1b1db07 gitlab-ci: Add windows-arm64 native jobs for Ninja and VS
Add Windows ARM64 native CI jobs to build and test with Ninja,
and to test with VS.

Issue: #23624
2022-11-11 15:05:30 -05:00
Brad King
61ebd7d083 ci: Download cmake on windows-arm64 2022-11-11 15:05:30 -05:00
Brad King
93a5d89b42 ci: Teach cmake download script on Windows to branch on host architecture 2022-11-11 15:05:30 -05:00
Brad King
1ccffcf0ea ci: Factor out helper to load python into environment on Windows 2022-11-11 15:05:30 -05:00
Brad King
781303c0e2 ci: Factor out helper to load qt into environment on Windows 2022-11-11 15:05:30 -05:00
Brad King
b0d16c7f74 Tests: Fix CTest.UpdateGIT under repo-local defaultBranch config
The default branch detection added by commit 26ec2e2b0c (Tests: Update
CTest.UpdateGIT test for custom defaultBranch, 2020-12-02,
v3.20.0-rc1~355^2) fails if the test is run inside a Git work tree whose
`.git` directory configures a `defaultBranch` that is different from the
global or system-wide value.  Fix the detection to ignore the locally
configured value so that we match the `git init` decision.
2022-11-11 15:05:01 -05:00
Brad King
31893e8c8f Merge branch 'release-3.25' 2022-11-11 08:29:12 -05:00
Brad King
96b939584b Merge topic 'ci-msvc-14.34'
bd5176abac gitlab-ci: Update Windows packaging builds to MSVC 14.34 toolset
ccdff280f4 gitlab-ci: Update Windows non-packaging builds to MSVC 14.34 toolset

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !7891
2022-11-11 08:29:11 -05:00
Brad King
d85f866baa Merge topic 'ci-msvc-14.34' into release-3.25
bd5176abac gitlab-ci: Update Windows packaging builds to MSVC 14.34 toolset
ccdff280f4 gitlab-ci: Update Windows non-packaging builds to MSVC 14.34 toolset

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !7891
2022-11-11 08:29:10 -05:00
Brad King
b22715c144 Merge branch 'release-3.25' 2022-11-11 08:26:32 -05:00
Brad King
b0f02511e5 Merge topic 'ci-clang15-windows'
46b2849550 ci: Update LLVM/Clang to 15.0 in nightly CI jobs on Windows
3eb94e4d51 ci: Simplify LLVM/Clang CI job specs on Windows
8ba5835c8d ci: Factor out helper to load clang into environment on Windows
bf2e4a2e85 ci: Factor out helper to load ninja into environment on Windows
93ff726114 Tests: Fix TryCompile bad source case for clang-cl 15 on Windows

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !7897
2022-11-11 08:26:32 -05:00
Brad King
13cfbd3639 Merge topic 'ci-clang15-windows' into release-3.25
46b2849550 ci: Update LLVM/Clang to 15.0 in nightly CI jobs on Windows
3eb94e4d51 ci: Simplify LLVM/Clang CI job specs on Windows
8ba5835c8d ci: Factor out helper to load clang into environment on Windows
bf2e4a2e85 ci: Factor out helper to load ninja into environment on Windows
93ff726114 Tests: Fix TryCompile bad source case for clang-cl 15 on Windows

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !7897
2022-11-11 08:26:31 -05:00
Brad King
f2b438cb0a Merge branch 'release-3.25' 2022-11-11 08:19:51 -05:00
Brad King
7338a69881 Merge topic 'fix-cxx20-detection'
5e7c8f44ac Ninja: Restore support for compilers not defining a C++ standard level

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: buildbot <buildbot@kitware.com>
Acked-by: Jaeden Amero <kitware@patater.com>
Acked-by: Martin Kojtal <martin.kojtal@arm.com>
Merge-request: !7896
2022-11-11 08:19:51 -05:00
Brad King
f3f79be958 Merge topic 'fix-cxx20-detection' into release-3.25
5e7c8f44ac Ninja: Restore support for compilers not defining a C++ standard level

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: buildbot <buildbot@kitware.com>
Acked-by: Jaeden Amero <kitware@patater.com>
Acked-by: Martin Kojtal <martin.kojtal@arm.com>
Merge-request: !7896
2022-11-11 08:19:50 -05:00
Brad King
aab6022307 Merge branch 'release-3.25' 2022-11-11 08:16:47 -05:00
Brad King
1a85577547 Merge branch 'release-3.24' 2022-11-11 08:16:41 -05:00
Brad King
b31196f1d7 Merge branch 'release-3.24' into release-3.25 2022-11-11 08:16:31 -05:00
Brad King
6b4aebae38 Merge branch 'release-3.25' 2022-11-11 08:11:15 -05:00
Brad King
efefd80eda Merge topic 'expat-c-no-extensions'
019af62294 expat: Activate POSIX APIs even without compiler extensions

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: buildbot <buildbot@kitware.com>
Merge-request: !7899
2022-11-11 08:11:15 -05:00
Brad King
6b6b906412 Merge topic 'expat-c-no-extensions' into release-3.25
019af62294 expat: Activate POSIX APIs even without compiler extensions

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: buildbot <buildbot@kitware.com>
Merge-request: !7899
2022-11-11 08:11:14 -05:00
Kitware Robot
e462807942 CMake Nightly Date Stamp 2022-11-11 00:01:06 -05:00
Brad King
0325f04762 Merge branch 'expat-c-no-extensions' into release-3.24
Merge-request: !7899
2022-11-10 16:07:14 -05:00
Raul Tambre
019af62294 expat: Activate POSIX APIs even without compiler extensions
Compile with the preprocessor definitions necessary for the `arc4random`
family so it's available even when compiler extensions are not enabled.
Similar things are done in cmbzip2, cmcurl, cmlibarchive, cmliblizma and
cmlibuv.

This issue surfaced on a nightly bot after glibc 2.36 added arc4random
functions. cmlibarchive defines the necessary macro, but also relies on
`HAVE_ARC4RANDOM_BUF`.  cmlibarchive's check with the necessary macro
defined was skipped due to cmexpat running the same check before, but
without the macros, and it being cached.

This extends commit c7c3e39e4f (Utilities: Activate POSIX APIs even
without compiler extensions, 2022-06-02, v3.24.0-rc1~34^2) to cover our
build of expat too.

Issue: #20454
2022-11-10 16:04:38 -05:00
Brad King
bd5176abac gitlab-ci: Update Windows packaging builds to MSVC 14.34 toolset
Problems with `cmake-gui` when compiled with the MSVC 14.33 toolset,
that did not occur with the MSVC 14.32 toolset, no longer occur with the
MSVC 14.34 toolset.  Revert commit cb8b27a901 (gitlab-ci: Use separate
MSVC toolset specification for packaging jobs, 2022-08-18, v3.24.2~24^2~1)
and update the remaining toolset version references.

Fixes: #23859
2022-11-10 13:27:38 -05:00
Brad King
ccdff280f4 gitlab-ci: Update Windows non-packaging builds to MSVC 14.34 toolset 2022-11-10 13:27:37 -05:00
Brad King
46b2849550 ci: Update LLVM/Clang to 15.0 in nightly CI jobs on Windows 2022-11-10 13:24:57 -05:00
Brad King
3eb94e4d51 ci: Simplify LLVM/Clang CI job specs on Windows
Move environment setup to job-specific scripts so we can reuse
the common `.cmake_test_windows_external` code path.
2022-11-10 13:24:51 -05:00
Brad King
8ba5835c8d ci: Factor out helper to load clang into environment on Windows 2022-11-10 13:24:31 -05:00
Brad King
bf2e4a2e85 ci: Factor out helper to load ninja into environment on Windows 2022-11-10 12:57:55 -05:00
Brad King
93ff726114 Tests: Fix TryCompile bad source case for clang-cl 15 on Windows
When `pass.c bad#source.c` passes through `nmake`, the compiler gets
`pass.c bad`.  The clang-cl 15 compiler now fails on `bad` with an
error that we did not previously match.  Update our regex.
2022-11-10 12:57:55 -05:00
Lingkai Dong
5e7c8f44ac Ninja: Restore support for compilers not defining a C++ standard level
Since commit 386465bf83 (cmTarget: add support for C++ module fileset
types, 2022-04-08, v3.25.0-rc1~624^2~7), the Ninja generator checks for
C++20 support using logic that requires `CMAKE_<LANG>_STANDARD_DEFAULT`
to be non-empty.  On some compilers, such as ARMClang, CMake does not
automatically detect and set default language standards, thus causing
`HaveStandardAvailable` to raise an internal error.

To fix this issue, if `CMAKE_CXX_STANDARD_DEFAULT` is empty, assume all
standards to be supported instead of calling `HaveStandardAvailable`.
This is consistent with how `CompileFeaturesNode::Evaluate` handles this
case.

Fixes: #24146
2022-11-10 11:01:40 -05:00
Brad King
e159b5b2ae Merge topic 'doc-improvements'
d4d1f85297 Help: Move a note about arguments and genexes into include file
968224484f Help: Drop unused `PROPERTY_GENEX` replace from `prop_tgt/INTERFACE_*` files
65457e4fae Help: Add _See Also_ sections to related CMake commands
c86ec79d07 Help: Use direct refs to genexes instead of ``$<GENEX-NAME>``
8c6274326d Help: Use CMake highlighting for command synopsis
c356a94512 Help: Use monospaced font for a genex name in a section title
f98c8707f4 Help: Use `code-block:: cmake` instead of `::` for sub-commands descriptions
2ba351ca4f Help: ``CMake`` → CMake
...

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !7873
2022-11-10 10:11:22 -05:00
Brad King
566064ea5e Merge topic 'better-file-download-failure-msg'
8c3cf2716a file(DOWNLOAD EXPECTED_HASH): better error message when download failed

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: buildbot <buildbot@kitware.com>
Merge-request: !7888
2022-11-10 10:08:54 -05:00
Brad King
8dc7f6a443 Merge topic 'find_cuda_toolkit_support_symlink_math_dirs'
6f707ab541 FindCUDAToolkit: Support math_libs directory being a symlink

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !7893
2022-11-10 10:04:01 -05:00
Brad King
6f4cffa5b7 Merge topic 'marmasm-language'
3166547cf6 ASM_MARMASM: Add support for Microsoft ARM assembler language
ce4babb566 Tests: Fix ARM64 test conditions for non-VS generators

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !7793
2022-11-10 10:02:57 -05:00
Brad King
3d2400929f Merge branch 'release-3.25' 2022-11-10 09:59:42 -05:00
Brad King
0cb4fffae1 Merge topic 'cmake-gui-restore-version-info'
ec76a9c22f cmake-gui: Restore embedded version information in Windows binary

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: buildbot <buildbot@kitware.com>
Merge-request: !7895
2022-11-10 09:59:42 -05:00
Brad King
e12aa71393 Merge topic 'cmake-gui-restore-version-info' into release-3.25
ec76a9c22f cmake-gui: Restore embedded version information in Windows binary

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: buildbot <buildbot@kitware.com>
Merge-request: !7895
2022-11-10 09:59:41 -05:00
Brad King
4205b7094a Merge branch 'release-3.25' 2022-11-10 09:58:34 -05:00
Brad King
e1a45974d6 Merge topic 'curl-windows-no-tls1.3'
c0a4536cec curl: Disable schannel TLS 1.3 support on Windows 11

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !7894
2022-11-10 09:58:34 -05:00
Brad King
c2635ec021 Merge topic 'curl-windows-no-tls1.3' into release-3.25
c0a4536cec curl: Disable schannel TLS 1.3 support on Windows 11

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !7894
2022-11-10 09:58:33 -05:00
Kitware Robot
cb35d9da83 CMake Nightly Date Stamp 2022-11-10 00:01:11 -05:00
Brad King
c0a4536cec curl: Disable schannel TLS 1.3 support on Windows 11
Curl 7.85.0 introduced support for TLS 1.3 support with schannel.
We've observed connection failures in some cases, so disable the
support pending further investigation.

Fixes: #24147
2022-11-09 17:05:39 -05:00
Brad King
ec76a9c22f cmake-gui: Restore embedded version information in Windows binary
Refactoring in commit 89a1e1c1be (Build: Link w/ `OBJECT` library is OK
since 3.12, 2022-08-21, v3.25.0-rc1~97^2~19) dropped the `.res` object
containing this information from the `cmake-gui` link line.  Restore it.
2022-11-09 16:54:46 -05:00
Aurelien Regat-Barrel
8c3cf2716a file(DOWNLOAD EXPECTED_HASH): better error message when download failed 2022-11-09 22:44:36 +01:00
Robert Maynard
6f707ab541 FindCUDAToolkit: Support math_libs directory being a symlink
Fixes #24140
2022-11-09 16:04:00 -05:00
Alex Turbov
d4d1f85297 Help: Move a note about arguments and genexes into include file 2022-11-09 23:52:30 +04:00
Alex Turbov
968224484f Help: Drop unused PROPERTY_GENEX replace from prop_tgt/INTERFACE_* files 2022-11-09 23:52:30 +04:00
Alex Turbov
65457e4fae Help: Add _See Also_ sections to related CMake commands 2022-11-09 23:52:30 +04:00