[CMake] Regular Expression weirdness (2.6 & 2.8RC3)

Marcel Loose loose at astron.nl
Wed Oct 28 04:49:10 EDT 2009


Hi Luis,

The way I'm reading the globbing expression -- which is not identical to
a regex, BTW -- the output makes perfect sense.

In HDR1 you collect all filenames that start with 'Spatial/csp'; then
contain zero or more wildcard characters; then the last character before
the dot should *not* be any of the characters 'c', 'o', 'n', 'f', 'i',
or 'g'; finally the name should end in '.h'.

So, HDR1 does not contain cspacedef.h because the last character before
the '.h' is an 'f', which is one of the "forbidden" characters in the
glob expression.

HTH,
Marcel Loose.

On Tue, 2009-10-27 at 23:55 +0100, L.M. de Vries wrote:
> Hi,
> 
> In the folder "Spatial" there are multiple files. Among them are the 
> following:
> 
> cspacedefconfig.h
> cspacedef.h
> cspacediscr.h
> cspacediscrconfig.h
> 
> Executing the following commands:
> 
> FILE(GLOB SPATIAL_HDR1 "Spatial/csp*[^config].h")
> FILE(GLOB SPATIAL_HDR2 "Spatial/csp*.h")
> 
> MESSAGE(STATUS ${SPATIAL_HDR1})
> MESSAGE(STATUS ${SPATIAL_HDR2})
> 
> The first Message only outputs cspacediscr.h (and NOT cspacedef.h).
> The second Message does output cspacedef.h (and also the rest of the files).
> Why does the first message not output cspacedef.h?
> 
> The problem occured with CMake 2.6, but I just tried out 2.8RC3 and I 
> get the same results....
> 
> Regards,
> 
> Luis
> _______________________________________________
> Powered by www.kitware.com
> 
> Visit other Kitware open-source projects at http://www.kitware.com/opensource/opensource.html
> 
> Please keep messages on-topic and check the CMake FAQ at: http://www.cmake.org/Wiki/CMake_FAQ
> 
> Follow this link to subscribe/unsubscribe:
> http://www.cmake.org/mailman/listinfo/cmake



More information about the CMake mailing list