Skip to content
Snippets Groups Projects
Commit f4640f8d authored by Sergi Hernandez's avatar Sergi Hernandez
Browse files

Made the built of the arm kinematics library conditional on the existence of the KDL library.

Set a variable with the path to the darwin firmware.
parent f227ef41
No related branches found
No related tags found
No related merge requests found
Pipeline #
SET(DARWIN_FW_PATH /home/shernand/humanoids/darwin_stm32_fw)
ADD_SUBDIRECTORY(xml)
IF(HAVE_XSD)
ADD_DEFINITIONS(-D_HAVE_XSD)
......@@ -7,7 +9,7 @@ ENDIF(HAVE_XSD)
INCLUDE (${PROJECT_SOURCE_DIR}/FindPkgConfig.cmake)
## Find KDL
SET(KDL_INSTALL /opt/ros/hydro)
SET(KDL_INSTALL /opt/ros/indigo)
INCLUDE (${PROJECT_SOURCE_DIR}/FindKDL.cmake)
# driver source files
......@@ -15,10 +17,12 @@ SET(robot_sources darwin_robot.cpp darwin_robot_exceptions.cpp)
# application header files
SET(robot_headers darwin_robot.h darwin_robot_exceptions.h)
# driver source files
SET(kin_sources darwin_arm_kinematics.cpp darwin_robot_exceptions.cpp)
# application header files
SET(kin_headers darwin_arm_kinematics.h darwin_robot_exceptions.h)
IF(KDL_FOUND)
# driver source files
SET(kin_sources darwin_arm_kinematics.cpp darwin_robot_exceptions.cpp)
# application header files
SET(kin_headers darwin_arm_kinematics.h darwin_robot_exceptions.h)
ENDIF(KDL_FOUND)
# locate the necessary dependencies
FIND_PACKAGE(iriutils REQUIRED)
......@@ -27,7 +31,7 @@ FIND_PACKAGE(dynamixel REQUIRED)
INCLUDE_DIRECTORIES(.)
INCLUDE_DIRECTORIES(${iriutils_INCLUDE_DIR})
INCLUDE_DIRECTORIES(${dynamixel_INCLUDE_DIR})
INCLUDE_DIRECTORIES(../../../stm32_firmware/include/)
INCLUDE_DIRECTORIES(${DARWIN_FW_PATH}/include)
# create the shared library
ADD_LIBRARY(darwin_robot SHARED ${robot_sources} ${XSD_SOURCES})
ADD_DEPENDENCIES(darwin_robot xsd_files_gen)
......@@ -36,21 +40,29 @@ TARGET_LINK_LIBRARIES(darwin_robot ${iriutils_LIBRARY})
TARGET_LINK_LIBRARIES(darwin_robot ${dynamixel_LIBRARY})
TARGET_LINK_LIBRARIES(darwin_robot ${XSD_LIBRARY})
ADD_LIBRARY(darwin_arm_kinematics SHARED ${kin_sources} ${XSD_SOURCES})
ADD_DEPENDENCIES(darwin_arm_kinematics xsd_files_gen)
# link necessary libraries
TARGET_LINK_LIBRARIES(darwin_arm_kinematics ${iriutils_LIBRARY})
TARGET_LINK_LIBRARIES(darwin_arm_kinematics ${XSD_LIBRARY})
TARGET_LINK_LIBRARIES(darwin_arm_kinematics ${KDL_LIBS})
IF(KDL_FOUND)
ADD_LIBRARY(darwin_arm_kinematics SHARED ${kin_sources} ${XSD_SOURCES})
ADD_DEPENDENCIES(darwin_arm_kinematics xsd_files_gen)
# link necessary libraries
TARGET_LINK_LIBRARIES(darwin_arm_kinematics ${iriutils_LIBRARY})
TARGET_LINK_LIBRARIES(darwin_arm_kinematics ${XSD_LIBRARY})
TARGET_LINK_LIBRARIES(darwin_arm_kinematics ${KDL_LIBS})
ENDIF(KDL_FOUND)
SET_SOURCE_FILES_PROPERTIES(${XSD_SOURCES} PROPERTIES GENERATED 1)
SET_SOURCE_FILES_PROPERTIES(${XSD_SOURCES} PROPERTIES GENERATED 1)
INSTALL(TARGETS darwin_robot darwin_arm_kinematics
INSTALL(TARGETS darwin_robot
RUNTIME DESTINATION bin
LIBRARY DESTINATION lib/iridrivers
ARCHIVE DESTINATION lib/iridrivers)
INSTALL(FILES ${robot_headers} ${kin_headers} DESTINATION include/iridrivers)
INSTALL(FILES ${robot_headers} DESTINATION include/iridrivers)
IF(KDL_FOUND)
INSTALL(FILES ${kin_heders} DESTINATION include/iridrivers)
INSTALL(TARGETS darwin_arm_kinematics
RUNTIME DESTINATION bin
LIBRARY DESTINATION lib/iridrivers
ARCHIVE DESTINATION lib/iridrivers)
ENDIF(KDL_FOUND)
INSTALL(FILES ../Finddarwin_robot.cmake DESTINATION ${CMAKE_ROOT}/Modules/)
INSTALL(FILES ../Finddarwin_arm_kinematics.cmake DESTINATION ${CMAKE_ROOT}/Modules/)
ADD_SUBDIRECTORY(examples)
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment