summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* VS: Do not reference output assemblies of targets with no outputVedran Vujinovic2019-09-191-26/+2
| | | | | | | | | | | | | | Our logic that sets `ReferenceOutputAssembly` in `ProjectReference` has accumulated a series of conditions for different cases in which the referenced target has no output. Simplify the condition to check `GetManagedType` directly for cases with no output. This will explicitly turn off `ReferenceOutputAssembly` in `ProjectReference` for utility (i.e. `add_custom_target`) and special targets (i.e. `ZERO_CHECK`, etc.), and allowing reference of target dependencies that produce some output. Fixes: #19665
* Merge topic 'autogen_path_prefix'Brad King2019-09-19114-1779/+2198
|\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | cc0900d9cd Help: Add release notes for AUTOMOC_PATH_PREFIX 692d8e3492 Help: Add documentation for AUTOMOC_PATH_PREFIX 1933ade9f1 Tests: At QtAutogen.MocIncludeSymlink test 706d9738a6 Tests: Merge QtAutogen.MocIncludeStrict and MocIncludeRelaxed d018d27c10 Autogen: Add moc path prefix generation (AUTOMOC_PATH_PREFIX) 77983c8147 Autogen: Add IsHeader flag to SourceFileT class f9e5441eb4 Autogen: Abbreviate file paths in messages 51676cf655 Autogen: Split JobEvalCacheT job into separate moc and uic jobs ... Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !3818
| * Help: Add release notes for AUTOMOC_PATH_PREFIXSebastian Holtermann2019-09-181-0/+13
| |
| * Help: Add documentation for AUTOMOC_PATH_PREFIXSebastian Holtermann2019-09-184-0/+45
| |
| * Tests: At QtAutogen.MocIncludeSymlink testSebastian Holtermann2019-09-182-0/+81
| |
| * Tests: Merge QtAutogen.MocIncludeStrict and MocIncludeRelaxedSebastian Holtermann2019-09-1897-896/+1011
| |
| * Autogen: Add moc path prefix generation (AUTOMOC_PATH_PREFIX)Sebastian Holtermann2019-09-165-37/+84
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The new `AUTOMOC_PATH_PREFIX` boolean target property enables automatic generation of the path prefix `-p` option for `moc`. `AUTOMOC_PATH_PREFIX` is initialized from the variable `CMAKE_AUTOMOC_PATH_PREFIX`, which is ON by default. When `AUTOMOC_PATH_PREFIX` is enabled, CMake tests if a `moc`ed header file is in one of the include directories. If so, then the `-p` option, with the relative path of the header parent directory to the respective include directory, is added to the `moc` command. If the header file is not in an include directory, the `-p` option is omitted. Closes: #18815 "AUTOMOC: generated files include full relative path, breaking certain reproducible builds"
| * Autogen: Add IsHeader flag to SourceFileT classSebastian Holtermann2019-09-162-76/+84
| |
| * Autogen: Abbreviate file paths in messagesSebastian Holtermann2019-09-166-210/+264
| | | | | | | | | | | | | | | | | | | | | | This introduces the `cmQtAutoGenerator::MessagePath` method, that abbreviates paths by placing a - "SRC:" prefix in place of the project source directory - "BIN:" prefix in place of the project binary directory The method is used in `AUTO{MOC,UIC,RCC}` when paths are displayed in messages. This makes the messages generated by `AUTO{MOC,UIC,RCC}` shorter and improves their readability.
| * Autogen: Split JobEvalCacheT job into separate moc and uic jobsSebastian Holtermann2019-09-162-259/+319
| | | | | | | | | | | | | | | | | | This splits the `JobEvalCacheT` job into separate `JobEvalCacheMocT` and `JobEvalCacheUicT` classes, that run concurrently. The `JobEvalCache*T::FindIncluded*` methods are overhauled to store probed directoriy names only if probing fails. Warning messages are refactored to show the file name and the probed directories instead of all probed file paths. This is easier to read.
| * Autogen: Split JobProbeDepsT job into separate moc and uic jobsSebastian Holtermann2019-09-164-66/+124
| | | | | | | | | | | | | | | | | | | | | | | | | | By splitting `JobProbeDepsT` into two independent `JobProbeDepsMocT`, `JobProbeDepsUicT`, the moc and uic job generation will happen concurrently. This should improve the execution speed, when both AUTOMOC and AUTOUIC are enabled. Parent directory names for moc and uic output files are are collected in a `std::unordered_set<std::string>` and get created in a batch. Beforehand we tried to create the parent directory for each output file. This led to duplications of `MakeDirectory` calls when there were multiple output files in the same directory (which is the case usually).
| * Autogen: Rename job classesSebastian Holtermann2019-09-162-107/+57
| |
| * Autogen: Remove CMAKE_INCLUDE_DIRECTORIES_PROJECT_BEFORE sort duplicationSebastian Holtermann2019-09-163-43/+4
| | | | | | | | | | | | | | This removes code that sorts include directories for `AUTOMOC` according to `CMAKE_INCLUDE_DIRECTORIES_PROJECT_BEFORE`. This is possible because the included directories passed to `AUTOMOC` are already sorted, also with respect to `CMAKE_INCLUDE_DIRECTORIES_PROJECT_BEFORE`.
| * Autogen: Use CollapseFullPath instead of RealPath to support symbolic linksSebastian Holtermann2019-09-163-36/+33
| |
| * Autogen: Sanitize include and search directoriesSebastian Holtermann2019-09-161-9/+41
| |
| * Autogen: Modernize by using an unnamed namespace instead of static functionsSebastian Holtermann2019-09-161-6/+9
| |
| * Autogen: Compute and store generator pointers once in initializer constructorSebastian Holtermann2019-09-162-129/+124
| |
* | Merge topic 'refactor-string-concat'Brad King2019-09-1931-797/+545
|\ \ | | | | | | | | | | | | | | | | | | 9dba84cfa5 Refactor: Use cmStrCat to construct error strings Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !3734
| * | Refactor: Use cmStrCat to construct error stringsAsit Dhal2019-09-1831-797/+545
| | | | | | | | | | | | | | | Replace string construction using std::stringstream with cmStrCat and cmWrap.
* | | Merge topic 'CMakeFindBinUtils-install_name_tool-prefix'Brad King2019-09-191-1/+1
|\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | 13a7c858c8 Use _CMAKE_TOOLCHAIN_PREFIX for install_name_tool as well Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !3830
| * | | Use _CMAKE_TOOLCHAIN_PREFIX for install_name_tool as wellIsuru Fernando2019-09-181-1/+1
| |/ /
* | | Merge topic 'FindGnuTLS-target'Brad King2019-09-196-10/+84
|\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | 44e8b8f1f2 FindGnuTLS: add target GnuTLS::GnuTLS Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !3825
| * | | FindGnuTLS: add target GnuTLS::GnuTLSDavid Callu2019-09-186-10/+84
| | | | | | | | | | | | | | | | Also add a test case for the module.
* | | | CMake Nightly Date StampKitware Robot2019-09-191-1/+1
| |/ / |/| |
* | | Merge topic 'command-line-make-functions'Brad King2019-09-1814-186/+93
|\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | 9c45b95ddd cmMakefile: Remove unused AddUtilityCommand overload 7f3ecbe7d7 cmCustomCommandLine: Provide command line make functions Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !3819
| * | | cmMakefile: Remove unused AddUtilityCommand overloadDaniel Eiband2019-09-162-37/+0
| | | |
| * | | cmCustomCommandLine: Provide command line make functionsDaniel Eiband2019-09-1612-149/+93
| | |/ | |/| | | | | | | | | | Reduce boilerplate necessary to create custom command lines by introducing and applying cmMakeCommandLine and cmMakeSingleCommandLine functions.
* | | Merge topic 'smart_ptr/cmCPackGeneratorFactory'Kyle Edwards2019-09-183-31/+11
|\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | c9c1eb99fe cmCPackGeneratorFactory: rule of zero Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !3826
| * | | cmCPackGeneratorFactory: rule of zeroTushar Maheshwari2019-09-173-31/+11
| | | |
* | | | Merge topic 'shared-pch'Brad King2019-09-1819-54/+345
|\ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 729d997f10 Precompile Headers: Add REUSE_FROM signature Acked-by: Kitware Robot <kwrobot@kitware.com> Acked-by: Rickard Englund <rickard@r-englund.com> Acked-by: Viktor Kirilov <vik.kirilov@gmail.com> Merge-request: !3762
| * | | | Precompile Headers: Add REUSE_FROM signatureCristian Adam2019-09-1719-54/+345
| | |/ / | |/| | | | | | | | | | | | | | | | | | | | | | Add the ability to share precompiled headers artifacts between targets. Fixes: #19659
* | | | CMake Nightly Date StampKitware Robot2019-09-181-1/+1
| |/ / |/| |
* | | Merge topic 'byproduct-collapse-full-path'Brad King2019-09-176-6/+32
|\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | 3b409643bd Byproducts: Add test for collapsing of full paths in byproducts 445ff5ccdf Byproducts: collapse full paths of custom target byproducts Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !3804
| * | | Byproducts: Add test for collapsing of full paths in byproductsDaniel Eiband2019-09-165-5/+31
| | | | | | | | | | | | | | | | | | | | | | | | Add test for collapsing of full paths in byproducts and additional tests for the GENERATED source file properties set by add_custom_command and add_custom_target with relative paths.
| * | | Byproducts: collapse full paths of custom target byproductsDaniel Eiband2019-09-131-1/+1
| | | | | | | | | | | | | | | | | | | | Collapse full paths of add_custom_target command byproducts for symmetry with byproducts passed to the add_custom_command command.
* | | | Merge topic 'smart_ptr/cmSourceFile'Brad King2019-09-173-30/+14
|\ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 8c83f39a90 cmSourceFile: use unique_ptr for CustomCommand Acked-by: Kitware Robot <kwrobot@kitware.com> Acked-by: Kyle Edwards <kyle.edwards@kitware.com> Merge-request: !3815
| * | | | cmSourceFile: use unique_ptr for CustomCommandTushar Maheshwari2019-09-133-30/+14
| |/ / /
* | | | Merge topic 'iar-v850'Brad King2019-09-175-2/+15
|\ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | bd5006e813 IAR: Add v850 support Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !3821
| * | | | IAR: Add v850 supportNico Mueller2019-09-165-2/+15
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Add compiler identification for V850. Issue: #17264
* | | | | Merge topic 'allow-pkg-config-missing-libraries'Brad King2019-09-172-34/+21
|\ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 28cb86d796 FindPkgConfig: Allow libraries that can't be found with their full path Acked-by: Kitware Robot <kwrobot@kitware.com> Acked-by: Rolf Eike Beer <eike@sf-mail.de> Merge-request: !3781
| * | | | | FindPkgConfig: Allow libraries that can't be found with their full pathChuck Atkins2019-09-162-34/+21
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | pkg-config's .pc files can sometimes provide libraries that are visible to the linker but not present in CMake's known search paths. In the case where CMake can find some, but not all of the library dependencies provided in a .pc file, this allows them to be passed through as "-lfoo" when the full path can't be found. This also removes the test failure cases that occured because of this scenario and adjsuts the remaining tests to account for not-found libraries
* | | | | | Merge topic 'remove-failing-modules-test'Brad King2019-09-171-9/+7
|\ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 0301a76bb4 FindEnvMod: Remove unreliable test case Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !3823
| * | | | | | FindEnvMod: Remove unreliable test caseChuck Atkins2019-09-161-9/+7
| | |_|_|/ / | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | There's no way to know that loading an arbitrary module doesn't pull in extra dependent modules so the test case asserting that exactly one module was loaded isn't valid.
* | | | | | CMake Nightly Date StampKitware Robot2019-09-171-1/+1
|/ / / / /
* | | | | Merge topic 'tidy-deprecated-headers'Brad King2019-09-16178-290/+289
|\ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | f30523d090 clang-tidy: modernize-deprecated-headers Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !3792
| * | | | | clang-tidy: modernize-deprecated-headersRegina Pfeifer2019-09-16178-290/+289
| | | | | |
* | | | | | Merge topic 'prepare-deferred-custom-command-creation'Brad King2019-09-167-57/+65
|\ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 5d28e361b7 add_custom_command: Move append functionality into class cmMakefile 4fb29850ad add_custom_command: Refactor setting implicit depends Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !3810
| * | | | | | add_custom_command: Move append functionality into class cmMakefileDaniel Eiband2019-09-133-9/+24
| | | | | | |
| * | | | | | add_custom_command: Refactor setting implicit dependsDaniel Eiband2019-09-127-48/+41
| |/ / / / / | | | | | | | | | | | | | | | | | | | | | | | | Implicit dependencies are now passed as argument to AddCustomCommandToOutput. This is necessary to be able to delay custom command creation.
* | | | | | Merge topic 'add_custom_command-genex-slash'Brad King2019-09-164-8/+29
|\ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | c16641607f add_custom_command: Delay slash conversion until after genex evaluation Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !3791