summaryrefslogtreecommitdiffstats
path: root/Source
Commit message (Collapse)AuthorAgeFilesLines
* cmake: Allow default generator to be set by environment variablesEicke Herbertz2019-05-162-6/+71
| | | | | | | | | | 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.
* Merge topic 'msvc-runtime-library'Brad King2019-04-175-7/+55
|\ | | | | | | | | | | | | | | | | | | fb3370b6a1 MSVC: Add abstraction for runtime library selection f621e7fa5d VS: Fix Fortran runtime library flag map special case for '-' options Acked-by: Kitware Robot <kwrobot@kitware.com> Acked-by: Ben Boeckel <ben.boeckel@kitware.com> Acked-by: Leonid Pospelov <pospelovlm@yandex.ru> Merge-request: !3211
| * MSVC: Add abstraction for runtime library selectionBrad King2019-04-174-3/+51
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Replace our hard-coded defaults for `/MD` and `/MDd` with a first-class abstraction to select the runtime library from an enumeration of logical names. We've long hesitated to do this because the idea of "runtime library selection" touches on related concepts on several platforms. Avoid that scope creep by simply defining an abstraction that applies only when targeting the MSVC ABI on Windows. Removing the old default flags requires a policy because existing projects may rely on string processing to edit them and choose a runtime library under the old behavior. Add policy CMP0091 to provide compatibility. Fixes: #19108
| * VS: Fix Fortran runtime library flag map special case for '-' optionsBrad King2019-04-101-4/+4
| |
* | CMake Nightly Date StampKitware Robot2019-04-171-1/+1
| |
* | Merge topic 'vs-project-import'Brad King2019-04-162-0/+20
|\ \ | | | | | | | | | | | | | | | | | | d145d72e70 VS: add target property VS_PROJECT_IMPORT_<propspath> Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !3143
| * | VS: add target property VS_PROJECT_IMPORT_<propspath>Leonid Pospelov2019-04-152-0/+20
| | | | | | | | | | | | Fixes: #18998
* | | Merge topic 'genex-output_name'Brad King2019-04-161-16/+16
|\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | 60ec292258 Genex: Rename $<TARGET_*_OUTPUT_NAME:...> in $<TARGET_*_FILE_BASE_NAME:...> Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !3228
| * | | Genex: Rename $<TARGET_*_OUTPUT_NAME:...> in $<TARGET_*_FILE_BASE_NAME:...>Marc Chevrier2019-04-151-16/+16
| | | |
* | | | Merge topic 'string-repeat'Brad King2019-04-162-0/+62
|\ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 536cca60ea string: introduce `REPEAT` sub-command Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !3239
| * | | | string: introduce `REPEAT` sub-commandAlex Turbov2019-04-152-0/+62
| | | | |
* | | | | Merge topic 'autogen_moc_uic_single_job_queue'Brad King2019-04-168-1268/+1574
|\ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 58f04b6ecf Autogen: Add ManySources test a3f062091f Autogen: Rename `cmQtAutoGeneratorMocUic` class to `cmQtAutoMocUic` 8cb26a0a2a Autogen: Factor out concurrency framework to cmWorkerPool class Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !3224
| * | | | | Autogen: Rename `cmQtAutoGeneratorMocUic` class to `cmQtAutoMocUic`Sebastian Holtermann2019-04-154-69/+64
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The class name `cmQtAutoGeneratorMocUic` is long and cumbersome. This renames it to `cmQtAutoMocUic`.
| * | | | | Autogen: Factor out concurrency framework to cmWorkerPool classSebastian Holtermann2019-04-157-1234/+1545
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This factors out the concurrency framework in `cmQtAutoGeneratorMocUic` to a dedicated class `cmWorkerPool` which might be reused in other places. `cmWorkerPool` supports fence jobs that require that - all other jobs before in the queue have been processed before the fence job processing gets started, - no jobs later in the queue will be processed before the fence job processing has been completed. Fence jobs are needed where the completion of all previous jobs in the queue is a requirement for further processing. E.g. in `cmQtAutoGeneratorMocUic` the generation of `mocs_compilation.cpp` requires that all previous source file parse jobs have been completed.
* | | | | | CMake Nightly Date StampKitware Robot2019-04-161-1/+1
| |_|/ / / |/| | | |
* | | | | Merge topic 'ctest-build-and-test-no-progress'Brad King2019-04-151-3/+4
|\ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 81cc3de28e ctest: drop incremental progress-only messages from build-and-test output Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !3225
| * | | | | ctest: drop incremental progress-only messages from build-and-test outputBrad King2019-04-121-3/+4
| |/ / / / | | | | | | | | | | | | | | | | | | | | | | | | | The cmake progress callback is called with non-negative progress values to provide incremental updates on "Configuring" and "Generating" steps. These are useful in interactive views but are just noise in test output.
* | | | | Merge topic 'code-cleanup'Brad King2019-04-152-37/+23
|\ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 3e70a8d0df cmVisualStudio10TargetGenerator: Simplify code of two functions e10b04ef05 cmVisualStudio10TargetGenerator: Use count instead of find 2418a5aec0 cmVisualStudio10TargetGenerator: Remove uses of const_cast Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !3223
| * | | | | cmVisualStudio10TargetGenerator: Simplify code of two functionsLeonid Pospelov2019-04-121-8/+6
| | | | | |
| * | | | | cmVisualStudio10TargetGenerator: Use count instead of findLeonid Pospelov2019-04-121-19/+9
| | | | | |
| * | | | | cmVisualStudio10TargetGenerator: Remove uses of const_castLeonid Pospelov2019-04-122-12/+10
| | |/ / / | |/| | |
* | | | | Merge topic 'ghs_custom'Brad King2019-04-156-211/+697
|\ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2bae6a1346 GHS: Update tests and notes 3b415c60c1 GHS: Update ExternalProject for GHS tools 83c47ef5b8 GHS: Update project layout to accommodate gbuild inconsistencies 5d2e1404bd GHS: Update project layout to build targets correctly b6bfa7eeb2 GHS: Support add_dependencies() command 39ee9718d9 GHS: Support add_custom_target() command 8d3dad9a76 GHS: Support add_custom_command( OUTPUT ) signature 37acc9e229 GHS: Update custom command build events Acked-by: Kitware Robot <kwrobot@kitware.com> Acked-by: Narendhar Manimohan <narendhar15@gmail.com> Merge-request: !3119
| * | | | | GHS: Update ExternalProject for GHS toolsFred Baksik2019-04-111-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | -- When using default values for the external project forward GHS platform variables so that the external project builds with the same tools as the original project. -- Fix issue with bad top level project when GHS_PRIMARY_TARGET is set but has no value. In this case treat it as unset and use default value.
| * | | | | GHS: Update project layout to accommodate gbuild inconsistenciesFred Baksik2019-04-114-135/+35
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | -- Do not use reference projects, use build hierarchy instead. gbuild has three parallel levels: * low -- Parallelizes compiling source files within a single project (.gpj) file when safe to do so. * medium -- Parallelizes processing files within a single linked output when safe to do so. * high [default] -- Parallelizes processing files whenever safe to do so, including linking task. Testing showed that for some combinations of gbuild / MULTI there are issues with building a project that uses references to target project files along with using {nobuild} option. Sometimes the archiving of a library and linking of an executable were happening in parallel and the build would fail when linking because the archive wasn't complete. This behavior was also inconsistent when running the build from MULTI and from the command line with gbuild. In some cases MULTI did not parallelize archiving and linking, but gbuild performed these actions in parallel. The parallel build issue was not seen when using a build hierarchy where the project listed the project files normally instead of using a reference link. The other option was to add the -parallel_level=medium to the command line when using "cmake --build" but this wouldn't fix the issue if gbuild itself was used to and the user might not be aware of the extra option used by cmake.
| * | | | | GHS: Update project layout to build targets correctlyFred Baksik2019-04-114-155/+322
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | -- Restructure projects and files to support proper building of targets Build order is determined by hierarchy of project files and folders Custom targets may have been run multiple times in the original file / folder structure -- Default to build targets that are part of ALL target -- List all known targets for this project Includes global targets for ALL_BUILD and INSTALL -- Compute build order for building targets
| * | | | | GHS: Support add_dependencies() commandFred Baksik2019-04-113-80/+102
| | | | | | | | | | | | | | | | | | | | | | | | -- use references to list target dependencies
| * | | | | GHS: Support add_custom_target() commandFred Baksik2019-04-115-79/+184
| | | | | | | | | | | | | | | | | | | | | | | | -- add new project type that runs shell scripts in proper order
| * | | | | GHS: Support add_custom_command( OUTPUT ) signatureFred Baksik2019-04-114-27/+219
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | -- add new file type to run a shell script -- gbuild does not compute interfile dependencies like other build tools. Therefore calculate the required build order of custom commands and list all of them in the CMake Rules subproject.
| * | | | | GHS: Update custom command build eventsFred Baksik2019-04-102-41/+141
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | -- Fixes issue where commands run out of order; Run commands as single script Do not allow build events to run in parallel -- Use command generator to parse the commands -- Support pre-link build events -- Support more options: COMMENT, BYPRODUCTS, WORKING_DIRECTORY
* | | | | | CMake Nightly Date StampKitware Robot2019-04-151-1/+1
| | | | | |
* | | | | | CMake Nightly Date StampKitware Robot2019-04-141-1/+1
| | | | | |
* | | | | | CMake Nightly Date StampKitware Robot2019-04-131-1/+1
| |_|/ / / |/| | | |
* | | | | Merge topic 'genex-target-prefix-suffix'Brad King2019-04-123-30/+264
|\ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | b70bac647d Genex: add $<TARGET_FILE_PREFIX:...> and $<TARGET_FILE_SUFFIX:...> f65763fe9b Refactor: Add new methods to retrieve prefix and suffix Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !3207
| * | | | | Genex: add $<TARGET_FILE_PREFIX:...> and $<TARGET_FILE_SUFFIX:...>Marc Chevrier2019-04-101-0/+117
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | These capabilities complement MR !3190 and is also needed to solve issue #18771.
| * | | | | Refactor: Add new methods to retrieve prefix and suffixMarc Chevrier2019-04-102-30/+147
| | |_|_|/ | |/| | |
* | | | | Merge topic 'iface-headers'Brad King2019-04-122-2/+3
|\ \ \ \ \ | |_|_|/ / |/| | | | | | | | | | | | | | | | | | | | | | | | a40f9083dd INTERFACE Target: allow (PUBLIC/PRIVATE)_HEADER properties Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !3181
| * | | | INTERFACE Target: allow (PUBLIC/PRIVATE)_HEADER propertiesAvraham Shukron2019-04-112-2/+3
| | |/ / | |/| | | | | | | | | | | | | | | | | | | | | | Also support installing headers on an INTERFACE library. Signed-off-by: Avraham Shukron <avraham.shukron@gmail.com> Fixes: #15234
* | | | Merge topic 'cpack-cleanup'Brad King2019-04-121-68/+0
|\ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 67645c132b cpack: Remove unused file with old development notes Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !3215
| * | | | cpack: Remove unused file with old development notesBrad King2019-04-111-68/+0
| | | | |
* | | | | Merge topic 'cmSystemTools-StringToULong-negatives'Brad King2019-04-121-0/+6
|\ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | f0948499f6 cmSystemTools: Fix StringToULong to reject negative numbers Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !3216
| * | | | | cmSystemTools: Fix StringToULong to reject negative numbersBrad King2019-04-111-0/+6
| |/ / / / | | | | | | | | | | | | | | | Fixes: #19161
* | | | | Merge topic 'argument-parser-warning'Brad King2019-04-121-1/+1
|\ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | aeddf63587 cmArgumentParser: Fix -Wcomma warning Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !3214
| * | | | | cmArgumentParser: Fix -Wcomma warningBrad King2019-04-111-1/+1
| |/ / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Clang `-Wcomma` warns: ``` Source/cmArgumentParser.cxx:58:42: warning: possible misuse of comma operator this->CurrentList = (val.emplace_back(), &val.back()); ^ ``` This was introduced by commit 4359fe133b (Introduce cmArgumentParser, 2019-03-23). Suppress it with the suggested cast.
* | | | | Merge topic 'fix-overlay-icon-windows'Brad King2019-04-121-1/+0
|\ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 12ef832c96 cmake-gui: Fix icon overlay on windows Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !3217
| * | | | | cmake-gui: Fix icon overlay on windowsJulien Jomier2019-04-111-1/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Since commit 9175a378f5 (QtDialog: Add windows taskbar progress, 2018-11-17, v3.14.0-rc1~330^2) we've added a missing overlay icon. This results in Windows falling back to a default overlay icon. Simply drop this line. Fixes: #19160
* | | | | | Merge topic 'xcode-extra-sources'Brad King2019-04-121-18/+23
|\ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 428c1e429f Xcode: Avoid mutating App Bundle targets during generation b4385d5ccc Xcode: Factor out duplicate source group code into lambda Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !3208
| * | | | | | Xcode: Avoid mutating App Bundle targets during generationBrad King2019-04-111-8/+14
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | For `MACOSX_BUNDLE` targets we generate an `Info.plist` automatically and add it to the sources presented to Xcode. Avoid mutating the original target's list of sources to achieve this. Otherwise when we generate the same target again (e.g. in a sub-project's Xcode file) it will look different than the first time and possibly break invariants. Fixes: #19114
| * | | | | | Xcode: Factor out duplicate source group code into lambdaBrad King2019-04-111-11/+10
| |/ / / / /
* | | | | | CMake Nightly Date StampKitware Robot2019-04-121-1/+1
| |/ / / / |/| | | |
* | | | | CMake Nightly Date StampKitware Robot2019-04-111-1/+1
| |_|/ / |/| | |