[CMake] CTest mistakenly marks lines from build output as errors

Kay-Uwe 'Kiwi' Lorenz kay at moduleworks.com
Fri Aug 17 04:49:40 EDT 2012


Hi,

we are using cmake in big build environment with Visual Studio and
Xoreax IncrediBuild. For debugging purpose we have turned on printing
commandlines in IncrediBuild. This produces lines like:

Generating res/resource_config.h
--------------------Configuration: MachSimIntegrationSample - 
Release|x64------
|    i:\kiwi\migration\tools\cmake\bin\cmake.exe -E make_directory 
I:/kiwi/migration/tmp/dev-VS2008_x64_no-SCL/Binaries/lib/Release
|   if errorlevel 1 goto :VCReportError
|
|   if errorlevel 1 goto VCReportError
|   goto VCEnd
|   :VCReportError
|   echo Project : error PRJ0019: A tool returned an error code: 
"Performing Pre-Link Event..."
|   exit 1
|   :VCEnd
Performing Pre-Link Event...

Where the lines starting with "|" are the commands. In CDash now
the line
     |   echo Project : error PRJ0019: A tool returned an error code: 
"Performing Pre-Link Event..."
is marked as error, because one of the predefined patterns match this line.

So we need

a) either the opportunity to tell ctest not to use any predefined
    error, warning, exception, etc. patterns for grepping out error
    lines (and then setup a custom set)

b) or the opportunity to filter the lines passed to ProcessSingleLine()
    where they are marked as error, warning, etc.

    e.g. CTEST_CUSTOM_BUILDLOG_SKIP=<first-pattern>;<second-pattern>

    Then I could set
        CTEST_CUSTOM_BUILDLOG_SKIP=^\\|

What do you think? I would prefer b).

I could implement it on my own, but I would rather not like to have a 
"custom cmake"
in production.

For now we can turn off to display commands, but this complicates debugging.

Kind regards
Kiwi

-- 

Kay-Uwe (Kiwi) Lorenz
IT Department
ModuleWorks GmbH
Ritterstr. 12a
52072 Aachen
Germany

HRB 11871
Amtsgericht Aachen
Geschäftsführer Yavuz Murtezaoglu


More information about the CMake mailing list