Commit Graph

67238 Commits

Author SHA1 Message Date
Kitware Robot
01d8a955be CMake Nightly Date Stamp 2024-09-18 00:01:13 -04:00
Brad King
d6e03018cb Merge topic 'execute_process-encoding'
e782811cfe execute_process: Change default ENCODING to UTF-8
9a4533405b cmExecuteProcessCommand: Explicitly ignore unknown ENCODING values

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: buildbot <buildbot@kitware.com>
Merge-request: !9822
2024-09-17 09:09:36 -04:00
Kitware Robot
52fd4a3479 CMake Nightly Date Stamp 2024-09-17 00:01:20 -04:00
Brad King
e782811cfe execute_process: Change default ENCODING to UTF-8
Windows is heading toward making UTF-8 the preferred MBCS.  As CMake's
internal encoding, `UTF-8` is effectively equivalent to `NONE`, which
was CMake's behavior prior to 3.15's accidental change to `AUTO`.
Behavior of `ENCODING UTF-8` is independent of CMake's internal
encoding, making it in principle a better default than `NONE`.

Add policy CMP0176 for compatibility and to document the default's
history.

Fixes: #26262
2024-09-16 06:37:46 -04:00
Brad King
9a4533405b cmExecuteProcessCommand: Explicitly ignore unknown ENCODING values
The logic did this implicitly before.  Make it easier to follow.
2024-09-16 06:37:15 -04:00
Brad King
c76a5458ac Merge topic 'execute_process-encoding'
3898e53e82 execute_process: Document and test ENCODING default
d67519fce8 Help/command/execute_process: Improve formatting of ENCODING names
e1fc4b9b17 Tests/RunCMake/execute_process: Add test for ENCODING AUTO
56ae758bc5 Tests/RunCMake/execute_process: Improve test for ENCODING UTF-8

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !9816
2024-09-16 06:25:22 -04:00
Brad King
671748819b Merge topic 'clang-cl-c++23'
474eafe28c clang-cl: Add support for C++23

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !9818
2024-09-16 06:22:35 -04:00
Brad King
7b5f9f1fa2 Merge topic 'ninja-depfile-quoting'
b11323f1e4 Ninja: Fix depfile binding with spaces in path
ad66be9943 cmNinjaTargetGenerator: Factor out helper to add depfile bindings
269c3a13c8 cmNinjaTargetGenerator: Reduce DEP_FILE binding duplication
48ced5fb12 Tests/RunCMake/BuildDepends: Enable more depfile cases with Ninja
b751a857cc Tests/RunCMake/BuildDepends: Simplify CustomCommandDepends case
006891dab9 Tests/RunCMake/BuildDepends: Prepare CompileDepends check for multiple targets
0915320ddf Tests/RunCMake/BuildDepends: Simplify CompileDepends case
24fbfa915c Tests/RunCMake/BuildDepends: Simplify LinkDepends case

Acked-by: Kitware Robot <kwrobot@kitware.com>
Tested-by: buildbot <buildbot@kitware.com>
Merge-request: !9812
2024-09-16 06:20:17 -04:00
Brad King
59eb4c3804 Merge branch 'release-3.30' 2024-09-16 06:17:59 -04:00
Brad King
8143e1b051 Merge topic 'FindPython-FIND_ABI'
f885b007b9 FindPython: ensure all ABI are searched by default

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: buildbot <buildbot@kitware.com>
Tested-by: Ben Boeckel <ben.boeckel@kitware.com>
Merge-request: !9819
2024-09-16 06:17:59 -04:00
Brad King
d31f4b645b Merge topic 'FindPython-FIND_ABI' into release-3.30
f885b007b9 FindPython: ensure all ABI are searched by default

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: buildbot <buildbot@kitware.com>
Tested-by: Ben Boeckel <ben.boeckel@kitware.com>
Merge-request: !9819
2024-09-16 06:17:57 -04:00
Kitware Robot
21e16fa4fa CMake Nightly Date Stamp 2024-09-16 00:01:46 -04:00
Kitware Robot
b346afce4f CMake Nightly Date Stamp 2024-09-15 00:01:18 -04:00
Kitware Robot
0cd71e27c2 CMake Nightly Date Stamp 2024-09-14 00:02:10 -04:00
Brad King
474eafe28c clang-cl: Add support for C++23
Although there is no `cl -std:c++23` flag, the underlying Clang compiler
does have a C++23 mode we can activate by passing `-std=c++23` through a
`clang-cl` wrapper flag.

