Commit Graph

62048 Commits

Author SHA1 Message Date
Brad King
888c235eca Merge topic 'werror_space_fix'
cec6f98018 CMakeDetermineCompilerABI: Avoid removing the flag after -Werror

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Robert Maynard <robertjmaynard@gmail.com>
Merge-request: !8518
2023-05-31 09:25:08 -04:00
Brad King
062e547116 Merge topic 'cmake-debugger'
a9a592f96e cmake: Add debugger

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: buildbot <buildbot@kitware.com>
Acked-by: scivision <michael@scivision.dev>
Acked-by: Osyotr <zhenchik35026@gmail.com>
Acked-by: Alex <leha-bot@yandex.ru>
Merge-request: !8338
2023-05-31 09:21:02 -04:00
Kitware Robot
aa888de1f5 CMake Nightly Date Stamp 2023-05-31 00:01:11 -04:00
Raul Tambre
cec6f98018 CMakeDetermineCompilerABI: Avoid removing the flag after -Werror
The matching became too eager after commit 079ea66468
(CMakeDetermineCompilerABI: Handle NVCC-style -Werror flags, 2020-10-04,
v3.19.0-rc1~45^2). When -Werror was specified without a value we would
eat the following flag. Prevent this by disallowing "-" as the first
character of the flag's value.

Fixes: 079ea66468
See-also: https://discourse.cmake.org/t/8230
2023-05-30 11:03:09 -04:00
Brad King
305527f5c6 Merge branch 'release-3.26' into master 2023-05-30 10:59:10 -04:00
Brad King
b50caaf96a Merge topic 'backport-sphinx-file-encoding' into release-3.26
e4f26edc1c Tests: Always load presets schema as UTF-8
fc2b60ca6b Sphinx: Modernize UTF-8 encoding handling when updating CMake.qhp
853f069103 Sphinx: Specify encoding when opening files for title extraction

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !8521
2023-05-30 10:59:10 -04:00
Craig Scott
e4f26edc1c Tests: Always load presets schema as UTF-8
We know the encoding of the schema file, so we should specify it
when we open it for reading. Previously, by not specifying it, the test
was open to using an encoding based on the active locale when
running the test. We may have been enforcing a "C" locale at a higher
level, but we don't need to rely on that here, we can force correct
behavior without that assumption.

Issue: #24679
2023-05-30 10:32:59 -04:00
Craig Scott
fc2b60ca6b Sphinx: Modernize UTF-8 encoding handling when updating CMake.qhp 2023-05-30 10:32:59 -04:00
Craig Scott
853f069103 Sphinx: Specify encoding when opening files for title extraction
When the encoding is not specified, open() may choose an encoding
based on the locale in use. That encoding may have no relationship
to the encoding of the file being opened. Use the locale from the
document settings instead, which should better match the file's
encoding.

Fixes: #24679
2023-05-30 10:32:59 -04:00
Glen Chung
a9a592f96e cmake: Add debugger
- Depends on cppdap and jsoncpp.
- Add --debugger argument to enable the Debugger.
- Add --debugger-pipe argument for DAP traffics over named pipes.
- Support breakpoints by filenames and line numbers.
- Support exception breakpoints.
- Call stack shows filenames and line numbers.
- Show Cache Variables.
- Show the state of currently defined targets,
  tests and directories with their properties.
- Add cmakeVersion to DAP initialize response.
- Include unit tests.

Co-authored-by: Ben McMorran <bemcmorr@microsoft.com>
2023-05-30 09:46:12 -04:00
Brad King
b0d1ddb723 Merge topic 'import-cppdap'
4a84f71049 ci: Provide cppdap in extdeps jobs
5ec69eb58c cppdap: Build as part of CMake or use external installation
3381e6bd5c Merge branch 'upstream-cppdap' into import-cppdap
1daeefc378 cppdap 2023-05-26 (03cc1867)
bd58bc7817 cppdap: Add script to import version as of 2023-05-25
172045b53b jsoncpp: Add cm3p/ headers for json/json.h and json/forwards.h

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: buildbot <buildbot@kitware.com>
Acked-by: Alex <leha-bot@yandex.ru>
Merge-request: !8342
2023-05-30 09:44:38 -04:00
Brad King
0283b2d2bd Merge topic 'cmuvprocesschain-merged-output'
ec80090ce3 cmUVProcessChain: Add option for merged output and error

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: buildbot <buildbot@kitware.com>
Merge-request: !8513
2023-05-30 09:42:32 -04:00
Brad King
150f0f19bc Merge topic 'cmuvprocesschain-working-directory'
67bb1ee50c cmUVProcessChain: Add working directory option

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: buildbot <buildbot@kitware.com>
Merge-request: !8512
2023-05-30 09:41:35 -04:00
Brad King
f0e0eb6385 Merge topic 'SetProperty-suppress-raw-pointer-usage'
aa5fed5052 SetProperty: suppress raw pointer usage

