diff options
author | Brad King <brad.king@kitware.com> | 2016-11-10 13:34:28 (GMT) |
---|---|---|
committer | CMake Topic Stage <kwrobot@kitware.com> | 2016-11-10 13:34:28 (GMT) |
commit | de53eb18ab48acbc6db6580473d1e83c73d59bc9 (patch) | |
tree | 6d9910711163611929e47d4cb459db3c781ac3ad /Source/cmGlobalGenerator.cxx | |
parent | 25a76df17f72dcec494b88d2b59a54acbdee9798 (diff) | |
parent | cd8a57ae9b4e7f811d30e1c5b225d36c7a049429 (diff) | |
download | CMake-de53eb18ab48acbc6db6580473d1e83c73d59bc9.zip CMake-de53eb18ab48acbc6db6580473d1e83c73d59bc9.tar.gz CMake-de53eb18ab48acbc6db6580473d1e83c73d59bc9.tar.bz2 |
Merge topic 'import-librhash'
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
...
Diffstat (limited to 'Source/cmGlobalGenerator.cxx')
-rw-r--r-- | Source/cmGlobalGenerator.cxx | 13 |
1 files changed, 4 insertions, 9 deletions
diff --git a/Source/cmGlobalGenerator.cxx b/Source/cmGlobalGenerator.cxx index 2d0767f..fa447ff 100644 --- a/Source/cmGlobalGenerator.cxx +++ b/Source/cmGlobalGenerator.cxx @@ -45,9 +45,9 @@ #include "cmake.h" #if defined(CMAKE_BUILD_WITH_CMAKE) +#include "cmCryptoHash.h" #include <cm_jsoncpp_value.h> #include <cm_jsoncpp_writer.h> -#include <cmsys/MD5.h> #endif class cmInstalledFile; @@ -2617,14 +2617,9 @@ void cmGlobalGenerator::AddRuleHash(const std::vector<std::string>& outputs, // Compute a hash of the rule. RuleHash hash; { - unsigned char const* data = - reinterpret_cast<unsigned char const*>(content.c_str()); - int length = static_cast<int>(content.length()); - cmsysMD5* sum = cmsysMD5_New(); - cmsysMD5_Initialize(sum); - cmsysMD5_Append(sum, data, length); - cmsysMD5_FinalizeHex(sum, hash.Data); - cmsysMD5_Delete(sum); + cmCryptoHash md5(cmCryptoHash::AlgoMD5); + std::string const md5_hex = md5.HashString(content); + memcpy(hash.Data, md5_hex.c_str(), 32); } // Shorten the output name (in expected use case). |