summaryrefslogtreecommitdiffstats
path: root/Source
Commit message (Collapse)AuthorAgeFilesLines
* CMake Nightly Date StampKitware Robot2023-03-271-1/+1
|
* CMake Nightly Date StampKitware Robot2023-03-261-1/+1
|
* CMake Nightly Date StampKitware Robot2023-03-251-1/+1
|
* Merge topic 'file-GET_RUNTIME_DEPENDENCIES-windows-casing'Brad King2023-03-241-8/+50
|\ | | | | | | | | | | | | | | | | fa45594407 file(GET_RUNTIME_DEPENDENCIES): Preserve casing for Windows PE binaries 14cfd6a1eb Tests: Add test for file(GET_RUNTIME_DEPENDENCIES) with MixedCase.dll Acked-by: Kitware Robot <kwrobot@kitware.com> Acked-by: buildbot <buildbot@kitware.com> Merge-request: !8291
| * file(GET_RUNTIME_DEPENDENCIES): Preserve casing for Windows PE binariesChristian Heimlich2023-03-231-8/+50
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | For Windows PE files the `file(GET_RUNTIME_DEPENDENCIES)` command converts the name of all DLLs found during binary scanning to lowercase in order to simplify the syntax requirements of its regex filters; however, this has the side-effect of causing all DLL paths returned via RESOLVED_DEPENDENCIES_VAR to be in lowercase, regardless of their actual casing. Instead, respect the original casing as closely as possible when returning resolved dependencies after all filters have been passed: When evaluating a Windows PE format binary on a non-Windows host the casing of dependencies recorded within the binary are used. When the host is running Windows, the actual casing of the dependencies on-disk are used instead. Fixes: #23091
* | CMake Nightly Date StampKitware Robot2023-03-241-1/+1
| |
* | Merge topic 'autogen-exe-vars'Brad King2023-03-231-0/+3
|\ \ | | | | | | | | | | | | | | | | | | b3d1797508 Autogen: Add CMAKE_AUTO*_EXECUTABLE variables Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !8352
| * | Autogen: Add CMAKE_AUTO*_EXECUTABLE variablesOrkun Tokdemir2023-03-221-0/+3
| | | | | | | | | | | | | | | | | | | | | | | | Add the `CMAKE_AUTOMOC_EXECUTABLE`, `CMAKE_AUTOUIC_EXECUTABLE`, and `CMAKE_AUTORCC_EXECUTABLE` variables to initialize the corresponding `AUTO{MOC,UIC,RCC}_EXECUTABLE` target properties. Fixes: #20071
* | | CMake Nightly Date StampKitware Robot2023-03-231-1/+1
| | |
* | | CMake Nightly Date StampKitware Robot2023-03-221-1/+1
| |/ |/|
* | Merge topic 'autogen-parallel-number'Brad King2023-03-211-0/+12
|\ \ | | | | | | | | | | | | | | | | | | | | | a42ecb1614 Autogen: Restore AUTOGEN_PARALLEL support for numbers Acked-by: Kitware Robot <kwrobot@kitware.com> Acked-by: buildbot <buildbot@kitware.com> Merge-request: !8336
| * | Autogen: Restore AUTOGEN_PARALLEL support for numbersOrkun Tokdemir2023-03-201-0/+12
| |/ | | | | | | | | | | | | | | | | Refactoring in commit d867e05892 (Autogen: Use JSON instead of CMake script for info files, 2019-09-20, v3.16.0-rc1~57^2) broke support for numerical values of `AUTOGEN_PARALLEL`. Parse and verify the range. Warn if the value is invalid. Fixes: #20376
* | Merge topic 'file-REAL_PATH'Brad King2023-03-211-4/+3
|\ \ | | | | | | | | | | | | | | | | | | | | | | | | 1d12853ed3 file(REAL_PATH): Ensure same behavior as get_filename_component(REALPATH) Acked-by: Kitware Robot <kwrobot@kitware.com> Acked-by: buildbot <buildbot@kitware.com> Acked-by: scivision <michael@scivision.dev> Merge-request: !8348
| * | file(REAL_PATH): Ensure same behavior as get_filename_component(REALPATH)Marc Chevrier2023-03-201-4/+3
| | | | | | | | | | | | Fixes: #24605
* | | Merge topic 'find_package-raii-fc-early-return'Brad King2023-03-212-12/+55
|\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | 716ce4402a find_package: Ensure root path stack and module vars are restored Acked-by: Kitware Robot <kwrobot@kitware.com> Acked-by: buildbot <buildbot@kitware.com> Merge-request: !8339
| * | | find_package: Ensure root path stack and module vars are restoredCraig Scott2023-03-172-12/+55
| | | | | | | | | | | | | | | | Fixes: #24595
* | | | Merge topic 'clang-windows-cxx-modules'Brad King2023-03-217-63/+81
|\ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 1b7c26da49 Ninja: Wrap rules using '>' shell redirection with 'cmd /C' on Windows ffd8537acf Clang: Record Clang 16.0 C++ modules flags only for GNU-like front-end 6013227230 cmGlobalNinjaGenerator: Use forward slashes in clang modmap format on Windows d9d74b5e8a cmDyndepCollation: Drop outdated mentions of CXX_MODULE_INTERNAL_PARTITIONS edab56d29a cmLocalNinjaGenerator: De-duplicate condition for using 'cmd /C' on Windows 8ebe3f92b3 cmGlobalNinjaGenerator: Detect GNU-like command-line for dyndep collator f3ca199c9b cmGlobalNinjaGenerator: Factor out GNU-like command-line detection on Windows f79817fcf0 cmCxxModuleMapper: Use value semantics in path conversion callback ... Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !8346
| * | | | Ninja: Wrap rules using '>' shell redirection with 'cmd /C' on WindowsBrad King2023-03-201-1/+18
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This is needed for the clang-scan-deps rule added by commit 0e21e55fc5 (Clang: Record Clang 16.0 C++ modules flags only for GNU-like front-end, 2023-03-16). Fixes: #24611
| * | | | cmGlobalNinjaGenerator: Use forward slashes in clang modmap format on WindowsBrad King2023-03-181-1/+7
| | | | | | | | | | | | | | | | | | | | Issue: #24611
| * | | | cmDyndepCollation: Drop outdated mentions of CXX_MODULE_INTERNAL_PARTITIONSBrad King2023-03-181-38/+11
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | These were left from an older design iteration in which, for MSVC, we needed to distinguish `cl -internalPartition` from `cl -interface` before scanning. It is no longer needed since `cl -scanDependencies` was updated to use the standard-conforming interpretation of non-exported module partition syntax. Issue: #24611
| * | | | cmLocalNinjaGenerator: De-duplicate condition for using 'cmd /C' on WindowsBrad King2023-03-181-5/+5
| | | | |
| * | | | cmGlobalNinjaGenerator: Detect GNU-like command-line for dyndep collatorBrad King2023-03-182-6/+20
| | | | | | | | | | | | | | | | | | | | | | | | | This will help the collator choose flags and path styles for modmap files.
| * | | | cmGlobalNinjaGenerator: Factor out GNU-like command-line detection on WindowsBrad King2023-03-182-6/+16
| | | | |
| * | | | cmCxxModuleMapper: Use value semantics in path conversion callbackBrad King2023-03-183-3/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The call site already owns a path it doesn't need when the callback returns. Hand ownership to the callback so it can optionally mutate the path without necessarily allocating.
| * | | | cmCxxModuleMapper: Remove redundant path conversion callbacksBrad King2023-03-181-4/+2
| | | | | | | | | | | | | | | | | | | | | | | | | Two calls to `PathForGenerator` were applied to values returned by `BmiGeneratorPathForModule`, that already calls `PathForGenerator`.
| * | | | CMake 3.26.0v3.26.0Brad King2023-03-141-1/+1
| | | | |
* | | | | CMake Nightly Date StampKitware Robot2023-03-211-1/+1
| | | | |
* | | | | CMake Nightly Date StampKitware Robot2023-03-201-1/+1
| | | | |
* | | | | CMake Nightly Date StampKitware Robot2023-03-191-1/+1
| |_|/ / |/| | |
* | | | CMake Nightly Date StampKitware Robot2023-03-181-1/+1
| | | |
* | | | CMake Nightly Date StampKitware Robot2023-03-171-1/+1
| |/ / |/| |
* | | Merge topic 'vs-windows-min-version'Brad King2023-03-161-0/+1
|\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | 6546305b01 VS: Add CMAKE_VS_WINDOWS_TARGET_PLATFORM_MIN_VERSION variable Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !8319
| * | | VS: Add CMAKE_VS_WINDOWS_TARGET_PLATFORM_MIN_VERSION variablehalx992023-03-151-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | Provide a way to initialize the `VS_WINDOWS_TARGET_PLATFORM_MIN_VERSION` target property on targets. It sets `WindowsTargetPlatformMinVersion` in `.vcxproj` files.
* | | | Merge topic 'vs-BuildInParallel'Brad King2023-03-161-0/+1
|\ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 4c866cac40 VS: Do not regenerate build system concurrently with CMP0147 Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !8329
| * | | | VS: Do not regenerate build system concurrently with CMP0147Brad King2023-03-151-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The VS generators add a custom command to `CMakeLists.txt` to re-run CMake when input files have changed. Mark this custom command as if it were specified with `USES_TERMINAL`. We already do this for the equivalent `rebuild_cache` target in Makefile and Ninja generators. This matters since commit d6353e74b4 (VS: Add policy to build custom commands concurrently, 2023-03-10) because with policy CMP0147 set to NEW, we now add `BuildInParallel` in `.vcxproj` file entries for custom commands that do not have `USES_TERMINAL` set, but we do not want to re-run CMake concurrently with other custom commands. Issue: #18405
* | | | | Merge topic 'apple-archs'Brad King2023-03-167-21/+27
|\ \ \ \ \ | |_|_|_|/ |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 98e319a88f macOS: Suppress default '-arch arm64' with CMAKE_<LANG>_COMPILER_TARGET 43e973eba2 cmGeneratorTarget: Pass language to GetAppleArchs when possible 93afe804ce cmGeneratorTarget: Convert GetAppleArchs output argument to return value Acked-by: Kitware Robot <kwrobot@kitware.com> Acked-by: buildbot <buildbot@kitware.com> Merge-request: !8327
| * | | | macOS: Suppress default '-arch arm64' with CMAKE_<LANG>_COMPILER_TARGETBrad King2023-03-151-2/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Since commit b6c60f14b6 (macOS: Default to arm64 architecture on Apple Silicon hosts, 2020-09-28, v3.19.0-rc1~63^2) we add `-arch arm64` by default on Apple Silicon hosts if `CMAKE_OSX_ARCHITECTURES` is not set. This is necessary to prevent the toolchain from selecting its own default architecture based on that of the build tool (e.g., `x86_64`). If `CMAKE_<LANG>_COMPILER_TARGET` is set, its `-target` flag tells the compiler what architecture to use, so do not add `-arch arm64`. Fixes: #24599
| * | | | cmGeneratorTarget: Pass language to GetAppleArchs when possibleBrad King2023-03-157-10/+13
| | | | |
| * | | | cmGeneratorTarget: Convert GetAppleArchs output argument to return valueBrad King2023-03-157-20/+19
| |/ / /
* | | | CMake Nightly Date StampKitware Robot2023-03-161-1/+1
|/ / /
* | | Merge topic 'sphinx-cref'Brad King2023-03-151-0/+1
|\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 302f5171d8 Utilities/Sphinx: Add 'cref' role bc77ddb90c Utilities/Sphinx: Factor out part of CMakeXRefRole Acked-by: Kitware Robot <kwrobot@kitware.com> Acked-by: buildbot <buildbot@kitware.com> Merge-request: !8313
| * | | Utilities/Sphinx: Add 'cref' roleMatthew Woehlke2023-03-141-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Add a role that can be used to create local links (a la '`LINK`_'), but that also applies literal style. This is particularly useful for referring to subcommands within the command's documentation in a style that is consistent with ':command:`BAR <foo(BAR)>`' but is much less verbose. Although this is intended for subcommands, it works with any local reference. Co-authored-by: Brad King <brad.king@kitware.com>
* | | | CMake Nightly Date StampKitware Robot2023-03-151-1/+1
|/ / /
* | | Merge topic 'recursion-limit'Brad King2023-03-147-35/+64
|\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 49167cf68f Source: Adjust stack sizes and recursion limits to work together 9504cef8c4 Tests: Allow RunCMake.MaxRecursionDepth to test public-facing default limit 60ef076bac find_package: Enforce maximum nesting depth below maximum recursion depth 89b69bf1ad Add CMAKE_MAXIMUM_RECURSION_DEPTH environment variable 395895bda7 cmMakefile: Factor out helper to get recursion depth limit 88bc8dfc14 cmMakefile: Store recursion depth limit as size_t fcad8d0630 cmMakefile: Improve parsing of CMAKE_MAXIMUM_RECURSION_DEPTH variable 497f7d5c1a Tests: Simplify option passing to RunCMake.MaxRecursionDepth cases Acked-by: Kitware Robot <kwrobot@kitware.com> Acked-by: buildbot <buildbot@kitware.com> Merge-request: !8307
| * | | Source: Adjust stack sizes and recursion limits to work togetherBrad King2023-03-133-13/+19
| | | | | | | | | | | | | | | | | | | | | | | | Adjust `CMake_DEFAULT_RECURSION_LIMIT` and/or the process stack size on each platform to pass the `RunCMake.MaxRecursionDepth` test's "default" cases.
| * | | Tests: Allow RunCMake.MaxRecursionDepth to test public-facing default limitBrad King2023-03-131-3/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Previously we compiled in a smaller default limit during nightly testing and CI builds, so we were not testing the same default limit that end-users will see. Instead, set the limit during testing using an environment variable so that we can unset it when testing the default limit in `RunCMake.MaxRecursionDepth`.
| * | | find_package: Enforce maximum nesting depth below maximum recursion depthBrad King2023-03-131-0/+15
| | | | | | | | | | | | | | | | | | | | | | | | The stack usage for nested `find_package` calls is much larger than for other kinds of recursion, so enforce a lower limit to avoid stack overflow.
| * | | Add CMAKE_MAXIMUM_RECURSION_DEPTH environment variableBrad King2023-03-131-0/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Extend the recursion limit controls added by commit a6982cff0d (cmMakefile: Impose maximum recursion limit, 2018-12-14, v3.14.0-rc1~82^2) with an environment variable that is used if the CMake variable of the same name is not set.
| * | | cmMakefile: Factor out helper to get recursion depth limitBrad King2023-03-132-10/+18
| | | |
| * | | cmMakefile: Store recursion depth limit as size_tBrad King2023-03-134-11/+8
| | | |