diff --git a/CMakeLists.txt b/CMakeLists.txt index 736dae36633fc7747aa8287db3b95d32256be898..563aeb61d12a551e735796cafa402bca55c4a383 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -20,8 +20,8 @@ PROJECT(core) set(PLUGIN_NAME "wolf${PROJECT_NAME}") # Paths -SET(EXECUTABLE_OUTPUT_PATH ${CMAKE_CURRENT_SOURCE_DIR}/bin) -SET(LIBRARY_OUTPUT_PATH ${CMAKE_CURRENT_SOURCE_DIR}/lib) +SET(EXECUTABLE_OUTPUT_PATH ${CMAKE_CURRENT_SOURCE_DIR}/bin)#FIXME: is this variable necessary? +SET(LIBRARY_OUTPUT_PATH ${CMAKE_CURRENT_SOURCE_DIR}/lib)#FIXME: is this variable necessary? SET(CMAKE_SKIP_INSTALL_ALL_DEPENDENCY FALSE) SET(LIB_INSTALL_DIR lib) # plugin_core is not really needed, why was it used in the first place? @@ -431,11 +431,11 @@ endif() #Link the created libraries #============================================================= -TARGET_LINK_LIBRARIES(${PLUGIN_NAME} ${CMAKE_THREAD_LIBS_INIT} dl) -# TARGET_LINK_LIBRARIES(${PLUGIN_NAME} ${YAMLCPP_LIBRARY}) -TARGET_LINK_LIBRARIES(${PLUGIN_NAME} yaml-cpp) +TARGET_LINK_LIBRARIES(${PLUGIN_NAME} PUBLIC ${CMAKE_THREAD_LIBS_INIT} dl) +TARGET_LINK_LIBRARIES(${PLUGIN_NAME} PUBLIC yaml-cpp) +TARGET_LINK_LIBRARIES(${PLUGIN_NAME} PUBLIC Eigen3::Eigen) IF (Ceres_FOUND) - TARGET_LINK_LIBRARIES(${PLUGIN_NAME} ${CERES_LIBRARIES}) + TARGET_LINK_LIBRARIES(${PLUGIN_NAME} PUBLIC ceres) ENDIF(Ceres_FOUND) #Build tests @@ -458,6 +458,8 @@ INSTALL(TARGETS ${PLUGIN_NAME} EXPORT ${PLUGIN_NAME}Targets RUNTIME DESTINATION bin LIBRARY DESTINATION ${LIB_INSTALL_DIR} ARCHIVE DESTINATION ${LIB_INSTALL_DIR}) +) +install(EXPORT ${PLUGIN_NAME}Targets DESTINATION lib/${PLUGIN_NAME}/cmake) #Â Configure the package installation @@ -476,7 +478,7 @@ install( ) -install(EXPORT ${PLUGIN_NAME}Targets DESTINATION lib/cmake/${PLUGIN_NAME}) + #install headers INSTALL(FILES ${HDRS_CAPTURE} DESTINATION ${INCLUDE_INSTALL_DIR}/${PROJECT_NAME}/capture) diff --git a/cmake_modules/wolfcoreConfig.cmake.in b/cmake_modules/wolfcoreConfig.cmake.in index 2ddbaed54e5daa328b1b45f8581e26e68c37b9bf..166866cc4d20fcc7e101cdca75f05a5d8f39533e 100644 --- a/cmake_modules/wolfcoreConfig.cmake.in +++ b/cmake_modules/wolfcoreConfig.cmake.in @@ -8,4 +8,14 @@ set(@PLUGIN_NAME@_INCLUDE_DIRS @PLUGIN_NAME@_INCLUDE_DIR) set_and_check(@PLUGIN_NAME@_LIB_INSTALL_DIR "@PACKAGE_LIB_INSTALL_DIR@") set(@PLUGIN_NAME@_LIB_INSTALL_DIRS @PLUGIN_NAME@_LIB_INSTALL_DIR) +# forwards the correct parameters given to FIND_DEPENDENCIES +include(CMakeFindDependencyMacro) +FIND_DEPENDENCY(Threads REQUIRED) +FIND_DEPENDENCY(Ceres REQUIRED) +FIND_DEPENDENCY(Eigen3 3.3 REQUIRED) +FIND_DEPENDENCY(yaml-cpp REQUIRED) + +include("${CMAKE_CURRENT_LIST_DIR}/wolfcoreTargets.cmake") + + check_required_components(@PLUGIN_NAME@) \ No newline at end of file