MantisBT - CMake
View Issue Details
0014183CMakeCMakepublic2013-05-31 20:322013-11-04 09:33
Modestas Vainius 
Rolf Eike Beer 
normalminoralways
closedfixed 
Apple MacOS X10.4.10
CMake 2.8.11 
CMake 2.8.12CMake 2.8.12 
0014183: Regex metacharacters in the cmake build path causes tests to fail
Hello,

this issue is very closely related to bug 0012999. The cause is exactly the same, but just in other (new) tests this time. See the following build log for more details:

https://buildd.debian.org/status/fetch.php?pkg=cmake&arch=armel&ver=2.8.9-1~bpo60%2B1&stamp=1369243896 [^]

Even if the build log is of 2.8.9, I attach the patch for 2.8.11. Please note, I'm not sure where to put RegexEscapeString.cmake, so feel free to review, modify the patch.

As far as I can tell, a bunch of new 0012999 variants were introduced between 2.8.9 and 2.8.11 so in addition to those in the build log, the following tests also fail in 2.8.11:

       243 - CTestTestMemcheckUnknown (Failed)
        244 - CTestTestMemcheckUnknownQuoted (Failed)
        248 - CTestTestMemcheckDummyValgrindFailPre (Failed)
        249 - CTestTestMemcheckDummyValgrindFailPost (Failed)
        250 - CTestTestMemcheckDummyPurify (Failed)
        251 - CTestTestMemcheckDummyBC (Failed)
        253 - CMake.List (Failed)
Build cmake in the file system path which, for example, has a plus sign in it.
No tags attached.
diff escape_paths_in_test_regexes.diff (20,186) 2013-05-31 20:32
https://public.kitware.com/Bug/file/4774/escape_paths_in_test_regexes.diff
Issue History
2013-05-31 20:32Modestas VainiusNew Issue
2013-05-31 20:32Modestas VainiusFile Added: escape_paths_in_test_regexes.diff
2013-06-01 05:00Rolf Eike BeerNote Added: 0033164
2013-06-01 05:00Rolf Eike BeerAssigned To => Rolf Eike Beer
2013-06-01 05:00Rolf Eike BeerStatusnew => assigned
2013-06-01 05:11Modestas VainiusNote Added: 0033165
2013-06-02 09:22Rolf Eike BeerNote Added: 0033168
2013-06-02 10:07Rolf Eike BeerNote Added: 0033169
2013-06-02 10:07Rolf Eike BeerStatusassigned => resolved
2013-06-02 10:07Rolf Eike BeerResolutionopen => fixed
2013-06-02 10:07Rolf Eike BeerFixed in Version => CMake 2.8.12
2013-06-02 10:07Rolf Eike BeerTarget Version => CMake 2.8.12
2013-11-04 09:33Robert MaynardNote Added: 0034349
2013-11-04 09:33Robert MaynardStatusresolved => closed

Notes
(0033164)
Rolf Eike Beer   
2013-06-01 05:00   
Why not just keep the macro in the position where it is? There it already is visible for all subtests.

The patch doesn't apply as the Memcheck tests have already been modified. I will take care for this.
(0033165)
Modestas Vainius   
2013-06-01 05:11   
I tried this but got failures due to undefined macro. However, if you know how to do it, please do. I'm really mostly clueless how CTest tests should be developed (never made one) so really feel free to make any necessary modifications to make the patch less noisy.
(0033168)
Rolf Eike Beer   
2013-06-02 09:22   
The reason is that the tests you touched run their own CMake instance, so they don't see the macro in Tests/CMakeLists.txt. The Memcheck tests run their own CTest instance, but the output matching is done in the same scope as the main test stuff. I will apply your patch but without the Memcheck file, and will use my patch to that instead.
(0033169)
Rolf Eike Beer   
2013-06-02 10:07   
Fixes merged to next:

http://cmake.org/gitweb?p=cmake.git;a=commit;h=e6e8fcb9e9835cba7cd60cae22940bbbb9fe6d1b [^]
(0034349)
Robert Maynard   
2013-11-04 09:33   
Closing resolved issues that have not been updated in more than 4 months.