Acked-by: Kitware Robot <kwrobot@kitware.com>
Tested-by: buildbot <buildbot@kitware.com>
Merge-request: !8509
2023-05-30 09:35:58 -04:00
Kitware Robot
2acfaa084a CMake Nightly Date Stamp 2023-05-30 00:01:08 -04:00
Marc Chevrier
7f5ead092b Merge topic 'enhance-linker-depfile-configuration'
0626b62cf2 Link Step: ensure the correct linker is used for depfile configuration

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !8515
2023-05-29 04:19:07 -04:00
Kitware Robot
a2f1614a26 CMake Nightly Date Stamp 2023-05-29 00:01:38 -04:00
Marc Chevrier
0626b62cf2 Link Step: ensure the correct linker is used for depfile configuration
This is related to MR !8443.
2023-05-28 11:28:08 +02:00
Kitware Robot
1f98b65e3e CMake Nightly Date Stamp 2023-05-28 00:01:09 -04:00
Kitware Robot
5d39aad169 CMake Nightly Date Stamp 2023-05-27 00:01:13 -04:00
Kyle Edwards
ec80090ce3 cmUVProcessChain: Add option for merged output and error 2023-05-26 15:52:01 -04:00
Kyle Edwards
67bb1ee50c cmUVProcessChain: Add working directory option 2023-05-26 11:25:32 -04:00
Brad King
4a84f71049 ci: Provide cppdap in extdeps jobs
Debian 10 and Fedora 37 do not yet package cppdap, so our
base images do not include it.  Build it in extdeps jobs.
2023-05-26 09:36:42 -04:00
Brad King
5ec69eb58c cppdap: Build as part of CMake or use external installation
Add `cm3p/` headers to use the selected copy of the library.

Co-authored-by: Glen Chung <kuchung@microsoft.com>
2023-05-26 09:36:14 -04:00
Glen Chung
3381e6bd5c Merge branch 'upstream-cppdap' into import-cppdap
* upstream-cppdap:
  cppdap 2023-05-26 (03cc1867)
2023-05-26 09:36:03 -04:00
cppdap Upstream
1daeefc378 cppdap 2023-05-26 (03cc1867)
Code extracted from:

    https://github.com/google/cppdap.git

at commit 03cc18678ed2ed8b2424ec99dee7e4655d876db5 (03cc18678ed2ed8b2424ec99dee7e4655d876db5).
2023-05-26 09:33:55 -04:00
Brad King
bd58bc7817 cppdap: Add script to import version as of 2023-05-25
Co-authored-by: Glen Chung <kuchung@microsoft.com>
2023-05-26 09:33:34 -04:00
Brad King
b8449712a3 Merge topic 'implicit-link-dir-exclude'
023de565d3 Optionally exclude implicit link directories via environment

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: buildbot <buildbot@kitware.com>
Acked-by: Roscoe A. Bartlett <rabartl@sandia.gov>
Merge-request: !8506
2023-05-26 09:27:23 -04:00
Brad King
a3223bfa68 Merge topic 'intelllvm-link-shared-modules'
9875b11969 IntelLLVM: Use compiler driver as linker for MODULE libraries too

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !8505
2023-05-26 09:24:48 -04:00
Brad King
8ed8c73bd4 Merge topic 'update-kwsys'
4032968220 Merge branch 'upstream-KWSys' into update-kwsys
5df527f7af KWSys 2023-05-25 (c9f0da47)

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: buildbot <buildbot@kitware.com>
Merge-request: !8504
2023-05-26 09:22:09 -04:00
Marc Chevrier
aa5fed5052 SetProperty: suppress raw pointer usage 2023-05-26 14:48:22 +02:00
Kitware Robot
a645a80040 CMake Nightly Date Stamp 2023-05-26 00:01:10 -04:00
Brad King
023de565d3 Optionally exclude implicit link directories via environment
A misconfigured compiler may pass extraneous implicit link directories
to its linker.  If they are in `CMAKE_<LANG>_IMPLICIT_LINK_DIRECTORIES`,
CMake may generate extra `-L` flags on mixed-language link lines that
break linking.  Add an environment variable that users can set to work
around such misconfiguration of their compilers.
2023-05-25 13:42:58 -04:00
William R. Dieter
9875b11969 IntelLLVM: Use compiler driver as linker for MODULE libraries too
Since commit 79921fb00c (IntelLLVM: Set linker to compiler driver for
Windows, 2021-10-19, v3.23.0-rc1~127^2) we default to the compiler
driver as linker for executables, shared libraries, and static
libraries.  Not doing so for shared modules was an oversight.  Copying
the shared library command line for shared modules fixes the problem
(and also is what we do for MSVC).

