[CMake] Copying matching files

Hugo Costelha hugo.costelha at gmail.com
Tue Oct 3 10:51:15 EDT 2006


Hi,

I need to copy all files that match a certain patter during compilation time. 
I am currenlty using the following in CMakeLists.txt:

FILE(GLOB luts "lut*")
FOREACH(file ${luts})
    GET_FILENAME_COMPONENT(basename ${file} NAME)
    ADD_CUSTOM_TARGET( luts ALL
                       COMMAND ${CMAKE_COMMAND}
                        -E copy ${file} ${LIBRARY_OUTPUT_PATH} )
ENDFOREACH(file)


However, there is a huge problem with this code. It creates fixed rules when 
running "cmake .", i.e., if I run "cmake .", then create a file lutA, then 
run make, it will not copy lutA, since it didn't exist when I ran cmake.

Does anyone know of a good alternative to do this, that really performs 
something like "cp lut* <location>"?

Thanks,

Hugo Costelha


More information about the CMake mailing list