Commit Graph

62571 Commits

Author SHA1 Message Date
Kyle Edwards 17bab9e709 FindwxWindows: Replace exec_program() with execute_process() 2023-07-24 17:23:32 -04:00
Kyle Edwards 13f7ae2878 FindQt: Replace exec_program() with execute_process() 2023-07-24 17:23:32 -04:00
Kyle Edwards 31cab35bb6 FindFLTK2: Replace exec_program() with execute_process() 2023-07-24 17:23:32 -04:00
Kyle Edwards ec155433ed FindFLTK: Replace exec_program() with execute_process() 2023-07-24 17:23:32 -04:00
Brad King 6194193a8a Merge topic 'file-REAL_PATH-relative'
6b5f2dbbfe file(REAL_PATH): resolve symlinks before '..' components

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: buildbot <buildbot@kitware.com>
Merge-request: !8605
2023-07-24 08:43:19 -04:00
Brad King e61a51b5a2 Merge branch 'release-3.27' 2023-07-24 08:31:53 -04:00
Brad King f8c3fd0c45 Merge topic 'dyndep-module-info-objlib-dependency'
b665966933 cmComputeLinkInformation: track OBJECT library dependencies
a99b87a628 Tests/RunCMake/CXXModules: add a test for issue #25112
2870a67540 Tests/FortranOnly: add a test case for issue #25112

Acked-by: Kitware Robot <kwrobot@kitware.com>
Tested-by: buildbot <buildbot@kitware.com>
Merge-request: !8645
2023-07-24 08:31:53 -04:00
Brad King 21721ad3ce Merge topic 'dyndep-module-info-objlib-dependency' into release-3.27
b665966933 cmComputeLinkInformation: track OBJECT library dependencies
a99b87a628 Tests/RunCMake/CXXModules: add a test for issue #25112
2870a67540 Tests/FortranOnly: add a test case for issue #25112

Acked-by: Kitware Robot <kwrobot@kitware.com>
Tested-by: buildbot <buildbot@kitware.com>
Merge-request: !8645
2023-07-24 08:31:52 -04:00
Kitware Robot ee9908df39 CMake Nightly Date Stamp 2023-07-24 00:01:46 -04:00
Kitware Robot a395324728 CMake Nightly Date Stamp 2023-07-23 00:01:11 -04:00
Ben Boeckel b665966933 cmComputeLinkInformation: track OBJECT library dependencies
In commit b6a5382217 (Ninja: depend on language module information files
directly, 2023-02-10), introduced via !8197, language-specific module
information files (`CMakeFiles/<target>.dir/<lang>Modules.json`) files
were added as real dependencies to the dyndep collation steps.
Previously, the behavior was to inform the collator of all possible
targets and search for the files manually ignoring those which did not
exist with ordering enforced by depending on the linker output of all
dependent targets. This behavior could lead to stale information being
used (e.g., if a target stops providing any targets) and also did not
reliably build everything needed on rebuilds. Afterwards, the internal
computation changed the dependency from all possible targets to an exact
set of "these targets might have modules" query, however one that did
not include `OBJECT` libraries since do not have `LinkEntry` items
internally (their objects are instead treated as source files).

As a stopgap measure, track `OBJECT` libraries in a separate list and
query them explicitly when gathering targets which may have interesting
information. Future work can add `LinkEntry` items to represent these
targets once all `LinkEntry` consumers have been audited to make sure
they are not surprised by any `OBJECT` library entries.

Fixes: #25112
2023-07-22 07:12:43 -04:00
Ben Boeckel a99b87a628 Tests/RunCMake/CXXModules: add a test for issue #25112
Add a test case for C++ `OBJECT` libraries providing modules to
consumers.
2023-07-22 06:53:38 -04:00
Ben Boeckel 2870a67540 Tests/FortranOnly: add a test case for issue #25112
Add a test case for Fortran `OBJECT` libraries providing modules to
consumers.
2023-07-22 06:53:36 -04:00
Kitware Robot 199e1664ac CMake Nightly Date Stamp 2023-07-22 00:01:11 -04:00
Brad King 71e0887ea2 Merge topic 'cmstrcat-pass'
faf36e65b9 cmMakefile: use single characters where possible
4fd80d5419 cmMakefile: use static string views in some locations
e41ff26735 cmMakefile: use `cmStrCat` where possible
2a74f641db cmGlobalGenerator: use single chars where possible
cfdb5c970c cmGlobalGenerator: use `cmStrCat` where possible
884c477545 cmCoreTryCompile: combine strings where possible
b8fd1cc8d9 cmCoreTryCompile: use single characters where possible
0b74471d62 cmCoreTryCompile: use `cmStrCat` where possible

