Commit Graph

1877 Commits

Author SHA1 Message Date
Brad King
6834ffd21b Merge topic 'doc-guide-link-style'
977c38c339 Help: Render guide links as normal text instead of monospace

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !7886
2022-11-09 09:29:53 -05:00
Alex Turbov
977c38c339 Help: Render guide links as normal text instead of monospace
The guide document names are phrases, not code-like man-page names.
Add CSS selectors for `:guide:` links and revert unnecessary properties.
2022-11-08 09:53:20 -05:00
Brad King
814ded48b0 Merge topic 'clang-tidy-module-use-bespoke-enum-class-check'
5f97772fcb clang-tidy: disable bespoke enum class check
eab8e38961 clang-tidy module: add check for boolean parameters

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !7883
2022-11-08 09:21:18 -05:00
Brad King
dab81ced1b Merge topic 'sphinx-linkcheck'
a89c76a773 Build: Add `SPHINX_LINKCHECK` build option
137b00cda1 Build: Do not redirect `sphinx-build` output if CMake running in verbose mode
d954fb8a60 Build: Deduplicate `add_custom_command()` calls for Sphinx targets
2af8724485 Merge branch 'backport-sphinx-linkcheck' into sphinx-linkcheck
435b0c573c Help: Fix some redirects reported with sphinx linkcheck
ac5295a9de Help: Fix broken external links found by sphinx linkcheck

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !7876
2022-11-08 09:02:31 -05:00
Sean Orner
eab8e38961 clang-tidy module: add check for boolean parameters
Co-Authored-by: Kyle Edwards <kyle.edwards@kitware.com>
2022-11-07 13:15:02 -05:00
Alex Turbov
a89c76a773 Build: Add SPHINX_LINKCHECK build option
Run `sphinx-build` to check external links and report broken one.
2022-11-07 10:10:23 -05:00
Alex Turbov
137b00cda1 Build: Do not redirect sphinx-build output if CMake running in verbose mode
Configuring with `--log-level=VERBOSE` a user can see an output of
`sphinx-build` at build time.

The other way is to have `VERBOSE` envvar set at configure time.

And finally one can set `CMAKE_VERBOSE_MAKEFILE` CMake cache variable.
2022-11-07 10:09:53 -05:00
Alex Turbov
d954fb8a60 Build: Deduplicate add_custom_command() calls for Sphinx targets 2022-11-07 10:09:46 -05:00
Igor-Mikhail-Valentin Glebov
ffa970559c clang-tidy module: add tests for cmsys::fstream check
Co-Authored-by: Kyle Edwards <kyle.edwards@kitware.com>
2022-11-04 11:33:23 -04:00
Joe Blaauboer
d520853682 clang-tidy module: add check for cmsys::fstream
Co-Authored-by: Kyle Edwards <kyle.edwards@kitware.com>
Co-Authored-by: Igor-Mikhail-Valentin Glebov <iglebov@albany.edu>
2022-11-04 11:33:23 -04:00
Kyle Edwards
01d8308406 Tests: remove stderr from clang-tidy module tests
The stderr has the potential to count warnings from system header
files, which are very platform-specific and not reliable, and they
are simply a count of all the warnings that were emitted on stdout,
which we already have. Remove stderr and only look at stdout.
2022-11-04 11:02:47 -04:00
Brad King
07dbb523d2 Merge topic 'update-nghttp2'
e44b551e8d nghttp2: Update build within CMake to account for 1.50.0
8b73605408 Merge branch 'upstream-nghttp2' into update-nghttp2
7ce2a682a3 nghttp2 2022-09-21 (87fef4ab)
66c9536775 nghttp2: Update script to get nghttp2 1.50.0

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: buildbot <buildbot@kitware.com>
Merge-request: !7856
2022-11-01 08:57:36 -04:00
Brad King
923de4b88c Merge topic 'update-curl'
25e9f31878 curl: Set build options the way we need for CMake
9ffe6b0969 Merge branch 'upstream-curl' into update-curl
ec122fff08 curl 2022-10-26 (cd95ee9f)
fa9bbb8627 curl: Update script to get curl 7.86.0

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !7851
2022-11-01 08:54:58 -04:00
Brad King
25e9f31878 curl: Set build options the way we need for CMake 2022-10-31 16:12:43 -04:00
Brad King
9ffe6b0969 Merge branch 'upstream-curl' into update-curl
* upstream-curl:
  curl 2022-10-26 (cd95ee9f)
