Commit Graph

57802 Commits

Author SHA1 Message Date
Brad King
7b622f3e80 ExternalProject: Fix regression in stamp creation for Xcode+iOS
The change to `_ep_add_mkdir_command` in commit 5fbac2bb24
(ExternalProject: Move inline scripts to separate files, 2022-01-22,
v3.23.0-rc1~101^2) did not account for the possibility that
`CMAKE_CFG_INTDIR` is `$(CONFIGURATION)$(EFFECTIVE_PLATFORM_NAME)`
instead of just the configuration name.  Pass the value into the helper
script on the command line so that the native buildsystem placeholders
are evaluated.

Fixes: #23645
2022-06-21 18:26:22 -04:00
Brad King
2787427306 Merge topic 'ci-rel-win-arm64' into release-3.24
41ea4d4de8 ci: Rebuild Qt 6.3.0 windows-arm64 dependency with LLVM/Clang
e0d9ee0cc4 Utilities/Release: Simplify script to build Qt 6.3.0 Windows binaries

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !7380
2022-06-20 09:57:22 -04:00
Brad King
41ea4d4de8 ci: Rebuild Qt 6.3.0 windows-arm64 dependency with LLVM/Clang
In commit 7a21173b0e (gitlab-ci: Add job to build Windows arm64
binaries, 2022-06-13, v3.24.0-rc1~4^2~1) we built the Qt binaries using
the MSVC 14.32 toolset targeting arm64.  However, the `cmake-gui` built
with them does not start, perhaps due to a bug in MSVC's ARM64 support.
Run the `Utilities/Release/win/qtbase-6.3.0-win-msvc.cmake` script for
`i386` and `x86_64`.  Run it for `arm64` with the `clang-cl` argument.

Issue: #21902
2022-06-17 11:04:11 -04:00
Cristian Adam
e0d9ee0cc4 Utilities/Release: Simplify script to build Qt 6.3.0 Windows binaries
Revise and simplify the script from commit d0c9225a7e
(Utilities/Release: Add script to build Qt 6.3.0 Windows binaries,
2022-06-10, v3.24.0-rc1~4^2~5).  For `cmake-gui` we only need QtBase.
Also, convert to a `.cmake` script.

Issue: #21902
2022-06-17 11:04:10 -04:00
Brad King
81104d7ce8 Merge topic 'ci-rel-win-arm64-nightly' into release-3.24
24099112c0 gitlab-ci: Add jobs to package and upload Windows arm64 nightly binaries
dfa5401af6 ci: use CMake 3.24.0-rc1

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: buildbot <buildbot@kitware.com>
Merge-request: !7368
2022-06-15 09:32:45 -04:00
Brad King
24099112c0 gitlab-ci: Add jobs to package and upload Windows arm64 nightly binaries
Follow up commit 7a21173b0e (gitlab-ci: Add job to build Windows arm64
binaries, 2022-06-13, v3.24.0-rc1~4^2~1).  Base the package and upload
jobs on the approach from commit 4c7c66dcf5 (gitlab-ci: Add jobs to make
Windows x86_64 and i386 packages, 2022-05-19).

Issue: #21902
2022-06-14 16:13:45 -04:00
Brad King
dfa5401af6 ci: use CMake 3.24.0-rc1 2022-06-14 14:21:01 -04:00
Brad King
3b4bd019ff CMake 3.24.0-rc1 v3.24.0-rc1 2022-06-14 12:11:11 -04:00
Brad King
a26ab5cff4 Merge topic 'doctop' into release-3.24
75aedb1204 Help: Clarify PROJECT_IS_TOP_LEVEL behavior w.r.t. add_subdirectory

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !7362
2022-06-14 12:09:01 -04:00
Brad King
ca00b751d2 Merge topic 'fortc-warn' into release-3.24
812000904e Tests: Add Fortran test C function prototype

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !7363
2022-06-14 12:06:01 -04:00
Brad King
6b5a0a0685 Merge topic 'update-kwiml' into release-3.24
82eb512637 Merge branch 'upstream-KWIML' into update-kwiml
2a233bb754 KWIML 2022-06-14 (7b9bd7fe)

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: buildbot <buildbot@kitware.com>
Merge-request: !7356
2022-06-14 12:05:08 -04:00
Brad King
82eb512637 Merge branch 'upstream-KWIML' into update-kwiml
# By KWIML Upstream
* upstream-KWIML:
  KWIML 2022-06-14 (7b9bd7fe)
