CPack/RPM: DIST-MONOLITHIC-type subtest fix

Test was failing in case dist macro contained
a + symbol which is valid but must be escaped
for using the string as a regex.

Fixes #17328
This commit is contained in:
Domen Vrankar
2017-10-29 00:53:46 +02:00
committed by Brad King
parent a91eb5e41f
commit 9ce00caee3

View File

@@ -5,6 +5,11 @@ execute_process(COMMAND ${RPMBUILD_EXECUTABLE} -E %{?dist}
set(whitespaces_ "[\t\n\r ]*")
# since we have no control over dist tag value we should try to escape
# the content for use as a regular expression
string(REPLACE "+" "\\+" DIST_TAG "${DIST_TAG}")
string(REPLACE "." "\\." DIST_TAG "${DIST_TAG}")
getPackageInfo("${FOUND_FILE_1}" "FILE_INFO_")
if(NOT FILE_INFO_ MATCHES ".*Release${whitespaces_}:${whitespaces_}1${DIST_TAG}")
message(FATAL_ERROR "Unexpected Release in '${FOUND_FILE_1}'; file info: '${FILE_INFO_}'")