| Commit message (Collapse) | Author | Age | Files | Lines |
|\
| |
| |
| |
| |
| |
| | |
081c4679f7 Ninja Multi-Config: Don't build target dependencies for custom commands
Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !4423
|
| |
| |
| |
| |
| |
| |
| | |
If cross-config mode is used, and a target depends on another target
as well as a custom command, we don't want the custom command to also
depend on the depended target, as that would build targets unnecessarily.
Fix this behavior.
|
|/
|
|
| |
Fixes: #20381
|
|
|
|
|
| |
If CMAKE_DEFAULT_BUILD_TYPE is not specified, use the first item
from CMAKE_CONFIGURATION_TYPES instead.
|
|
|
|
|
|
| |
Also rename `..._DEFAULT_BUILD_FILE_CONFIG` to `..._DEFAULT_BUILD_TYPE`.
These name changes make the variables meaningful for future use by other
generators.
|
|
|
|
| |
Fixes: #20345
|
|
|
|
|
|
|
|
| |
Prior to this fix, CMAKE_NMC_DEFAULT_CONFIGS would inherit "all" from
the union of CMAKE_NMC_DEFAULT_BUILD_FILE_CONFIG and
CMAKE_NMC_CROSS_CONFIGS. This is inconsistent with the behavior of the
"all" target signifying CMAKE_NMC_CROSS_CONFIGS. Update "all" in
CMAKE_NMC_DEFAULT_CONFIGS to inherit only from CMAKE_NMC_CROSS_CONFIGS.
|
|
|
|
| |
And give other generators a path forward to add support in the future.
|
|\
| |
| |
| |
| |
| |
| | |
1844be451e Ninja Multi-Config: Fix issue with CMAKE_NMC_DEFAULT_BUILD_FILE_CONFIG
Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !4331
|
| |
| |
| |
| |
| |
| | |
Fix an issue where CMAKE_NMC_DEFAULT_BUILD_FILE_CONFIG is specified
and CMAKE_NMC_CROSS_CONFIGS is not, which results in a false error
with CMAKE_NMC_DEFAULT_CONFIGS.
|
|/ |
|
|
|
|
|
|
| |
If cmake --build is called with no --config argument, and a
build.ninja file is available, use that instead of defaulting to the
Debug config.
|
|\
| |
| |
| |
| |
| |
| | |
b966f86d86 Ninja Multi-Config: Shuffle variables around
Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !4305
|
| |
| |
| |
| |
| |
| | |
Remove redundant variable CMAKE_NINJA_MULTI_CROSS_CONFIG_ENABLE.
Rename other variables. Document and improve handling of error
conditions.
|
| | |
|
|\ \
| |/
|/|
| |
| |
| |
| |
| |
| |
| | |
aebfbcaa46 AutoGen: Use depfiles for the XXX_autogen ninja targets
f765fdea03 AutoGen: Use moc's feature to output dependencies
f8c505d4b3 Add a parser for GCC-style depfiles
Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Jan Niklas Hasse <jhasse@bixense.com>
Merge-request: !4221
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
The XXX_autogen targets are implemented as utility commands, which
means they always run, even if there weren't any changes.
For the Ninja generator and Qt >= 5.15 we're taking a different
approach: This commit adds custom commands that create
XXX_autogen/timestamp files. Those custom commands have a depfile
assigned that is generated from the depfiles that were created by moc.
The XXX_autogen targets merely wrap the XXX_autogen/timestamp custom
commands.
Fixes: #18749
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
In Qt version 5.15.0 moc learned to output the dependencies
of the generated file.
This commit enhances JobCompileMocT to read the dependency file
written by moc. The dependencies are stored in the same cache that's
used for the dependencies determined by dependency filters.
The dependency filter functionality is turned off if moc's dependency
output feature is used.
Fixes: #17750
Fixes: #19058
|
|/ |
|
| |
|
| |
|
| |
|
|
|
|
| |
Also make some tweaks to the documentation.
|
|\
| |
| |
| |
| |
| |
| | |
c7ac13e8ed CUDA: Mult-Config Ninja generator now supports CUDA
Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !4187
|
| | |
|
|/ |
|
|
|
|
|
|
|
|
|
|
|
| |
Many users will want to use the Ninja Multi-Config generator like a
traditional Visual Studio-style multi-config generator, which doesn't
mix configurations - custom commands are built using target executables
of the same configuration the command is for. We do not want to force
these people to generate an N*N build matrix when they only need N*1,
especially if they have lots of targets. Add a new variable,
CMAKE_NINJA_CROSS_CONFIG_ENABLE, to opt-in to the cross-config build
matrix.
|
|
|