-
Notifications
You must be signed in to change notification settings - Fork 6
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 headers destination installed by ament_auto_package #2
base: master
Are you sure you want to change the base?
Conversation
Signed-off-by: Kotaro Yoshimoto <[email protected]>
Can you review this? |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thank you!
Could you check the docker-build-and-push-main
CI on autowarefoundation/autoware with this branch?
Running |
https://github.com/HansRobo/autoware/actions/runs/9792120819/job/27037305038#step:8:1500
It looks like the test failed by completely unrelated error. So I'll test it in my forked repository. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The docker-build-and-push
check using this change was failed.
@HansRobo We need to fix it to merge this PR.
/autoware/src/core/autoware_lanelet2_extension/autoware_lanelet2_extension/lib/query.cpp:31:10: fatal error: autoware_utils/autoware_utils.hpp: No such file or directory
https://github.com/youtalk/autoware/actions/runs/9802793025/job/27067969978?pr=63#step:5:15509
I have found that the current changes are insufficient, and am looking into ways to fix them. For example, previously |
I am not sure I understand how this change solves the underlay/overlay problem, but I will assume it does. The # export and install include directory of this package if it has one
if(EXISTS "${CMAKE_CURRENT_SOURCE_DIR}/include")
ament_export_include_directories("include")
install(DIRECTORY include/ DESTINATION include/${PROJECT_NAME})
endif() The files are installed (= copied) to # export and install include directory of this package if it has one
if(EXISTS "${CMAKE_CURRENT_SOURCE_DIR}/include")
ament_export_include_directories("include/${PROJECT_NAME}") # <- This!
install(DIRECTORY include/ DESTINATION include/${PROJECT_NAME})
endif() |
@HansRobo Can you let me know if the following is somehow related to this? Here we are suggesting the developers to export their headers with the following structure in their
This is a manual suggestion and we are planning to enforce this structure for all packages within autoware directory. Would this partially solve this issue? Or is it not related at all? |
The structure inside the include directory is not directly related to the issue.
If the sentense means the install results is like below, it is not appropriate.
In conclusion, a secure install directory structure is as follows:
The reasons why the former is inappropriate and the latter is appropriate are explained in detail in ros2/ros2#1150. Quickly, The most dangerous action here is to register P.S. Your mention reminded me of this pull-request. Thank you. |
See ament#540. This is a copy of it.