Fixes: #26061
2024-09-13 12:28:49 -04:00
Brad King
844417294b Merge topic 'file-REAL_PATH-warn-non-existing'
00c1161b01 file(REAL_PATH): Warn on non-existing paths

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !9806
2024-09-13 09:25:44 -04:00
Brad King
e701265823 Merge topic 'matlab-macos'
b90d7a3a82 FindMatlab: On macOS search under ~/Applications and /Applications

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !9814
2024-09-13 09:23:18 -04:00
Brad King
b27faac071 Merge branch 'release-3.30' 2024-09-13 09:21:16 -04:00
Brad King
1f82060c76 Merge topic 'matlab-2024b'
20412181e9 FindMatlab: Add R2024b version map

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !9813
2024-09-13 09:21:15 -04:00
Brad King
cca09318d4 Merge topic 'matlab-2024b' into release-3.30
20412181e9 FindMatlab: Add R2024b version map

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !9813
2024-09-13 09:21:14 -04:00
Brad King
b11323f1e4 Ninja: Fix depfile binding with spaces in path
In build statements we use a single `DEP_FILE = ...` binding that is
shared between `depfile = $DEP_FILE` and `command = ... $DEP_FILE ...`
bindings in the corresponding rule.  In cases that the command's shell
argument needs quoting, add a separate `depfile = ...` binding to the
build statement to express the depfile path without quoting.  Otherwise
`ninja` tries to open a file path that contains literal quotes.

Fixes: #26287
2024-09-13 09:04:32 -04:00
Brad King
3898e53e82 execute_process: Document and test ENCODING default
The default was originally AUTO in commit 2ed473b3b8 (execute_process:
Add ENCODING option for Windows child process output, 2016-11-23,
v3.8.0-rc1~232^2) but was changed back to NONE by commit 07c3380a6e
(execute_process: Restore no-decoding default behavior, 2017-02-13,
v3.8.0-rc2~26^2) for CMake 3.8.  Later it was accidentally changed back
to AUTO by commit b783e62533 (cmExecuteProcessCommand: Port to
cmArgumentParser, 2019-03-25, v3.15.0-rc1~270^2) in CMake 3.15 but the
documentation was not updated.  Document the current default, AUTO, and
add a test case to verify it.

Issue: #26262
2024-09-13 08:19:57 -04:00
Brad King
d67519fce8 Help/command/execute_process: Improve formatting of ENCODING names 2024-09-13 08:19:35 -04:00
Brad King
e1fc4b9b17 Tests/RunCMake/execute_process: Add test for ENCODING AUTO
On Windows the AUTO encoding is based on the console code page,
so run the test in an isolated console window.
2024-09-13 08:19:32 -04:00
Kitware Robot
07f0d602c0 CMake Nightly Date Stamp 2024-09-13 00:01:17 -04:00
Brad King
56ae758bc5 Tests/RunCMake/execute_process: Improve test for ENCODING UTF-8
Generalize the test infrastructure.  Add Chinese text to the sample.
2024-09-12 14:34:04 -04:00
Marc Chevrier
f885b007b9 FindPython: ensure all ABI are searched by default
Fixes: #26279
2024-09-12 19:22:40 +02:00
scivision
b90d7a3a82 FindMatlab: On macOS search under ~/Applications and /Applications
users with locked-down macOS may not be able to install their desired Matlab
under /Applications, but may use the standard ~/Applications instead
2024-09-12 12:37:30 -04:00
scivision
20412181e9 FindMatlab: Add R2024b version map 2024-09-12 12:34:00 -04:00
Brad King
ad66be9943 cmNinjaTargetGenerator: Factor out helper to add depfile bindings 2024-09-12 12:24:48 -04:00
Brad King
269c3a13c8 cmNinjaTargetGenerator: Reduce DEP_FILE binding duplication 2024-09-12 12:24:48 -04:00
Brad King
48ced5fb12 Tests/RunCMake/BuildDepends: Enable more depfile cases with Ninja 2024-09-12 12:24:48 -04:00
Brad King
b751a857cc Tests/RunCMake/BuildDepends: Simplify CustomCommandDepends case
Also rename from "CustomCommandDependencies".
2024-09-12 12:24:48 -04:00
Brad King
006891dab9 Tests/RunCMake/BuildDepends: Prepare CompileDepends check for multiple targets 2024-09-12 12:23:46 -04:00
Brad King
0915320ddf Tests/RunCMake/BuildDepends: Simplify CompileDepends case
Also rename from "CompilerDependencies".
2024-09-12 11:58:18 -04:00
Brad King
24fbfa915c Tests/RunCMake/BuildDepends: Simplify LinkDepends case 2024-09-12 10:49:29 -04:00
Alex Overchenko
00c1161b01 file(REAL_PATH): Warn on non-existing paths
The command is documented to work only for cases that the referenced
path exists.

