summaryrefslogtreecommitdiffstats
path: root/Source
Commit message (Collapse)AuthorAgeFilesLines
* CMP0126: Add control for warningsMarc Chevrier2021-06-292-5/+22
| | | | Fixes: #22353
* Merge topic 'vs2022' into release-3.21Brad King2021-06-288-2/+137
|\ | | | | | | | | | | | | | | | | | | 93c718791e VS: Use 64-bit MSBuild in VS 2022 c46b265839 VS: Add Visual Studio 17 2022 generator b610b7a35c VS: Update v142 CL flag table for VS 17.0 Preview 1 43375c6418 Help: Remove unnecessary Sphinx versionadded markup in VS toolset selection Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !6268
| * VS: Use 64-bit MSBuild in VS 2022Brad King2021-06-251-0/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | 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 f3cedf381e (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
| * VS: Add Visual Studio 17 2022 generatorBrad King2021-06-258-2/+131
| | | | | | | | Fixes: #22339
* | Ninja: Fix LINK_WHAT_YOU_USE link flag placementĐoàn Trần Công Danh2021-06-251-6/+3
|/ | | | | | | Move `-Wl,--no-as-needed` from the `<FLAGS>` placeholder to `<LINK_FLAGS>`, as it is in the Makefile generators. Fixes: #22342
* CMake 3.21.0-rc1v3.21.0-rc1Brad King2021-06-231-1/+1
|
* Merge topic 'vs-utf-8' into release-3.21Brad King2021-06-184-1/+22
|\ | | | | | | | | | | | | 9ba99a1203 VS: Add support for Utf8Enconding when using VS 16.10+ Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !6238
| * VS: Add support for Utf8Enconding when using VS 16.10+Gustavo Varo2021-06-174-1/+22
| | | | | | | | | | | | | | On VS 16.10 Preview 2 or above, generate `UseUtf8Encoding` instead of `StdOutEncoding=UTF-8` in `.vcxproj` files. Fixes: #22032
* | Merge topic 'vs-flag-tables' into release-3.21Brad King2021-06-186-30/+28
|\ \ | |/ | | | | | | | | | | | | b0f830ced6 VS: Do not apply any '/external:*' flag table mapping on VS < 16.10 3fd65f5ca6 VS: Compare VS instance versions as strings Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !6241
| * VS: Do not apply any '/external:*' flag table mapping on VS < 16.10Brad King2021-06-171-8/+10
| | | | | | | | | | | | | | | | | | | | | | Since commit 887e9df0c7 (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
| * VS: Compare VS instance versions as stringsBrad King2021-06-176-25/+21
| | | | | | | | This makes the values more readable.
* | Begin 3.21 release versioningBrad King2021-06-171-3/+3
|/
* Merge topic 'fix-flow-control-override'Brad King2021-06-173-8/+17
|\ | | | | | | | | | | | | c017098d4d CMake: Allow override of unexpected non-flow-control commands Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !6232
| * CMake: Allow override of unexpected non-flow-control commandsKyle Edwards2021-06-163-8/+17
| | | | | | | | Fixes: #22310
| * CMake 3.20.4v3.20.4Brad King2021-06-141-1/+1
| |
* | Merge topic 'vs-map-external-warnings'Brad King2021-06-174-10/+31
|\ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | ab3830401f Merge branch 'backport-3.20-vs-map-external-warnings' e4ca525d84 VS: Do not apply '/external:W*' flag table mapping on VS < 16.10 aabc3ca47d cmGlobalVisualStudio10Generator: Adopt GetVSInstanceVersion method e66a7fe07b cmGlobalVisualStudio10Generator: Move static functions to anonymous namespace 947f0c8b81 VS: Do not apply '/external:W*' flag table mapping on VS < 16.10 e59a208b69 cmGlobalVisualStudio10Generator: Adopt GetVSInstanceVersion method d6d4af0ec3 cmGlobalVisualStudio10Generator: Move static functions to anonymous namespace Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !6233
| * | VS: Do not apply '/external:W*' flag table mapping on VS < 16.10Brad King2021-06-161-2/+11
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Since commit 9054cd05e6 (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
| * | cmGlobalVisualStudio10Generator: Adopt GetVSInstanceVersion methodBrad King2021-06-163-7/+17
| | | | | | | | | | | | Port from `cmGlobalVisualStudioVersionedGenerator`.
| * | cmGlobalVisualStudio10Generator: Move static functions to anonymous namespaceBrad King2021-06-161-2/+4
| | |
* | | CMake Nightly Date StampKitware Robot2021-06-171-1/+1
|/ /
* | Merge topic 'scandep-format'Brad King2021-06-162-17/+39
|\ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | a35d121276 Ninja: Populate P1689R4 compiled-module-path field for Fortran 10b2e53469 cmScanDepFormat: Remove Fortran-specific compiled-module-path logic 2b9890e9b9 cmScanDepFormat: Avoid writing lookup-method with default value Acked-by: Kitware Robot <kwrobot@kitware.com> Acked-by: Ben Boeckel <ben.boeckel@kitware.com> Merge-request: !6228
| * | Ninja: Populate P1689R4 compiled-module-path field for FortranBrad King2021-06-151-0/+21
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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`.
| * | cmScanDepFormat: Remove Fortran-specific compiled-module-path logicBrad King2021-06-152-13/+14
| | | | | | | | | | | | | | | | | | | | | 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.
| * | cmScanDepFormat: Avoid writing lookup-method with default valueBrad King2021-06-151-4/+4
| | |
* | | CMake Nightly Date StampKitware Robot2021-06-161-1/+1
|/ /
* | Merge topic 'ninja-scandep-preprocessor-output'Brad King2021-06-151-12/+14
|\ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | 312ced6547 cmNinjaTargetGenerator: Fix scan rule PREPROCESSED_SOURCE placeholder 1dd9c4ab6f cmNinjaTargetGenerator: Clarify GetScanBuildStatement condition d94b23885a cmNinjaTargetGenerator: Simplify scan rule response file selection Acked-by: Kitware Robot <kwrobot@kitware.com> Tested-by: Ben Boeckel <ben.boeckel@kitware.com> Merge-request: !6227
| * | cmNinjaTargetGenerator: Fix scan rule PREPROCESSED_SOURCE placeholderBrad King2021-06-141-6/+12
| | | | | | | | | | | | | | | | | | | | | | | | | | | 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.
| * | cmNinjaTargetGenerator: Clarify GetScanBuildStatement conditionBrad King2021-06-141-1/+1
| | | | | | | | | | | | | | | Use the `compilePP` variable directly rather than relying on callers to make `compilePP == !ppFileName.empty()`.
| * | cmNinjaTargetGenerator: Simplify scan rule response file selectionBrad King2021-06-141-5/+1
| | | | | | | | | | | | | | | | | | Since commit 33a8e0bb09 (cmNinjaTargetGenerator: Simplify scan rule depfile selection, 2020-11-06, v3.20.0-rc1~516^2~1), the `$out` of the scan rule always matches our `.rsp` file selection, so use `$out.rsp`.
* | | CMake Nightly Date StampKitware Robot2021-06-151-1/+1
|/ /
* | Merge topic 'objc-std-17-23'Brad King2021-06-141-2/+3
|\ \ | | | | | | | | | | | | | | | | | | | | | e8dc95ae1e ObjectiveC: Add C17 and C23 support Acked-by: Kitware Robot <kwrobot@kitware.com> Reviewed-by: Raul Tambre <raul@tambre.ee> Merge-request: !6219
| * | ObjectiveC: Add C17 and C23 supportGregor Jasny2021-06-111-2/+3
| | | | | | | | | | | | Issue: #22297
* | | Merge topic 'fileapi-link-fragments'Brad King2021-06-141-4/+5
|\ \ \ | | |/ | |/| | | | | | | | | | | | | 68bbec66e0 fileapi: Fix codemodel-v2 link command fragment relative paths Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !6220
| * | fileapi: Fix codemodel-v2 link command fragment relative pathsBrad King2021-06-111-4/+5
| | | | | | | | | | | | | | | | | | | | | Use the same `cmLinkLineComputer` subclass as the generator does. This affects the base directory from which relative paths are computed. Fixes: #22301
| * | Merge topic 'presets-build-fixes' into release-3.20Brad King2021-06-092-8/+13
| |\ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 534c40e6d8 presets: Fix buildPreset "targets" not allowing a single string 5d67632813 presets: Fix buildPreset "jobs" 93e396b402 presets: Fix buildPreset "jobs" field test case Acked-by: Kitware Robot <kwrobot@kitware.com> Acked-by: Kyle Edwards <kyle.edwards@kitware.com> Merge-request: !6190
* | | | CMake Nightly Date StampKitware Robot2021-06-141-1/+1
| | | |
* | | | CMake Nightly Date StampKitware Robot2021-06-131-1/+1
| | | |
* | | | CMake Nightly Date StampKitware Robot2021-06-121-1/+1
| | | |
* | | | Merge topic 'p1689r4-updates'Brad King2021-06-112-56/+185
|\ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | ccc0466fc5 cmScanDepFormat: P1689R4: Implement source-path related fields 3e5b609547 cmScanDepFormat: P1689R4: Make work-directory optional aab9a5fc3e cmScanDepFormat: P1689R4: Factor out primary-output field b0a8fa959c cmScanDepFormat: P1689R4: Diagnose invalid provides/requires json type 82c867ad85 cmScanDepFormat: P1689R4: Flatten future-compile members into parent Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !6202
| * | | | cmScanDepFormat: P1689R4: Implement source-path related fieldsBen Boeckel2021-06-102-3/+114
| | | | |
| * | | | cmScanDepFormat: P1689R4: Make work-directory optionalBen Boeckel2021-06-091-4/+10
| | | | |
| * | | | cmScanDepFormat: P1689R4: Factor out primary-output fieldBen Boeckel2021-06-092-9/+17
| | | | |
| * | | | cmScanDepFormat: P1689R4: Diagnose invalid provides/requires json typeBen Boeckel2021-06-091-30/+40
| | | | |
| * | | | cmScanDepFormat: P1689R4: Flatten future-compile members into parentBen Boeckel2021-06-091-54/+48
| | | | |
* | | | | Merge topic 'dir-IMPORTED_TARGETS'Brad King2021-06-115-0/+15
|\ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | e13704ce72 Add directory property to list imported targets ea6d338ea1 cmState: Record imported target names in each directory Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !6215
| * | | | | Add directory property to list imported targetsBrad King2021-06-101-0/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Model the change after commit cbca65826c (Add directory property to list buildsystem targets, 2016-09-19, v3.7.0-rc1~79^2~1). Fixes: #22291
| * | | | | cmState: Record imported target names in each directoryBrad King2021-06-105-0/+9
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Model the change after commit 089868a244 (cmState: Record buildsystem target names in each directory, 2016-09-16, v3.7.0-rc1~79^2~3).
* | | | | | CMake Nightly Date StampKitware Robot2021-06-111-1/+1
|/ / / / /
* | | | | Merge topic 'vs-custom-depfile'Brad King2021-06-108-10/+82
|\ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 526e2ef71c VS: Add support for add_custom_command DEPFILE 794ad78abb Help: Generalize release note filename for add_custom_command DEPFILE 7291f31254 cmTransformDepfile: Add support for MSBuild AdditionalInputs format a6de8ec51b cmTransformDepfile: Make directory for transformed depfile automatically Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !6206
| * | | | | VS: Add support for add_custom_command DEPFILEBrad King2021-06-093-7/+40
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Transform the depfile into MSBuild `AdditionalInputs` content. Add MSBuild Targets to update `AdditionalInputs` and the `.tlog` files for future builds without actually modifying the `.vcxproj` file. Fixes: #20286