The integer size checks have been replaced with KWIML so their
hard-coded results are no longer needed.
Tell `TEST_BIG_ENDIAN` to use `unsigned short` as the 16-bit integer.
UNIX device APIs do not exist on Windows.
FreeBSD libmd does not exist on Windows.
Fix typo in existing `HAVE_READPASSPHRASE_H` setting.
ade3b16e63 libarchive: Use KWIML to get fixed-size integer types
22c5b0c244 libarchive: Avoid configure-time checks for integer range constants
a7e66cac16 libarchive: Drop unused code providing uintmax_t and intmax_t
Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !4839
Our bundled third-party libraries perform many `try_compile` checks for
compatibility with their upstream build systems. For many of the checks
we already know the result for compilers we support for building CMake
itself, especially on Windows. Hard-code known results to avoid running
the checks.
cURL detects the `send` and `recv` signatures using a large loop
of `try_compile` checks. The results are used for the following:
* Casting argument types in calls to `send` and `recv`, perhaps
to avoid conversion warnings. We compile with `-w` anyway.
* Providing debug variants for `CURLDEBUG`, which we do not use.
Replace the detection loops with hard-coded results that should work
well enough everywhere. This significantly reduces the number of
configure-time checks for building CMake on some platforms.
2faa3f6c55 Refactoring: Third-parties public headers are under cm3p prefix
75e87e3db4 bootstrap: update list of problematic files
Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !4705
50cbc9b77a gitlab-ci: add a sphinx builder
d78bf2f229 ci: install sphinx into the CI image
671ff5f1ac ci: skip weak dependencies in the CI image
bdce0fc317 CTestCustom: fix indentation
e4f398e0af Help: add alt text to embedded images
758ab4dbd3 Utilities/Sphinx: allow CDash submission for the standalone build
16de8e3544 Utilities/Sphinx: support finding Qt5's qcollectiongenerator too
Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !4713
Also drop the `CMakeNightlyWin{32,64}` tests that use the scripts.
Follow the pattern from commit 689fdbfc61 (Utilities/Release: Drop
linux64 script in favor of docker build, 2019-08-27, v3.16.0-rc1~184^2).
These will allow anyone to produce portable binaries like those
published on `cmake.org`.
Follow the pattern from commit facc240a45 (Utilities/Release: Add docker
specs to build and test Linux binaries, 2019-08-23, v3.16.0-rc1~184^2~2).
Parameterize the architecture to support both `x86_64` and `i386`.
4318e8ed35 gitlab-ci: add iwyu job
0866b9253b gitlab-ci: add initial clang-tidy build
0a5bcf97b9 gitlab-ci: add scripts for use by CI
960158b90d ci: add scripts to download build tools
6af91c7c4d ci: add an image for Debian 10
68903ae238 ci: add a Docker container for building CMake
3ac24a8a6e cmFunctionBlocker: include missing header
b745b8fd36 IWYU: mark includes needed for assert statements as needed
...
Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !4643
Run `Utilities/Scripts/BoostScanDeps.cmake` with the Boost 1.73.0
sources to compute dependencies.
This includes a new Boost.Nowide library.
Special case: Boost.Filesystem is an optional dependency as the include
is only required to make Boost.Filesystem use UTF-8 paths on user
request
Changes in commit 5129e97285 (setup-user: switch to git-var to check if
username and e-mail are set, 2019-11-24, v3.17.0-rc1~379^2) now require
the `rev` and `cut` tools to be available. Revise the logic to use that
approach only when they are available, and otherwise fall back to the
previous more portable approach.
Co-Author: Brad King <brad.king@kitware.com>
libuv upstream commit `2475296c` (build: make code compilable for iOS on
Xcode, 2020-01-18, v1.35.0~47) added a `defined(TARGET_OS_IPHONE)`
preprocessor condition, but `TARGET_OS_IPHONE` is always defined on
Apple to either 0 or 1.
libuv upstream commit `4a972bf0` (aix: Fix broken cmpxchgi() XL C++
specialization., 2019-09-06, v1.32.0~5) broke compilation with this
compiler. According to
https://www.ibm.com/support/knowledgecenter/SSGH3R_16.1.0/com.ibm.xlcpp161.aix.doc/migrate/migrate_to_xlclang.html
XLClang 16.1 for AIX does not support `__sync_val_compare_and_swap`.
The documentation suggests using C++11 atomic operations instead, but
this is C code. For now fall back to the non-atomic equivalent used
before so we can at least compile. Add a FIXME comment for this.
02dd24a928 curl: Enable HTTP/2 support by using nghttp2
a24dd93e93 curl: When building inside CMake, link dependencies as PRIVATE
0b872fd4be nghttp2: Build the library within CMake for use by our curl
cd5a320d68 Merge branch 'upstream-nghttp2' into curl-http2
5dc6921805 nghttp2 2019-11-15 (cc05c5fe)
1b8e2c2a3d nghttp2: Add script to import from upstream
Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !4560
Provide our own minimal `config.h` since the upstream one is much
larger to support other parts of its distribution. Compile with
warnings disabled since this is third-party code.
For now, compiler extensions are no longer activated on CMake sources.
However these extensions are still used for various third parties.
This MR is a partial answer to the issue #20454.