The MSVC linker is fine for many cases, however it does not support GPU
offload code generated by the IntelLLVM compilers.  Using the compiler
driver as linker, or at least a linker that understands the object
format, is required for linking shared modules that use GPU offload
(e.g., with SYCL or OpenMP).

Signed-off-by: William R. Dieter <william.r.dieter@intel.com>
2023-05-25 13:17:41 -04:00
Brad King
cf7b7600c6 Merge topic 'misc-cxx-modules-fixes'
28ece63fee cxxmodules: Fix exported path to installed module sources in subdirs
f2a699261b cxxmodules: Do not expect collator install scripts with no CXX_MODULES
f9677cc122 Tests: Improve RunCMake.CXXModules expectation matching and error reporting

Acked-by: Kitware Robot <kwrobot@kitware.com>
Reviewed-by: Ben Boeckel <ben.boeckel@kitware.com>
Merge-request: !8474
2023-05-25 09:48:08 -04:00
Brad King
4032968220 Merge branch 'upstream-KWSys' into update-kwsys
# By KWSys Upstream
* upstream-KWSys:
  KWSys 2023-05-25 (c9f0da47)
2023-05-25 09:43:54 -04:00
KWSys Upstream
5df527f7af KWSys 2023-05-25 (c9f0da47)
Code extracted from:

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

at commit c9f0da473ac2c21b25c1819141c4828dd238b4d3 (master).

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

Timo Röhling (1):
      9119f1a1 SystemInformation: Tolerate empty /proc/cpuinfo
2023-05-25 09:43:54 -04:00
Kitware Robot
02db7f044d CMake Nightly Date Stamp 2023-05-25 00:01:09 -04:00
Kitware Robot
ae21371e70 CMake Nightly Date Stamp 2023-05-24 00:01:13 -04:00
Tyler
28ece63fee cxxmodules: Fix exported path to installed module sources in subdirs
When generating the `IMPORTED_CXX_MODULES_[CONFIG]` target property,
there was a missing path separator after a non-empty relative directory
part of the path to a module source file.

Co-authored-by: Brad King <brad.king@kitware.com>
2023-05-23 15:01:52 -04:00
Tyler
f2a699261b cxxmodules: Do not expect collator install scripts with no CXX_MODULES
Calling `install(EXPORT)` with the `CXX_MODULES_DIRECTORY` parameter
leads to installation rules being generated which `include()` CMake
scripts that set the `IMPORTED_CXX_MODULES_[CONFIG]` target property for
relevant targets.  However, these scripts don't get generated for
targets in an export set which don't have any C++20 modules.  When the
installation rules attempt to `include()` the missing scripts, the
install fails.

Co-authored-by: Brad King <brad.king@kitware.com>
2023-05-23 15:01:32 -04:00
Brad King
f9677cc122 Tests: Improve RunCMake.CXXModules expectation matching and error reporting 2023-05-23 15:00:46 -04:00
Brad King
172045b53b jsoncpp: Add cm3p/ headers for json/json.h and json/forwards.h
Add `cm3p/` headers to use the selected copy of the library.
2023-05-23 11:08:42 -04:00
Brad King
d491ea1973 Merge topic 'ep-update-disconnected'
8cc45e150a ExternalProject: Make hg download method respect UPDATE_DISCONNECTED
1512dc43cb ExternalProject: Avoid reconfigure when updates are disconnected
1d29cf37a1 Tests: Reduce warning noise in ExternalProjectUpdate test

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !8498
2023-05-23 11:06:19 -04:00
Brad King
6503ce9434 Merge topic 'correct_cuda_complex_adding_bad_rpath_entries'
4f10111e95 CUDA: Cuda* tests add rpath entry only for need cuda lib directory

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !8473
2023-05-23 11:05:01 -04:00
Brad King
77aaf1b04a Merge topic 'help_configure_file'
b2b97d015e Help: configure_file: add $CACHE{VAR} and $ENV{VAR} to description

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !8500
2023-05-23 11:02:43 -04:00
Brad King
ffb4804c88 Merge topic 'iar-fix-support-avr-8101'
57f22c6a3d IAR:Fix version detection for xlinkavr

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !8501
2023-05-23 11:01:48 -04:00
Brad King
1242ea14c5 Merge topic 'framework-path-parsing'
5884303e69 Apple Framework: enhance path parsing

Acked-by: Kitware Robot <kwrobot@kitware.com>
Tested-by: buildbot <buildbot@kitware.com>
Merge-request: !8499
2023-05-23 11:00:36 -04:00
Brad King
ee98a8d24a Merge topic 'FindOpenSSL-deps'
f7e1e0545f FindOpenSSL: Enable static library dependencies on more platforms

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Jürg Billeter <j@bitron.ch>
Merge-request: !8497
2023-05-23 10:57:51 -04:00
Craig Scott
8cc45e150a ExternalProject: Make hg download method respect UPDATE_DISCONNECTED 2023-05-23 22:39:44 +10:00