summaryrefslogtreecommitdiffstats
path: root/Source
Commit message (Collapse)AuthorAgeFilesLines
...
* | | | Merge topic 'cmake-dir-args' into release-3.23Brad King2022-03-031-1/+1
|\ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | d2e9478321 Tests: Add RunCMake.CommandLine ExplicitiDirs explicit work directory 78e8f11456 cmake: Correct regression in `-B <dir> <src_dir>` 4091d5c58c Tests: Verify RunCMake.CommandLine ExplicitDirs source/build dirs 1b97f8f35c Tests: Clarify RunCMake.CommandLine ExplicitDirs case names Acked-by: Kitware Robot <kwrobot@kitware.com> Tested-by: buildbot <buildbot@kitware.com> Merge-request: !7030
| * | | | cmake: Correct regression in `-B <dir> <src_dir>`Robert Maynard2022-03-021-1/+1
| | | | | | | | | | | | | | | | | | | | Fixes: #23285
* | | | | Merge topic 'update-kwsys' into release-3.23Brad King2022-03-031-0/+6
|\ \ \ \ \ | |_|_|/ / |/| | | | | | | | | | | | | | | | | | | | | | | | a20ad92022 KWSys: SystemInformation: Add Zhaoxin x86 processor kh40000 Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !7032
| * | | | KWSys: SystemInformation: Add Zhaoxin x86 processor kh40000Joker-Van2022-03-021-0/+6
| | | | | | | | | | | | | | | | | | | | | | | | | Backport KWSys commit `dfec20c95` (SystemInformation: Add Zhaoxin x86 processor kh40000, 2022-03-02) to the CMake 3.23 release branch.
* | | | | Merge topic 'cuda-arch-all' into release-3.23Brad King2022-03-021-13/+13
|\ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2796d6eeca CUDA: Fix CMAKE_CUDA_ARCHITECTURES=all/all-major with NVCC 11.5+ e450d55552 Help: Update CUDA_ARCHITECTURES docs for generic all/all-major support fe64c49e72 CUDA: Simplify CMAKE_CUDA_ARCHITECTURES special value logic Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !7026
| * | | | | CUDA: Simplify CMAKE_CUDA_ARCHITECTURES special value logicBrad King2022-03-011-13/+13
| |/ / / / | | | | | | | | | | | | | | | | | | | | | | | | | Refactor the logic checking `CMAKE_CUDA_ARCHITECTURES` special values. Switch on the value first, and then make other decisions for each case. This makes room for other special values to be added later.
* | | | | Merge topic 'find_file_frameworks_debug_output' into release-3.23Brad King2022-03-022-4/+10
|\ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 3354d52e3d find_file: Fix blank line instead of framework path in debug output Acked-by: Kitware Robot <kwrobot@kitware.com> Acked-by: buildbot <buildbot@kitware.com> Merge-request: !7024
| * | | | | find_file: Fix blank line instead of framework path in debug outputCraig Scott2022-02-282-4/+10
| |/ / / / | | | | | | | | | | | | | | | | | | | | | | | | | There's no point printing a blank line if FindHeaderInFramework() returns an empty string. Pass in the debug object to that function instead so it can record the actual paths it tests in the debug output directly.
* | | | | target_sources(): Prohibit FILE_SET on custom targetsKyle Edwards2022-02-281-0/+6
|/ / / / | | | | | | | | | | | | Fixes: #23262
* | | | Ninja: Avoid preprocessing twice with explicit Fortran_PREPROCESSPeter Hill2022-02-243-5/+15
|/ / / | | | | | | | | | | | | | | | Fix spurious warnings from gfortran+Ninja for preprocessing. Fixes: #23248
* | | CMake 3.23.0-rc2v3.23.0-rc2Brad King2022-02-231-1/+1
| | |
* | | CUDA: Restore support for non-"all" CUDA_ARCHITECTURES with nvcc 11.5+Brad King2022-02-181-5/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | Since commit 8f64df0a7c (CUDA: Generic all and all-major support, 2021-12-19, v3.23.0-rc1~23^2), setting `CUDA_ARCHITECTURES` to a value other than `all` or `all-major` is ignored with NVCC 11.5+. Fix the logic to return early only when actually using an "all" value. Fixes: #23243
* | | Merge topic 'correct_multiple_source_warnings' into release-3.23Brad King2022-02-182-5/+59
|\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | 7083b19498 cmake: When given multiple source paths use last instead of first Acked-by: Kitware Robot <kwrobot@kitware.com> Acked-by: buildbot <buildbot@kitware.com> Merge-request: !7001
| * | | cmake: When given multiple source paths use last instead of firstRobert Maynard2022-02-172-5/+59
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When given two source paths via `-S` or just directory paths prefer the last one. When the paths are mixed always prefer the last `-S` entry. Fixes: #23238
* | | | install(): Properly ignore FILE_SETs that don't existKyle Edwards2022-02-171-21/+22
|/ / / | | | | | | | | | Fixes: #22960
* | | Merge topic 'cmake-empty-cmd-line-arg' into release-3.23Brad King2022-02-171-2/+22
|\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | f73457ca2e cmake: Ignore any empty "" command line arguments 67f97f5478 Tests: Add RunCMake helper to run cmake with raw execute_process args Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !6980
| * | | cmake: Ignore any empty "" command line argumentsRobert Maynard2022-02-161-2/+22
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Don't treat empty quote arguments("") as the current working directory but instead ignore them. Fixes #23217
* | | | Merge topic 'tll-genex-concat' into release-3.23Brad King2022-02-161-102/+138
|\ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | c1e812ad4f target_link_libraries: Improve tolerance of unquoted generator expressions 5571a31648 target_link_libraries: Handle keyword arguments in dedicated code path 42590df9f9 target_link_libraries: Remove likely-broken ancient compatibility check Acked-by: Kitware Robot <kwrobot@kitware.com> Acked-by: buildbot <buildbot@kitware.com> Merge-request: !6989
| * | | | target_link_libraries: Improve tolerance of unquoted generator expressionsBrad King2022-02-151-4/+38
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Prior to commit 1d709ea2f5 (cmGeneratorTarget: Propagate backtraces from INTERFACE_LINK_LIBRARIES, 2021-12-15, v3.23.0-rc1~228^2), the value of `INTERFACE_LINK_LIBRARIES` was a single string. If an unquoted generator expression passed to `target_link_libraries` contained `;` and became multiple arguments, they would all accumulate as a single `;`-separated list in the value of `INTERFACE_LINK_LIBRARIES`. Since that commit, each argument to `target_link_libraries` is placed in `INTERFACE_LINK_LIBRARIES` as a separate entry, as has long been the case for `LINK_LIBRARIES`. That behavior change broke projects that were accidentally relying on accumulation in `INTERFACE_LINK_LIBRARIES` to produce complete generator expressions containing `;`. Teach `target_link_libraries` to accumulate consecutive non-keyword arguments into a single entry before placing them in `LINK_LIBRARIES` or `INTERFACE_LINK_LIBRARIES`. For example, treat `a b c` as if they were written as `"a;b;c"`. This restores the previously accidental support for unquoted generator expressions in `INTERFACE_LINK_LIBRARIES`, and also enables it for `LINK_LIBRARIES`. For now, do not drop the `target_link_libraries` documentation that recommends quoting generator expressions. Quoting is still important to populate `LINK_LIBRARIES` in CMake 3.22 and below, and is also good practice to keep generator expressions whole. Fixes: #23203
| * | | | target_link_libraries: Handle keyword arguments in dedicated code pathBrad King2022-02-151-83/+100
| | | | |
| * | | | target_link_libraries: Remove likely-broken ancient compatibility checkBrad King2022-02-151-18/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Since commit daa6d2bc04 (ENH: updated handling of debug and optimized target link libraries, 2006-11-29, v2.6.0~2471) the ancient `<lib>_LINK_TYPE` compatibility lookup was done using the name of the dependent target for which `target_link_libraries` is called, rather than the name of the library dependency being considered. This code probably does nothing. Remove it.
* | | | | cmake --build: prioritize --resolve-package-references over presetCarsten Rudolph2022-02-154-12/+13
|/ / / / | | | | | | | | | | | | Fixes: #23224
* | | | cmake::GetDebugFindPkgOutput: Use consistent argument nameCraig Scott2022-02-141-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | The argument name used in the class declaration didn't match the one used in the implementation file. The one in the header appears to be a cut-n-paste from GetDebugFindOutput(), but the implementation makes it clear that "pkg" better infers what the argument represents than "var".
* | | | find_package: Improve --debug-find-pkg= when using a find moduleBrad King2022-02-104-4/+37
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Extend the feature added by commit d7b18895bc (cmake: Add filtered debug-find options, 2021-12-07, v3.23.0-rc1~217^2) to enable debug output for `find_*` calls within a find module or cmake package configuration file. Fixes: #23211
* | | | find_package: Avoid printing debug output header multiple timesBrad King2022-02-101-11/+4
| | | |
* | | | find_package: Mention package name in Config mode debug outputBrad King2022-02-101-1/+2
| | | | | | | | | | | | | | | | | | | | Otherwise, if there are no paths considered then the output does not specify the name of the package.
* | | | find_package: Fix find module name in --debug-find outputBrad King2022-02-101-5/+4
| | | |
* | | | find_package: Improve formatting of --debug-find outputBrad King2022-02-101-15/+15
| | | | | | | | | | | | | | | | Also spell out more complete content in the test's expect output.
* | | | cmFindPackageCommand: Drop ComputeIfDebugModeWanted overloadBrad King2022-02-102-9/+2
| | | | | | | | | | | | | | | | | | | | | | | | The overload for `--debug-find-pkg` has the same signature as the base class method for `--debug-find-var`. To avoid confusion, drop the overload and inline it its only call site.
* | | | Merge topic 'restore-target-export-includes' into release-3.23Brad King2022-02-106-13/+23
|\ \ \ \ | |/ / / |/| / / | |/ / | | | | | | | | | | | | 83d79636bf install(TARGETS): Restore per-export INCLUDES DESTINATION Acked-by: Kitware Robot <kwrobot@kitware.com> Tested-by: buildbot <buildbot@kitware.com> Merge-request: !6969
| * | install(TARGETS): Restore per-export INCLUDES DESTINATIONEugene Shalygin2022-02-096-13/+24
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | In commit 55e4753bbb (Refactor cmTargetExport removing InterfaceIncludeDirecories, 2021-07-20, v3.22.0-rc1~337^2~1) the storage of `INCLUDES DESTINATION` was moved into each target. However, a target may be installed in multiple exports, and their `INCLUDES DESTINATION` should not be mixed. Convert the IncludeDirectoriesEntries vector to a map and modify access function to store the directories lists with respect to cmExportTarget object. This fixes error when the same target is exported more than once via different exports and each for consequent export its include directories list grows. Add a test for this case. Fixes: #23183
| * | Merge topic 'message-flush' into release-3.22Brad King2022-01-281-2/+2
| |\ \ | | |/ | | | | | | | | | | | | | | | 634587e322 message: Restore explicit flushing of messages on stderr Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !6913
| * | Merge topic 'nmake-rsp-encoding' into release-3.22Brad King2022-01-271-2/+15
| |\ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | d5ee6d50ee NMake: Use UTF-8 BOM in response files only with MSVC tooling cab631c2e2 NMake: Document response file encoding heuristic in a comment Acked-by: Kitware Robot <kwrobot@kitware.com> Acked-by: buildbot <buildbot@kitware.com> Merge-request: !6905
| * | | CMake 3.22.2v3.22.2Brad King2022-01-251-1/+1
| | | |
* | | | CMake 3.23.0-rc1v3.23.0-rc1Brad King2022-02-081-1/+1
| | | |
* | | | Merge topic 'dotnet_sdk' into release-3.23Brad King2022-02-085-34/+154
|\ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 5cdd774d51 VS: Handle build target correct for .NET SDK style projects with Any CPU 309191052c VS: Set Visual Studio versions read out from solution file f7791698cb VS: Allow setting output directory in .NET SDK style projects Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !6944
| * | | | VS: Handle build target correct for .NET SDK style projects with Any CPUFlorian Schweiger2022-02-074-32/+119
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * Extend Visual Studio solution parser for reading build target * Map solution build target to project build target (especially for Any CPU) * Use C++ <optional> template instead of pointer return value for cmSlnData::GetProjectByGUID
| * | | | VS: Set Visual Studio versions read out from solution fileFlorian Schweiger2022-02-072-2/+24
| | | | |
| * | | | VS: Allow setting output directory in .NET SDK style projectsFlorian Schweiger2022-02-071-0/+11
| | | | |
* | | | | Merge topic 'vs-simplify-pch' into release-3.23Brad King2022-02-041-9/+16
|\ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | dd1e2cc80c VS: Simplify generation of per-source PCH settings Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !6950
| * | | | | VS: Simplify generation of per-source PCH settingsBrad King2022-02-031-9/+16
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Avoid looking up the PCH create/use flags just to map them through flag tables back to the `.vcxproj` settings. Instead, simply generate the PCH settings directly for each source file. Since commit 9df1f33c9a (VisualStudio: move PCH rules to projects when possible., 2020-10-15, v3.20.0-rc1~638^2) we already do this for the target-wide PCH settings.
* | | | | | Replace DEVEL_CMAKE_VERSION with literal 3.23 release versionBrad King2022-02-041-2/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This was accidentally left out of commit 736663deed (Begin 3.23 release versioning, 2022-02-03). The step is documented as part of the release branching process in the CMake Maintainer Guide `Help/dev/maint.rst`.
* | | | | | Begin 3.23 release versioningBrad King2022-02-031-3/+3
|/ / / / /
* | | | | Merge topic 'cmake-ignore-prefix-path'Brad King2022-02-036-38/+114
|\ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 201d8c4298 find_*(): Add CMAKE_IGNORE_PREFIX_PATH variable bd805a51ae Refactor: Keep track of prefixes in cmSearchPath Acked-by: Kitware Robot <kwrobot@kitware.com> Tested-by: buildbot <buildbot@kitware.com> Merge-request: !6880
| * | | | | find_*(): Add CMAKE_IGNORE_PREFIX_PATH variableKyle Edwards2022-02-026-12/+61
| | | | | | | | | | | | | | | | | | | | | | | | Fixes: #20878
| * | | | | Refactor: Keep track of prefixes in cmSearchPathKyle Edwards2022-02-024-27/+54
| | | | | |
* | | | | | Merge topic 'cmake-presets-configure-preset-reachability'Brad King2022-02-032-3/+14
|\ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | c18409cdac CMakePresets.json: Ensure configurePreset is reachable from current file Acked-by: Kitware Robot <kwrobot@kitware.com> Acked-by: buildbot <buildbot@kitware.com> Merge-request: !6937
| * | | | | | CMakePresets.json: Ensure configurePreset is reachable from current fileKyle Edwards2022-02-022-3/+14
| |/ / / / /
* | | | | | CMake Nightly Date StampKitware Robot2022-02-031-1/+1
|/ / / / /
* | | | | Merge topic 'cuda_generic_arch_all'Brad King2022-02-021-8/+16
|\ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 8f64df0a7c CUDA: Generic all and all-major support Acked-by: Kitware Robot <kwrobot@kitware.com> Acked-by: Alex <leha-bot@yandex.ru> Merge-request: !6816