summaryrefslogtreecommitdiffstats
path: root/Utilities
Commit message (Collapse)AuthorAgeFilesLines
...
| * Utilities/Sphinx: Improve word wrap of signaturesMatthew Woehlke2023-03-132-12/+76
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Implement logic to support several styles of parsing in the new signature directive that control where line breaks are allowed in a signature. The default is 'smart', which forbids breaks inside of square- or angle-brackets. The 'verbatim' option forbids all breaks. In all cases, breaks are always allowed where a newline appears in the source. This seems to Just Work for most writers, but HTML needs some special handling that is accomplished by a new CSS rule and assigning the 'nbsp' class to spaces that are not allowed to break. (ROFF's line wrapping is rather unfortunate here, as it prefers splitting and hyphenating words rather than breaking at a space.)
* | Utilities/Sphinx: Allow explicit target for genexMatthew Woehlke2023-03-131-5/+29
|/ | | | | | | | | | | | | | | | Split the genex directive into its own class, allowing a slight simplification of CMakeObject. Add ability to specify an explicit target name for the same. Use this to provide a target for the `$<TARGET_PROPERTY:prop>` generator expression which is otherwise missing one (due to overlap with `$<TARGET_PROPERTY:tgt,prop>`). With this one can write: :genex:`$<TARGET_PROPERTY:prop> <TARGET_PROPERTY:prop>` to link the second variant. Fixes: #24573
* Utilities/Sphinx: Make signatures linkableMatthew Woehlke2023-03-091-10/+29
| | | | | | | | | | | Add signatures to the collection of observed objects (which can be referenced elsewhere). Don't automatically strip parameters from a :command: reference, as these may now link signatures. (Do, however, munge them into 'text <ref>' form if they aren't already, as not doing so adds an extra '()' for some reason.) Correspondingly, change xref resolution to try to match 'command' when a ref like 'command(args)' is not matched, so that existing links to commands that have not been converted to use the new signature directive don't immediately break.
* Utilities/Sphinx: Refactor Sphinx reference recordingMatthew Woehlke2023-03-081-18/+39
| | | | | | | | | Rewrite how we record objects in our Sphinx extensions to more closely conform to how other domains do likewise, and to store more information than was previously being stored. This is a first step toward being able to record and reference signatures.
* Merge topic 'improve-doc-signatures'Brad King2023-03-072-15/+106
|\ | | | | | | | | | | | | | | | | | | | | 533ebb072b Help: Use signature directive for string command cd33f461a6 Help: Use signature directive for cmake_language command 74e3c1d313 Utilities/Sphinx: Add a directive to document command signatures c09b760484 Utilities/Sphinx: Drop commented-out code from cmake domain impl 6e85ad7f8b Help/dev: Add per-directive sections in CMake Documentation Guide Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !8243
| * Utilities/Sphinx: Add a directive to document command signaturesMatthew Woehlke2023-03-032-3/+105
| | | | | | | | | | | | | | Add a `signature` directive to offer a CMake version of Sphinx's `function` directive, similar to that found in other domains (py, cpp, etc.). Like others, this takes one or more signatures as arguments and creates dt/dd nodes from the signatures and the directive contents.
| * Utilities/Sphinx: Drop commented-out code from cmake domain implBrad King2023-02-241-12/+1
| | | | | | | | Inspired-by: Alex Turbov <i.zaufi@gmail.com>
* | Utilities: Update hard-coded try_compile results for curl 7.88.1Brad King2023-02-211-0/+1
| |
* | Merge branch 'upstream-curl' into update-curlBrad King2023-02-21360-9802/+14331
| | | | | | | | | | * upstream-curl: curl 2023-02-20 (046209e5)
* | curl: Update script to get curl 7.88.1Brad King2023-02-211-1/+1
|/
* Merge topic 'ci-linkcheck'Brad King2023-02-171-0/+8
|\ | | | | | | | | | | | | | | | | | | 0787148785 gitlab-ci: Report sphinx logs as artifacts of its lint job 14506f49a2 Utilities/Sphinx: Configure linkcheck allowed permanent redirects 3c5b34af9d Help: Replace links with their permanent redirects 1004be159f FindCUDAToolkit: Replace broken links to NVIDIA documentation Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !8210
| * Utilities/Sphinx: Configure linkcheck allowed permanent redirectsBrad King2023-02-171-0/+8
| | | | | | | | | | Some permanent redirects are part of the structure of their site to make URLs look nicer. Allow them.
* | Merge topic 'update-nghttp2'Brad King2023-02-175-17/+8
|\ \ | |/ |/| | | | | | | | | | | | | | | | | | | | | | | 5872d9bd4d Merge branch 'upstream-nghttp2' into update-nghttp2 7eee97387a nghttp2 2023-02-13 (be049129) b9221fcc17 nghttp2: Update script to get nghttp2 1.52.0 36d31dc996 Merge branch 'upstream-nghttp2' into update-nghttp2 2355f50277 nghttp2 2022-09-21 (87fef4ab) 1ca53784ca nghttp2: Update import script to fix version header bfca444b92 nghttp2: Drop unused configuration value from build within CMake Acked-by: Kitware Robot <kwrobot@kitware.com> Acked-by: buildbot <buildbot@kitware.com> Merge-request: !8217
| * Merge branch 'upstream-nghttp2' into update-nghttp2Brad King2023-02-163-12/+6
| | | | | | | | | | | | # By nghttp2 upstream * upstream-nghttp2: nghttp2 2023-02-13 (be049129)
| * nghttp2: Update script to get nghttp2 1.52.0Brad King2023-02-161-2/+2
| |
| * Merge branch 'upstream-nghttp2' into update-nghttp2Brad King2023-02-161-2/+2
| | | | | | | | | | | | # By nghttp2 upstream * upstream-nghttp2: nghttp2 2022-09-21 (87fef4ab)
| * nghttp2: Update import script to fix version headerBrad King2023-02-161-2/+2
| | | | | | | | | | | | | | | | | | | | In commit 66c9536775 (nghttp2: Update script to get nghttp2 1.50.0, 2022-10-31, v3.26.0-rc1~455^2~2) we forgot to update the `nghttp2ver.h` replacements to provide the proper `NGHTTP2_VERSION_NUM`. This causes our build of curl to think it is using a different version of nghttp2 than we provide. Fix the version and add a reminder comment. Issue: #24419
| * nghttp2: Drop unused configuration value from build within CMakeBrad King2023-02-161-3/+0
| | | | | | | | | | Since commit 7ce2a682a3 (nghttp2 2022-09-21 (87fef4ab), 2022-09-21, v3.26.0-rc1~455^2~1^2) we do not need `SIZEOF_INT_P`.
* | Merge topic 'curl-macos-tls'Brad King2023-02-101-40/+88
|\ \ | |/ | | | | | | | | | | 0d312728eb curl: Backport upstream fix for SecureTransport on macOS Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !8193
| * curl: Backport upstream fix for SecureTransport on macOSBrad King2023-02-091-40/+88
| | | | | | | | | | | | | | Backport upstream curl commit `16bb32e104d` (sectransp: fix for incomplete read/writes, 2023-01-05) to fix TLS support on macOS. Fixes: #24398
* | Merge topic 'curl-windows-restore-tls1.3'Brad King2023-02-091-7/+0
|\ \ | |/ | | | | | | | | | | | | 8675d8bdb0 curl: Enable schannel TLS 1.3 support on Windows 11 Acked-by: Kitware Robot <kwrobot@kitware.com> Acked-by: buildbot <buildbot@kitware.com> Merge-request: !8184
| * curl: Enable schannel TLS 1.3 support on Windows 11Brad King2023-02-081-7/+0
| | | | | | | | | | | | | | | | | | | | Revert commit c0a4536cec (curl: Disable schannel TLS 1.3 support on Windows 11, 2022-11-09, v3.25.0~13^2). The curl bug it avoided was fixed by upstream curl commit `4f42150d0` (sendf: change Curl_read_plain to wrap Curl_recv_plain , 2022-11-14, curl-7_87_0~129), which we have since recently updating to curl 7.87.0. Issue: #24147
* | Configure CMake itself with policies through CMake 3.25Brad King2023-02-012-2/+2
|/
* Merge topic 'ccg-index-type'Brad King2023-02-011-0/+1
|\ | | | | | | | | | | | | | | | | | | 91a26ce041 cmComputeComponentGraph: use `size_t` for component indices 65c0a64dc5 cmComputeComponentGraph: use a name for "invalid component" 50abdaab93 IWYU: exclude `__decay_and_strip<int>` as well Acked-by: Kitware Robot <kwrobot@kitware.com> Acked-by: buildbot <buildbot@kitware.com> Merge-request: !8128
| * IWYU: exclude `__decay_and_strip<int>` as wellBen Boeckel2023-01-271-0/+1
| |
* | Merge topic 'update-curl'Brad King2023-01-31143-5990/+8210
|\ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 8443dfa946 curl: Work around missing OpenSSL symbol on machine with LCC 1.23 f9f5957884 Merge branch 'upstream-curl' into update-curl dac458ddbf curl 2022-12-21 (c12fb3dd) 39dcf9469d curl: Update script to get curl 7.87.0 b2fe717a49 file: Avoid using deprecated curl progress callback 1cd38de47f ctest: Drop unnecessary use of deprecated CURLOPT_PUT Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !8131
| * | curl: Work around missing OpenSSL symbol on machine with LCC 1.23Brad King2023-01-301-0/+6
| | | | | | | | | | | | | | | | | | | | | On a nightly build using LCC 1.23, OpenSSL 2.0.0 is found but does not seem to have the `X509_STORE_up_ref` symbol used by curl 7.87. Pending further investigation, disable use of the symbol based on the compiler version.
| * | Merge branch 'upstream-curl' into update-curlBrad King2023-01-27141-5989/+8202
| | | | | | | | | | | | | | | * upstream-curl: curl 2022-12-21 (c12fb3dd)
| * | curl: Update script to get curl 7.87.0Brad King2023-01-271-1/+1
| | |
| * | file: Avoid using deprecated curl progress callbackBrad King2023-01-271-0/+1
| |/
* | CMake: add an option to run IWYU in verbose modeBen Boeckel2023-01-271-1/+1
|/ | | | | This helps to diagnose places where IWYU asks to include headers for internal stdlib details.
* Revise C++ coding style using clang-format-15Kitware Robot2023-01-183-26/+22
| | | | | | | | | | | | | | Run the `clang-format.bash` script to update all our C and C++ code to a new style defined by `.clang-format`. Use `clang-format` version 15. * If you reached this commit for a line in `git blame`, re-run the blame operation starting at the parent of this commit to see older history for the content. * See the parent commit for instructions to rebase a change across this style transition commit. Fixes: #24315
* clang-format.bash: update to clang-format-15Brad King2023-01-182-5/+5
| | | | | | | The `.clang-format` configuration needs no changes to make the version 15 format close to what version 6.0 produced before. Issue: #24315
* clang-format.bash: Use generic clang-format attributeBrad King2023-01-182-9/+7
| | | | | | | Specify the clang-format version in the attribute value instead of its name. Issue: #24315
* Merge topic 'fix-cmzlib-crc32-fn-mangling'Brad King2023-01-121-2/+1
|\ | | | | | | | | | | | | 7d92e363a2 zlib: Fix typo in mangling the crc32() function Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !8049
| * zlib: Fix typo in mangling the crc32() functionleha-bot2023-01-111-2/+1
| | | | | | | | | | | | | | | | Fix the mangling of `crc32` by commit 29c578c8fb (zlib: Mangle symbols to avoid conflict with external transitive dependencies, 2022-06-10, v3.24.0-rc1~7^2). Fixes: #24281
* | clang-tidy module: fix offset issue with last string concat operandKyle Edwards2022-12-034-42/+62
| |
* | Merge topic 'rel-win-sign-digest'Brad King2022-11-301-1/+1
|\ \ | |/ | | | | | | | | | | 870f30aacc Utilities/Release: Use explicit digest for Win7-compatible signature Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !7970
| * Utilities/Release: Use explicit digest for Win7-compatible signatureBrad King2022-11-301-1/+1
| | | | | | | | Otherwise `signtool` warns.
* | clang-tidy module: add tests for string concatenation checkSean Orner2022-11-284-0/+186
| |
* | clang-tidy module: add check for string concatenationJoe Blaauboer2022-11-284-0/+218
| | | | | | | | Co-Authored-by: Kyle Edwards <kyle.edwards@kitware.com>
* | clang-tidy module: look for sizeof string literal in cmStrLen() checkKyle Edwards2022-11-184-4/+90
| |
* | clang-tidy module: add test for #pragma once checkSean Orner2022-11-1710-0/+79
| |
* | clang-tidy module: add #pragma once checkIgor-Mikhail-Valentin Glebov2022-11-174-0/+389
| | | | | | | | Co-Authored-by: Kyle Edwards <kyle.edwards@kitware.com>
* | clang-tidy module: allow header files in test casesKyle Edwards2022-11-171-12/+42
| |
* | clang-tidy module: add test for ostringstream checkSean Orner2022-11-143-0/+17
| |
* | clang-tidy module: add check for ostringstreamJoe Blaauboer2022-11-144-0/+78
| |
* | Merge topic 'expat-c-no-extensions'Brad King2022-11-111-0/+6
|\ \ | |/ | | | | | | | | | | | | 019af62294 expat: Activate POSIX APIs even without compiler extensions Acked-by: Kitware Robot <kwrobot@kitware.com> Acked-by: buildbot <buildbot@kitware.com> Merge-request: !7899
| * expat: Activate POSIX APIs even without compiler extensionsRaul Tambre2022-11-101-0/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Compile with the preprocessor definitions necessary for the `arc4random` family so it's available even when compiler extensions are not enabled. Similar things are done in cmbzip2, cmcurl, cmlibarchive, cmliblizma and cmlibuv. This issue surfaced on a nightly bot after glibc 2.36 added arc4random functions. cmlibarchive defines the necessary macro, but also relies on `HAVE_ARC4RANDOM_BUF`. cmlibarchive's check with the necessary macro defined was skipped due to cmexpat running the same check before, but without the macros, and it being cached. This extends commit c7c3e39e4f (Utilities: Activate POSIX APIs even without compiler extensions, 2022-06-02, v3.24.0-rc1~34^2) to cover our build of expat too. Issue: #20454
| * Merge branch 'filesystem-path-c++03-abi' into release-3.24Brad King2022-10-201-10/+6
| |\ | | | | | | | | | Merge-request: !7813