Chih-pin Wu wrote:
Hi all:

I'm working on an embedded platform and building integrated software as multimedia CE devices. And I am just started trying to introduce CMake to replace my legacy environment constructed by many hand-written gnu styled makefiles.

I have many components which is cross referred to each other very complicatedly, and it really helps a lot when I started to migrate to CMake with the benefit of automatic dependency checking.

  However, my order of building is
i) build lots of libraries, called components
ii) then build final executable, called application, linking with libraries

I really felt comfort when I modified some header files in the component directory, and makefiles generated by CMake automatically found it, rebuild all dependent source files as well as the libraries. However I could not make my final executable link those libraries automatically when libraries got changed.

I used TARGET_LINK_LIBRARIES to enumerate linking libraries, also ADD_DEPENDENCIES with these libraries. But I still can't make it relink to a executable when those libraries got changed, no matter it's rebuilt by makefile or replaced by some newer revision.


Can you post some of your cmake code? This should work. I suspect that you are not using full paths to libraries in target_link_libraries. add_dependencies should not be needed.

-Bill
_______________________________________________
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

Reply via email to