Commit Graph

53499 Commits

Author SHA1 Message Date
Brad King d59b76f7b4 Help: Drop development topic notes to prepare release
Release versions do not have the development topic section of
the CMake Release Notes index page.
2021-06-17 13:14:21 -04:00
Brad King 8850f6e23f Merge topic 'doc-3.21-relnotes'
f119fbeec5 Help: Update Sphinx versionadded directives for 3.21 release
45acb61432 Help: Organize and revise 3.21 release notes
046aee0441 Help: Consolidate 3.21 release notes

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !6226
2021-06-17 13:09:45 -04:00
Brad King 0b394894b9 Merge topic 'help-tutorial-separate-pages'
9c703ff741 Tutorial: Add infrastructure to preserve old links when renaming steps
9e5bbb69ea Tutorial: Add captions for code blocks
fe60154fe8 Tutorial: Small formatting improvements
25dde20cc5 Tutorial: Fix links after splitting steps
d1c3e7e78a Tutorial: Split steps into separate files
13fdb26323 Tutorial: Break up intro paragraph
8406d4c1d1 Utilities/Sphinx: Index guide section documents for cross-referencing

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Juan Ramos <juanr.dev+gitlab@protonmail.com>
Merge-request: !6217
2021-06-17 13:08:29 -04:00
Brad King 9c703ff741 Tutorial: Add infrastructure to preserve old links when renaming steps 2021-06-17 12:10:14 -04:00
Josef Angstenberger 9e5bbb69ea Tutorial: Add captions for code blocks 2021-06-17 11:57:56 -04:00
Josef Angstenberger fe60154fe8 Tutorial: Small formatting improvements
- Use inline literals for all code fragments and names.
- Add missing console code-blocks.
- Always use c++, not c as code language.
2021-06-17 11:57:56 -04:00
Josef Angstenberger 25dde20cc5 Tutorial: Fix links after splitting steps 2021-06-17 11:55:18 -04:00
Josef Angstenberger d1c3e7e78a Tutorial: Split steps into separate files
Fixes: #21737
2021-06-17 11:53:55 -04:00
Brad King 13fdb26323 Tutorial: Break up intro paragraph 2021-06-17 10:33:07 -04:00
Brad King 8406d4c1d1 Utilities/Sphinx: Index guide section documents for cross-referencing
Extend the change from commit 6185265800 (Utilities/Sphinx: Index
guide-level documents for cross-referencing, 2019-12-06,
v3.17.0-rc1~181^2~1) to name guide documents other than the top level
using their docname instead of their title.  This will allow them to be
cross-referenced by a stable name even if their title changes.
2021-06-17 09:55:56 -04:00
Brad King f119fbeec5 Help: Update Sphinx versionadded directives for 3.21 release
Run the script:

    Utilities/Sphinx/update_versions.py --since v3.20.0 --overwrite

Manually remove directives generated in documents for long-existing
features for which documentation was added.
2021-06-17 09:48:54 -04:00
Brad King 45acb61432 Help: Organize and revise 3.21 release notes
Add section headers similar to the 3.20 release notes and move each
individual bullet into an appropriate section.  Revise a few bullets.
2021-06-17 08:47:49 -04:00
Brad King c92595be1d Merge topic 'c_17_23-AppleClang'
b642022046 AppleClang: Add flags for C17 and C23