Acked-by: Kitware Robot <kwrobot@kitware.com>
Tested-by: buildbot <buildbot@kitware.com>
Merge-request: !8640
2023-07-21 09:40:09 -04:00
Brad King 4c9b0fe432 Merge topic 'deprecate-install-combined'
7d3eede923 Help: Document IOS_INSTALL_COMBINED as deprecated

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !8641
2023-07-21 09:39:21 -04:00
Brad King 61b36ac58b Merge branch 'release-3.27' 2023-07-21 09:37:29 -04:00
Brad King 5051340916 Merge topic 'FindOpenSSL-trust-root-dir'
791d4fd350 FindOpenSSL: Prefer OPENSSL_ROOT_DIR only if non-empty

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !8643
2023-07-21 09:37:29 -04:00
Brad King 3ea7204de4 Merge topic 'FindOpenSSL-trust-root-dir' into release-3.27
791d4fd350 FindOpenSSL: Prefer OPENSSL_ROOT_DIR only if non-empty

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !8643
2023-07-21 09:37:28 -04:00
Brad King 77c0890f6e Merge branch 'release-3.27' 2023-07-21 09:36:23 -04:00
Brad King f4eba9c561 Merge branch 'release-3.26' 2023-07-21 09:36:21 -04:00
Brad King 50c9723462 Merge branch 'release-3.26' into release-3.27 2023-07-21 09:36:14 -04:00
Brad King 1bc383307a Merge branch 'release-3.27' 2023-07-21 09:35:10 -04:00
Brad King 32174571e9 Merge topic 'FindCUDAToolkit-libnvrtc-builtins'
c2601d01d1 FindCUDAToolkit: Fix nvrtc_builtins library name

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Robert Maynard <robertjmaynard@gmail.com>
Merge-request: !8642
2023-07-21 09:35:10 -04:00
Brad King b4693ea408 Merge topic 'FindCUDAToolkit-libnvrtc-builtins' into release-3.27
c2601d01d1 FindCUDAToolkit: Fix nvrtc_builtins library name

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Robert Maynard <robertjmaynard@gmail.com>
Merge-request: !8642
2023-07-21 09:35:09 -04:00
Kitware Robot 6bbe6cdc33 CMake Nightly Date Stamp 2023-07-21 00:01:13 -04:00
Robert Maynard 6b5f2dbbfe file(REAL_PATH): resolve symlinks before '..' components
Previously REAL_PATH would collapse paths before resolving any symlinks
so if `..` crossed a symlink the output from `REAL_PATH` would be wrong.

It looked like REAL_PATH did this by mistake since it was a side-effect
of ensuring we had an absolute path before resolving symlinks.
2023-07-20 17:02:58 -04:00
Brad King 791d4fd350 FindOpenSSL: Prefer OPENSSL_ROOT_DIR only if non-empty
Since commit 5cc8a69867 (FindOpenSSL: Trust the user's OPENSSL_ROOT_DIR,
2023-05-17, v3.27.0-rc1~71^2) we use `OPENSSL_ROOT_DIR` whenever it is
defined, even if it is an empty string.  This breaks a pattern in
existing projects that define an empty `OPENSSL_ROOT_DIR` cache entry so
that `cmake-gui` users can fill it in.  Use the value only if non-empty.

Issue: #18352
2023-07-20 12:18:13 -04:00
Brad King eace51a20c Merge branch 'FindCUDAToolkit-libnvrtc-builtins' into release-3.26
Merge-request: !8642
2023-07-20 11:37:25 -04:00
Tomoharu Kitawaki c2601d01d1 FindCUDAToolkit: Fix nvrtc_builtins library name
The lib is named `libnvrtc-builtins.so`, not `libnvrtc_builtins.so`.

