summaryrefslogtreecommitdiffstats
path: root/Source
Commit message (Collapse)AuthorAgeFilesLines
* CMake Nightly Date StampKitware Robot2024-01-311-1/+1
|
* CMake Nightly Date StampKitware Robot2024-01-301-1/+1
|
* Merge topic 'test-launcher-emulator-genex'Brad King2024-01-293-34/+51
|\ | | | | | | | | | | | | | | 13ece67a58 Add genex support to TEST_LAUNCHER and CROSSCOMPILING_EMULATOR b9ad73fcb2 cmTestGenerator: De-duplicate TEST_LAUNCHER and CROSSCOMPILING_EMULATOR impl Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !9198
| * Add genex support to TEST_LAUNCHER and CROSSCOMPILING_EMULATORBrad King2024-01-293-15/+32
| | | | | | | | | | | | | | | | Evaluate generator expressions in these properties, as they apply to `add_test`, `add_custom_command`, and `add_custom_target`. The `CMAKE_CROSSCOMPILING_EMULATOR` variable's `try_run` behavior occurs at configure time and so cannot support generator expressions.
| * cmTestGenerator: De-duplicate TEST_LAUNCHER and CROSSCOMPILING_EMULATOR implBrad King2024-01-291-20/+20
| |
* | Merge topic 'autogen-makefile-depfile'Brad King2024-01-291-2/+11
|\ \ | | | | | | | | | | | | | | | | | | | | | d0bedb2170 Autogen: Forward dependencies when both Makefile and DEPFILE are used 4deb9c41b8 cmQtAutoGenInitializer: Improve Const-correctness Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !9190
| * | Autogen: Forward dependencies when both Makefile and DEPFILE are usedOrkun Tokdemir2024-01-281-1/+10
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Since commit ebc9e448b3 (Autogen: Add depfile support for Makefiles, 2023-09-07, v3.28.0-rc1~101^2~1) CMake does not generate the correct dependency graph when both `Makefile` and `DEPFILE` are used. The build of `<target_name>_autogen_timestamp_deps` fails due to missing dependencies. To tackle that problem, forward target dependencies to both `<target_name>_autogen_timestamp_deps` and `<target_name>_autogen` instead of just `<target_name>_autogen`. Fixes: #25600
| * | cmQtAutoGenInitializer: Improve Const-correctnessOrkun Tokdemir2024-01-261-1/+1
| | |
| * | Revert use of libuv for process execution for 3.28Brad King2024-01-2431-1221/+1186
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Wide use of CMake 3.28.{1,0[-rcN]} has uncovered some hangs and crashes in libuv SIGCHLD handling on some platforms, particularly in virtualization environments on macOS hosts. Although the bug does not seem to be in CMake, we can restore stability in the CMake 3.28 release series for users of such platforms by reverting our new uses of libuv for process execution. Revert implementation changes merged by commit 4771544386 (Merge topic 'replace-cmsysprocess-with-cmuvprocesschain', 2023-09-06, v3.28.0-rc1~138), but keep test suite updates. Issue: #25414, #25500, #25562, #25589
* | | Merge topic 'productbuild-domains-policy'Brad King2024-01-291-1/+3
|\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | 339ae33e55 CPack: Change CPACK_PRODUCTBUILD_DOMAINS default to true (CMP0161) 4e7f2397e4 CPack: Clear temporary variable after it is no longer needed Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !9197
| * | | CPack: Change CPACK_PRODUCTBUILD_DOMAINS default to true (CMP0161)Craig Scott2024-01-281-1/+3
| | | | | | | | | | | | | | | | Fixes: #23351
* | | | CMake Nightly Date StampKitware Robot2024-01-291-1/+1
| |_|/ |/| |
* | | CMake Nightly Date StampKitware Robot2024-01-281-1/+1
| | |
* | | CMake Nightly Date StampKitware Robot2024-01-271-1/+1
|/ /
* | Merge topic 'stdio-streams-always'Brad King2024-01-261-28/+15
|\ \ | | | | | | | | | | | | | | | | | | 96010cc968 Ensure stdin, stdout, stderr FILE streams are open on Windows Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !9189
| * | Ensure stdin, stdout, stderr FILE streams are open on WindowsBrad King2024-01-251-28/+15
| | | | | | | | | | | | | | | | | | | | | | | | Extend commit c85524a94a (Ensure stdin, stdout, and stderr pipes are always open, 2019-05-02, v3.15.0-rc1~171^2) to cover the `stdin`, `stdout`, and `stderr` FILE streams from `<stdio.h>`. Issue: #25625
* | | Merge topic 'ctest-tests-from-file'Brad King2024-01-266-0/+99
|\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 701029726f ctest_test: add options INCLUDE_FROM_FILE and EXCLUDE_FROM_FILE dbacc1d5a8 ctest: add command line option to exclude tests listed in a given file 022f20f663 ctest: add command line option to run the tests listed in a given file Acked-by: Kitware Robot <kwrobot@kitware.com> Acked-by: Alex <leha-bot@yandex.ru> Merge-request: !9128
| * | | ctest_test: add options INCLUDE_FROM_FILE and EXCLUDE_FROM_FILEAlex Neundorf2024-01-252-0/+12
| | | | | | | | | | | | | | | | | | | | | | | | | | | | These options can be used to specify files which can be used to restrict the set of tests that will be executed. Fixes: #25455
| * | | ctest: add command line option to exclude tests listed in a given fileAlex Neundorf2024-01-254-4/+39
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Add `--exclude-from-file <filename>` to exclude the tests listed in the given file. Issue: #25455
| * | | ctest: add command line option to run the tests listed in a given fileAlex Neundorf2024-01-254-0/+52
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Add `--tests-from-file <filename>` to run only the tests listed in the given file. The test names must match exactly, no regexps or something. The listed tests can still be filtered with a regexp using -R. Issue: #25455
* | | | CMake Nightly Date StampKitware Robot2024-01-261-1/+1
| |/ / |/| |
* | | Merge topic 'cmuvprocesschain'Brad King2024-01-258-48/+33
|\ \ \ | | |/ | |/| | | | | | | | | | | | | | | | | | | | | | adb3e13d32 cmUVProcessChain: Tolerate fileno() of invalid FILE stream b6e4e4babc cmUVProcessChain: Simplify SetExternalStream usage 116bb2b70f cmUVProcessChain: Simplify builder initialization d32c30906a Tests: Add missing include in testUVProcessChainHelper on Windows Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !9181
| * | cmUVProcessChain: Tolerate fileno() of invalid FILE streamBrad King2024-01-241-1/+5
| | | | | | | | | | | | | | | | | | | | | | | | On Windows, in a GUI process without a console, the `std{in,out,err}` standard FILE streams may not be open. Avoid passing an invalid file descriptor to the child process, and let libuv attach NUL instead. Fixes: #25625
| * | cmUVProcessChain: Simplify SetExternalStream usageBrad King2024-01-248-40/+26
| | | | | | | | | | | | | | | It is commonly called with the `fileno()` of a `FILE*` stream, so accept the latter directly.
| * | cmUVProcessChain: Simplify builder initializationBrad King2024-01-242-8/+3
| | |
* | | CMake Nightly Date StampKitware Robot2024-01-251-1/+1
| | |
* | | Merge topic 'validate_read-only_target_properties'Brad King2024-01-242-76/+127
|\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | 0cfd8fe8ad cmTarget: Don't allow setting read-only properties Acked-by: Kitware Robot <kwrobot@kitware.com> Acked-by: buildbot <buildbot@kitware.com> Merge-request: !9133
| * | | cmTarget: Don't allow setting read-only propertiesRobert Maynard2024-01-232-76/+127
| | | | | | | | | | | | | | | | | | | | Ensure that all documented read-only target properties now produce errors when trying to set.
* | | | CMake Nightly Date StampKitware Robot2024-01-241-1/+1
| | | |
* | | | CMake Nightly Date StampKitware Robot2024-01-231-1/+1
| |_|/ |/| |
* | | CMake Nightly Date StampKitware Robot2024-01-221-1/+1
| | |
* | | CMake Nightly Date StampKitware Robot2024-01-211-1/+1
| | |
* | | CMake Nightly Date StampKitware Robot2024-01-201-1/+1
| | |
* | | Merge topic 'cuda-clang-no-link-arch'Brad King2024-01-191-1/+1
|\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | 45d53bdb70 CUDA/Clang: Do not pass explicit architecture flags when linking Acked-by: Kitware Robot <kwrobot@kitware.com> Reviewed-by: Raul Tambre <raul@tambre.ee> Merge-request: !9165
| * | | CUDA/Clang: Do not pass explicit architecture flags when linkingBrad King2024-01-181-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | Clang does not use architecture flags while driving the linker: warning: argument unused during compilation: '--cuda-gpu-arch=...'
* | | | Merge topic 'cxxmodules-export-file-collisions'Brad King2024-01-1910-34/+61
|\ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 4cd153afe3 Merge branch 'backport-cxxmodules-export-file-collisions' d791f3a180 cxxmodules: make export trampoline script files unique 2352dcc830 Source: Simplify hasher object construction Acked-by: Kitware Robot <kwrobot@kitware.com> Acked-by: buildbot <buildbot@kitware.com> Merge-request: !9166
| * \ \ \ Merge branch 'backport-cxxmodules-export-file-collisions'Brad King2024-01-1810-34/+61
| |\ \ \ \ | | |/ / / | |/| | / | | | |/ | | |/|
| | * | cxxmodules: make export trampoline script files uniqueBen Boeckel2024-01-188-27/+55
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Include the name of the `EXPORT` in the filename when generating export information for C++ modules. This allows the same directory to be used for multiple sets of C++ module-using targets. For `export(TARGETS)` uses, generate a name based on the hash of the concatenation of the target names involved with the `export()` call. Fixes: #25609
| | * | Source: Simplify hasher object constructionBrad King2024-01-182-7/+6
| | | |
* | | | CMake Nightly Date StampKitware Robot2024-01-191-1/+1
|/ / /
* | | Merge topic 'autogen-exe-per-config'Brad King2024-01-1813-166/+501
|\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 596e84b0d5 NinjaMultiConfig: Update tests for the new dependency change 7c39dabdbc Autogen: AUTO*_EXECUTABLE: add support for per-config values Acked-by: Kitware Robot <kwrobot@kitware.com> Tested-by: buildbot <buildbot@kitware.com> Merge-request: !8919
| * | | Autogen: AUTO*_EXECUTABLE: add support for per-config valuesOrkun Tokdemir2024-01-1713-166/+501
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * Per-config values were added to `AUTO*_EXECUTABLE`. * Dependency order was refactored for `cmake_autogen` and `cmake_autorcc` to avoid unnecessary rebuilds. * A new parameter was added for `cmake_autogen` and `cmake_autorcc` to specify the config name of the `auto*_executable` to be used. * Add `AUTOGEN_BETTER_GRAPH_MULTI_CONFIG` target property to change the behavior of the dependency graph. * The timestamp target is split into three targets for per-config to avoid redundant `mocs_compilation` builds when `AUTOGEN_BETTER_GRAPH_MULTI_CONFIG` is ON * Per-config `DEP_FILE_RULE_NAME` values were added to `AutogenInfo.json` for `Multi-Config` usage. * Some functions were refactored to avoid code duplication. This commit reimplements fddd0f0443b4ce81d61f15ee1b2f13105967b25a Fixes: #20074
* | | | Merge topic 'isspace'Brad King2024-01-1810-33/+18
|\ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | d9d9326e14 Source: Avoid out-of-range inputs to std::isspace() 14abdc8e2b cmXMLParser: Remove unused IsSpace method Acked-by: Kitware Robot <kwrobot@kitware.com> Acked-by: buildbot <buildbot@kitware.com> Merge-request: !9162
| * | | | Source: Avoid out-of-range inputs to std::isspace()Brad King2024-01-178-23/+18
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | `isspace` takes `int` but documents that the value must be representable by `unsigned char`, or be EOF. Use a wrapper to cast to `unsigned char` to avoid sign extension while converting to `int`. This generalizes the fix from commit 5e8c176e2a (cmExecuteProcessCommand: Cast c to unsigned char before cast to int, 2024-01-05) to other `isspace` call sites. This was detected by assertions in the MSVC standard library while processing UTF-8 text. Issue: #25561
| * | | | cmXMLParser: Remove unused IsSpace methodBrad King2024-01-172-10/+0
| | | | |
* | | | | CMake Nightly Date StampKitware Robot2024-01-181-1/+1
|/ / / /
* | | | Merge topic 'cmake-language-exit-code'Brad King2024-01-176-5/+59
|\ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 1bb1769235 cmake_language: Add EXIT subcommand 4f160f7906 cmakemain: Return the SCRIPT_MODE exit code if it was set b62dcbf5d2 cmMakefile: check cmake script mode exit code after command 3d9d504646 cmMakefile: Store the exit code from cmExecutionStatus to cmake instance 9f6c937408 Source/cmake.h: Add ScriptModeExitCode for proper storing exit code 1082b9cb9a cmExecutionStatus: Add ability to set optional custom exit code Acked-by: Kitware Robot <kwrobot@kitware.com> Acked-by: buildbot <buildbot@kitware.com> Acked-by: Leonid Pospelov <pospelovlm@yandex.ru> Acked-by: NoMaY (a user of Renesas Rulz Japanese Forum) <nomay-jp@outlook.com> Merge-request: !8228
| * | | | cmake_language: Add EXIT subcommandleha-bot2024-01-161-0/+26
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Add tests to cover these cases: * run as regular CMake module, in NORMAL_MODE (expected to fail); * run as CMake script in SCRIPT_MODE (expected to exit with given code); * run as CMake script that `include()`-s another script with EXIT subcommand; * run as CMake script which EVAL-uates EXIT subcommand via `cmake_language(EVAL CODE "<cmake code>")`. Fixes: #23162
| * | | | cmakemain: Return the SCRIPT_MODE exit code if it was setleha-bot2024-01-162-5/+8
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | We determine it via checking cmake.Run() return code and ScriptModeExitCode. If ScriptModeExitCode is zero, then we would return 1 if retcode was non-zero. Otherwise it will be returned if retcode was also non-zero.
| * | | | cmMakefile: check cmake script mode exit code after commandleha-bot2024-01-161-0/+6
| | | | | | | | | | | | | | | | | | | | | | | | | Which potentially may set it, and forward it to the cmExecutionStatus for proper handling in caller.