Fixes: #26260
2024-09-12 08:20:29 -04:00
Brad King
747fa20ad6 Merge topic 'proto'
1dc1d000a0 FindProtobuf: Fix IMPORT_DIRS handling and relative directory generation

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !9809
2024-09-12 08:16:53 -04:00
Brad King
d3518bbb17 Merge topic 'vs-output-name-net-sdk'
66bd326e28 VS: Use OUTPUT_NAME in DOTNET_SDK projects

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !9808
2024-09-12 08:12:51 -04:00
Brad King
b91ea1b368 Merge topic 'file-archive-workdir'
d8a9aabd24 file(ARCHIVE_CREATE): add WORKING_DIRECTORY option
d65b5a8e03 Help: Format file(ARCHIVE*) options as definition lists

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !9803
2024-09-12 08:10:54 -04:00
Brad King
2321b88edf Merge topic 'cpack-ifw-product-images'
5b8fa21512 Tests: Add a test covering the CPack IFW Generator
3331c7032f CPack/IFW: Add option for ProductImages URLs
d58f90f628 CPack/IFW: Actually ignore missing ProductImages
3c214f2638 CPack/IFW: Fix generation of ProductImages

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !9798
2024-09-12 08:09:32 -04:00
Kitware Robot
8ae543d85c CMake Nightly Date Stamp 2024-09-12 00:01:14 -04:00
Xiong Nandi
1dc1d000a0 FindProtobuf: Fix IMPORT_DIRS handling and relative directory generation
Append ${CMAKE_CURRENT_SOURCE_DIR} to `_protobuf_include_path` last, since
protoc will search the path in order.

Besides, we have to figure out the output directory by iterating through the
include paths and checking for valid relative paths.
2024-09-11 12:56:28 -04:00
Yuri Witte
d8a9aabd24 file(ARCHIVE_CREATE): add WORKING_DIRECTORY option
Fixes: #25260
Issue: #21653
2024-09-11 09:52:32 -04:00
Brad King
d65b5a8e03 Help: Format file(ARCHIVE*) options as definition lists 2024-09-11 09:50:55 -04:00
Brad King
ac410c7add Merge topic 'genex-tco-subgraph'
4a11772618 GenEx: Limit TARGET_PROPERTY transitive closure optimization to subgraphs

Acked-by: Kitware Robot <kwrobot@kitware.com>
Tested-by: buildbot <buildbot@kitware.com>
Acked-by: Robert Maynard <robertjmaynard@gmail.com>
Merge-request: !9789
2024-09-11 09:33:28 -04:00
Brad King
dd023d9707 Merge topic 'add_custom_command-arg-handling'
ec519f3e97 add_custom_command: Validate arguments more rigorously
8dc8be0884 AndroidTestUtilities: Remove DEPENDS that was being silently ignored
316840b430 Tests: Add missing POST_BUILD to custom commands
f5f80305ef ExternalProject: Ensure keywords requiring an argument have one

Acked-by: Kitware Robot <kwrobot@kitware.com>
Tested-by: buildbot <buildbot@kitware.com>
Merge-request: !9785
2024-09-11 09:32:24 -04:00
Brad King
6971e816ce Merge topic 'parallel-install-bugfix'
a980418f7b cmake --install: Fix concurrency level of parallel install

Acked-by: Kitware Robot <kwrobot@kitware.com>
Tested-by: buildbot <buildbot@kitware.com>
Merge-request: !9802
2024-09-11 09:27:45 -04:00
Brad King
42556539d7 Merge topic 'update-kwsys'
d195e2c9c8 Merge branch 'upstream-KWSys' into update-kwsys
5293b8ded0 KWSys 2024-09-10 (ac1555b4)

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !9805
2024-09-11 09:26:15 -04:00
Julien Marrec
5b8fa21512 Tests: Add a test covering the CPack IFW Generator 2024-09-11 08:44:09 -04:00