Skip to content

Commit 3fc0b66

Browse files
committed
Order both, interface and other include directories together
Signed-off-by: Robert Haschke <[email protected]>
1 parent ddd7662 commit 3fc0b66

File tree

1 file changed

+9
-6
lines changed

1 file changed

+9
-6
lines changed

ament_cmake_target_dependencies/cmake/ament_target_dependencies.cmake

Lines changed: 9 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -130,18 +130,21 @@ function(ament_target_dependencies target)
130130
endif()
131131

132132
# fetch include directories of all transitive dependencies (already sorted)
133-
ament_get_recursive_properties(interface_include_dirs_ordered _ ${interfaces})
133+
ament_get_recursive_properties(interface_include_dirs _ ${interfaces})
134+
# combine with include_dirs
135+
list_append_unique(interface_include_dirs ${include_dirs})
136+
ament_include_directories_order(ordered_include_dirs ${interface_include_dirs})
134137

135-
# the interface include dirs are used privately - just to ensure proper ordering
136-
# the interfaces cover the public case
138+
# ordered inlcude dirs are used privately - just to ensure proper ordering
137139
target_include_directories(${target} ${system_keyword}
138-
PRIVATE ${interface_include_dirs_ordered})
140+
PRIVATE ${ordered_include_dirs})
139141

140-
ament_include_directories_order(ordered_include_dirs ${include_dirs})
142+
# the following statements cover transitive forwarding
141143
target_link_libraries(${target}
142144
${optional_keyword} ${interfaces})
143145
target_include_directories(${target} ${system_keyword}
144-
${required_keyword} ${ordered_include_dirs})
146+
${required_keyword} ${include_dirs})
147+
145148
if(NOT ARG_INTERFACE)
146149
ament_libraries_deduplicate(unique_libraries ${libraries})
147150
target_link_libraries(${target}

0 commit comments

Comments
 (0)