Commit Graph

57778 Commits

Author SHA1 Message Date
Brad King
6207937a78 Merge topic 'spelling-occurred' into release-3.24
98a10290a8 cmSystemTools: Fix 'ErrorOccurred' spelling

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: buildbot <buildbot@kitware.com>
Merge-request: !7353
2022-06-14 07:34:32 -04:00
FeRD (Frank Dana)
98a10290a8 cmSystemTools: Fix 'ErrorOccurred' spelling
Rename the booleans 's_ErrorOccured' and 's_FatalErrorOccured' to
's_ErrorOccurred' and 's_FatalErrorOccurred', respectively.

Rename the getters and setters to 'Get[Fatal]ErrorOccurred' and
'Set[Fatal]ErrorOccurred', and fix all uses across the codebase.
2022-06-13 09:05:24 -04:00
Brad King
7116712771 Merge topic 'zlib-mangle' into release-3.24
29c578c8fb zlib: Mangle symbols to avoid conflict with external transitive dependencies

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: buildbot <buildbot@kitware.com>
Merge-request: !7351
2022-06-12 07:21:11 -04:00
Brad King
012eb49263 Merge topic 'fetchcontent-global-targets' into release-3.24
f19b48e0b8 FetchContent: Honor CMAKE_FIND_PACKAGE_TARGETS_GLOBAL
1305bade56 Help: Add missing version directive for find_package() GLOBAL keyword

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: buildbot <buildbot@kitware.com>
Merge-request: !7347
2022-06-11 06:13:57 -04:00
Brad King
f0ebdce4e8 Merge topic 'cmake-gui-qt6-decode' into release-3.24
497397bd17 cmake-gui: Support non-ASCII chars on Windows with Qt6

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: buildbot <buildbot@kitware.com>
Merge-request: !7346
2022-06-11 05:52:15 -04:00
Brad King
a3e2aa3494 Merge topic 'cmWindowsRegistry-cstdint' into release-3.24
bc4c0d657a cmWindowsRegistry: Add missing <cstdint> include

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !7349
2022-06-11 05:49:38 -04:00
Brad King
9180a8afcd Merge topic 'doc-3.24-release-notes-cleanup' into release-3.24
ce0be99b30 Help: Minor cleanups of 3.24 release notes
35ecc6e39b Help: Trivial grammar fixup in LINK_GROUPS genex

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !7342
2022-06-11 05:45:48 -04:00
Brad King
b04f9df19a Merge branch 'release-3.23' into release-3.24 2022-06-11 05:40:36 -04:00
Brad King
61c357a021 Merge topic 'xcode-14' into release-3.24
627c08e28b Tests: Teach RunCMake to ignore Xcode DVTSDK warnings
ab40020b17 Xcode: Suppress "Run Script" build phase warning during compiler id
89e1113e0c Xcode: Use ad-hoc signing during compiler id on macOS

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !7350
2022-06-11 05:39:10 -04:00
Brad King
73afa6e9ae Merge branch 'release-3.22' into release-3.23 2022-06-11 05:38:12 -04:00
Brad King
65f2e9263c Merge branch 'xcode-14' into release-3.23
Merge-request: !7350
2022-06-11 05:37:53 -04:00
Brad King
7b43112bee Merge branch 'xcode-14' into release-3.22
Merge-request: !7350
2022-06-11 05:37:16 -04:00
Brad King
29c578c8fb zlib: Mangle symbols to avoid conflict with external transitive dependencies
Mangling was dropped by commit fc22ac115e (zlib: Drop old sources to
make room for a fresh import, 2022-05-26).  Restore it for the new
import of upstream zlib.
2022-06-11 05:10:27 -04:00
Mehdi Chinoune
497397bd17 cmake-gui: Support non-ASCII chars on Windows with Qt6
Since commit baead1e2a8 (Encoding: Remove option to use ANSI code page
internally, 2016-11-01, v3.8.0-rc1~358^2), we always use UTF-8 strings
internally.  Using fromLocal8Bit/toLocal8Bit + QTextCodec is no longer
needed.  Convert to fromStdString/toStdString instead, which should work
both with Qt5 and Qt6.

Fixes: #23565
2022-06-10 14:33:20 -04:00
Brad King
627c08e28b Tests: Teach RunCMake to ignore Xcode DVTSDK warnings
On some Xcode versions, `xcodebuild` may warn:

    ... xcodebuild[...]  [MT] DVTSDK: Warning: SDK path collision for path ...

Teach RunCMake to drop such incidental lines before matching against
expected output.
2022-06-10 14:24:03 -04:00
Brad King
ab40020b17 Xcode: Suppress "Run Script" build phase warning during compiler id
warning: Run script build phase 'Run Script' will be run during every
    build because it does not specify any outputs.
2022-06-10 14:24:03 -04:00
Brad King
89e1113e0c Xcode: Use ad-hoc signing during compiler id on macOS
Xcode 14 no longer accepts an empty signing identity for macOS.
However, Xcode in general does not accept an ad-hoc signing
identity for iOS.  Switch based on the target platform.

