Commit Graph

33109 Commits

Author SHA1 Message Date
Brad King fa040cedad Merge topic 'ninja-intl-paths'
a12050666c Tests: Add case for ninja with non-ascii chars
02a04dd9c7 Ninja: Restore support for non-ascii paths on Windows with ninja<=1.10

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !7833
2022-10-27 09:26:36 -04:00
Kitware Robot f2432780b3 CMake Nightly Date Stamp 2022-10-27 00:01:05 -04:00
Brad King 02a04dd9c7 Ninja: Restore support for non-ascii paths on Windows with ninja<=1.10
Revert commit bbdb000c55 (GlobalNinjaGenerator: enlarge file stream
buffer, 2022-01-25, v3.23.0-rc1~68^2).  Somehow `rdbuf()->pubsetbuf()`
is resetting our imbued locale and `cm_codecvt` that handles encoding.

Fixes: #24089
2022-10-26 15:24:43 -04:00
Kitware Robot fd57ced75a CMake Nightly Date Stamp 2022-10-26 00:01:19 -04:00
Kitware Robot 30e0358d84 CMake Nightly Date Stamp 2022-10-25 00:01:11 -04:00
Brad King c2ec949a05 Merge topic 'set_environment_generator'
3c3bce133d cmake: Honor CMAKE_GENERATOR env var in --help output

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: buildbot <buildbot@kitware.com>
Acked-by: Alex Turbov <i.zaufi@gmail.com>
Merge-request: !7808
2022-10-24 12:35:33 -04:00
Brad King 68950c529a Merge topic 'cmake-presets-list-workflow-type'
75cfbef780 cmake: Support --list-presets=workflow

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: buildbot <buildbot@kitware.com>
Tested-by: Craig Scott <craig.scott@crascit.com>
Merge-request: !7816
2022-10-24 12:33:32 -04:00
Brad King 916bf06a2f Merge topic 'fix_narrow_conversion'
f3c918ef1b cmGlobalVisualStudioGenerator: Fix compiling as C++20 in VS 2022

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !7814
2022-10-24 12:21:40 -04:00
Kitware Robot b295b9951f CMake Nightly Date Stamp 2022-10-24 00:01:23 -04:00
Kitware Robot 59102e06ec CMake Nightly Date Stamp 2022-10-23 00:01:09 -04:00
Kitware Robot 0678461170 CMake Nightly Date Stamp 2022-10-22 00:01:19 -04:00
Werner, Joerg f3c918ef1b cmGlobalVisualStudioGenerator: Fix compiling as C++20 in VS 2022
Adding missing narrow string conversion.
2022-10-21 11:01:16 -04:00
Kyle Edwards 75cfbef780 cmake: Support --list-presets=workflow
Fixes: #24072
2022-10-21 10:21:21 -04:00
Brad King 7c71f9b1e8 Merge topic 'filesystem-path-c++03-abi'
ee9805ccd1 cm/filesystem: Fix crash with pre-C++11 std::string GNU ABI in C++17

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: buildbot <buildbot@kitware.com>
Merge-request: !7813
2022-10-21 10:06:22 -04:00
Brad King d44340115f Merge topic 'filesystem-path-c++03-abi' into release-3.25
ee9805ccd1 cm/filesystem: Fix crash with pre-C++11 std::string GNU ABI in C++17

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: buildbot <buildbot@kitware.com>
Merge-request: !7813
2022-10-21 10:06:20 -04:00
Kitware Robot a0ccaaa459 CMake Nightly Date Stamp 2022-10-21 00:01:16 -04:00
Juan Ramos 3c3bce133d cmake: Honor CMAKE_GENERATOR env var in --help output 2022-10-20 19:53:14 -06:00
Brad King ee9805ccd1 cm/filesystem: Fix crash with pre-C++11 std::string GNU ABI in C++17
The `remove_filename` and `replace_extension` methods compute an offset
between the whole path in a `std::string` and a part of a path in a
`std::string_view`.  This is done by subtracting their `.data()`
pointers.  However, C++17 adds a non-const `.data()` through which
modification of the string is allowed.  This means the copy-on-write
implementation used by the pre-C++11 std::string GNU ABI must reallocate
if the string has been copied.  Our subtraction then computes an offset
between two different allocations, which is undefined behavior.

