Merge topic 'cpack-different-checksum-file-per-generator'

b06870e5 CPack: use a distinct checksum file for each generator

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !1291
diff --git a/Source/CPack/cmCPackGenerator.cxx b/Source/CPack/cmCPackGenerator.cxx
index e72fcc1..f56b5fa 100644
--- a/Source/CPack/cmCPackGenerator.cxx
+++ b/Source/CPack/cmCPackGenerator.cxx
@@ -999,8 +999,7 @@
     /* Generate checksum file */
     if (crypto.get() != nullptr) {
       std::string hashFile(this->GetOption("CPACK_OUTPUT_FILE_PREFIX"));
-      hashFile +=
-        "/" + filename.substr(0, filename.rfind(this->GetOutputExtension()));
+      hashFile += "/" + filename;
       hashFile += "." + cmSystemTools::LowerCase(algo);
       cmsys::ofstream outF(hashFile.c_str());
       if (!outF) {
diff --git a/Tests/RunCMake/CPack/tests/PACKAGE_CHECKSUM/VerifyResult.cmake b/Tests/RunCMake/CPack/tests/PACKAGE_CHECKSUM/VerifyResult.cmake
index e4f9618..2bb4d3f 100644
--- a/Tests/RunCMake/CPack/tests/PACKAGE_CHECKSUM/VerifyResult.cmake
+++ b/Tests/RunCMake/CPack/tests/PACKAGE_CHECKSUM/VerifyResult.cmake
@@ -1,8 +1,7 @@
 if(NOT ${RunCMake_SUBTEST_SUFFIX} MATCHES "invalid")
-  string(TOLOWER ${RunCMake_SUBTEST_SUFFIX} EXTENSION)
+  string(TOLOWER ${RunCMake_SUBTEST_SUFFIX} CHECKSUM_EXTENSION)
   file(GLOB PACKAGE RELATIVE ${bin_dir} "*.tar.gz")
-  file(GLOB CSUMFILE RELATIVE ${bin_dir} "*.${EXTENSION}")
-  file(STRINGS ${CSUMFILE} CHSUM_VALUE)
+  file(STRINGS ${PACKAGE}.${CHECKSUM_EXTENSION} CHSUM_VALUE)
   file(${RunCMake_SUBTEST_SUFFIX} ${PACKAGE} expected_value )
   set(expected_value "${expected_value}  ${PACKAGE}")