I inherited a set of files with somewhat unusual file names. In particular, there were a couple of files whose names included a single square bracket character. I processed these files with the file( GLOB ...) command and then iterated over the resulting list with foreach. However, the foreach command does not seem to break the resulting list apart correctly. To make this concrete, I have a directory with files named "a", "b[", and "c". file( GLOB FILES "*" ) returns the list:
/home/allen/test/b[;/home/allen/test/c;/home/allen/test/a However, foreach( FILE ${FILES} ) message( ${FILE} ) endforeach() just prints the same thing. That is, foreach does not split FILES into separate pieces. If I rename "b[" to "b]" I see the same behavior. If I rename "b[" to "b[]" (or even "b]["), then foreach successfully splits FILES into the individual file names. I'm using CMake 3.3.2. I see the same thing on linux and windows. Thanks, Allen
-- Powered by www.kitware.com Please keep messages on-topic and check the CMake FAQ at: http://www.cmake.org/Wiki/CMake_FAQ Kitware offers various services to support the CMake community. For more information on each offering, please visit: CMake Support: http://cmake.org/cmake/help/support.html CMake Consulting: http://cmake.org/cmake/help/consulting.html CMake Training Courses: http://cmake.org/cmake/help/training.html Visit other Kitware open-source projects at http://www.kitware.com/opensource/opensource.html Follow this link to subscribe/unsubscribe: http://public.kitware.com/mailman/listinfo/cmake