summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorBrad King <brad.king@kitware.com>2017-10-11 12:12:41 (GMT)
committerKitware Robot <kwrobot@kitware.com>2017-10-11 12:12:58 (GMT)
commit6ada7f2e9baab9a75084d162a8ea2114487b3291 (patch)
tree474348c4b0bbff22a87125e1d41193b78739e75e
parent6e1fd9269c6b65340dce9aff53b6d15ffca2baba (diff)
parent0be7d61abf970186b3a83cc6a2aebd3b208b0618 (diff)
downloadCMake-6ada7f2e9baab9a75084d162a8ea2114487b3291.zip
CMake-6ada7f2e9baab9a75084d162a8ea2114487b3291.tar.gz
CMake-6ada7f2e9baab9a75084d162a8ea2114487b3291.tar.bz2
Merge topic 'test-tolerate-clang-sanitizers'
0be7d61a Tests: Teach RunCMake to ignore clang unused sanitizer flag warnings 3f567a98 Tests: Refactor RunCMake output line ignore regex construction Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !1371
-rw-r--r--Tests/RunCMake/RunCMake.cmake14
1 files changed, 13 insertions, 1 deletions
diff --git a/Tests/RunCMake/RunCMake.cmake b/Tests/RunCMake/RunCMake.cmake
index 26312c4..4fd816e 100644
--- a/Tests/RunCMake/RunCMake.cmake
+++ b/Tests/RunCMake/RunCMake.cmake
@@ -99,9 +99,21 @@ function(run_cmake test)
if(NOT "${actual_result}" MATCHES "${expect_result}")
string(APPEND msg "Result is [${actual_result}], not [${expect_result}].\n")
endif()
+ string(CONCAT ignore_line_regex
+ "(^|\n)((==[0-9]+=="
+ "|BullseyeCoverage"
+ "|[a-z]+\\([0-9]+\\) malloc:"
+ "|clang[^:]*: warning: the object size sanitizer has no effect at -O0, but is explicitly enabled:"
+ "|Error kstat returned"
+ "|Hit xcodebuild bug"
+ "|[^\n]*is a member of multiple groups"
+ "|[^\n]*from Time Machine by path"
+ "|[^\n]*Bullseye Testing Technology"
+ ")[^\n]*\n)+"
+ )
foreach(o out err)
string(REGEX REPLACE "\r\n" "\n" actual_std${o} "${actual_std${o}}")
- string(REGEX REPLACE "(^|\n)((==[0-9]+==|BullseyeCoverage|[a-z]+\\([0-9]+\\) malloc:|Error kstat returned|Hit xcodebuild bug|[^\n]*is a member of multiple groups|[^\n]*from Time Machine by path|[^\n]*Bullseye Testing Technology)[^\n]*\n)+" "\\1" actual_std${o} "${actual_std${o}}")
+ string(REGEX REPLACE "${ignore_line_regex}" "\\1" actual_std${o} "${actual_std${o}}")
string(REGEX REPLACE "\n+$" "" actual_std${o} "${actual_std${o}}")
set(expect_${o} "")
if(DEFINED expect_std${o})