The workaround in commit b3ca4f9ad1 (cm/filesystem: Work around crash
when compiled for CYGWIN/MSYS runtime, 2021-04-22, v3.21.0-rc1~271^2~2)
avoided the problem by calling the non-const `.data()` to reallocate
before constructing the `string_view`.  Instead, explicitly call the
const `.data()` method on the string, which does not reallocate.

Fixes: #22090, #23328
2022-10-20 18:31:50 -04:00
Brad King 914e5594ea Merge topic 'clang-tidy-module-cmstrlen-check'
b4e8ddbc2f clang-tidy: enable cmStrLen() check and fix violations
43481a77f9 clang-tidy module: add test for cmStrLen() check
43a88b56af clang-tidy module: add check for cmStrLen()

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !7809
2022-10-20 10:04:27 -04:00
Kitware Robot feb71b5456 CMake Nightly Date Stamp 2022-10-20 00:01:17 -04:00
Kyle Edwards b4e8ddbc2f clang-tidy: enable cmStrLen() check and fix violations 2022-10-19 14:51:21 -04:00
Brad King 7d710abc87 CMake 3.25.0-rc2 2022-10-19 11:22:54 -04:00
Brad King 1cbf176b97 Merge topic 'cmake-presets-output-junit'
bea4ed5430 CTest: Add support for outputJUnitFile in presets
9270a02003 CMakePresets.json: Add outputJUnitFile to test presets schema
757786bb73 Tests: Add test for outputLogFile in CMakePresets.json
b68c3596e7 CMakePresets.json: Disallow extra properties in test output schema

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: scivision <michael@scivision.dev>
Merge-request: !7806
2022-10-19 10:04:30 -04:00
Brad King 6fa189f716 Merge topic 'cmake-presets-output-junit' into release-3.25
bea4ed5430 CTest: Add support for outputJUnitFile in presets
9270a02003 CMakePresets.json: Add outputJUnitFile to test presets schema
757786bb73 Tests: Add test for outputLogFile in CMakePresets.json
b68c3596e7 CMakePresets.json: Disallow extra properties in test output schema

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: scivision <michael@scivision.dev>
Merge-request: !7806
2022-10-19 10:04:29 -04:00
Brad King 6353f9b6d1 Merge topic 'mingw-unc'
9777e4c30e MinGW Makefiles: Quote UNC paths on command lines

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: buildbot <buildbot@kitware.com>
Merge-request: !7802
2022-10-19 10:00:00 -04:00
Brad King 86ed35cf63 Merge topic 'mingw-unc' into release-3.25
9777e4c30e MinGW Makefiles: Quote UNC paths on command lines

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: buildbot <buildbot@kitware.com>
Merge-request: !7802
2022-10-19 09:59:59 -04:00
Brad King 188305800e Merge topic 'try_compile-CMP0128'
50e90e2828 try_compile: Honor CMP0128 setting in test project

Acked-by: Kitware Robot <kwrobot@kitware.com>
Reviewed-by: Raul Tambre <raul@tambre.ee>
Merge-request: !7803
2022-10-19 09:57:09 -04:00
Brad King 177c56e3fa Merge topic 'try_compile-CMP0128' into release-3.25
50e90e2828 try_compile: Honor CMP0128 setting in test project

