Seems I might be able to answer my own question. It looks like "add_dependencies(subproject1_exe subproject2_lib)" worked.
I had to do a clean first though because it didn't work the first time since some old files were left around. Hope this helps anyone else with a similar issue! On Tue, Mar 19, 2019 at 1:13 PM Timothy Wrona <tjwrona1...@gmail.com> wrote: > I am working on a complex CMake project that is part of a large legacy > system that uses a top level project and "add_subdirectory" to create > subprojects. > > I have run into an issue because now one of the subprojects is dependant > on another subproject, but I can't seem to find a clear way to tell CMake > about this dependency. > > Consider this example: > > my_project/ > CMakeLists.txt: > add_subdirectory('subproject1') > add_subdirectory('subproject2') > > my_project/subproject1/ > CMakeLists.txt: > add_executable(subproject1_exe <sources>) > target_link_libraries(subproject1_exe subproject2_lib) # <-- > THIS is the problem > > my_project/subproject2/ > CMakeLists.txt: > add_library(subproject2_lib <sources>) > > The actual code is much more complex than this, but this simple example > illustrates the problem. The actual compilation error I am getting is > caused by subproject1 including a header file that gets generated when > subproject2 is built. > > Does anyone know how to properly tell CMake about the dependency so it > will build correctly? >
-- 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: https://cmake.org/mailman/listinfo/cmake