Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Fix the way in which Eigen is included #570

Merged
merged 3 commits into from
Mar 11, 2021
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion .github/workflows/bionic_build.yml
Original file line number Diff line number Diff line change
Expand Up @@ -22,7 +22,7 @@ jobs:
ROSDEP_SKIP_KEYS: "bullet ros_industrial_cmake_boilerplate iwyu fcl taskflow"
DOCKER_IMAGE: "rosindustrial/tesseract:melodic"
CCACHE_DIR: "/home/runner/work/tesseract/tesseract/Bionic-Build/.ccache"
PARALLEL_BUILDS: false
PARALLEL_BUILDS: 2
PARALLEL_TESTS: false
UPSTREAM_CMAKE_ARGS: "-DCMAKE_BUILD_TYPE=Release"
TARGET_CMAKE_ARGS: "-DCMAKE_BUILD_TYPE=Debug -DTESSERACT_ENABLE_TESTING=ON"
Expand Down
20 changes: 6 additions & 14 deletions tesseract_collision/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -61,7 +61,7 @@ tesseract_variables()

# Create interface for core
add_library(${PROJECT_NAME}_core INTERFACE)
target_link_libraries(${PROJECT_NAME}_core INTERFACE tesseract::tesseract_common tesseract::tesseract_geometry ${BULLET_LIBRARIES} ${Boost_LIBRARIES})
target_link_libraries(${PROJECT_NAME}_core INTERFACE Eigen3::Eigen tesseract::tesseract_common tesseract::tesseract_geometry ${BULLET_LIBRARIES} ${Boost_LIBRARIES})
target_compile_options(${PROJECT_NAME}_core INTERFACE ${TESSERACT_COMPILE_OPTIONS_PUBLIC})
target_compile_definitions(${PROJECT_NAME}_core INTERFACE ${TESSERACT_COMPILE_DEFINITIONS} ${BULLET_DEFINITIONS})
target_clang_tidy(${PROJECT_NAME}_core ARGUMENTS ${TESSERACT_CLANG_TIDY_ARGS} ENABLE ${TESSERACT_ENABLE_CLANG_TIDY})
Expand All @@ -72,7 +72,6 @@ target_include_directories(${PROJECT_NAME}_core INTERFACE
"$<INSTALL_INTERFACE:include>")
target_include_directories(${PROJECT_NAME}_core SYSTEM INTERFACE
"${BULLET_ROOT_DIR}/${BULLET_INCLUDE_DIRS}"
${EIGEN3_INCLUDE_DIRS}
${Boost_INCLUDE_DIRS})

# Create target for Bullet implementation
Expand All @@ -88,7 +87,7 @@ add_library(${PROJECT_NAME}_bullet
src/bullet/tesseract_convex_convex_algorithm.cpp
src/bullet/tesseract_gjk_pair_detector.cpp
)
target_link_libraries(${PROJECT_NAME}_bullet PUBLIC ${PROJECT_NAME}_core tesseract::tesseract_geometry console_bridge::console_bridge octomap octomath)
target_link_libraries(${PROJECT_NAME}_bullet PUBLIC ${PROJECT_NAME}_core Eigen3::Eigen tesseract::tesseract_geometry console_bridge::console_bridge octomap octomath)
target_link_libraries(${PROJECT_NAME}_bullet PUBLIC ${BULLET_LIBRARIES})
target_compile_options(${PROJECT_NAME}_bullet PRIVATE ${TESSERACT_COMPILE_OPTIONS_PRIVATE})
target_compile_options(${PROJECT_NAME}_bullet PUBLIC ${TESSERACT_COMPILE_OPTIONS_PUBLIC})
Expand All @@ -101,15 +100,14 @@ target_include_directories(${PROJECT_NAME}_bullet PUBLIC
"$<INSTALL_INTERFACE:include>")
target_include_directories(${PROJECT_NAME}_bullet SYSTEM PUBLIC
"${BULLET_ROOT_DIR}/${BULLET_INCLUDE_DIRS}"
${EIGEN3_INCLUDE_DIRS}
${Boost_INCLUDE_DIRS})

