I want to be moved to the same folder as the executables.
How do I do that in CMake?
At configuration time:
CONFIGURE_FILE(<path>/<to>/input.txt ${EXECUTABLE_OUTPUT_PATH} COPYONLY)
Note that the destination directory, i.e. the EXECUTABLE_OUTPUT_PATH,
possibly must already exist, and refer to the EXECUTABLE_OUTPUT_PATH
variable only after it has received its value. BTW, this variable is
obsolete, use [CMAKE_]RUNTIME_OUTPUT_DIRECTORY[_<CONFIG>] variable/
properties instead.
At build time:
ADD_CUSTOM_TARGET(input ${CMAKE_COMMAND} -E copy_if_different
<path>/<to>/input.txt ${EXECUTABLE_OUTPUT_PATH})
ADD_DEPENDENCIES(OneOfYourExecutables input)
ADD_DEPENDENCIES(AnotherExecutable input)
or
ADD_CUSTOM_COMMAND(TARGET OneOfYourExecutables
COMMAND ${CMAKE_COMMAND} -E copy_if_different
<path>/<to>/input.txt $<TARGET_FILE_DIR:OneOfYourExecutables>)
ADD_CUSTOM_COMMAND(TARGET AnotherExecutable
COMMAND ${CMAKE_COMMAND} -E copy_if_different
<path>/<to>/input.txt $<TARGET_FILE_DIR:AnotherExecutable>)
Personally, I'd prefer the latter as it's clean and quite flexible.
Thanks. Great feedback!
Totte
--
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