Why not just go one directory up? Add /path/to/CMakeLists.txt containing at least:
add_subdirectory(A) add_subdirectory(B) https://github.com/toomuchatonce/cmake-examples/blob/master/staticlibs-add_subdir/CMakeLists.txt On Fri, Sep 18, 2015 at 5:42 PM, Joe <jtca...@gmail.com> wrote: > Hi. I was hoping to get some guidance on if this is bad practice. I am > simply trying to find a way to manage internal dependencies of my project > but with a file structure that is distributed. It looks like this: > > /path/to/A > > /path/to/B > > B depends on A. I cannot change this directory structure. The solution we > have chose is to create the following: > > /path/to/modules/FindA.cmake: > > ... > if (NOT TARGET A) > set(PATH_TO_A ${CMAKE_CURRENT_LIST_DIR}../A) > add_subdirectory(${PATH_TO_A} ${PATH_TO_A}/build) > endif() > ... > > This way, A' CMakeLists is invoked and the library is compiled and built. > Then in B's CMakeLists.txt: > > ... > set(CMAKE_MODULE_PATH ${CMAKE_MODULE_PATH} > ${CMAKE_CURRENT_LIST_DIR}/../modules) > > find_package(A) > add_executable(main_B src/main_B.cpp) > target_link_libraries(main_B A) > ... > > Is this bad practice? I tried to figure out find_package in CONFIG mode but > every example I've found seems complicated and obtuse. Thank you. > > > > -- > > 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://public.kitware.com/mailman/listinfo/cmake -- 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://public.kitware.com/mailman/listinfo/cmake