2022-10-31 16:11:41 -04:00
Brad King
fa9bbb8627 curl: Update script to get curl 7.86.0 2022-10-31 16:10:39 -04:00
Brad King
e44b551e8d nghttp2: Update build within CMake to account for 1.50.0 2022-10-31 14:11:34 -04:00
Brad King
8b73605408 Merge branch 'upstream-nghttp2' into update-nghttp2
# By nghttp2 upstream
* upstream-nghttp2:
  nghttp2 2022-09-21 (87fef4ab)
2022-10-31 14:09:53 -04:00
Brad King
66c9536775 nghttp2: Update script to get nghttp2 1.50.0 2022-10-31 14:08:55 -04:00
Henry Schreiner
d78bfa1ecc Utilities/Sphinx: support cmakedomain running in parallel
Fixes: #24076

Signed-off-by: Henry Schreiner <henryschreineriii@gmail.com>
2022-10-24 18:03:11 -04:00
Brad King
7c71f9b1e8 Merge topic 'filesystem-path-c++03-abi'
ee9805ccd1 cm/filesystem: Fix crash with pre-C++11 std::string GNU ABI in C++17

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: buildbot <buildbot@kitware.com>
Merge-request: !7813
2022-10-21 10:06:22 -04:00
Brad King
d44340115f Merge topic 'filesystem-path-c++03-abi' into release-3.25
ee9805ccd1 cm/filesystem: Fix crash with pre-C++11 std::string GNU ABI in C++17

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: buildbot <buildbot@kitware.com>
Merge-request: !7813
2022-10-21 10:06:20 -04:00
Brad King
ee9805ccd1 cm/filesystem: Fix crash with pre-C++11 std::string GNU ABI in C++17
The `remove_filename` and `replace_extension` methods compute an offset
between the whole path in a `std::string` and a part of a path in a
`std::string_view`.  This is done by subtracting their `.data()`
pointers.  However, C++17 adds a non-const `.data()` through which
modification of the string is allowed.  This means the copy-on-write
implementation used by the pre-C++11 std::string GNU ABI must reallocate
if the string has been copied.  Our subtraction then computes an offset
between two different allocations, which is undefined behavior.

The workaround in commit b3ca4f9ad1 (cm/filesystem: Work around crash
when compiled for CYGWIN/MSYS runtime, 2021-04-22, v3.21.0-rc1~271^2~2)
avoided the problem by calling the non-const `.data()` to reallocate
before constructing the `string_view`.  Instead, explicitly call the
const `.data()` method on the string, which does not reallocate.

Fixes: #22090, #23328
2022-10-20 18:31:50 -04:00
Sean Orner
43481a77f9 clang-tidy module: add test for cmStrLen() check 2022-10-19 13:52:58 -04:00
Kyle Edwards
43a88b56af clang-tidy module: add check for cmStrLen()
Co-Authored-by: Joe Blaauboer <jblaauboer67@gmail.com>
2022-10-19 13:51:11 -04:00
Kyle Edwards
0a2093d0c5 clang-tidy module: add test framework 2022-10-14 11:09:38 -04:00
Kyle Edwards
153f39f4a5 Merge topic 'clang-tidy-plugin-stub'
d6f5e67f7b ci: add clang-tidy plugin to clang-tidy job
6c6912123e clang-tidy: Add option to load CMake's clang-tidy module
0ad3941f73 clang-tidy module: Add stub module

Acked-by: Kitware Robot <kwrobot@kitware.com>
Tested-by: buildbot <buildbot@kitware.com>
Merge-request: !7768
2022-10-14 11:01:58 -04:00
Kyle Edwards
0ad3941f73 clang-tidy module: Add stub module
Issue: #23912
2022-10-12 13:23:45 -04:00
Brad King
5f998bbcb3 Configure CMake itself with policies through CMake 3.24 2022-10-12 12:43:27 -04:00
Brad King
294b6db533 Utilities/Sphinx: Avoid deprecated docutils error handling helpers
The `SafeString` and `ErrorString` classes are deprecated and will be
removed in Docutils 0.21 or later.  They help avoid encoding errors
during exception handling in Python <= 2.7, but these days we always
use Python 3 to build the documentation, at least during development,
when error cases are most likely to occur.

