summaryrefslogtreecommitdiffstats
path: root/Source
Commit message (Collapse)AuthorAgeFilesLines
* Merge topic 'separate_arguments-program'Brad King2020-09-231-67/+123
|\ | | | | | | | | | | | | | | d832c1cc7d separate_arguments: add option PROGRAM f4c21d4953 separate_arguments: refactoring Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !5253
| * separate_arguments: add option PROGRAMMarc Chevrier2020-09-221-1/+50
| | | | | | | | Fixes: #21217
| * separate_arguments: refactoringMarc Chevrier2020-09-221-70/+77
| |
* | Merge topic 'install-EXPORT-source-CONFIG'Brad King2020-09-231-3/+1
|\ \ | | | | | | | | | | | | | | | | | | bf114602da install(EXPORT): Fix exporting target w/ source named using CONFIG genex Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !5240
| * | install(EXPORT): Fix exporting target w/ source named using CONFIG genexDeniz Bahadir2020-09-221-3/+1
| | | | | | | | | | | | Fixes: #21203
* | | Merge topic 'binary-dir-props'Brad King2020-09-232-6/+6
|\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | f2daa025e3 {get,set}_property: Add support for referencing binary directories Acked-by: Kitware Robot <kwrobot@kitware.com> Acked-by: Ben Boeckel <ben.boeckel@kitware.com> Merge-request: !5254
| * | | {get,set}_property: Add support for referencing binary directoriesBrad King2020-09-232-6/+6
| | |/ | |/| | | | | | | | | | | | | | | | Index directories by their binary directory path in addition to their source directory path. Fixes: #19262
* | | CMake Nightly Date StampKitware Robot2020-09-231-1/+1
|/ /
* | Merge topic 'file-ARCHIVE-compression-level'Brad King2020-09-225-16/+83
|\ \ | | | | | | | | | | | | | | | | | | | | | 195d14e781 file(ARCHIVE_CREATE): Add option to control compression level Acked-by: Kitware Robot <kwrobot@kitware.com> Acked-by: Cristian Adam <cristian.adam@gmail.com> Merge-request: !5242
| * | file(ARCHIVE_CREATE): Add option to control compression levelAsit Dhal2020-09-215-16/+83
| |/ | | | | | | Fixes: #21125
* | CMake Nightly Date StampKitware Robot2020-09-221-1/+1
| |
* | Merge topic 'xcode-12-new-build-system'Brad King2020-09-212-44/+442
|\ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | b8ecd4df5f ExternalProject: Use CMP0114 NEW behavior with Xcode "new build system" fe258f6382 Tests: Skip RunCMake.XcodeProject device cases for Xcode "new build system" 1c3d2d0951 Tests: Skip Qt*Autogen.MocSkipSource case for Xcode "new build system" 542884e527 Tests: Update RunCMake.XcodeProject cases for Xcode "new build system" 832a78be2d Tests: Update BuildDepends test for Xcode "new build system" ff76c51ec3 Tests: Update RunCMake.file case with workaround for Xcode "new build system" 1806cdd17c Tests: Avoid duplicate custom commands for Xcode "new build system" 8d5f4c4db9 Xcode: Switch to the "new build system" for Xcode 12 and above ... Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !5229
| * | Xcode: Switch to the "new build system" for Xcode 12 and aboveBrad King2020-09-182-27/+318
| | | | | | | | | | | | | | | | | | | | | Provide an option to switch back to the original build system via `-T buildsystem=1`. Fixes: #18088
| * | Xcode: Add option to specify build system variantBrad King2020-09-182-12/+114
| | | | | | | | | | | | | | | | | | Extend the `-T <toolset>` option to support a `buildsystem=` field with the Xcode generator. Add a `CMAKE_XCODE_BUILD_SYSTEM` variable to inform project code about the selected build system variant.
| * | Xcode: Factor out build phase variable declarationsBrad King2020-09-181-7/+12
| | |
| * | Xcode: Clarify name of legacy run script build phase helperBrad King2020-09-182-8/+8
| | |
* | | Merge topic 'foreach-int-parse-range-check'Brad King2020-09-211-0/+6
|\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | 0412b55b83 foreach: Fix crash parsing integer out of range Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !5239
| * | | foreach: Fix crash parsing integer out of rangeBen McMorran2020-09-181-0/+6
| | | |
* | | | CMake Nightly Date StampKitware Robot2020-09-211-1/+1
| | | |
* | | | CMake Nightly Date StampKitware Robot2020-09-201-1/+1
| | | |
* | | | CMake Nightly Date StampKitware Robot2020-09-191-1/+1
| | | |
* | | | Merge topic 'ninja-multi-automoc-regression'Brad King2020-09-181-0/+1
|\ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 23fe4b861f Ninja Multi-Config: Fix dependencies of custom commands Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !5238
| * | | | Ninja Multi-Config: Fix dependencies of custom commandsKyle Edwards2020-09-171-0/+1
| |/ / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | a9fd3a10 addressed the scenario where the depending target is a utility target, but not the scenario where the dependent target is a utility target. Account for this scenario. Also add a Qt-specific test case. Fixes: #21118
* | | | CMake Nightly Date StampKitware Robot2020-09-181-1/+1
| |_|/ |/| |
* | | Merge topic 'string-json-support'Brad King2020-09-171-0/+300
|\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 8eab76eb84 string(JSON): Adds JSON parsing support to the string command Acked-by: Kitware Robot <kwrobot@kitware.com> Acked-by: Ben Boeckel <ben.boeckel@kitware.com> Acked-by: Cristian Adam <cristian.adam@gmail.com> Acked-by: Michael Hirsch, Ph.D. <michael@scivision.dev> Merge-request: !5159
| * | | string(JSON): Adds JSON parsing support to the string commandPeter Steneteg2020-09-161-0/+300
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Adds a set of sub commands to the string command for parsing JSON, the JSON commands are: GET, TYPE, MEMBER, LENGTH, REMOVE, SET, and EQUAL. Closes: #19501
* | | | CMake Nightly Date StampKitware Robot2020-09-171-1/+1
| | | |
* | | | CMake Nightly Date StampKitware Robot2020-09-161-1/+1
| | | |
* | | | Merge topic 'ExternalProject-steps-refinement'Brad King2020-09-151-1/+4
|\ \ \ \ | | |_|/ | |/| | | | | | | | | | | | | | | | | | | | | | | | | | b4fc4da903 ExternalProject: Add policy CMP0114 to refine step target dependencies f5791e24c6 Tests: Match RunCMake.ExternalProject NO_DEPENDS output more strictly b637ef494c ExternalProject: Factor out an internal helper to add a step target Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !5215
| * | | ExternalProject: Add policy CMP0114 to refine step target dependenciesBrad King2020-09-141-1/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | `ExternalProject_Add_StepTargets` and `INDEPENDENT_STEP_TARGETS` have some limitations and lack some sanity checks. They can cause confusing build systems to be generated. The basic problems are: * The notion of step independence is attached to the step target rather than the step itself. * The custom commands implementing the steps are duplicated in the step targets and the primary targets. This can cause races. It is also incompatible with the Xcode "new build system". Fix this by introducing policy CMP0114 to change the way step target dependencies are handled. Define independence from external dependencies as a property of each individual step regardless of whether there is a target for it. Add dependencies among the primary target and the step targets such that each custom command only appears in one target. When some steps are disconnected from the primary target, add step targets for the steps commonly depended upon so that there is a place to hold their custom commands uniquely. Fixes: #18663
* | | | Merge topic 'commands-unordered-map'Marc Chevrier2020-09-151-3/+3
|\ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 967792a662 cmState: store commands in unordered_map Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !5219
| * | | | cmState: store commands in unordered_mapOleksandr Koval2020-09-111-3/+3
| | | | |
* | | | | CMake Nightly Date StampKitware Robot2020-09-151-1/+1
| | | | |
* | | | | CMake Nightly Date StampKitware Robot2020-09-141-1/+1
| | | | |
* | | | | CMake Nightly Date StampKitware Robot2020-09-131-1/+1
| | | | |
* | | | | CMake Nightly Date StampKitware Robot2020-09-121-1/+1
|/ / / /
* | | | Merge topic 'file-GENERATE-earlier'Brad King2020-09-111-0/+2
|\ \ \ \ | | |_|/ | |/| | | | | | | | | | | | | | | | | | aee2c51224 file(GENERATE): Create output file structures for all directories first Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !5209
| * | | file(GENERATE): Create output file structures for all directories firstJosef Angstenberger2020-09-101-0/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Since commit 36ded610af (PCH: Generate sources during Compute step, 2019-10-05, v3.16.0-rc1~2^2) the source file lookup is done earlier than before. Its parent commit f1fb63b306 (file(GENERATE): Create output file structures even earlier, 2019-10-07, v3.16.0-rc1~2^2~1) prepared for that. However, that commit did not account for generating and using files in separate subdirectories. Fix this by evaluating all generated files before adding automatic files. Fixes: #21144
| * | | Merge topic 'automoc-rerun-missing-dependency' into release-3.18Brad King2020-09-101-7/+15
| |\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 9ac3503d30 AutoMoc: Re-run moc if a dependency is missing Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !5180
* | | | | CMake Nightly Date StampKitware Robot2020-09-111-1/+1
| |_|/ / |/| | |
* | | | Merge topic 'pch-instantiate-templates'Brad King2020-09-102-0/+11
|\ \ \ \ | |_|_|/ |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 8c8f03422e PCH: Template instantiation support Acked-by: Kitware Robot <kwrobot@kitware.com> Acked-by: Raul Tambre <raul@tambre.ee> Acked-by: Cristian Adam <cristian.adam@gmail.com> Tested-by: Raul Tambre <raul@tambre.ee> Merge-request: !5168
| * | | PCH: Template instantiation supportTobias Hieta2020-09-022-0/+11
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Adds PCH_INSTANTIATE_TEMPLATES target property for enabling template instantiation in precompiled headers. Enabled by default. Currently only supported for Clang 11 and newer. Implements #21133.
* | | | Merge topic 'custom-command-dedup'Brad King2020-09-105-11/+69
|\ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 45fedf0e17 Makefile: Add policy CMP0113 to avoid duplication of custom commands 844779bdc1 cmMakefileTargetGenerator: Simplify custom command output collection Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !5204
| * | | | Makefile: Add policy CMP0113 to avoid duplication of custom commandsBrad King2020-09-085-1/+63
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Do not attach a custom command to a target if it is already attached to one of the target's dependencies. The command's output will be available by the time the target needs it because the dependency containing the command will have already been built. This may break existing projects that do not properly mark non-created outputs with the `SYMBOLIC` property. Previously a chain of two custom commands whose intermediate dependency is not created would put both commands in a dependent project's Makefile even if the first command is also in its dependency's Makefile. The first command would run twice but the build would work. Now the second command needs an explicit `SYMBOLIC` mark on its input to tell CMake that it is not expected to exist. To maintain compatibility with projects that left out the mark, add a policy activating the behavior.
| * | | | cmMakefileTargetGenerator: Simplify custom command output collectionBrad King2020-09-082-10/+6
| | | | |
* | | | | Merge topic 'json-helpers'Brad King2020-09-104-91/+437
|\ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | b2f3f831e2 Refactor: Use JSON helpers in CTest resource spec 3f3a30e1e0 JSON: Add helpers Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !5197
| * | | | | Refactor: Use JSON helpers in CTest resource specKyle Edwards2020-09-092-91/+132
| | | | | |
| * | | | | JSON: Add helpersKyle Edwards2020-09-092-0/+305
| | | | | |
* | | | | | Merge topic 'optimize-old-expand'Brad King2020-09-105-46/+34
|\ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 62d7acc6d4 cmCommandArgumentParserHelper: rework input handling Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !5208
| * | | | | | cmCommandArgumentParserHelper: rework input handlingOleksandr Koval2020-09-095-46/+34
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Old implementation uses involved Flex input management technique that requires usage of obsolete YY_INPUT macro. This causes a lot of useless allocations and byte-by-byte scanning. New implementation avoids those hacks, it uses yy_scan_string() API to setup Flex input. Also it fixes reporting of syntax error position and corresponding tests.