CMake merge requestshttps://gitlab.kitware.com/cmake/cmake/-/merge_requests2023-11-28T17:21:55-05:00https://gitlab.kitware.com/cmake/cmake/-/merge_requests/7077BinUtils: Restore llvm-ar fallback on Apple platforms2023-11-28T17:21:55-05:00Brad KingBinUtils: Restore llvm-ar fallback on Apple platformsSince !7039 we do not consider `llvm-ar` at all on Apple
platforms. However, there are existing cross-compiling use cases in
which the toolchain has `llvm-ar` but not `ar`. Prior to the
re-ordering in !6164, we preferred
`ar` and then ...Since !7039 we do not consider `llvm-ar` at all on Apple
platforms. However, there are existing cross-compiling use cases in
which the toolchain has `llvm-ar` but not `ar`. Prior to the
re-ordering in !6164, we preferred
`ar` and then `llvm-ar`. Restore the original order for Apple.
Fixes: #23320
Issue: #23333
Backport: release3.21.7Brad KingBrad Kinghttps://gitlab.kitware.com/cmake/cmake/-/merge_requests/7054BinUtils: Avoid llvm-mt because it is missing 'mt' features we use2023-08-11T10:44:05-04:00Brad KingBinUtils: Avoid llvm-mt because it is missing 'mt' features we useSince !6164 we correctly prefer the
more-specific name `llvm-mt` over `mt` when using Clang. However, the
`llvm-mt` tool does not yet support all the flags we need in the
implementation of `vs_link_{exe,dll}`. Prefer plain `mt` for now...Since !6164 we correctly prefer the
more-specific name `llvm-mt` over `mt` when using Clang. However, the
`llvm-mt` tool does not yet support all the flags we need in the
implementation of `vs_link_{exe,dll}`. Prefer plain `mt` for now.
Fixes: #23305
Backport: release3.21.7Brad KingBrad Kinghttps://gitlab.kitware.com/cmake/cmake/-/merge_requests/7282file(GET_RUNTIME_DEPENDENCIES): Support VS 2022 without VS 20192022-06-02T11:58:42-04:00Brad Kingfile(GET_RUNTIME_DEPENDENCIES): Support VS 2022 without VS 2019Find MSVC tools in VS 2022 installation.
Backport: releaseFind MSVC tools in VS 2022 installation.
Backport: release3.21.7Brad KingBrad Kinghttps://gitlab.kitware.com/cmake/cmake/-/merge_requests/7204gitlab-ci: update macOS jobs to use Xcode 13.32022-06-02T11:58:29-04:00Brad Kinggitlab-ci: update macOS jobs to use Xcode 13.3Also backport !6992, and commit 183b6bbf51d40be9a0d54e351538c6413ad41407 from !7119 for the CMake 3.21 and 3.22 branches so we can test them with Xcode 13.3.
Backport: releaseAlso backport !6992, and commit 183b6bbf51d40be9a0d54e351538c6413ad41407 from !7119 for the CMake 3.21 and 3.22 branches so we can test them with Xcode 13.3.
Backport: release3.21.7Brad KingBrad Kinghttps://gitlab.kitware.com/cmake/cmake/-/merge_requests/7120AIX: Fix executable ENABLE_EXPORTS in Makefile generators2022-06-02T11:58:14-04:00Brad KingAIX: Fix executable ENABLE_EXPORTS in Makefile generatorsIn !4308 the population of
the `<AIX_EXPORTS>` rule variable placeholder was accidentally added to
the device linking rule rather than the main linking rule. This caused
our `ExportImportList` script on AIX, when called for executables ...In !4308 the population of
the `<AIX_EXPORTS>` rule variable placeholder was accidentally added to
the device linking rule rather than the main linking rule. This caused
our `ExportImportList` script on AIX, when called for executables with
`ENABLE_EXPORTS` set, to be given an `AIX_EXPORTS` file name that does
not exist, leading to a warning from the `dump` tool.
Move the population of the `<AIX_EXPORTS>` placeholder in the Makefile
generators to the main link rule.
Issue: #20290
Backport: release3.21.7Brad KingBrad Kinghttps://gitlab.kitware.com/cmake/cmake/-/merge_requests/7087Utilities/Release: Add "source" stage to Windows docker spec2022-06-02T11:58:00-04:00Brad KingUtilities/Release: Add "source" stage to Windows docker specRevise the spec added by !4719 to add a `source` stage that stops just after
copying the source tree into the image. This provides more granular
control to driving scripts.
Backport: releaseRevise the spec added by !4719 to add a `source` stage that stops just after
copying the source tree into the image. This provides more granular
control to driving scripts.
Backport: release3.21.7Brad KingBrad Kinghttps://gitlab.kitware.com/cmake/cmake/-/merge_requests/7063AppleClang: Add C++20 & 23 flags2022-06-02T11:57:27-04:00Ghost UserAppleClang: Add C++20 & 23 flagsIt seems that CMake has no support for C++23 in Apple Clang, and I found the C++20 flag has been changed in Apple Clang 13.
Therefore, I've added support for them.
```
clang++ --version
Apple clang version 13.0.0 (clang-1300.0.29.30)
``...It seems that CMake has no support for C++23 in Apple Clang, and I found the C++20 flag has been changed in Apple Clang 13.
Therefore, I've added support for them.
```
clang++ --version
Apple clang version 13.0.0 (clang-1300.0.29.30)
```
Apple Clang 13 said to use the following flags even though it fully does not support C++20 <sub>[ref](https://en.cppreference.com/w/cpp/compiler_support/20)</sub>:
```
note: use 'c++20' for 'ISO C++ 2020 DIS' standard
note: use 'gnu++20' for 'ISO C++ 2020 DIS with GNU extensions' standard
note: use 'c++2b' for 'Working draft for ISO C++ 2023 DIS' standard
note: use 'gnu++2b' for 'Working draft for ISO C++ 2023 DIS with GNU extensions' standard
```
Follow up !6174 with support for AppleClang.
Backport: release
Topic-rename: AppleClang-cxx20-cxx23-flags3.21.7Brad KingBrad Kinghttps://gitlab.kitware.com/cmake/cmake/-/merge_requests/7303cmake-gui: Restore support for internationalization with Qt5 on Windows2022-06-02T11:56:22-04:00Brad Kingcmake-gui: Restore support for internationalization with Qt5 on WindowsRestore the logic removed by commit 035078d847e70f9aa8dbe9794c79cf76d6b65434 from !5621, but only with Qt5 on Windows. Leave a FIXME comment to support Qt6 later.
Fixes: #23562
Issue: #23565
Backport: releaseRestore the logic removed by commit 035078d847e70f9aa8dbe9794c79cf76d6b65434 from !5621, but only with Qt5 on Windows. Leave a FIXME comment to support Qt6 later.
Fixes: #23562
Issue: #23565
Backport: release3.21.7Brad KingBrad King