SET (MY_SRC Event_log.h other.cpp other1.cpp)
ADD_EXECUTABLE(MyExe ${MY_SRC }
add_custom_command(OUTPUT Event_log.h COMMAND mc Event_log.mc
WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR} DEPENDS Event_log.mc)
Whenever I run the build command, this causes the "mc" to rerun each
time (even if the .mc file is not changed), and in effect recompiling a
major portion of my project.
May I know what am I doing wrong here?
The OUTPUT path is relative to the current binary directory.
Since you set the WORKING_DIRECTORY to the current source directory (I
assume this is where the output actually goes) the actual output path
and the output you specified don't match up.
This causes to command to rerun every time since the output as specified
is never created.
I would generate the output in the binary directory rather than the
source directory if possible so that separate parallel build directories
for the same source directory still work as intended.
Nils
--
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://www.cmake.org/mailman/listinfo/cmake