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

Removed the BULLET_ENABLE flag #489

Merged
merged 4 commits into from
Jun 28, 2021

Conversation

jrgnicho
Copy link
Contributor

@jrgnicho jrgnicho commented Jun 8, 2021

Description

Addresses issue #473
Removed the BULLET_ENABLE flag
Properly installs the bullet collision plugin

Checklist

  • Required by CI: Code is auto formatted using clang-format
  • Extend the tutorials / documentation reference
  • Document API changes relevant to the user in the MIGRATION.md notes
  • Create tests, which fail without this PR reference
  • Include a screenshot if changing a GUI
  • While waiting for someone to review your request, please help review another open pull request to support the maintainers

Copy link
Member

@henningkayser henningkayser left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks for fixing this! I'm glad this really just seems to work without any code fixes. I'll test this for a bit before approving.

@@ -128,9 +127,10 @@ set(THIS_PACKAGE_INCLUDE_DEPENDS
Eigen3
eigen3_cmake_module
OCTOMAP
${BULLET_ENABLE}
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Bullet needs to be listed as include depend, no?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think I omitted it because I was mirroring the FCL setup. In fact the FCL include dependency is not in this list but I can add the Bullet one if that's what's preferred.

@@ -25,29 +25,27 @@ target_link_libraries(${MOVEIT_LIB_NAME}
${BULLET_LIBRARIES}
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Can you add Bullet to the ament_target_dependencies block above? The variables seem to match the right pattern, so this should work.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Isn't that only necessary for ros2 dependencies?

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Isn't that only necessary for ros2 dependencies?

no, it works for all kinds of packages as long as they provide the right variables (_LIBRARIES, _INCLUDE_DIRS, ...).


install(DIRECTORY include/ DESTINATION include)
install(TARGETS ${MOVEIT_LIB_NAME} EXPORT ${MOVEIT_LIB_NAME}
TARGETS collision_detector_bullet_plugin EXPORT collision_detector_bullet_plugin
LIBRARY DESTINATION lib
ARCHIVE DESTINATION lib
RUNTIME DESTINATION bin
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think the runtime destination should be lib/${PROJECT_NAME}, otherwise all executables will be accessible in the global bin path. That's a change that we should probably apply for the whole codebase.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

OK, I can change this

Copy link
Member

@henningkayser henningkayser left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@jrgnicho I hope you don't mind me hijacking this PR. The missing piece was that the bullet includes weren't configured correctly. ament_target_dependencies does this implicitly. The SYSTEM keyword was added to silence build warnings in bullet headers. I tested this with the MoveItCpp demo and it worked just fine for me.

I'd wait with merging this until the ROS 1 sync that @JafarAbdi is preparing is ready and merged.

@codecov
Copy link

codecov bot commented Jun 16, 2021

Codecov Report

Merging #489 (cd2fd4e) into main (1d12504) will increase coverage by 1.42%.
The diff coverage is n/a.

Impacted file tree graph

@@            Coverage Diff             @@
##             main     #489      +/-   ##
==========================================
+ Coverage   45.18%   46.59%   +1.42%     
==========================================
  Files         169      183      +14     
  Lines       18732    19657     +925     
==========================================
+ Hits         8462     9158     +696     
- Misses      10270    10499     +229     
Impacted Files Coverage Δ
...src/bullet_integration/bullet_cast_bvh_manager.cpp 49.24% <0.00%> (ø)
.../src/bullet_integration/contact_checker_common.cpp 84.06% <0.00%> (ø)
...ction_bullet/collision_detector_allocator_bullet.h 100.00% <0.00%> (ø)
...ullet/bullet_integration/bullet_cast_bvh_manager.h 100.00% <0.00%> (ø)
...t/bullet_integration/bullet_discrete_bvh_manager.h 100.00% <0.00%> (ø)
...sion_detection_bullet/src/collision_env_bullet.cpp 80.13% <0.00%> (ø)
...bullet/src/bullet_integration/ros_bullet_utils.cpp 92.31% <0.00%> (ø)
...bullet/bullet_integration/contact_checker_common.h 100.00% <0.00%> (ø)
...llet/src/bullet_integration/bullet_bvh_manager.cpp 71.93% <0.00%> (ø)
..._detection_bullet/bullet_integration/basic_types.h 100.00% <0.00%> (ø)
... and 5 more

Continue to review full report at Codecov.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update 1d12504...cd2fd4e. Read the comment docs.

@jrgnicho
Copy link
Contributor Author

@henningkayser thanks for fixing that, do you need me to test anything else?

@henningkayser henningkayser merged commit b1d1de4 into moveit:main Jun 28, 2021
@nkalupahana
Copy link
Contributor

Just an FYI, this PR breaks compilation on macOS. I'll bring in a fix when I have time to debug the issue (though @jrgnicho I would appreciate it if you could take a look at the CI logs to see if this is something you know how to fix off the bat). Obviously this isn't anyone's fault, since there's no macOS CI -- all it really shows is the need for it :) I'll make an issue for that later to track my progress.

https://github.com/nkalupahana/ros2-foxy-macos/runs/2936771527?check_suite_focus=true

henningkayser added a commit to henningkayser/moveit2 that referenced this pull request Jun 29, 2021
Co-authored-by: Henning Kayser <henningkayser@picknik.ai>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

3 participants