Update the change from commit 2a94c762ed (FindCUDAToolkit: Add support
for CUDA::nvrtc_static, 2023-01-20, v3.26.0-rc1~55^2).  Apply a fix
similar to commit 9688a8ebc2 (FindCUDAToolkit: Fix
`nvrtc_builtins_static` library name, 2023-02-03, v3.26.0-rc2~15^2).
2023-07-20 11:34:47 -04:00
Márton Marczell 7d3eede923 Help: Document IOS_INSTALL_COMBINED as deprecated
The approach has not made sense since the introduction of Apple Silicon
and macOS arm64.

Issue: #24957
2023-07-20 11:21:24 -04:00
Brad King 88c6dc75ba Merge topic 'command-job-server-aware'
95941fd990 add_custom_{target,command}: Add argument JOB_SERVER_AWARE

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: buildbot <buildbot@kitware.com>
Merge-request: !8547
2023-07-20 10:23:31 -04:00
Kitware Robot e0ed4d7a6f CMake Nightly Date Stamp 2023-07-20 00:01:16 -04:00
Ben Boeckel faf36e65b9 cmMakefile: use single characters where possible 2023-07-19 16:38:34 -04:00
Ben Boeckel 4fd80d5419 cmMakefile: use static string views in some locations 2023-07-19 16:38:27 -04:00
Ben Boeckel e41ff26735 cmMakefile: use cmStrCat where possible 2023-07-19 16:38:27 -04:00
Ben Boeckel 2a74f641db cmGlobalGenerator: use single chars where possible 2023-07-19 16:32:33 -04:00
Ben Boeckel cfdb5c970c cmGlobalGenerator: use cmStrCat where possible 2023-07-19 16:32:25 -04:00
Ben Boeckel 884c477545 cmCoreTryCompile: combine strings where possible 2023-07-19 16:31:31 -04:00
Ben Boeckel b8fd1cc8d9 cmCoreTryCompile: use single characters where possible 2023-07-19 16:30:27 -04:00
Ben Boeckel 0b74471d62 cmCoreTryCompile: use cmStrCat where possible 2023-07-19 16:30:27 -04:00
Brad King 0baa8af568 Merge branch 'release-3.27' 2023-07-19 14:40:53 -04:00
Brad King f0e74de429 Merge branch 'release-3.26' 2023-07-19 14:40:30 -04:00
Brad King 8ea4a99d28 Merge branch 'release-3.26' into release-3.27 2023-07-19 14:40:17 -04:00
Brad King 01c62f4ff0 CMake 3.26.5 v3.26.5 2023-07-19 13:56:04 -04:00
Brad King b0054dd65c Merge topic 'imported-implib-only'
7351d590ee cmTarget: Add a way to represent imported shared library stubs
83574a4772 GeneratorExpression: Expand testing of imported location resolution
b75ff51947 Testing: Map RelWithDebInfo config in GeneratorExpression test

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Jason Juang <jasjuang@gmail.com>
Merge-request: !8582
2023-07-19 10:55:30 -04:00
Chris Mahoney 95941fd990 add_custom_{target,command}: Add argument JOB_SERVER_AWARE
Issue: #16273
2023-07-19 10:45:33 -04:00
Brad King ee6335f75f Merge topic 'windows-kernel-mode-driver'
b01f5eb079 Windows: Add experimental WindowsKernelModeDriver platform
d84681d8f0 try_compile(): Pass down CMAKE_EXPERIMENTAL_* feature flags
1ca82e7a04 cmake_language(): Add undocumented GET_EXPERIMENTAL_FEATURE_ENABLED mode
051cea7b7e cmExperimental: Expose feature data API

Acked-by: Kitware Robot <kwrobot@kitware.com>
Tested-by: buildbot <buildbot@kitware.com>
Merge-request: !8634
2023-07-19 10:41:22 -04:00
Brad King e921566142 Merge topic 'cmCMakePath-SunPro-sparc-workaround'
945b9b8132 cmCMakePath: workarounds for Sunpro/sparc compiler

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: buildbot <buildbot@kitware.com>
Acked-by: Robert Maynard <robertjmaynard@gmail.com>
Merge-request: !8633
2023-07-19 10:40:02 -04:00
Kitware Robot a594748cdf CMake Nightly Date Stamp 2023-07-19 00:01:15 -04:00