summaryrefslogtreecommitdiffstats
path: root/Source
Commit message (Collapse)AuthorAgeFilesLines
* Merge topic 'cmake-warn-no-src-build-dir'Brad King2019-01-231-2/+5
|\ | | | | | | | | | | | | | | | | | | 20861d758b Merge branch 'backport-cmake-warn-no-src-build-dir' 68b51fb19a cmake: Convert no source/build dir error to warning 6b85eea365 Help: Add 3.13.4 release note for no source/build dir error/warning 2395b1b244 cmake: Convert no source/build dir error to warning Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !2839
| * cmake: Convert no source/build dir error to warningCraig Scott2019-01-221-2/+5
| | | | | | | | | | | | | | | | | | | | Temporarily restore previous behavior that allowed specifying no source or build directory to work, even though it was neither documented nor supported. This commit is expected to eventually be reverted to restore the fatal error for such cases. Relates: #18817
* | CMake Nightly Date StampKitware Robot2019-01-231-1/+1
|/
* Merge topic 'implicit-includes'Brad King2019-01-222-9/+19
|\ | | | | | | | | | | | | | | | | | | | | 5990ecb741 Compute implicit include directories from compiler output d751d2d2ed CMakeDetermineCompilerABI: set locale to C for try_compile() c765ae495a CMakeDetermineCompilerABI: pass verbose flag during compilation 8c5221fb1f try_compile: Preserve special characters in COMPILE_DEFINITIONS 15ad830062 Refactor exclusion of -I/usr/include to avoid per-language values Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !2716
| * try_compile: Preserve special characters in COMPILE_DEFINITIONSBrad King2019-01-211-1/+3
| | | | | | | | | | | | | | When generating the `CMakeLists.txt` file, we pass the values given to our `COMPILE_DEFINITIONS` option in an `add_definitions` call. Pass them as bracket arguments to preserve special characters like `#`.
| * Refactor exclusion of -I/usr/include to avoid per-language valuesBrad King2019-01-211-8/+16
| | | | | | | | | | | | | | | | | | | | | | Add a `CMAKE_PLATFORM_IMPLICIT_INCLUDE_DIRECTORIES` to contain the hard-coded list of paths to be excluded from `-I` arguments so that the values remain excluded even if the per-language `CMAKE_<LANG>_IMPLICIT_INCLUDE_DIRECTORIES` variants change. This is needed to preserve our historical exclusion of `-I/usr/include` even when it is not a real implicit include directory. A policy may be needed to remove it later.
* | Merge topic 'help-mark-default-generator'Brad King2019-01-228-22/+64
|\ \ | | | | | | | | | | | | | | | | | | | | | | | | 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-185-8/+38
| | | | | | | | | | | | | | | | | | | | | | | | Required extracting default generator evaluation to explicit function, as Visual Studio generators get validated during their construction. Fixes: #18544
| * | ccmake: Append rather than replace Generators section of docsCraig Scott2019-01-181-1/+1
| | | | | | | | | | | | | | | | | | | | | Using SetSection() discards the heading line populated by addCMakeStandardDocSections(), whereas AppendSection() preserves it. This also makes the code used for ccmake consistent with that used for cmake and cmake-gui.
| * | cmake: Return generator docs directlyArtur Ryt2019-01-185-13/+25
| |/ | | | | | | | | | | | | | | | | 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.
* | Merge topic 'crosscompiling_emulator-fix'Brad King2019-01-221-1/+1
|\ \ | | | | | | | | | | | | | | | | | | ab3b549ee0 CROSSCOMPILING_EMULATOR: Fix test generation for empty value Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !2834
| * | CROSSCOMPILING_EMULATOR: Fix test generation for empty valueKyle Edwards2019-01-211-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | If CROSSCOMPILING_EMULATOR was set to an empty string, and a test was generated with the executable as the command, CMake would segfault upon trying to generate the test file. Fix this. Fixes: #18819
* | | Merge topic 'Wcomma'Brad King2019-01-225-11/+13
|\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | 5ff7fb592e Fixed all but one clang -Wcomma warning Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !2828
| * | | Fixed all but one clang -Wcomma warningSean McBride2019-01-125-11/+13
| | | |
* | | | Merge topic 'stdout-string'Brad King2019-01-229-56/+42
|\ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 3132ea801c cmSystemTools: Stdout(),Stderr() accept std::string argument Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !2829
| * | | | cmSystemTools: Stdout(),Stderr() accept std::string argumentVitaly Stakhovsky2019-01-209-56/+42
| | | | |
* | | | | Merge topic 'depends-string'Brad King2019-01-2210-73/+76
|\ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2c50a72576 cmDepends: all members accept std::string arguments Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !2827
| * | | | | cmDepends: all members accept std::string argumentsVitaly Stakhovsky2019-01-1910-73/+76
| | |_|_|/ | |/| | | | | | | | | | | | | | | | | | | | | | | Most `const char*` arguments converted to `const std::string&` in `cmDepends` and derived classes. In addition performed minor code cleanup.
* | | | | Merge topic 'cmake-gui-generator-platform'Brad King2019-01-2215-29/+341
|\ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 67bced8a26 cmake-gui: Improve label for default platform 48ec0bc140 cmake-gui: Add field for generator platform selection 8bba458ea5 Add global generator factory method to get default platform name 818df52c48 Add global generator factory method to get list of known platforms 8144b00e32 Split global generator factory list with and without platforms b70c0aed5c VS: Factor out helper function to compute host platform name Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !2832
| * | | | | cmake-gui: Improve label for default platformJulien Jomier2019-01-212-2/+13
| | | | | | | | | | | | | | | | | | | | | | | | Specify the default platform to be used when the platform field is empty
| * | | | | cmake-gui: Add field for generator platform selectionJulien Jomier2019-01-185-4/+101
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Extend the "first configure" dialog with a field for the user to select a value for `CMAKE_GENERATOR_PLATFORM`. Fixes: #17343
| * | | | | Add global generator factory method to get default platform nameBrad King2019-01-1810-0/+26
| | | | | |
| * | | | | Add global generator factory method to get list of known platformsBrad King2019-01-1810-0/+96
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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-1810-15/+92
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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.
| * | | | | VS: Factor out helper function to compute host platform nameBrad King2019-01-181-10/+15
| |/ / / /
* | | | | CMake Nightly Date StampKitware Robot2019-01-221-1/+1
| |_|_|/ |/| | |
* | | | Merge topic 'read-list-file'Brad King2019-01-2115-47/+42
|\ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 25caf7bafe cmMakefile::ReadListFile() accepts std::string argument Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !2821
| * | | | cmMakefile::ReadListFile() accepts std::string argumentVitaly Stakhovsky2019-01-1715-47/+42
| | | | | | | | | | | | | | | | | | | | Same for cmMakefile::ReadDependentFile(); some cleanup
* | | | | Merge topic 'fortran-compiler-id'Brad King2019-01-211-0/+46
|\ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | a080914274 Fortran: Add compiler ID/Version generator expressions Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !2804
| * | | | | Fortran: Add compiler ID/Version generator expressionsAndrew Paprocki2019-01-181-0/+46
| | |/ / / | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Adds `Fortran_COMPILER_ID` and `Fortran_COMPILER_VERSION` generator expression support to match equivalent `C_COMPILER_ID`, `CXX_COMPILER_ID`, `C_COMPILER_VERSION`, and `CXX_COMPILER_VERSION` support. This is very helpful in the case where the C/C++ compiler suite is a different type of compiler from the platform Fortran compiler and projects use generator expressions to assign compiler flags and definitions. (e.g. `GNU` C/C++ and `SunPro` Fortran on Linux)
* | | | | Merge topic 'cmake-role-fix'Brad King2019-01-211-1/+1
|\ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 264bdac185 CMAKE_ROLE: Fix value for ctest --build-and-test Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !2820
| * | | | | CMAKE_ROLE: Fix value for ctest --build-and-testKyle Edwards2019-01-181-1/+1
| | |/ / / | |/| | | | | | | | | | | | | | | | | | --build-and-test builds a CMake project, so CMAKE_ROLE should be PROJECT. Fix this and add a test case.
* | | | | Merge topic 'autogen_mocs_compilation_first'Brad King2019-01-216-20/+28
|\ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 1ed4d48dcf Autogen: Prepend instead of append `mocs_compilation.cpp` to the sources list a42b700cc2 cmTarget,cmGeneratorTarget: Add optional `before` parameter to AddSource Acked-by: Kitware Robot <kwrobot@kitware.com> Acked-by: Peter Wu <peter@lekensteyn.nl> Merge-request: !2815
| * | | | | Autogen: Prepend instead of append `mocs_compilation.cpp` to the sources listSebastian Holtermann2019-01-182-4/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | `mocs_compilation.cpp` easily takes a long time to compile when it contains multiple `moc` files. When it was appended like before we ran into the situation that all smaller sources were already compiled when `mocs_compilation.cpp` got compiled at last. In that case a single core was busy but all remaining cores stayed idle. To optimize CPU core utilization we now prepend `mocs_compilation.cpp` to the sources list instead of appending it. This allows smaller source files to get compiled *while* the long lasting `mocs_compilation.cpp` gets compiled. Closes #18793
| * | | | | cmTarget,cmGeneratorTarget: Add optional `before` parameter to AddSourceSebastian Holtermann2019-01-184-16/+22
| | |/ / / | |/| | | | | | | | | | | | | | | | | | | | | | | The new optional `before` parameter in `cmTarget::AddSource` and `cmGeneratorTarget::AddSource` allows to prepend a source file to the sources list instead of appending it.
* | | | | Merge topic 'swift-module-name'Brad King2019-01-213-2/+11
|\ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 0ffe8f8844 Ninja: support `SWIFT_MODULE_NAME` property Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !2813
| * | | | | Ninja: support `SWIFT_MODULE_NAME` propertySaleem Abdulrasool2019-01-183-2/+11
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Add a new `SWIFT_MODULE_NAME` property that defaults to the target name. This is needed as otherwise, the first source file determines the module name. Issue: #18800
* | | | | | Merge topic 'use-emplace'Brad King2019-01-2157-270/+271
|\ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | ef61997b1b clang-tidy: Use emplace 2e5307a2a4 CTestSVN: Accept std::string in SVNInfo constructor Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !2811
| * | | | | | clang-tidy: Use emplaceRegina Pfeifer2019-01-1756-268/+269
| | | | | | |
| * | | | | | CTestSVN: Accept std::string in SVNInfo constructorBrad King2019-01-172-2/+2
| | |_|/ / / | |/| | | |
* | | | | | Merge topic 'ctest-json-polish'Brad King2019-01-212-0/+8
|\ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | cae9d2a61a CTest: Teach --show-only= to reject unknown values 7370b02c36 CTest: Teach --show-only=json-v1 to filter out not-available tests 62fec84ad7 Tests: Fix RunCMake.CTestCommandLine case when no python is found 75a7a23746 Tests: Rename RunCMake.CTestCommandLine show-only test cases fecbc87608 Tests: Fix RunCMake.CTestCommandLine to actually check json-v1 Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !2812
| * | | | | | CTest: Teach --show-only= to reject unknown valuesBrad King2019-01-171-0/+3
| | | | | | |
| * | | | | | CTest: Teach --show-only=json-v1 to filter out not-available testsBrad King2019-01-171-0/+5
| | |/ / / / | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | Avoid exposing the internal special value that we use to track tests not available in the tested configuration. This also prevents clients from having to do the filtering themselves.
* | | | | | Merge topic 'command_file_link'Brad King2019-01-214-3/+156
|\ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 0f08ed8936 cmSystemTools: Silence CreateLink and CreateSymlink errors 593d986470 Tests: Avoid cross-device links in CREATE_LINK test 9a3d85cfc5 Tests: Skip symlink tests on Windows e68ea269d7 Tests: CREATE_LINK subcommand negative test case 45aa9c65a1 Tests: file CREATE_LINK subcommand test cases 8bb7562f1a Help: Add documentation for file(CREATE_LINK) subcommand 81650e488c cmFileCommand: Add CREATE_LINK subcommand Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !2759
| * | | | | | cmSystemTools: Silence CreateLink and CreateSymlink errorsTushar Maheshwari2019-01-163-21/+31
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | If provided, report errors to a std::string. This allows "silent" fallback to another flow, like COPY_ON_ERROR.
| * | | | | | cmFileCommand: Add CREATE_LINK subcommandTushar Maheshwari2019-01-164-0/+143
| |/ / / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This brings the functionality of `cmake -E create_symlink` and more to scripts. The default behavior is to create hard links. The `SYMBOLIC` argument can be used to create symlinks instead. The `COPY_ON_ERROR` argument enables a fallback to copying the file in case the link fails. The `RESULT <var>` retrieves the error message generated by the system. It is set to "0" on success. Fixes: #16926
* | | | | | Merge topic 'find-package-resolve-symlinks'Brad King2019-01-212-0/+11
|\ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | b773e58099 find_package: add test coverage for CMAKE_FIND_PACKAGE_RESOLVE_SYMLINKS a5e948a36f find_package: optionally resolve symlinks when discovering packages Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !2798
| * | | | | | find_package: optionally resolve symlinks when discovering packagesDavid Aguilar2019-01-162-0/+11
| |/ / / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Teach find_package() to resolve symlinks when constructing relocatable prefix paths from discovered cmake config files. The `CMAKE_FIND_PACKAGE_RESOLVE_SYMLINKS` variable enables this behavior when set to `TRUE`. Fixes: #18704
* | | | | | Merge topic 'submit-url'Brad King2019-01-216-117/+82
|\ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2915a75615 CTest: Add documentation and release notes for SubmitURL d6475daa79 Modules/CTest: Set SubmitURL 938f06fda6 ctest_submit: Add parameter SUBMIT_URL 65e725c957 CTest: Add option SubmitURL 65f1fc9d63 CTest: Add function GetSubmitURL 2bedd5fb7c ctest_submit: Remove submit method from log output Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !2719
| * | | | | | ctest_submit: Add parameter SUBMIT_URLRegina Pfeifer2019-01-162-1/+16
| | | | | | |