- Jul 27, 2021
-
-
Brad King authored
-
Kitware Robot authored
-
- Jul 26, 2021
-
-
Kitware Robot authored
-
- Jul 25, 2021
-
-
Kitware Robot authored
-
- Jul 24, 2021
-
-
Kitware Robot authored
-
- Jul 23, 2021
-
-
Jörg Bornemann authored
For an AUTOMOC'ed target foo, when depfiles are used, there are the following dependencies: foo_autogen -> foo_autogen/timestamp foo_autogen/mocs_compilation.cpp -> foo_autogen/timestamp The first is used to trigger AUTOGEN. The second erroneously triggers a recompilation of mocs_compilation.cpp when any source file of target foo is touched. Remove the latter dependency and replace it with an order-only dependency from foo_autogen/mocs_compilation.cpp to foo_autogen_timestamp_deps. That is achieved by making mocs_compilation.cpp or its per-configuration variants byproduct(s) of the timestamp file. Fixes: #22338
-
Alexey Edelev authored
We could not rely on .ui files when generating the ninja rules for the generated UI header files. .ui files might be added to the target sources but never processed by AUTOUIC afterward, since UI header files are never included in a source code. Instead of adding dependency rules based on the .ui files, this approach scans non-generated source files for includes of the UI header files, as AUTOUIC does. This gives the consistent set of UI header files at configure time, that could be used to generate byproducts rules for the AUTOUIC. Also, the path to the generated UI header file depends not on the .ui file location but on the include line is used in source files. Fixes: #16776
-
Kitware Robot authored
-
- Jul 22, 2021
-
-
Eugene Shalygin authored
Replace cmTargetExport with const cmGeneratorTarget to allow recursive processing of exported targets and their link dependencies.
-
Eugene Shalygin authored
Because of this property in the cmTargetExport struct, exporting targets is not uniform: top-level ones have to be dealt with via the cmTargetExport objects, while all linked ones are cmGeneratorTarget objects. Let's pass this additional includedirectories via a special target property making handling exported targets uniform.
-
Kitware Robot authored
-
- Jul 21, 2021
-
-
Brad King authored
Since commit 2ae72ef7 (Xcode: Enable multi-arch TARGET_OBJECTS genex in [INTERFACE_]LINK_LIBRARIES, 2021-05-26, v3.21.0-rc1~126^2) the TARGET_OBJECTS genex, when referenced for linking, is now evaluated with EvaluateForBuildsystem enabled. This causes the object file paths to be computed with a buildsystem-specific placeholder for the configuration. This is normally fine because the placeholder will be evaluated by the native buildsystem tool using the proper configuration. However, the Ninja Multi-Config generator's `${CONFIGURATION}` placeholder may not have the correct value for cross-config object files. Switch back to using the per-config location of each object file for this generator. Fixes: #22436
-
Kitware Robot authored
-
- Jul 20, 2021
-
-
Brad King authored
-
Brad King authored
Since commit 0a0a0f8a (cmMessenger: Color messages to terminal by type, 2021-05-18, v3.21.0-rc1~146^2) the message output no longer goes through our custom streambuf on Windows that converts output encoding. This can cause messages to be printed with the wrong encoding in a Windows Console. It also causes messages to have a mix of LF and CRLF newlines because `stderr` converts LF to CRLF but our custom streambuf does not. Revert to using just `cerr` for messages on Windows. Another approach will be needed to achieve color output on Windows later. Fixes: #22444
-
Brad King authored
Set policy CMP0126 to the value used in the calling project. It may affect toolchain file behavior.
-
Kitware Robot authored
-
- Jul 19, 2021
-
-
Once the generated UI headers are created by UIC they also are involved into processing in next run on ninja. Autogen adds `ui_*.h` files to the deps file `ui_*.h` and this cause timestamp start depend on `ui_*.h`. Meanwhile `ui_*.h` depend on timestamp because of the explicit rules added by commit 1265c65b (AUTOUIC: Collect ui header files for Ninja generator, 2021-02-18, v3.21.0-rc1~600^2). Avoid adding `ui_*.h` to deps file at second ninja run. Fixes: #16776
-
This aligns `find_library` with the documentation that states it can be called from script mode. This is done by infering the proper prefix and suffix values when `find_library` is called when the `CMAKE_FIND_LIBRARY*` are not set. This also means that `find_library` won't produce obscure error messages about unset definitions. Fixes: #22027
-
Kitware Robot authored
-
- Jul 18, 2021
-
-
Kitware Robot authored
-
- Jul 17, 2021
-
-
Kitware Robot authored
-
- Jul 16, 2021
-
-
Kyle Edwards authored
When resolving binaryDir into a full path from a relative path, we forgot to check if binaryDir is altogether empty, causing empty binaryDir's to resolve to the source directory. Fix this. Fixes: #22434
-
Kitware Robot authored
-
- Jul 15, 2021
-
-
Kitware Robot authored
- Jul 14, 2021
-
-
Brad King authored
-
Kitware Robot authored
-
- Jul 13, 2021
-
-
Brad King authored
-
Brad King authored
-
Brad King authored
-
Brad King authored
-
Alex Turbov authored
-
Brad King authored
Documentation added by * commit 4f4f2028 (Help: Add documentation for buildPresets and testPresets, 2021-01-13, v3.20.0-rc1~51^2~7) * commit 676ecf0d (cmake-presets: Add build and test presets, 2020-12-14, v3.20.0-rc1~51^2~6) used square brackets in the `cmake --build` signature to indicate non-optional alternatives, which is not a typical convention. A common convention is to use parentheses instead, but in this case it is probably clearer to list the two signatures separately. Fixes: #22413
-
-
-
Also, fix incorrect `retval` accumulation.
-
Fix: #19735
-
-
Also, return early to reduce nesting level of the function body.
-