Fixes: #24039
2022-10-11 10:01:12 -04:00
Brad King
a48d668d18 Merge topic 'update-libuv'
23de1675fd libuv: Update CMake-internal buildsystem for 1.44.2
ff82df301c Merge branch 'upstream-libuv' into update-libuv
a23da15596 libuv 2022-07-12 (0c1fa696)
cfe8fd6421 libuv: Update script to get libuv 1.44.2

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !7709
2022-09-27 09:52:55 -04:00
Brad King
23de1675fd libuv: Update CMake-internal buildsystem for 1.44.2 2022-09-27 09:50:38 -04:00
Brad King
ff82df301c Merge branch 'upstream-libuv' into update-libuv
* upstream-libuv:
  libuv 2022-07-12 (0c1fa696)
2022-09-27 09:50:16 -04:00
Brad King
cfe8fd6421 libuv: Update script to get libuv 1.44.2 2022-09-27 09:49:15 -04:00
Alex Turbov
df8ad72ffa Build: Use imported target kwiml::kwiml instead of variables 2022-09-22 10:21:39 -04:00
Alex Turbov
2be5a7de4e Build: Use imported target ZLIB::ZLIB instead of variables 2022-09-22 10:20:30 -04:00
Alex Turbov
a509602699 Build: Modernize some foreach calls to use IN LISTS/IN ITEMS 2022-09-22 09:24:46 -04:00
FeRD (Frank Dana)
ff2e7ceb66 QtHelp: Update Sphinx issue URLs in comments
The QtHelp Sphinx generation code contains two links to Sphinx issues
that used old, dead BitBucket URLs. Those issues were migrated to
GitHub, so the dead links can be replaced with working ones.
2022-09-04 22:59:00 +10:00
Marc Chevrier
02c067dee5 cm::enum_set: fix various bugs 2022-08-22 16:25:53 +02:00
Kyle Edwards
bf7e3124cb Remove stale references to CMakeServerLib 2022-08-02 11:05:52 -04:00
Dubach, Joev
9dbcfb8fdd MSVC: Recognize -XYZ as well as /XYZ when parsing MS tool command lines
Fixes: #23772
2022-07-27 16:51:15 -04:00
Brad King
197ef69aa1 cmArgumentParser: Simplify internal method signatures
Record `Parse` parameters during construction of the internal instance
instead of passing them to every method.
2022-07-20 16:03:12 -04:00
Brad King
3a888b2dda Merge topic 'rel-macos-sign-notarize'
432ae51467 Utilities/Release: Update macOS notarization script to use notarytool

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !7463
2022-07-08 12:16:23 -04:00
Brad King
69ce5c0ce8 Merge topic 'rel-macos-sign-notarize' into release-3.24
432ae51467 Utilities/Release: Update macOS notarization script to use notarytool

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !7463
2022-07-08 12:16:22 -04:00
Brad King
5924dc2a7e Merge branch 'rel-macos-sign-notarize' into release-3.23
Merge-request: !7463
2022-07-08 12:15:55 -04:00
Brad King
432ae51467 Utilities/Release: Update macOS notarization script to use notarytool
`xcnotary` is no longer needed since `altool` has been deprecated in
favor of `notarytool`, which has builtin support for waiting.
2022-07-08 12:14:23 -04:00
makise-homura
de16db0f64 curl: make libcmcurl buildable with old LibreSSL
LibreSSL older than 2.6.0 is not supported correctly
in upstream curl, and as a consequence, in libcmcurl.
Such LibreSSL versions can be used in old distros,
like OS Elbrus 4.x and 5.x, so until this fix, CMake
wasn't buildable there either.
2022-06-28 11:12:04 -04:00
Brad King
32604113b6 Merge topic 'ci-rel-win-arm64'
41ea4d4de8 ci: Rebuild Qt 6.3.0 windows-arm64 dependency with LLVM/Clang
e0d9ee0cc4 Utilities/Release: Simplify script to build Qt 6.3.0 Windows binaries

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !7380
2022-06-20 09:57:23 -04:00
Cristian Adam
e0d9ee0cc4 Utilities/Release: Simplify script to build Qt 6.3.0 Windows binaries
Revise and simplify the script from commit d0c9225a7e
(Utilities/Release: Add script to build Qt 6.3.0 Windows binaries,
2022-06-10, v3.24.0-rc1~4^2~5).  For `cmake-gui` we only need QtBase.
Also, convert to a `.cmake` script.

Issue: #21902
2022-06-17 11:04:10 -04:00
Brad King
ac24f4d49b Configure CMake itself with policies through CMake 3.23 2022-06-14 15:05:09 -04:00