#edit the following line to add the librarie's header files FIND_PATH( wolfbodydynamics_INCLUDE_DIRS NAMES bodydynamics.found PATHS /usr/local/include/iri-algorithms/wolf/plugin_bodydynamics) IF(wolfbodydynamics_INCLUDE_DIRS) MESSAGE("Found wolf bodydynamics include dirs: ${wolfbodydynamics_INCLUDE_DIRS}") ELSE(wolfbodydynamics_INCLUDE_DIRS) MESSAGE("Couldn't find wolf bodydynamics include dirs") ENDIF(wolfbodydynamics_INCLUDE_DIRS) FIND_LIBRARY( wolfbodydynamics_LIBRARIES NAMES libwolfbodydynamics.so PATHS /usr/local/lib/iri-algorithms) IF(wolfbodydynamics_LIBRARIES) MESSAGE("Found wolf bodydynamics lib: ${wolfbodydynamics_LIBRARIES}") ELSE(wolfbodydynamics_LIBRARIES) MESSAGE("Couldn't find wolf bodydynamics lib") ENDIF(wolfbodydynamics_LIBRARIES) IF (wolfbodydynamics_INCLUDE_DIRS AND wolfbodydynamics_LIBRARIES) SET(wolfbodydynamics_FOUND TRUE) ELSE(wolfbodydynamics_INCLUDE_DIRS AND wolfbodydynamics_LIBRARIES) set(wolfbodydynamics_FOUND FALSE) ENDIF (wolfbodydynamics_INCLUDE_DIRS AND wolfbodydynamics_LIBRARIES) IF (wolfbodydynamics_FOUND) IF (NOT wolfbodydynamics_FIND_QUIETLY) MESSAGE(STATUS "Found wolf bodydynamics: ${wolfbodydynamics_LIBRARIES}") ENDIF (NOT wolfbodydynamics_FIND_QUIETLY) ELSE (wolfbodydynamics_FOUND) IF (wolfbodydynamics_FIND_REQUIRED) MESSAGE(FATAL_ERROR "Could not find wolf bodydynamics") ENDIF (wolfbodydynamics_FIND_REQUIRED) ENDIF (wolfbodydynamics_FOUND) macro(wolf_report_not_found REASON_MSG) set(wolfbodydynamics_FOUND FALSE) unset(wolfbodydynamics_INCLUDE_DIRS) unset(wolfbodydynamics_LIBRARIES) # Reset the CMake module path to its state when this script was called. set(CMAKE_MODULE_PATH ${CALLERS_CMAKE_MODULE_PATH}) # Note <package>_FIND_[REQUIRED/QUIETLY] variables defined by # FindPackage() use the camelcase library name, not uppercase. if (wolfbodydynamics_FIND_QUIETLY) message(STATUS "Failed to find wolf bodydynamics- " ${REASON_MSG} ${ARGN}) else (wolfbodydynamics_FIND_REQUIRED) message(FATAL_ERROR "Failed to find wolf bodydynamics - " ${REASON_MSG} ${ARGN}) else() # Neither QUIETLY nor REQUIRED, use SEND_ERROR which emits an error # that prevents generation, but continues configuration. message(SEND_ERROR "Failed to find wolf bodydynamics - " ${REASON_MSG} ${ARGN}) endif () return() endmacro(wolf_report_not_found) if(NOT wolfbodydynamics_FOUND) wolf_report_not_found("Something went wrong while setting up wolf bodydynamics.") endif(NOT wolfbodydynamics_FOUND) # Set the include directories for wolf (itself). set(wolfbodydynamics_FOUND TRUE) # Now we gather all the required dependencies for Wolf Template #EXAMPLE Suppose that Wolf Template depends on laser_scan_utils # FIND_PACKAGE(laser_scan_utils REQUIRED) # list(APPEND wolflaser_INCLUDE_DIRS ${laser_scan_utils_INCLUDE_DIRS}) # list(APPEND wolflaser_LIBRARIES ${laser_scan_utils_LIBRARY}) # Making sure that wolf is always looked for if(NOT wolf_FOUND) FIND_PACKAGE(wolfcore REQUIRED) #We reverse in order to insert at the start list(REVERSE wolfbodydynamics_INCLUDE_DIRS) list(APPEND wolfbodydynamics_INCLUDE_DIRS ${wolfcore_INCLUDE_DIRS}) list(REVERSE wolfbodydynamics_INCLUDE_DIRS) list(REVERSE wolfbodydynamics_LIBRARIES) list(APPEND wolfbodydynamics_LIBRARIES ${wolfcore_LIBRARIES}) list(REVERSE wolfbodydynamics_LIBRARIES) endif()