# Create target for FCL implementation
add_library(${PROJECT_NAME}_fcl
src/fcl/fcl_discrete_managers.cpp
src/fcl/fcl_utils.cpp
src/fcl/fcl_collision_object_wrapper.cpp)
target_link_libraries(${PROJECT_NAME}_fcl PUBLIC ${PROJECT_NAME}_core tesseract::tesseract_geometry fcl ${BULLET_LIBRARIES} console_bridge::console_bridge octomap octomath)
target_link_libraries(${PROJECT_NAME}_fcl PUBLIC ${PROJECT_NAME}_core Eigen3::Eigen tesseract::tesseract_geometry fcl ${BULLET_LIBRARIES} console_bridge::console_bridge octomap octomath)
target_compile_options(${PROJECT_NAME}_fcl PRIVATE ${TESSERACT_COMPILE_OPTIONS_PRIVATE})
target_compile_options(${PROJECT_NAME}_fcl PUBLIC ${TESSERACT_COMPILE_OPTIONS_PUBLIC})
target_compile_definitions(${PROJECT_NAME}_fcl PUBLIC ${TESSERACT_COMPILE_DEFINITIONS} ${BULLET_DEFINITIONS})
Expand All @@ -121,7 +119,6 @@ target_include_directories(${PROJECT_NAME}_fcl PUBLIC
"$<INSTALL_INTERFACE:include>")
target_include_directories(${PROJECT_NAME}_fcl SYSTEM PUBLIC
"${BULLET_ROOT_DIR}/${BULLET_INCLUDE_DIRS}"
${EIGEN3_INCLUDE_DIRS}
${Boost_INCLUDE_DIRS})

# Create target that profiles the collision checkers.
Expand All @@ -135,7 +132,7 @@ target_code_coverage(${PROJECT_NAME}_profile PRIVATE ALL EXCLUDE ${COVERAGE_EXCL

# Create test suite interface
add_library(${PROJECT_NAME}_test_suite INTERFACE)
target_link_libraries(${PROJECT_NAME}_test_suite INTERFACE tesseract::tesseract_support tesseract::tesseract_geometry ${PROJECT_NAME}_core)
target_link_libraries(${PROJECT_NAME}_test_suite INTERFACE Eigen3::Eigen tesseract::tesseract_support tesseract::tesseract_geometry ${PROJECT_NAME}_core)
target_compile_options(${PROJECT_NAME}_test_suite INTERFACE ${TESSERACT_COMPILE_OPTIONS_PUBLIC})
target_compile_definitions(${PROJECT_NAME}_test_suite INTERFACE ${TESSERACT_COMPILE_DEFINITIONS})
target_clang_tidy(${PROJECT_NAME}_test_suite ARGUMENTS ${TESSERACT_CLANG_TIDY_ARGS} ENABLE ${TESSERACT_ENABLE_CLANG_TIDY})
Expand All @@ -144,36 +141,31 @@ target_code_coverage(${PROJECT_NAME}_test_suite INTERFACE ALL EXCLUDE ${COVERAGE
target_include_directories(${PROJECT_NAME}_test_suite INTERFACE
"$<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/include>"
"$<INSTALL_INTERFACE:include>")
target_include_directories(${PROJECT_NAME}_test_suite SYSTEM INTERFACE
${EIGEN3_INCLUDE_DIRS})

# Create test suite interface
add_library(${PROJECT_NAME}_test_suite_benchmarks INTERFACE)
target_link_libraries(${PROJECT_NAME}_test_suite_benchmarks INTERFACE tesseract::tesseract_support tesseract::tesseract_geometry)
target_link_libraries(${PROJECT_NAME}_test_suite_benchmarks INTERFACE Eigen3::Eigen tesseract::tesseract_support tesseract::tesseract_geometry)
target_compile_options(${PROJECT_NAME}_test_suite_benchmarks INTERFACE ${TESSERACT_COMPILE_OPTIONS_PUBLIC})
target_clang_tidy(${PROJECT_NAME}_test_suite_benchmarks ARGUMENTS ${TESSERACT_CLANG_TIDY_ARGS} ENABLE ${TESSERACT_ENABLE_CLANG_TIDY})
target_cxx_version(${PROJECT_NAME}_test_suite_benchmarks INTERFACE VERSION ${TESSERACT_CXX_VERSION})
target_code_coverage(${PROJECT_NAME}_test_suite_benchmarks INTERFACE ALL EXCLUDE ${COVERAGE_EXCLUDE} ENABLE ${TESSERACT_ENABLE_CODE_COVERAGE})
target_include_directories(${PROJECT_NAME}_test_suite_benchmarks INTERFACE
"$<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/include>"
"$<INSTALL_INTERFACE:include>")
target_include_directories(${PROJECT_NAME}_test_suite_benchmarks SYSTEM INTERFACE
${EIGEN3_INCLUDE_DIRS})

set(PACKAGE_LIBRARIES ${PROJECT_NAME}_core ${PROJECT_NAME}_bullet ${PROJECT_NAME}_fcl ${PROJECT_NAME}_test_suite ${PROJECT_NAME}_test_suite_benchmarks ${PROJECT_NAME}_profile)

if (NOT MSVC)
# Create target for creating convex hull's from meshes
add_executable(create_convex_hull src/create_convex_hull.cpp)
target_link_libraries(create_convex_hull PUBLIC ${PROJECT_NAME}_core ${BULLET_LIBRARIES} tesseract::tesseract_common tesseract::tesseract_geometry ${Boost_LIBRARIES} console_bridge::console_bridge octomap octomath)
target_link_libraries(create_convex_hull PUBLIC ${PROJECT_NAME}_core ${BULLET_LIBRARIES} Eigen3::Eigen tesseract::tesseract_common tesseract::tesseract_geometry ${Boost_LIBRARIES} console_bridge::console_bridge octomap octomath)
target_compile_options(create_convex_hull PRIVATE ${TESSERACT_COMPILE_OPTIONS_PRIVATE} ${TESSERACT_COMPILE_OPTIONS_PUBLIC})
target_compile_definitions(create_convex_hull PRIVATE ${TESSERACT_COMPILE_DEFINITIONS} ${BULLET_DEFINITIONS})
target_clang_tidy(create_convex_hull ARGUMENTS ${TESSERACT_CLANG_TIDY_ARGS} ENABLE ${TESSERACT_ENABLE_CLANG_TIDY})
target_cxx_version(create_convex_hull PRIVATE VERSION ${TESSERACT_CXX_VERSION})
target_include_directories(create_convex_hull PUBLIC "$<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/include>")
target_include_directories(create_convex_hull SYSTEM PUBLIC
"${BULLET_ROOT_DIR}/${BULLET_INCLUDE_DIRS}"
${EIGEN3_INCLUDE_DIRS}
${Boost_INCLUDE_DIRS})

list(APPEND PACKAGE_LIBRARIES create_convex_hull)
Expand Down
3 changes: 1 addition & 2 deletions tesseract_common/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -36,7 +36,7 @@ add_code_coverage_all_targets(EXCLUDE ${COVERAGE_EXCLUDE})
tesseract_variables()

add_library(${PROJECT_NAME} src/manipulator_info.cpp)
target_link_libraries(${PROJECT_NAME} PUBLIC ${TinyXML2_LIBRARIES} ${Boost_LIBRARIES} console_bridge::console_bridge)
target_link_libraries(${PROJECT_NAME} PUBLIC Eigen3::Eigen ${TinyXML2_LIBRARIES} ${Boost_LIBRARIES} console_bridge::console_bridge)
target_compile_options(${PROJECT_NAME} PUBLIC ${TESSERACT_COMPILE_OPTIONS_PUBLIC})
target_compile_definitions(${PROJECT_NAME} PUBLIC ${TESSERACT_COMPILE_DEFINITIONS})
target_clang_tidy(${PROJECT_NAME} ARGUMENTS ${TESSERACT_CLANG_TIDY_ARGS} ENABLE ${TESSERACT_ENABLE_CLANG_TIDY})
Expand All @@ -47,7 +47,6 @@ target_include_directories(${PROJECT_NAME} PUBLIC
"$<INSTALL_INTERFACE:include>")
target_include_directories(${PROJECT_NAME} SYSTEM PUBLIC
${Boost_INCLUDE_DIRS}
${EIGEN3_INCLUDE_DIRS}
${TinyXML2_INCLUDE_DIRS})

configure_package(NAMESPACE tesseract TARGETS ${PROJECT_NAME})
Expand Down
10 changes: 3 additions & 7 deletions tesseract_environment/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -40,6 +40,7 @@ tesseract_variables()
# Create interface for core
add_library(${PROJECT_NAME}_core src/core/environment.cpp src/core/manipulator_manager.cpp)
target_link_libraries(${PROJECT_NAME}_core PUBLIC
Eigen3::Eigen
tesseract::tesseract_common
tesseract::tesseract_collision_core
tesseract::tesseract_collision_bullet
Expand All @@ -57,11 +58,9 @@ target_code_coverage(${PROJECT_NAME}_core ALL EXCLUDE ${COVERAGE_EXCLUDE} ENABLE
target_include_directories(${PROJECT_NAME}_core PUBLIC
"$<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/include>"
"$<INSTALL_INTERFACE:include>")
target_include_directories(${PROJECT_NAME}_core SYSTEM PUBLIC
${EIGEN3_INCLUDE_DIRS})

add_library(${PROJECT_NAME}_kdl src/kdl/kdl_state_solver.cpp)
target_link_libraries(${PROJECT_NAME}_kdl PUBLIC ${PROJECT_NAME}_core tesseract::tesseract_scene_graph orocos-kdl console_bridge::console_bridge)
target_link_libraries(${PROJECT_NAME}_kdl PUBLIC ${PROJECT_NAME}_core Eigen3::Eigen tesseract::tesseract_scene_graph orocos-kdl console_bridge::console_bridge)
target_compile_options(${PROJECT_NAME}_kdl PRIVATE ${TESSERACT_COMPILE_OPTIONS_PRIVATE})
target_compile_options(${PROJECT_NAME}_kdl PUBLIC ${TESSERACT_COMPILE_OPTIONS_PUBLIC})
target_compile_definitions(${PROJECT_NAME}_kdl PUBLIC ${TESSERACT_COMPILE_DEFINITIONS})
Expand All @@ -72,11 +71,10 @@ target_include_directories(${PROJECT_NAME}_kdl PUBLIC
"$<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/include>"
"$<INSTALL_INTERFACE:include>")
target_include_directories(${PROJECT_NAME}_kdl SYSTEM PUBLIC
${EIGEN3_INCLUDE_DIRS}
${orocos_kdl_INCLUDE_DIRS}) # Orocos did not export target correctly

add_library(${PROJECT_NAME}_ofkt src/ofkt/ofkt_state_solver.cpp src/ofkt/ofkt_nodes.cpp)
target_link_libraries(${PROJECT_NAME}_ofkt PUBLIC ${PROJECT_NAME}_core tesseract::tesseract_scene_graph console_bridge::console_bridge)
target_link_libraries(${PROJECT_NAME}_ofkt PUBLIC ${PROJECT_NAME}_core Eigen3::Eigen tesseract::tesseract_scene_graph console_bridge::console_bridge)
target_compile_options(${PROJECT_NAME}_ofkt PRIVATE ${TESSERACT_COMPILE_OPTIONS_PRIVATE})
target_compile_options(${PROJECT_NAME}_ofkt PUBLIC ${TESSERACT_COMPILE_OPTIONS_PUBLIC})
target_compile_definitions(${PROJECT_NAME}_ofkt PUBLIC ${TESSERACT_COMPILE_DEFINITIONS})
Expand All @@ -86,8 +84,6 @@ target_code_coverage(${PROJECT_NAME}_ofkt ALL EXCLUDE ${COVERAGE_EXCLUDE} ENABLE
target_include_directories(${PROJECT_NAME}_ofkt PUBLIC
"$<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/include>"
"$<INSTALL_INTERFACE:include>")
target_include_directories(${PROJECT_NAME}_ofkt SYSTEM PUBLIC
${EIGEN3_INCLUDE_DIRS})

configure_package(NAMESPACE tesseract TARGETS ${PROJECT_NAME}_core ${PROJECT_NAME}_kdl ${PROJECT_NAME}_ofkt)

Expand Down
5 changes: 2 additions & 3 deletions tesseract_geometry/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -57,7 +57,7 @@ add_code_coverage_all_targets(EXCLUDE ${COVERAGE_EXCLUDE})
tesseract_variables()

add_library(${PROJECT_NAME} INTERFACE)
target_link_libraries(${PROJECT_NAME} INTERFACE tesseract::tesseract_common console_bridge::console_bridge octomap octomath ${assimp_LIBRARIES})
target_link_libraries(${PROJECT_NAME} INTERFACE Eigen3::Eigen tesseract::tesseract_common console_bridge::console_bridge octomap octomath ${assimp_LIBRARIES})
target_compile_options(${PROJECT_NAME} INTERFACE ${TESSERACT_COMPILE_OPTIONS_PUBLIC})
target_compile_definitions(${PROJECT_NAME} INTERFACE ${TESSERACT_COMPILE_DEFINITIONS} ${TESSERACT_ASSIMP_USE_PBRMATERIAL})
target_clang_tidy(${PROJECT_NAME} ARGUMENTS ${TESSERACT_CLANG_TIDY_ARGS} ENABLE ${TESSERACT_ENABLE_CLANG_TIDY})
Expand All @@ -67,8 +67,7 @@ target_include_directories(${PROJECT_NAME} INTERFACE
"$<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/include>"
"$<INSTALL_INTERFACE:include>")
target_include_directories(${PROJECT_NAME} SYSTEM INTERFACE
${assimp_INCLUDE_DIRS}
${EIGEN3_INCLUDE_DIRS})
${assimp_INCLUDE_DIRS})

configure_package(NAMESPACE tesseract TARGETS ${PROJECT_NAME})

Expand Down
21 changes: 5 additions & 16 deletions tesseract_kinematics/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -39,7 +39,7 @@ tesseract_variables()
add_library(${PROJECT_NAME}_core
src/core/rop_inverse_kinematics.cpp
src/core/rep_inverse_kinematics.cpp)
target_link_libraries(${PROJECT_NAME}_core PUBLIC tesseract::tesseract_scene_graph console_bridge::console_bridge)
target_link_libraries(${PROJECT_NAME}_core PUBLIC Eigen3::Eigen tesseract::tesseract_scene_graph console_bridge::console_bridge)
target_compile_options(${PROJECT_NAME}_core PRIVATE ${TESSERACT_COMPILE_OPTIONS_PRIVATE})
target_compile_options(${PROJECT_NAME}_core PUBLIC ${TESSERACT_COMPILE_OPTIONS_PUBLIC})
target_compile_definitions(${PROJECT_NAME}_core PUBLIC ${TESSERACT_COMPILE_DEFINITIONS})
Expand All @@ -49,12 +49,10 @@ target_code_coverage(${PROJECT_NAME}_core ALL EXCLUDE ${COVERAGE_EXCLUDE} ENABLE
target_include_directories(${PROJECT_NAME}_core PUBLIC
"$<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/include>"
"$<INSTALL_INTERFACE:include>")
target_include_directories(${PROJECT_NAME}_core SYSTEM PUBLIC
${EIGEN3_INCLUDE_DIRS})

# Create ikfast kinematics interface
add_library(${PROJECT_NAME}_ikfast INTERFACE)
target_link_libraries(${PROJECT_NAME}_ikfast INTERFACE ${PROJECT_NAME}_core console_bridge::console_bridge)
target_link_libraries(${PROJECT_NAME}_ikfast INTERFACE ${PROJECT_NAME}_core Eigen3::Eigen console_bridge::console_bridge)
target_compile_definitions(${PROJECT_NAME}_ikfast INTERFACE -DIKFAST_NO_MAIN -DIKFAST_CLIBRARY -DIKFAST_HAS_LIBRARY)
target_compile_options(${PROJECT_NAME}_ikfast INTERFACE ${TESSERACT_COMPILE_OPTIONS_PUBLIC})
target_compile_definitions(${PROJECT_NAME}_ikfast INTERFACE ${TESSERACT_COMPILE_DEFINITIONS})
Expand All @@ -64,8 +62,6 @@ target_code_coverage(${PROJECT_NAME}_ikfast INTERFACE ALL EXCLUDE ${COVERAGE_EXC
target_include_directories(${PROJECT_NAME}_ikfast INTERFACE
"$<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/include>"
"$<INSTALL_INTERFACE:include>")
target_include_directories(${PROJECT_NAME}_ikfast SYSTEM INTERFACE
${EIGEN3_INCLUDE_DIRS})

# Add KDL implementation of tesseract_kinematics
add_library(${PROJECT_NAME}_kdl
Expand All @@ -74,7 +70,7 @@ add_library(${PROJECT_NAME}_kdl
src/kdl/kdl_inv_kin_chain_lma.cpp
src/kdl/kdl_inv_kin_chain_nr.cpp
)
target_link_libraries(${PROJECT_NAME}_kdl PUBLIC ${PROJECT_NAME}_core tesseract::tesseract_scene_graph orocos-kdl console_bridge::console_bridge)
target_link_libraries(${PROJECT_NAME}_kdl PUBLIC ${PROJECT_NAME}_core Eigen3::Eigen tesseract::tesseract_scene_graph orocos-kdl console_bridge::console_bridge)
target_compile_options(${PROJECT_NAME}_kdl PRIVATE ${TESSERACT_COMPILE_OPTIONS_PRIVATE})
target_compile_options(${PROJECT_NAME}_kdl PUBLIC ${TESSERACT_COMPILE_OPTIONS_PUBLIC})
target_compile_definitions(${PROJECT_NAME}_kdl PUBLIC ${TESSERACT_COMPILE_DEFINITIONS})
Expand All @@ -87,13 +83,10 @@ endif()
target_include_directories(${PROJECT_NAME}_kdl PUBLIC
"$<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/include>"
"$<INSTALL_INTERFACE:include>")
target_include_directories(${PROJECT_NAME}_kdl SYSTEM PUBLIC
${EIGEN3_INCLUDE_DIRS}
${orocos_kdl_INCLUDE_DIRS}) # Orocos did not export target correctly

# Add OPW implementation of tesseract_kinematics
add_library(${PROJECT_NAME}_opw src/opw/opw_inv_kin.cpp)
target_link_libraries(${PROJECT_NAME}_opw PUBLIC ${PROJECT_NAME}_core tesseract::tesseract_scene_graph opw_kinematics::opw_kinematics console_bridge::console_bridge)
target_link_libraries(${PROJECT_NAME}_opw PUBLIC ${PROJECT_NAME}_core Eigen3::Eigen tesseract::tesseract_scene_graph opw_kinematics::opw_kinematics console_bridge::console_bridge)
target_compile_options(${PROJECT_NAME}_opw PRIVATE ${TESSERACT_COMPILE_OPTIONS_PRIVATE})
target_compile_options(${PROJECT_NAME}_opw PUBLIC ${TESSERACT_COMPILE_OPTIONS_PUBLIC})
target_compile_definitions(${PROJECT_NAME}_opw PUBLIC ${TESSERACT_COMPILE_DEFINITIONS})
Expand All @@ -103,12 +96,10 @@ target_code_coverage(${PROJECT_NAME}_opw ALL EXCLUDE ${COVERAGE_EXCLUDE} ENABLE
target_include_directories(${PROJECT_NAME}_opw PUBLIC
"$<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/include>"
"$<INSTALL_INTERFACE:include>")
target_include_directories(${PROJECT_NAME}_opw SYSTEM PUBLIC
${EIGEN3_INCLUDE_DIRS})

# Add Universal Robot implementation of tesseract_kinematics
add_library(${PROJECT_NAME}_ur src/ur/ur_inv_kin.cpp)
target_link_libraries(${PROJECT_NAME}_ur PUBLIC ${PROJECT_NAME}_core tesseract::tesseract_scene_graph console_bridge::console_bridge)
target_link_libraries(${PROJECT_NAME}_ur PUBLIC ${PROJECT_NAME}_core Eigen3::Eigen tesseract::tesseract_scene_graph console_bridge::console_bridge)
target_compile_options(${PROJECT_NAME}_ur PRIVATE ${TESSERACT_COMPILE_OPTIONS_PRIVATE})
target_compile_options(${PROJECT_NAME}_ur PUBLIC ${TESSERACT_COMPILE_OPTIONS_PUBLIC})
target_compile_definitions(${PROJECT_NAME}_ur PUBLIC ${TESSERACT_COMPILE_DEFINITIONS})
Expand All @@ -118,8 +109,6 @@ target_code_coverage(${PROJECT_NAME}_ur ALL EXCLUDE ${COVERAGE_EXCLUDE} ENABLE $
target_include_directories(${PROJECT_NAME}_ur PUBLIC
"$<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/include>"
"$<INSTALL_INTERFACE:include>")
target_include_directories(${PROJECT_NAME}_opw SYSTEM PUBLIC
${EIGEN3_INCLUDE_DIRS})

configure_package(NAMESPACE tesseract TARGETS ${PROJECT_NAME}_core ${PROJECT_NAME}_kdl ${PROJECT_NAME}_ikfast ${PROJECT_NAME}_opw ${PROJECT_NAME}_ur)

Expand Down
3 changes: 1 addition & 2 deletions tesseract_scene_graph/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -35,7 +35,7 @@ add_code_coverage_all_targets(EXCLUDE ${COVERAGE_EXCLUDE})
tesseract_variables()

add_library(${PROJECT_NAME} src/graph.cpp src/resource_locator.cpp src/srdf_model.cpp src/kinematics_information.cpp)
target_link_libraries(${PROJECT_NAME} PUBLIC ${Boost_LIBRARIES} tesseract::tesseract_geometry tesseract::tesseract_common orocos-kdl console_bridge::console_bridge)
target_link_libraries(${PROJECT_NAME} PUBLIC ${Boost_LIBRARIES} Eigen3::Eigen tesseract::tesseract_geometry tesseract::tesseract_common orocos-kdl console_bridge::console_bridge)
target_compile_options(${PROJECT_NAME} PRIVATE ${TESSERACT_COMPILE_OPTIONS_PRIVATE})
target_compile_options(${PROJECT_NAME} PUBLIC ${TESSERACT_COMPILE_OPTIONS_PUBLIC})
target_compile_definitions(${PROJECT_NAME} PUBLIC ${TESSERACT_COMPILE_DEFINITIONS} Boost_USE_STATIC_LIBS=OFF Boost_USE_MULTITHREADED=ON Boost_USE_STATIC_RUNTIME=OFF)
Expand All @@ -46,7 +46,6 @@ target_include_directories(${PROJECT_NAME} PUBLIC
"$<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/include>"
"$<INSTALL_INTERFACE:include>")
target_include_directories(${PROJECT_NAME} SYSTEM PUBLIC
${EIGEN3_INCLUDE_DIRS}
${orocos_kdl_INCLUDE_DIRS} # Orocos did not export target correctly
${Boost_INCLUDE_DIRS})

Expand Down
3 changes: 1 addition & 2 deletions tesseract_urdf/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -37,7 +37,7 @@ add_code_coverage_all_targets(EXCLUDE ${COVERAGE_EXCLUDE})
tesseract_variables()

add_library(${PROJECT_NAME} src/urdf_parser.cpp)
target_link_libraries(${PROJECT_NAME} PUBLIC tesseract::tesseract_common tesseract::tesseract_geometry tesseract::tesseract_scene_graph tesseract::tesseract_collision_core console_bridge::console_bridge ${Boost_LIBRARIES})
target_link_libraries(${PROJECT_NAME} PUBLIC Eigen3::Eigen tesseract::tesseract_common tesseract::tesseract_geometry tesseract::tesseract_scene_graph tesseract::tesseract_collision_core console_bridge::console_bridge ${Boost_LIBRARIES})
target_compile_options(${PROJECT_NAME} PRIVATE ${TESSERACT_COMPILE_OPTIONS_PRIVATE})
target_compile_options(${PROJECT_NAME} PUBLIC ${TESSERACT_COMPILE_OPTIONS_PUBLIC})
target_compile_definitions(${PROJECT_NAME} PUBLIC ${TESSERACT_COMPILE_DEFINITIONS})
Expand Down Expand Up @@ -74,7 +74,6 @@ target_include_directories(${PROJECT_NAME} PUBLIC
"$<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/include>"
"$<INSTALL_INTERFACE:include>")
target_include_directories(${PROJECT_NAME} SYSTEM PUBLIC
${EIGEN3_INCLUDE_DIRS}
${Boost_INCLUDE_DIRS})

configure_package(NAMESPACE tesseract TARGETS ${PROJECT_NAME})
Expand Down
Loading