Fixes: #23609
2022-06-10 14:22:40 -04:00
Craig Scott
ce0be99b30 Help: Minor cleanups of 3.24 release notes 2022-06-10 11:12:20 -04:00
Craig Scott
35ecc6e39b Help: Trivial grammar fixup in LINK_GROUPS genex 2022-06-10 11:12:20 -04:00
Brad King
efbbae9705 Merge topic 'update-kwsys' into release-3.24
a54f7a6983 Merge branch 'upstream-KWSys' into update-kwsys
975c44654d KWSys 2022-06-09 (9b65e88d)

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !7345
2022-06-10 11:11:25 -04:00
Brad King
ec6d574d4a Merge topic 'ExternalProject-stamp-genex' into release-3.24
c111d440ce ExternalProject: Express per-config step stamp file paths using CONFIG genex

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !7341
2022-06-10 11:10:23 -04:00
Brad King
865bc4a068 Merge topic 'CheckIPOSupported-honor-flags' into release-3.24
ec08bc1752 CheckIPOSupported: Compile check using flags of calling project

Acked-by: Kitware Robot <kwrobot@kitware.com>
Tested-by: buildbot <buildbot@kitware.com>
Merge-request: !7343
2022-06-10 11:05:43 -04:00
nanoric
bc4c0d657a cmWindowsRegistry: Add missing <cstdint> include
It is needed for `std::uint8_t`, but was left out of commit 8d7e80cf3d
(find_* commands: add control over Windows registry views, 2022-04-16).
For some reason the include-what-you-use tool does not think the include
is needed, so add an `IWYU pragma` to keep it.
2022-06-10 10:53:49 -04:00
Brad King
d63ec8645f Merge topic 'revert-msvc-compilers-default-to-ZI' into release-3.24
7d73e88d3a MSVC: Revert "Default to -ZI instead of /Zi for x86 and x64"

Acked-by: Kitware Robot <kwrobot@kitware.com>
Tested-by: buildbot <buildbot@kitware.com>
Merge-request: !7344
2022-06-10 10:40:05 -04:00
Brad King
ec08bc1752 CheckIPOSupported: Compile check using flags of calling project
Forward `CMAKE_<LANG>_FLAGS` and `CMAKE_<LANG>_FLAGS_DEBUG` from the
calling project into the test project.  The set of flags may affect the
availability of IPO support.  Since this may change the result of the
check for existing projects, add a policy for compatibility.

This was discovered after commit 5fcadc481e (MSVC: Default to -ZI
instead of /Zi for x86 and x64, 2022-05-24) introduced policy CMP0138 to
switch our default for MSVC's debug info flag.  The `-ZI` flag is
incompatible with the `-GL` flag used for IPO, so CMP0138 was reverted
pending future work on an alternative solution.  Re-use the CMP0138
policy number for this change to CheckIPOSupported instead.

Fixes: #23607
2022-06-10 09:12:43 -04:00
Craig Scott
f19b48e0b8 FetchContent: Honor CMAKE_FIND_PACKAGE_TARGETS_GLOBAL
Fixes: #23606
2022-06-10 21:49:38 +10:00
Craig Scott
1305bade56 Help: Add missing version directive for find_package() GLOBAL keyword 2022-06-10 18:08:36 +10:00
Brad King
a54f7a6983 Merge branch 'upstream-KWSys' into update-kwsys
# By KWSys Upstream
* upstream-KWSys:
  KWSys 2022-06-09 (9b65e88d)
2022-06-09 14:19:28 -04:00
KWSys Upstream
975c44654d KWSys 2022-06-09 (9b65e88d)
Code extracted from:

    https://gitlab.kitware.com/utils/kwsys.git

at commit 9b65e88d077e023f5e4e22f31bd0970e4071eb5b (master).

Upstream Shortlog
-----------------

Saleem Abdulrasool (1):
      0969597d SystemTools: add a clonefile optimization on macOS
2022-06-09 14:19:27 -04:00
Brad King
7d73e88d3a MSVC: Revert "Default to -ZI instead of /Zi for x86 and x64"
Revert commit 5fcadc481e (MSVC: Default to -ZI instead of /Zi for x86
and x64, 2022-05-24).  The `-ZI` flag is incompatible with the `-GL`
flag used for IPO, and so is not an unconditionally better default.
Revert the change pending future design of a first-class setting for
MSVC debug info format that can be automatically reconciled with IPO
settings.

That commit introduced policy CMP0138, but we already have later policy
numbers used too.  Leave placeholder text to avoid policy renumbering.

