[omplapp] Use external dependency ompl via CMake target instead of embedding
WangWeiLin-MV opened this issue · 4 comments
Hi,
I am a member of the VCPKG project. I found that omplapp
repeatedly builds "ompl" from the submodule instead of depends on the built libraries microsoft/vcpkg#40151.
I see that ompl/ompl#1066 ompl/ompl#1067 adds the CMake targets ompl::ompl
, which allow for convenient target_link_libraries(main PRIVATE ompl::ompl)
, but omplapp not uses it, and it bypasses ompl/CMakeLists.txt
to compile its components like this omplapp/CMakeLists.txt#L252-L257:
add_subdirectory(ompl/doc)
add_subdirectory(ompl/src)
add_subdirectory(ompl/py-bindings)
add_subdirectory(ompl/tests)
add_subdirectory(ompl/demos)
add_subdirectory(ompl/scripts)
And there are many different parts between the two files omplapp/CMakeLists.txt and ompl/CMakeLists.txt. Splitting the two projects need a lot of changes.
I would like to ask if it is possible to modify omplapp to be a project that depends on ompl, rather than an ompl variant that shares a lot of code? This is very helpful to us, and I think this will also make it easier to develop omplapp
.
If you have any questions please let me know. Thanks in advance.
Yes, agree. It will be easier after this PR.
#13
If omplapp
called find_package(ompl CONFIG)
before it brought it in as a submodule, would that fix it for you?
If
omplapp
calledfind_package(ompl CONFIG)
before it brought it in as a submodule, would that fix it for you?
Yes, the duplicate build could be avoided in that way.