- Jul 20, 2021
-
-
Brad King 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
-
- 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
-
- Jul 15, 2021
-
-
Brad King authored
In particular, update to toolset `v143`. Fixes: #22339
-
- Jul 14, 2021
-
-
Brad King authored
-
- Jul 13, 2021
-
-
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
-
- Jul 12, 2021
-
-
Kyle Edwards authored
Fixes: #22106
-
- Jul 08, 2021
-
-
Brad King authored
-
- Jul 06, 2021
-
-
Kyle Edwards authored
Fixes: #22389
-
Gregor Jasny authored
With Xcode 13 the key to suppress the check has changed. Tested with Xcode 12.5 and 13.0-beta2.
-
- Jul 02, 2021
-
-
Even though Makefile generators pass source files and include directories by absolute path to the compiler, the compiler may generate depfile paths relative to the current working directory. For example, `ccache` with `CCACHE_BASEDIR` may transform paths this way. When reading a depfile, convert relative dependencies to absolute paths before placing them in `compiler_depend.make`, which is later evaluated in the top-level build directory. Fixes: #22364
-
- Jun 30, 2021
-
-
Brad King authored
-
- Jun 29, 2021
-
-
Brad King authored
Refactoring in commit 7f506b95 (cmGeneratorTarget: Refactor link item lookup, 2021-05-26, v3.21.0-rc1~103^2~4) accidentally dropped the persistent lookup scope tracking across multiple items that was added by commit f0e67da0 (target_link_libraries: Fix out-of-dir linking of a list of targets, 2020-01-14, v3.17.0-rc1~149^2). This broke a transitive out-of-dir linking case not covered by our test suite. Restore the scope tracking and add a test case. Fixes: #22363
-
Brad King authored
In commit 4ea3a886 (MSVC: Add support for targeting ARM64EC, 2020-12-30, v3.20.0-rc1~121^2) the `ARM64EC` platform was accidentally added to the list for VS 15 (2017) instead of VS 16 (2019). Its omission from the list of platforms was then repeated for VS 17 (2022). Issue: #21724
-
Marc Chevrier authored
Fixes: #22353
-
- Jun 25, 2021
-
-
Brad King authored
Visual Studio 17 2022 is now a 64-bit native application. It places the 64-bit `MSBuild.exe` in the `PATH` of VS command prompts, so prefer it for this version and above. This was previously attempted for older VS versions, but reverted by commit f3cedf38 (VS: Revert "Use MSBuild matching toolset host architecture", 2019-03-12, v3.14.0~1^2). For now, do not use the 64-bit MSBuild for VS 16 and below. Fixes: #18219
-
Brad King authored
Fixes: #22339
-
Move `-Wl,--no-as-needed` from the `<FLAGS>` placeholder to `<LINK_FLAGS>`, as it is in the Makefile generators. Fixes: #22342
-
- Jun 23, 2021
-
-
Brad King authored
-
- Jun 21, 2021
-
-
Brad King authored
-
- Jun 17, 2021
-
-
On VS 16.10 Preview 2 or above, generate `UseUtf8Encoding` instead of `StdOutEncoding=UTF-8` in `.vcxproj` files. Fixes: #22032
-
Brad King authored
-
Brad King authored
Since commit 887e9df0 (VS: Update v142 CL flag table for VS 16.10, 2021-06-04) we map several `/external:*` flags to their corresponding `.vcxproj` elements. These elements were added to `cl.xml` in VS 16.10, so filter them out in older VS versions. Add a field to the json flag table format to specify the minimum version of VS needed for a given mapping. Issue: #22308
-
Brad King authored
This makes the values more readable.
-
Kitware Robot authored
-
- Jun 16, 2021
-
-
Brad King authored
Since commit 9054cd05 (VS: Add flag table entries for '/external:W*' flags in VS 16.10, 2021-05-28, v3.20.4~10^2) we map flags to the `ExternalWarningLevel` element. VS 16.9 does not support that element, but its `cl` compiler does support the `/external:W*` flags. Filter out the flag table entry on older VS versions. Fixes: #22308
-
Brad King authored
Port from `cmGlobalVisualStudioVersionedGenerator`.
-
Brad King authored
-
Brad King authored
Since commit 9054cd05 (VS: Add flag table entries for '/external:W*' flags in VS 16.10, 2021-05-28, v3.20.4~10^2) we map flags to the `ExternalWarningLevel` element. VS 16.9 does not support that element, but its `cl` compiler does support the `/external:W*` flags. Filter out the flag table entry on older VS versions. Fixes: #22308
-
Brad King authored
Port from `cmGlobalVisualStudioVersionedGenerator`.
-
Brad King authored
-
Kyle Edwards authored
Fixes: #22310
-
Kitware Robot authored
-
- Jun 15, 2021
-
-
Brad King authored
When scanning Fortran dependencies, we know the file path at which a provided module file is written. Store it in the `compiled-module-path` field as specified by P1689R4. Our collator in `cmake_ninja_dyndep` no longer needs to assume that the module file path can be derived from the logical module name. In the future, the Fortran dependency scanning may be done by the compiler itself, in which case it will provide the value of `compiled-module-path`.
-
Brad King authored
Read and write the `compiled-module-path` field only when explicitly known. Move the assumption that the `compiled-module-path` can be derived from the logical module name from the scandep parser to the `cmake_ninja_dyndep` helper.
-
Brad King authored
-
Kitware Robot authored
-
- Jun 14, 2021
-
-
Brad King authored
When running the module dependencies scan tool for for a language that does not compile the preprocessed output, we do not actually put the preprocessed output in the build graph. However, the value of `CMAKE_EXPERIMENTAL_<LANG>_SCANDEP_SOURCE` may reference the placeholder for the preprocessed source. Populate the placeholder to keep the file out of the way. In particular, do not clobber the `.ddi` file.
-
Brad King authored
Use the `compilePP` variable directly rather than relying on callers to make `compilePP == !ppFileName.empty()`.
-