Visual Studio's build system does not cleanly handle itself being
re-generated during the build. Teach `cmake --build` to check whether
the build system needs to be re-generated before launching the native
build tool.
Users or scripts commonly remove or replace `CMakeCache.txt` without
also removing `CMakeFiles/`. In this case the information saved in the
cache from platform information initialization is missing, so we need to
re-initialize it. In such a case, remove the platform information
directory so that re-initialization will occur and restore needed
information to the cache.
Closes: #14820
f55fcdc8 CTest: Use UTF-8 encoding for output from Git
40bd42df Add Encoding option for RunChild, RunMakeCommand and RunProcess
595feb32 Windows: Encode child process output to internally-used encoding
96103972 Add cmProcessOutput class to be used for decoding text data
92c865b8 cmCTestBuildHandler: Use size_t in ProcessBuffer length argument
Specific widgets can implement `PrintKeys` but their effects were hidden
by the main widget `PrintKeys`. Fix this to give the user a better hint
about the edit mode status.
Closes: #13757
When opening projects in Visual Studio that specify an older toolset
version, a prompt is displayed the first time asking the user whether to
upgrade the projects. This is meant for project files that are
maintained manually and updated through the IDE. For CMake-generated
projects this does not make sense, so add content to tell VS not to
upgrade.
When disabling BUILD_TESTING after a previous configure, the
`CTestTestfile.cmake` was left unchanged. As a result, ctest would see
the tests while the user disabled testing. Now when BUILD_TESTING is
OFF any existing `CTestTestfile.cmake` is removed ensuring an empty test
list.
f636d1e7 Help: Add notes for topic 'add-SHA-3'
cb5dba8e Tests: Add SHA-3 algorithm coverage to CPack checksum test
a9fa6099 ExternalProject: Add support for SHA-3 algorithms
b4ffd26f ExternalData: Add support for SHA-3 algorithms
60939702 file: Add support for SHA-3 algorithms
92f95aed string: Add support for SHA-3 algorithms
c326209f cmCryptoHash: Add support for SHA-3 algorithms
979e8ba6 Help: De-duplicate and spell out supported hash algorithms
7a79f7e3 librhash: Activate SHA-3 implementation
87584b5e Merge branch 'upstream-librhash' into add-SHA-3
7fcbd47e librhash 2016-11-06 (de79828d)
c50c32a3 librhash: Update import script to add SHA-3 implementation
Typically Windows applications (eg. MSVC compiler) use current console's
codepage for output to pipes so we need to encode that to our
internally-used encoding (`KWSYS_ENCODING_DEFAULT_CODEPAGE`).
cd8a57ae Add option to build CMake against a system librhash
71180fc8 FindLibRHash: Add module to find the librhash package
3216e94c Remove unused cm_sha2 infrastructure
5420278d Port hash computation to cmCryptoHash
9a596b33 cmCryptoHash: Re-implement in terms of librhash
47f91a61 cmCryptoHash: Avoid using subclasses at client sites
d0ff3e70 librhash: Port to KWIML for ABI and integer type information
465a85fb librhash: Avoid signed left-shift overflow
fc2cb74f librhash: Implement bswap_32 as a function even in strict C90 mode
0bd333bc librhash: Implement bswap_64 even in strict C90 mode
7189d62c librhash: Use __builtin_bswap{32,64} on Clang
af7ebf8a librhash: Install COPYING file with CMake documentation
bb01f20e librhash: Disable warnings to avoid changing 3rd party code
31bb727f librhash: Build the library within CMake
53048afa librhash: Remove source fragments not needed for CMake
5cb1b345 Merge branch 'upstream-librhash' into import-librhash
...
Add it to a private source directory that is not installed so that we
can use it for building CMake itself. This will allow it to mature
before being distributed publicly.