Issue: #23607, #10189
2022-06-09 12:24:33 -04:00
Brad King
84da420a29 Merge topic 'vs-android-api' into release-3.24
9d6a080421 VS: Add AndroidAPILevel element to generated project files

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Kyle Edwards <kyle.edwards@kitware.com>
Merge-request: !7339
2022-06-09 09:23:05 -04:00
Brad King
9d43059132 Merge topic 'doc-using-deps-guide' into release-3.24
92e93f5c9e Help: Overhaul and expand the Using Dependencies Guide

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Alex <leha-bot@yandex.ru>
Merge-request: !7332
2022-06-09 09:03:13 -04:00
Craig Scott
92e93f5c9e Help: Overhaul and expand the Using Dependencies Guide
The guide previously only focused on the find_package() command,
with a bias towards libraries. FetchContent was not mentioned at all.
Reorganise and update the existing content. Add new sections to cover
providing dependencies with FetchContent and dependency providers.
Improve discoverability of the guide by mentioning it at the beginning
of the find_package(), FetchContent and dependency provider docs.
2022-06-09 22:55:11 +10:00
Brad King
c111d440ce ExternalProject: Express per-config step stamp file paths using CONFIG genex
The ExternalProject module has long used the generator-specific
placeholder in the `${CMAKE_CFG_INTDIR}` variable to express per-config
stamp file paths in multi-config generators.  Now that most generators
support generator expressions in custom command outputs, we can use
the `$<CONFIG>` genex instead.

In particular, this fixes cross-config `BUILD_BYPRODUCTS` with the Ninja
Multi-Config generator.

Fixes: #23595
2022-06-08 15:13:27 -04:00
Brad King
b33b6014b2 Begin 3.24 release versioning 2022-06-08 11:59:27 -04:00
Brad King
c72f3fca56 Help: Drop development topic notes to prepare release
Release versions do not have the development topic section of
the CMake Release Notes index page.
2022-06-08 11:58:33 -04:00
Brad King
868218ea28 Merge topic 'doc-3.24-relnotes'
253941634c Help: Update Sphinx versionadded directives for 3.24 release
a811489b35 Help: Organize and revise 3.24 release notes
a3fc469882 Help: Consolidate 3.24 release notes

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !7338
2022-06-08 11:57:16 -04:00
Brad King
aaf5353c47 Merge topic 'ci-nmc'
3ed06404bf gitlab-ci: add nightly job testing Ninja Multi-Config on Windows
e39acc2b3a gitlab-ci: add nightly job testing Ninja Multi-Config on macOS

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !7337
2022-06-08 09:21:15 -04:00
Benjamín de la Fuente Ranea
9d6a080421 VS: Add AndroidAPILevel element to generated project files
Map `CMAKE_SYSTEM_VERSION` to the Android Target API Level for Visual
Studio projects.

Fixes: #22886
2022-06-08 09:17:20 -04:00
Brad King
53d3e43c37 Merge topic 'set_source_files_properties'
2a37b7fd77 Help: Fix typo with misnamed set_source_files_property() in example

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !7340
2022-06-08 09:15:19 -04:00
Brad King
253941634c Help: Update Sphinx versionadded directives for 3.24 release
Run the script:

    Utilities/Sphinx/update_versions.py --since v3.23.0 --overwrite
2022-06-08 09:07:21 -04:00
Brad King
a811489b35 Help: Organize and revise 3.24 release notes
Add section headers similar to the 3.23 release notes and move each
individual bullet into an appropriate section.  Revise a few bullets.
2022-06-08 09:07:21 -04:00
Dan Walsh
2a37b7fd77 Help: Fix typo with misnamed set_source_files_property() in example 2022-06-08 21:18:26 +10:00
Kitware Robot
252093c216 CMake Nightly Date Stamp 2022-06-08 00:01:17 -04:00
Brad King
a3fc469882 Help: Consolidate 3.24 release notes
Run the `Utilities/Release/consolidate-relnotes.bash` script to move
notes from `Help/release/dev/*` into `Help/release/3.24.rst`.
2022-06-07 15:05:57 -04:00
Brad King
3ed06404bf gitlab-ci: add nightly job testing Ninja Multi-Config on Windows 2022-06-07 12:38:50 -04:00
Brad King
e39acc2b3a gitlab-ci: add nightly job testing Ninja Multi-Config on macOS 2022-06-07 12:21:02 -04:00
Brad King
031fa14b7e Merge topic 'ci-ispc'
d14349c907 ci: Enable ISPC tests on Linux, Windows, and macOS nightly builds
49996faaac ci: remove ISPC from the Fedora CI image
3e791592ad gitlab-ci: init macOS and Windows jobs with per-CMAKE_CONFIGURATION scripts

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !7336
2022-06-07 10:57:13 -04:00
Brad King
4224df9eac Merge topic 'rel-linux'
a4c48afbbc Utilities/Release: Drop unnecessary system API definitions for Linux

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !7333
2022-06-07 10:56:08 -04:00
Brad King
bdd44eca9b Merge topic 'print-sources'
d8dcfa7776 Tests: Add tests for CMakePrintHelpers
b7ddfcfe08 cmake_print_properties(): Update grammar docs
e52b9e1270 PrintHelpers: Document argument order restriction
d87ed4d88f PrintHelpers: Fix indentation
5fa70e1738 PrintHelpers: Rewrite a few more error messages
2579503f45 PrintHelpers: Fix target SOURCES property

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: buildbot <buildbot@kitware.com>
Merge-request: !7331
2022-06-07 10:55:29 -04:00