| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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
|
|\
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
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
|
| | |
|
| | |
|
| | |
|
| | |
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
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"
|
| | |
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
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.
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
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.
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
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).
|
| | |
|
| |
| |
| |
| |
| |
| |
| | |
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`.
|
| | |
|
| | |
|
| | |
|
| | |
|
|\ \
| | |
| | |
| | |
| | |
| | |
| | | |
9dba84cfa5 Refactor: Use cmStrCat to construct error strings
Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !3734
|
| | |
| | |
| | |
| | |
| | | |
Replace string construction using std::stringstream with cmStrCat and
cmWrap.
|
|\ \ \
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
13a7c858c8 Use _CMAKE_TOOLCHAIN_PREFIX for install_name_tool as well
Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !3830
|
| |/ / |
|
|\ \ \
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
44e8b8f1f2 FindGnuTLS: add target GnuTLS::GnuTLS
Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !3825
|
| | | |
| | | |
| | | |
| | | | |
Also add a test case for the module.
|
| |/ /
|/| | |
|
|\ \ \
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
9c45b95ddd cmMakefile: Remove unused AddUtilityCommand overload
7f3ecbe7d7 cmCustomCommandLine: Provide command line make functions
Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !3819
|
| | | | |
|
| | |/
| |/|
| | |
| | |
| | | |
Reduce boilerplate necessary to create custom command lines by introducing and
applying cmMakeCommandLine and cmMakeSingleCommandLine functions.
|
|\ \ \
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
c9c1eb99fe cmCPackGeneratorFactory: rule of zero
Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !3826
|
| | | | |
|
|\ \ \ \
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
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
|
| | |/ /
| |/| |
| | | |
| | | |
| | | |
| | | |
| | | | |
Add the ability to share precompiled headers artifacts between
targets.
Fixes: #19659
|
| |/ /
|/| | |
|
|\ \ \
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
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
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
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.
|
| | | |
| | | |
| | | |
| | | |
| | | | |
Collapse full paths of add_custom_target command byproducts for symmetry with
byproducts passed to the add_custom_command command.
|
|\ \ \ \
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
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
|
| |/ / / |
|
|\ \ \ \
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
bd5006e813 IAR: Add v850 support
Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !3821
|
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
Add compiler identification for V850.
Issue: #17264
|
|\ \ \ \ \
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
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
|
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
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
|
|\ \ \ \ \ \
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | | |
0301a76bb4 FindEnvMod: Remove unreliable test case
Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !3823
|
| | |_|_|/ /
| |/| | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
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.
|
|/ / / / / |
|
|\ \ \ \ \
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
f30523d090 clang-tidy: modernize-deprecated-headers
Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !3792
|
| | | | | | |
|
|\ \ \ \ \ \
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | | |
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
|
| | | | | | | |
|
| |/ / / / /
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
Implicit dependencies are now passed as argument to AddCustomCommandToOutput.
This is necessary to be able to delay custom command creation.
|
|\ \ \ \ \ \
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | | |
c16641607f add_custom_command: Delay slash conversion until after genex evaluation
Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !3791
|