summaryrefslogtreecommitdiffstats
path: root/Source/cmake.h
Commit message (Collapse)AuthorAgeFilesLines
* Merge topic 'trace-redirect'Brad King2019-08-201-0/+5
|\ | | | | | | | | | | | | 3c94069660 Add --trace-redirect parameter to redirect trace output to a file Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !3645
| * Add --trace-redirect parameter to redirect trace output to a fileIgor Ivanov2019-08-101-0/+5
| |
* | Refactor: Convert all instances of CMAKE_BUILD_WITH_CMAKE to CMAKE_BOOTSTRAPKitware Robot2019-08-091-4/+4
|/
* cmake: Initialize booleans at declaration and cleanup constructorSebastian Holtermann2019-08-031-14/+14
|
* IWYU: Fix handling of <memory> standard headerBrad King2019-07-101-1/+1
| | | | | | | | An old workaround for `std::allocator_traits<>::value_type` lints from IWYU on `std::vector<>` usage breaks IWYU's handling of `<memory>`. Convert the workaround to use the same approach we already use for a workaround of `std::__decay_and_strip<>::::__type` lints. Then update the `<memory>` inclusions to follow the now-correct IWYU lints.
* cmake: Refactor file extension list setupSebastian Holtermann2019-07-041-10/+39
| | | | | Refactor the file extention list setup in cmake.h/cxx and add file extensions lists for Cuda and Fortran.
* modermize: replace some raw pointers w/ `unique_ptr`Alex Turbov2019-06-241-18/+18
|
* cmake: Simplify implementation of -E capabilitiesBrad King2019-06-071-2/+2
| | | | | | The `cmake -E capabilities` command-line tool is implemented only in a full-featured (non-bootstrap) CMake, and server mode is now always available in this case.
* Merge topic 'default-generator-env'Brad King2019-05-221-0/+10
|\ | | | | | | | | | | | | | | | | d0f0ba0f7a Tests: Add environment generator tests a48ce8f4bf Help: Add documentation for default generator environment variables 083cf7e8a2 cmake: Allow default generator to be set by environment variables Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !3218
| * cmake: Allow default generator to be set by environment variablesEicke Herbertz2019-05-161-0/+10
| | | | | | | | | | | | | | | | | | | | When there is no Generator available in the Cache, this will read CMAKE_GENERATOR from environment before using the CMake platform default. If CMAKE_GENERATOR is empty, use the platform default. If a environment default generator is specified, subsequent variables CMAKE_GENERATOR_(INSTANCE,PLATFORM,TOOLSET) are also evaluated in the same way.
* | Source: change parameters to std::stringVitaly Stakhovsky2019-05-191-2/+2
| |
* | message(): Add support for log levelsAlex Turbov2019-04-281-0/+20
|/ | | | | Relates: #18943 Co-Authored-By: Craig Scott <craig.scott@crascit.com>
* Fix invalid ///! doxygen comment line startsSebastian Holtermann2019-03-311-24/+24
| | | | | In various places `///!` was used to start a comment line. This is not valid Doygen syntax. This patch replaces `///!` comment starts with `//!`.
* Merge topic 'dont_do_compiler_feature_checks_for_version_with_no_features'Brad King2019-03-211-22/+37
|\ | | | | | | | | | | | | | | 85415afbdc CompileFeatures: Don't try_compile for language levels with no features 616282a5ce CMake: Provide language level compile features lists Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !3128
| * CMake: Provide language level compile features listsRobert Maynard2019-03-201-22/+37
| | | | | | | | | | Now CMake stores what compile features are associated with each language level and exposes them as global properties.
* | Substitute FileComparison in variable names with FileTimeCacheSebastian Holtermann2019-03-181-2/+2
| |
* | Rename cmFileTimeComparison to cmFileTimeCacheSebastian Holtermann2019-03-181-3/+3
|/ | | | | The name `cmFileTimeCache` reflects the functionality of the class more appropriately.
* cmake: Teach --build mode to support multiple targetsBartosz Kosiorek2019-03-051-2/+2
| | | | Fixes: #16136
* cmake: Progress functions use `std::string` paramVitaly Stakhovsky2019-02-111-2/+2
|
* ReadListFile: Accept std::string argumentVitaly Stakhovsky2019-01-311-1/+2
|
* Merge topic 'unused-members'Brad King2019-01-311-14/+0
|\ | | | | | | | | | | | | ea9a376085 Remove unused 'class cmake' members Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !2895
| * Remove unused 'class cmake' membersBrad King2019-01-311-14/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * The `InTryCompile` member has been unused since commit 62854e9966 (cmState: Move try_compile state from cmake class., 2015-04-11, v3.3.0-rc1~196^2~9). * The `ConvertMessageType` and `IsMessageTypeVisible` members have been unused since commit 421012a330 (cmMessenger: Extract from cmake class, 2016-01-28, v3.7.0-rc1~222^2~1). * The `InitializeProperties` member has been unused since commit de722d7d63 (Move property initialization to cmState., 2015-04-06, v3.3.0-rc1~196^2~1). Co-Author: Vitaly Stakhovsky <vvs31415@gitlab.org>
* | Merge topic 'tidy-use-equals-delete'Brad King2019-01-301-2/+3
|\ \ | |/ |/| | | | | | | | | | | b05b778a2d clang-tidy: Use `= delete` Acked-by: Kitware Robot <kwrobot@kitware.com> Rejected-by: vvs31415 <vstakhovsky@fastmail.com> Merge-request: !2848
| * clang-tidy: Use `= delete`Regina Pfeifer2019-01-291-2/+3
| |
* | Use `std::function` for callbacksRegina Pfeifer2019-01-291-3/+3
|/
* Merge topic 'add_consistent_verbose_build_flag'Brad King2019-01-291-1/+2
|\ | | | | | | | | | | | | | | | | | | | | | | 66801f4d40 cmake: Add tests for verbose output to --build mode 439fe2e253 cmake: Add options for verbose output to --build mode 638667efa2 cmake: cmcmd.cxx fix "The arguments are" comments 3ca4402966 ctest: Fix --build-and-test without --build-target on Xcode cb6c233ecc cmake: Add -hideShellScriptEnvironment xcodebuild option 1a45266cb5 cmGlobalGenerator: Add a class that represent the build command Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !2708
| * cmake: Add options for verbose output to --build modeFlorian Maushart2019-01-281-1/+2
| | | | | | | | | | | | | | | | | | | | | | | | While we already support `VERBOSE` environment variable and `CMAKE_VERBOSE_MAKEFILE` cached variable, add `-v` and `--verbose` command line options to be able to activate verbose output directly from CMake's build tool mode command line. Also make `msbuild` honor the verbosity setting. `xcodebuild` still doesn't honor the verbosity setting as it will need a policy added and reworking of cmGlobalGenerator and cmsys to support multiple command invocation.
* | Merge topic 'cmake-files-directory'Brad King2019-01-251-6/+0
|\ \ | |/ |/| | | | | | | | | | | 3e867ed400 cmake: inlined files dir constant and removed it from cmake.h Acked-by: Kitware Robot <kwrobot@kitware.com> Rejected-by: vvs31415 <vstakhovsky@fastmail.com> Merge-request: !2655
| * cmake: inlined files dir constant and removed it from cmake.hBruno Manganelli2019-01-211-6/+0
| |
* | Merge topic 'help-mark-default-generator'Brad King2019-01-221-1/+5
|\ \ | | | | | | | | | | | | | | | | | | | | | | | | dfd5ae7da7 Help: Mark default CMake generator with asterisk 6023fe7ff2 ccmake: Append rather than replace Generators section of docs 7408cd3929 cmake: Return generator docs directly Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !2682
| * | Help: Mark default CMake generator with asteriskArtur Ryt2019-01-181-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | Required extracting default generator evaluation to explicit function, as Visual Studio generators get validated during their construction. Fixes: #18544
| * | cmake: Return generator docs directlyArtur Ryt2019-01-181-1/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | The GetGeneratorDocumentation() function was not accurately named and required the vector to populate to be passed as a function argument. This commit makes the slightly renamed function return by value, making it a true getter as implied by its name. Some minor refactoring of the implementation also makes the steps of populating the vector clearer.
* | | Add global generator factory method to get default platform nameBrad King2019-01-181-0/+1
| | |
* | | Add global generator factory method to get list of known platformsBrad King2019-01-181-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | Add a `cmGlobalGeneratorFactory::GetKnownPlatforms` method to return a list of known possible values for `CMAKE_GENERATOR_PLATFORM`. Implement the method for each generator by referencing the list of possible values documented in `Help/generator/*.rst` for it. Co-Author: Julien Jomier <julien.jomier@kitware.com>
* | | Split global generator factory list with and without platformsBrad King2019-01-181-1/+2
|/ / | | | | | | | | | | Replace `cmGlobalGeneratorFactory::GetGenerators` with a pair of methods to split the list of generator names into those that have platforms in the name and those that do not.
* | Properties: Add CMAKE_ROLE global propertyKyle Edwards2019-01-171-2/+2
|/ | | | | This property allows scripts to determine whether they're in project mode, script mode, find-package mode, CTest, or CPack.
* Factor out enum MessageType into dedicated headerBruno Manganelli2019-01-161-16/+4
| | | | Reduce the number of files relying on `cmake.h`.
* Merge topic 'cmake-option-parsing'Brad King2019-01-141-2/+1
|\ | | | | | | | | | | | | | | 27eb7c5bdb cmake: Ensure source and binary dirs are set a1adbc7243 cmake: Stop processing if -P option lacks file name Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !2799
| * cmake: Ensure source and binary dirs are setCraig Scott2019-01-131-2/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | If only the source dir is provided, the binary dir is assumed to be the working directory. If only the binary dir is provided and it doesn't yet have a CMakeCache.txt to provide the source dir, then the source dir is assumed to be the working directory. This logic was not previously being handled correctly when -S and/or -B options were involved. Furthermore, when both were missing, no suitable error message was provided and an empty string was used for the build directory. Fixes: #18707
* | fileapi: Add protocol v1 infrastructure with support for shared query filesBrad King2018-12-121-0/+3
|/ | | | | | | | | | | | | | | | | | | Add a file-based API that clients may use to get semantic information about the buildsystem that CMake generates. Clients will write query files under a designated location in the build tree, and CMake will write reply files for clients to read. Start with support for shared stateless query files. These allow clients to share requests for major object versions and get all those recognized by CMake. Once any client has written a shared request to a build tree it will persist. Other clients will not need to overwrite the request (since it is stateless) and should not remove it either. For now we add only an undocumented object kind to use for testing the query and reply infrastructure. Object kinds providing real semantic information will be added later. Issue: #18398
* cmake: Factor json version object construction into helperBrad King2018-09-211-0/+1
|
* cmake: -S and -B can be used to specify source and build directoriesRobert Maynard2018-09-151-1/+3
| | | | | | Document the previously internal option of '-B' and provide a matching source directory option with '-S'. Both '-B', and '-S' can be used independently of each other.
* cmake: Declare VariableWatch member only when usedBrad King2018-08-291-2/+6
|
* Revise C++ coding style using clang-format-6.0Kitware Robot2018-06-011-5/+7
| | | | | | | | | | | | Run the `clang-format.bash` script to update all our C and C++ code to a new style defined by `.clang-format`. Use `clang-format` version 6.0. * If you reached this commit for a line in `git blame`, re-run the blame operation starting at the parent of this commit to see older history for the content. * See the parent commit for instructions to rebase a change across this style transition commit.
* Merge topic 'parallel_build_option'Brad King2018-05-291-1/+4
|\ | | | | | | | | | | | | | | 1ab3881ec9 cmake: Add options for parallel builds to --build mode Acked-by: Kitware Robot <kwrobot@kitware.com> Acked-by: Henry Schreiner <henryschreineriii@gmail.com> Merge-request: !1962
| * cmake: Add options for parallel builds to --build modeFlorian Maushart2018-05-251-1/+4
| | | | | | | | | | | | | | While we already support `cmake --build . -- -j`, the options after `--` are specific to the native build tool. Add new options `--parallel [<N>]` and `-j [<N>]` to abstract this and map to the proper option for the native build tool.
* | Help: Update description of the -D option to CMakeRaul Laasner2018-05-241-1/+1
|/ | | | Fixes #18021
* Merge topic 'glob_configure_depends'Brad King2018-04-061-0/+10
|\ | | | | | | | | | | | | | | | | | | | | 6c4f8b4596 Adjust help documentation for file(GLOB), add topic notes 20612978c8 Add tests for `file(GLOB)` CONFIGURE_DEPENDS flag 3f4b81f540 Add glob verify support to XCode, VS, Ninja, and Makefile generators ca0befc2e1 Add `CONFIGURE_DEPENDS` flag support to cmFileCommand::HandleGlobCommand 599c93e22d Add cmGlobVerificationManager class, integrate with cmake and cmState Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !1767
| * Add cmGlobVerificationManager class, integrate with cmake and cmStateShane Parris2018-03-291-0/+10
| |
* | Features: Add infrastructure for C++ 20 language standardBrad King2018-03-271-0/+1
|/ | | | Issue: #17849