Acked-by: Kitware Robot <kwrobot@kitware.com>
Reviewed-by: Raul Tambre <raul@tambre.ee>
Merge-request: !6231
2021-06-17 06:49:15 -04:00
Brad King 07ae952d88 Merge branch 'release-3.20' 2021-06-17 06:47:42 -04:00
Brad King 1aa16906e6 Merge topic 'fix-flow-control-override'
c017098d4d CMake: Allow override of unexpected non-flow-control commands

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !6232
2021-06-17 06:47:42 -04:00
Brad King acd82e4690 Merge topic 'fix-flow-control-override' into release-3.20
c017098d4d CMake: Allow override of unexpected non-flow-control commands

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !6232
2021-06-17 06:47:42 -04:00
Brad King 3cb0cb9b09 Merge branch 'release-3.20' 2021-06-17 06:45:58 -04:00
Brad King cd73f3736b Merge topic 'vs-map-external-warnings' into release-3.20
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
2021-06-17 06:45:57 -04:00
Brad King e05cf2d2de Merge topic 'vs-map-external-warnings'
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
2021-06-17 06:45:57 -04:00
Brad King 54860f1f6b Merge topic 'ci-clang'
886a97cbe7 gitlab-ci: add job to test with clang-7 and ninja on debian10

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Ben Boeckel <ben.boeckel@kitware.com>
Merge-request: !6237
2021-06-17 06:36:32 -04:00
Brad King 4941bf5995 Merge topic 'ci-cuda'
f7af01efb6 gitlab-ci: add job testing cuda10.2 with clang 11
9548b059c0 ci: add clang-11 to cuda10.2 base image

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Ben Boeckel <ben.boeckel@kitware.com>
Merge-request: !6236
2021-06-17 06:35:39 -04:00
Kitware Robot e80f56a7e5 CMake Nightly Date Stamp 2021-06-17 00:03:04 -04:00
Brad King b642022046 AppleClang: Add flags for C17 and C23
Follow up commit 72f4984cdc (Clang: C23 support, 2021-02-07).
2021-06-16 15:50:55 -04:00
Brad King 886a97cbe7 gitlab-ci: add job to test with clang-7 and ninja on debian10
In commit 7e5e558d0f (gitlab-ci: add job to test with clang-7 on
debian10, 2021-06-04) we added coverage of clang-7 with the Unix
Makefiles generator.  Do the same for Ninja.
2021-06-16 14:57:34 -04:00
Brad King f7af01efb6 gitlab-ci: add job testing cuda10.2 with clang 11 2021-06-16 14:25:38 -04:00
Brad King 9548b059c0 ci: add clang-11 to cuda10.2 base image 2021-06-16 14:18:09 -04:00
Brad King ab3830401f Merge branch 'backport-3.20-vs-map-external-warnings' 2021-06-16 13:34:48 -04:00
Brad King e4ca525d84 VS: Do not apply '/external:W*' flag table mapping on VS < 16.10
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
2021-06-16 13:24:32 -04:00
Brad King aabc3ca47d cmGlobalVisualStudio10Generator: Adopt GetVSInstanceVersion method
Port from `cmGlobalVisualStudioVersionedGenerator`.
2021-06-16 13:22:32 -04:00
Brad King e66a7fe07b cmGlobalVisualStudio10Generator: Move static functions to anonymous namespace 2021-06-16 13:20:44 -04:00
Brad King 947f0c8b81 VS: Do not apply '/external:W*' flag table mapping on VS < 16.10
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
2021-06-16 11:08:15 -04:00
Brad King e59a208b69 cmGlobalVisualStudio10Generator: Adopt GetVSInstanceVersion method
Port from `cmGlobalVisualStudioVersionedGenerator`.
2021-06-16 10:57:15 -04:00
Brad King d6d4af0ec3 cmGlobalVisualStudio10Generator: Move static functions to anonymous namespace 2021-06-16 10:57:14 -04:00
Kyle Edwards c017098d4d CMake: Allow override of unexpected non-flow-control commands
Fixes: #22310
2021-06-16 10:39:39 -04:00
Brad King 4371a25d1f Merge topic 'FindLATEX'
d3274e0a6f FindLATEX: Search user-local MiKTeX locations

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !6230
2021-06-16 08:28:39 -04:00
Steven A White d3274e0a6f FindLATEX: Search user-local MiKTeX locations
I've noticed the default installer for MikTex does not prompt for
escalation.  So, many installations I find do not have registry entries.
This should cover finding it in the current defaults.
2021-06-16 08:25:34 -04:00
Brad King a9fbc4959a Merge topic 'scandep-format'
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
2021-06-16 08:19:28 -04:00
Brad King 89a1aa8412 Merge branch 'release-3.20' 2021-06-16 08:14:42 -04:00
Brad King 7d6a71ac85 Merge topic 'ci-xcode-12.5'
9c98878451 gitlab-ci: update macOS jobs to use Xcode 12.5

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !6229
2021-06-16 08:14:42 -04:00
Brad King a9ff600a50 Merge topic 'ci-xcode-12.5' into release-3.20
9c98878451 gitlab-ci: update macOS jobs to use Xcode 12.5

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !6229
2021-06-16 08:14:41 -04:00
Kitware Robot 24399a8d84 CMake Nightly Date Stamp 2021-06-16 00:01:09 -04:00
Brad King 9c98878451 gitlab-ci: update macOS jobs to use Xcode 12.5 2021-06-15 15:42:08 -04:00
Brad King a35d121276 Ninja: Populate P1689R4 compiled-module-path field for Fortran
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`.
2021-06-15 09:11:06 -04:00
Brad King 10b2e53469 cmScanDepFormat: Remove Fortran-specific compiled-module-path logic
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.
2021-06-15 09:09:28 -04:00
Brad King 2b9890e9b9 cmScanDepFormat: Avoid writing lookup-method with default value 2021-06-15 08:48:05 -04:00
Brad King 998fa490f4 Merge topic 'ninja-scandep-preprocessor-output'
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
2021-06-15 08:40:29 -04:00
Brad King 9a31298ed6 Merge topic 'CMakeDependentOption'
0665d9092e CMakeDependentOption: Allow parentheses in the depends string

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !6225
2021-06-15 08:39:37 -04:00
Kitware Robot b302dd776c CMake Nightly Date Stamp 2021-06-15 00:01:25 -04:00
Brad King 312ced6547 cmNinjaTargetGenerator: Fix scan rule PREPROCESSED_SOURCE placeholder
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.
2021-06-14 15:15:39 -04:00
Brad King 1dd9c4ab6f cmNinjaTargetGenerator: Clarify GetScanBuildStatement condition
Use the `compilePP` variable directly rather than relying on callers
to make `compilePP == !ppFileName.empty()`.
2021-06-14 15:11:20 -04:00