Acked-by: Kitware Robot <kwrobot@kitware.com>
Reviewed-by: Raul Tambre <raul@tambre.ee>
Merge-request: !7803
2022-10-19 09:57:08 -04:00
Kitware Robot 8c7ac278cd CMake Nightly Date Stamp 2022-10-19 00:01:17 -04:00
Kyle Edwards bea4ed5430 CTest: Add support for outputJUnitFile in presets
Fixes: #22400
2022-10-18 16:52:23 -04:00
Kyle Edwards 9270a02003 CMakePresets.json: Add outputJUnitFile to test presets schema 2022-10-18 15:41:29 -04:00
Ed Hartley 9777e4c30e MinGW Makefiles: Quote UNC paths on command lines
UNC paths (starting with `\\`) need quotes when generating MinGW
Makefiles to avoid gmake interpreting the first `\` as an escape
character.

Fixes: #24061
2022-10-18 14:30:57 -04:00
Brad King b3cf2da514 Merge topic 'revert_nvcc_marking_include_as_system'
d0e52219eb CUDA: Revert "Always mark cuda toolkit as system include"

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !7798
2022-10-18 13:45:57 -04:00
Brad King 599e49cf9b Merge topic 'revert_nvcc_marking_include_as_system' into release-3.25
d0e52219eb CUDA: Revert "Always mark cuda toolkit as system include"

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !7798
2022-10-18 13:45:56 -04:00
Brad King 50e90e2828 try_compile: Honor CMP0128 setting in test project
Some projects pass a raw `-std=` flag to the compiler in the
`try_compile` project.  If they do not set CMP0128 to NEW,
we should not append a `-std=` flag where we did not before
the policy was added.

Fixes: #24063
2022-10-18 13:38:00 -04:00
Kitware Robot 10b9a48246 CMake Nightly Date Stamp 2022-10-18 00:01:16 -04:00
Robert Maynard d0e52219eb CUDA: Revert "Always mark cuda toolkit as system include"
We need to revert this change as it can disable error messages
when compiling invalid CUDA code.

This reverts commit ea659b155d (CUDA: Always mark cuda toolkit as system
include, 2022-06-27, v3.25.0-rc1~269^2).
2022-10-17 10:17:33 -04:00
Brad King c6fa5f7a70 Merge topic 'trace-try_compile'
5ba51621af try_compile: Propagate --trace through try_compile

Acked-by: Kitware Robot <kwrobot@kitware.com>
Tested-by: buildbot <buildbot@kitware.com>
Merge-request: !7757
2022-10-17 10:09:43 -04:00
Brad King 6e89585d95 Merge topic 'swift-default-flags'
238e0f25b2 Xcode: Set WMO on non-debug build configurations
6063428de7 Swift: Update default build flags

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !7741
2022-10-17 10:05:04 -04:00
Brad King d72912cac2 Merge topic 'xcode-framework-consumption'
4aa86da827 Xcode: ensure framework with custom output directory can be consumed

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Jason Juang <jasjuang@gmail.com>
Merge-request: !7791
2022-10-17 10:03:58 -04:00
Kitware Robot 7a869ebaf1 CMake Nightly Date Stamp 2022-10-17 00:01:26 -04:00
Kitware Robot 909bc5ab21 CMake Nightly Date Stamp 2022-10-16 00:01:11 -04:00
Kitware Robot 68b5876536 CMake Nightly Date Stamp 2022-10-15 00:01:16 -04:00
Evan Wilde 238e0f25b2 Xcode: Set WMO on non-debug build configurations
This patch sets the swift compilation mode to wholemodule in the xcode
generator for all non-debug build configurations at the project level.

Leaving the target build-configurations default ensures that this
default can be overridden easily by editing either the project
configuration from the build settings editor or the per-target
configuration.

When set on versions of Xcode that do not recognize the
`SWIFT_COMPILATION_MODE` setting, Xcode will include the option as a
user-defined setting, but otherwise ignore it.
2022-10-14 09:23:47 -04:00
Marc Chevrier 4aa86da827 Xcode: ensure framework with custom output directory can be consumed
Fixes: #24046
2022-10-14 09:13:37 -04:00
Brad King b2774b380e Merge topic 'lcc-cleanup'
2de1458c3c Tests: Teach CheckSourceTree test to clean up some specific known files
0dfd939077 cmFindPackageCommand: Suppress LCC false-positive warning

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !7790
2022-10-14 09:07:38 -04:00
Kitware Robot d74b7be90b CMake Nightly Date Stamp 2022-10-14 00:01:12 -04:00
Brad King 0dfd939077 cmFindPackageCommand: Suppress LCC false-positive warning
Extend the LCC warning suppression from commit 08e7fb3cfa
(cmFindPackageCommand: Compile-time path generator expressions,
2022-07-05, v3.25.0-rc1~361^2~5) to cover a new number for the
same warning, now produced by LCC 1.26.15.
2022-10-13 10:40:23 -04:00
Brad King ba8f393f78 Merge topic 'post-rel-dev'
5f998bbcb3 Configure CMake itself with policies through CMake 3.24
6bd18eed8e export: Increase maximum policy version in exported files to 3.24
c0e8bb5150 Add deprecation warnings for policies CMP0108 and below

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: buildbot <buildbot@kitware.com>
Merge-request: !7786
2022-10-13 09:55:15 -04:00
Kitware Robot 0e363520c3 CMake Nightly Date Stamp 2022-10-13 00:01:17 -04:00