2022-06-14 10:43:13 -04:00
KWIML Upstream
2a233bb754 KWIML 2022-06-14 (7b9bd7fe)
Code extracted from:

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

at commit 7b9bd7fe925396d06d3d9540b4863d6d2382661d (master).

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

Brad King (2):
      33c2acf1 test: Replace sprintf with snprintf
      7b9bd7fe test: Avoid snprintf on MSVC before VS 2015
2022-06-14 10:43:13 -04:00
Michael Hirsch
75aedb1204 Help: Clarify PROJECT_IS_TOP_LEVEL behavior w.r.t. add_subdirectory
Clarify documentation added by commit 2df4badc5f (Help: Note
PROJECT_IS_TOP_LEVEL behavior w.r.t. ExternalProject, 2021-07-05,
v3.21.0-rc3~1^2).

Fixes: #23511
2022-06-14 08:06:02 -04:00
William R. Dieter
812000904e Tests: Add Fortran test C function prototype
One of three Fortran/C interface test functions is missing a prototype,
which causes warnings and sometimes errors depending on compiler versions
and flags.

Signed-off-by: William R. Dieter <william.r.dieter@intel.com>
2022-06-14 07:52:25 -04:00
Brad King
18687760f4 Merge topic 'ci-rel-win-arm64' into release-3.24
d084718eb9 Utilities/Release: Add windows-arm64 package to file table
7a21173b0e gitlab-ci: Add job to build Windows arm64 binaries
06c6e76a12 ci: update to WiX 3.14.0.6526
cca3a73ef0 ci: Factor out Windows x86-family-specific package configuration
add3dc9508 ci: Re-order logic for downloading Qt during packaging
d0c9225a7e Utilities/Release: Add script to build Qt 6.3.0 Windows binaries

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: buildbot <buildbot@kitware.com>
Merge-request: !7360
2022-06-14 07:40:10 -04:00
Brad King
c1957df97a Merge topic 'lcc-warnings' into release-3.24
beb07cdda7 Source: Convince LCC that RAII variables are used

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: buildbot <buildbot@kitware.com>
Merge-request: !7357
2022-06-14 07:35:20 -04:00
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
Brad King
d084718eb9 Utilities/Release: Add windows-arm64 package to file table 2022-06-13 15:27:34 -04:00
Brad King
7a21173b0e gitlab-ci: Add job to build Windows arm64 binaries
Base it on the approach from commit 4c7c66dcf5 (gitlab-ci: Add jobs to
make Windows x86_64 and i386 packages, 2022-05-19).  Leave out the
packaging and upload steps for now because they are only for the nightly
binaries, and will need a new release of CPack to pass the `arm64`
architecture to WiX.

Issue: #21902
2022-06-13 15:04:24 -04:00
Brad King
06c6e76a12 ci: update to WiX 3.14.0.6526
This version supports the `arm64` architecture.
2022-06-13 15:02:51 -04:00
Brad King
cca3a73ef0 ci: Factor out Windows x86-family-specific package configuration 2022-06-13 15:02:51 -04:00
Brad King
add3dc9508 ci: Re-order logic for downloading Qt during packaging
Prepare to support per-architecture URLs.
2022-06-13 15:02:51 -04:00
Brad King
d0c9225a7e Utilities/Release: Add script to build Qt 6.3.0 Windows binaries
These may be used to build CMake binaries for Windows.
2022-06-13 15:02:47 -04:00
Brad King
beb07cdda7 Source: Convince LCC that RAII variables are used
Extend the change from commit 5ad8862318 (Source: Convince NVHPC that
RAII variables are used, 2021-04-26, v3.21.0-rc1~254^2~1) to apply to
LCC too.
2022-06-13 11:07:35 -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