summaryrefslogtreecommitdiffstats
path: root/Source/cmake.cxx
Commit message (Collapse)AuthorAgeFilesLines
* cmSystemTools: Fix 'ErrorOccurred' spellingFeRD (Frank Dana)2022-06-131-6/+6
| | | | | | | | Rename the booleans 's_ErrorOccured' and 's_FatalErrorOccured' to 's_ErrorOccurred' and 's_FatalErrorOccurred', respectively. Rename the getters and setters to 'Get[Fatal]ErrorOccurred' and 'Set[Fatal]ErrorOccurred', and fix all uses across the codebase.
* clang-tidy: address `google-readability-casting` lintsBen Boeckel2022-05-241-1/+1
| | | | At least those involving `static_cast`.
* Merge topic 'ignore-werror-command-arg'Brad King2022-05-191-0/+8
|\ | | | | | | | | | | | | 65f7053d6c COMPILE_WARNING_AS_ERROR: Add command-line option Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !7268
| * COMPILE_WARNING_AS_ERROR: Add command-line optionMartin Duffy2022-05-181-0/+8
| | | | | | | | | | | | | | Add command-line option `--compile-no-warning-as-error` to ignore value of `COMPILE_WARNING_AS_ERROR`. Issue: #19085
* | Packages: Integrate FetchContent and find_package()Craig Scott2022-05-031-0/+15
| | | | | | | | | | | | | | | | Allow FetchContent_MakeAvailable() to try a call to find_package() first, or redirect a find_package() call to FetchContent_MakeAvailable(). The user can set variables to control which of these are allowed or tried by default. Fixes: #21687
* | Refactor: Use cmCommandLineArgument::setTo{True,Value}()Kyle Edwards2022-04-181-8/+2
|/
* cmake: Add --fresh option to clear the cache and start from scratchBrad King2022-03-221-0/+12
| | | | | | | Simplify the workflow to re-run CMake from scratch as if a build tree were never before processed, regardless of whether it has been. Fixes: #23119
* Merge topic 'cmake-P-args'Brad King2022-03-181-0/+6
|\ | | | | | | | | | | | | | | 36056ff5a3 cmake: Improve acceptance of arbitrary arguments in -P script mode Acked-by: Kitware Robot <kwrobot@kitware.com> Acked-by: buildbot <buildbot@kitware.com> Merge-request: !7083
| * cmake: Improve acceptance of arbitrary arguments in -P script modeBrad King2022-03-171-0/+6
| | | | | | | | | | | | | | The fix in commit e4f1b301fe (cmake: Allow arbitrary args passed to CMake script, 2020-05-04, v3.18.0-rc1~211^2) only applied to "cache" arguments like `-DFOO`. Extend the fix to allow arbitrary arguments that collide with other CMake arguments like `-S` and `-B`.
* | Merge topic 'always_prefer_last_source_dir'Brad King2022-03-181-14/+5
|\ \ | |/ |/| | | | | | | | | | | b44ad7992a cmake: Always prefer the last source directory provided Acked-by: Kitware Robot <kwrobot@kitware.com> Acked-by: buildbot <buildbot@kitware.com> Merge-request: !7084
| * cmake: Always prefer the last source directory providedRobert Maynard2022-03-171-14/+5
| | | | | | | | Fixes: #23334
* | Merge topic 'cmake-dir-args'Brad 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 'correct_multiple_source_warnings'Brad King2022-02-181-5/+36
|\ \ | |/ | | | | | | | | | | | | 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-171-5/+36
| | | | | | | | | | | | | | | | 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
| * 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
* | \ Merge topic 'cmake-empty-cmd-line-arg'Brad 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 'vs-package-restore-docs'Brad King2022-02-161-1/+2
|\ \ \ | | |/ | |/| | | | | | | | | | | | | | | | d92469e572 Help: Clarify how package resolve mode is intended to be used f320a31087 cmake --build: prioritize --resolve-package-references over preset Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !6984
| * | cmake --build: prioritize --resolve-package-references over presetCarsten Rudolph2022-02-151-1/+2
| |/ | | | | | | Fixes: #23224
* | Trace: add global_frame field to json-v1 formatBraulio Valdivielso Martinez2022-02-071-1/+1
|/ | | | | | | | | | | | | | | | | | | Tools using the json-v1 format might want to trace stack frames across different `CMakeLists.txt` files, in order to, for example, provide stacktraces that span from the top-level `CMakeLists.txt` in a project. One would think that `frame` lets you do that, but it doesn't, because it tells you the depth of the stack within the current `CMakeLists.txt`, so it gets reset across calls to `add_subdirectory`. The solution involves adding a field with a "global frame". This value gets incremented on calls to `add_subdirectory`, which makes it easier for tools to reconstruct "global stacktraces". I considered changing the current "frame" value, but I didn't because it would be a breaking change. I cannot think of any use-case where "frame" is more useful to "global-frame", but maybe I'm missing something.
* Merge topic 'vs-package-restore'Brad King2022-01-241-5/+10
|\ | | | | | | | | | | | | | | | | | | 9aa7831f05 Presets: add resolve packages setting to build presets. b2f8f0bb87 cmGlobalVisualStudio10Generator: Auto restore NuGet packages. 193b8fca52 cmBuildOptions: Split build arguments into separate object. 6a10103493 Help: Update preset schema description for version 3 entries. Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !6761
| * Presets: add resolve packages setting to build presets.Carsten Rudolph2022-01-221-0/+4
| |
| * cmBuildOptions: Split build arguments into separate object.Carsten Rudolph2022-01-221-5/+6
| |
* | cmake: Warn about unnecessary paths on command lineRobert Maynard2022-01-201-5/+32
| | | | | | | | | | | | We can't make it an error as that would break existing behavior. Fixes: #23110
* | CMake: `-S` paths preferred over other provided pathsRobert Maynard2022-01-181-28/+26
|/ | | | | | | When cmake parses `cmake -S <path> <path>` treat the second path as the build directory. Likwise when invoked with `<path> -S <path>` treat the first path as the build path instead of using the current working directory.
* Refactor: Rename cmCMakePresetsFile to cmCMakePresetsGraphKyle Edwards2022-01-061-21/+21
| | | | And change all references to "file" to say "graph" instead.
* cmake: Add filtered debug-find optionsJohn Parent2021-12-171-2/+49
| | | | | | | | | | Add a `--debug-find-pkg=` option to debug find calls for specific packages. Add a `--debug-find-var=` option to debug find calls for specific return variables. Fixes: #21880
* cmMessenger: Make relative path conversion more explicitBrad King2021-12-081-0/+6
| | | | | Move the decision to convert to call stacks to relative paths out to the client. Avoid using `cmState` to make the decision ourselves.
* cmMessenger: Adopt backtrace printing functionsBrad King2021-12-081-2/+3
| | | | | | Move backtrace printing functions from `cmListFileBacktrace` over to `cmMessenger`, their primary caller. Thread `cmMessenger` instances through APIs needed to update other call sites.
* Source: fix -Wextra-semi-stmt warningsSean McBride2021-12-011-1/+1
|
* Rename cmProp in cmValueMarc Chevrier2021-09-211-28/+28
|
* Use new AddCacheEntry signaturesMarc Chevrier2021-09-101-32/+26
|
* AddCacheEntry accept cmProp or std::stringMarc Chevrier2021-09-101-1/+1
|
* Enhancement: SetProperty accept cmProp or std::stringMarc Chevrier2021-08-251-0/+4
| | | | | Methods SetProperty of classes cmPropertyMap, cmStateDirectory and cmMakefile accept now cmProp or std::string as argument.
* Fix build on Android (host)leha-bot2021-08-131-2/+4
|
* cmake: Model normal and try-compile project kinds explicitlyBrad King2021-07-121-11/+6
| | | | | Construct with the project kind instead of mutating state after construction.
* cmState: Construct with modeBrad King2021-07-121-2/+1
|
* CMakePresets.json: Make --list-presets show presets with no generatorKyle Edwards2021-07-061-0/+3
| | | | Fixes: #22389
* VS: Add Visual Studio 17 2022 generatorBrad King2021-06-251-1/+5
| | | | Fixes: #22339
* Merge topic 'presets-build-fixes'Brad King2021-06-091-1/+3
|\ | | | | | | | | | | | | | | | | | | | | | | de2b14a711 Merge branch 'backport-3.20-presets-build-fixes' into presets-build-fixes 534c40e6d8 presets: Fix buildPreset "targets" not allowing a single string 5d67632813 presets: Fix buildPreset "jobs" 93e396b402 presets: Fix buildPreset "jobs" field test case efe7ac9022 presets: Fix buildPreset "targets" not allowing a single string Acked-by: Kitware Robot <kwrobot@kitware.com> Acked-by: Kyle Edwards <kyle.edwards@kitware.com> Merge-request: !6190
| * Merge branch 'backport-3.20-presets-build-fixes' into presets-build-fixesSam Freed2021-06-081-1/+3
| |\
| | * presets: Fix buildPreset "jobs"Sam Freed2021-06-081-1/+3
| | | | | | | | | | | | Fixes: #22273
* | | HIP: Add language to CMakeRobert Maynard2021-06-071-0/+3
| | |
* | | cmake: Allow CMAKE_TOOLCHAIN_FILE to be set by environment variableBrad King2021-06-031-0/+10
|/ / | | | | | | | | When no `CMAKE_TOOLCHAIN_FILE` is explicitly specified while creating a new build tree, check for an environment variable of the same name.
* | cmake-gui: Unset empty CC,CXX on global generator changeJake Cobb2021-05-241-3/+6
| | | | | | | | | | | | | | | | | | | | | | On subsequent runs of configure from cmake-gui the global generator is swapped. So on runs other than the first it was setting CC and CXX to empty when they were otherwise undefined. Instead, restore them if non-empty and unset them if empty when changing the global generator and a previous generator exists. Fixes: #21449
* | cmCommandLineArgument: Understands which commands require partial matchingRobert Maynard2021-05-191-24/+42
| | | | | | | | | | Allows us to provide better error messages when commands such as `--target` are passed invalid input.
* | class cmake: Store working directory at cmake launchMarc Chevrier2021-05-111-1/+2
| |
* | Merge topic 'cmprop-nullptr'Brad King2021-05-111-4/+2
|\ \ | | | | | | | | | | | | | | | | | | ce97b7909b Source: Remove unnecessary comparisons to nullptr Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !6112
| * | Source: Remove unnecessary comparisons to nullptrVitaly Stakhovsky2021-05-101-4/+2
| | |