Skip to content

Commit 1fa0e7a

Browse files
authored
Fix include paths (#136)
* Fix include paths Signed-off-by: Pablo Garrido <pablogs9@gmail.com> * Update Signed-off-by: Pablo Garrido <pablogs9@gmail.com> * Update Signed-off-by: Pablo Garrido <pablogs9@gmail.com>
1 parent d6cd058 commit 1fa0e7a

2 files changed

Lines changed: 25 additions & 29 deletions

File tree

CMakeLists.txt

Lines changed: 24 additions & 28 deletions
Original file line numberDiff line numberDiff line change
@@ -26,32 +26,25 @@ message(STATUS "Using Micro XRCE-DDS middleware")
2626
set(MIDDLEWARE "microxrcedds")
2727
endif()
2828

29-
# message(FATAL_ERROR "Failed to get cmake properties")
30-
31-
externalproject_add(libmicroros_project
32-
PREFIX ${CMAKE_BINARY_DIR}/libmicroros-prefix
33-
SOURCE_DIR ${COMPONENT_DIR}
34-
BINARY_DIR ${COMPONENT_DIR}
35-
CONFIGURE_COMMAND ""
36-
BUILD_COMMAND
29+
execute_process(
30+
WORKING_DIRECTORY ${COMPONENT_DIR}
31+
COMMAND
3732
${submake} -j -f libmicroros.mk
38-
X_CC=${CMAKE_C_COMPILER}
39-
X_AR=${CMAKE_AR}
40-
X_STRIP=${CMAKE_STRIP}
41-
X_CFLAGS=${CMAKE_C_FLAGS}
42-
X_CXX=${CMAKE_CXX_COMPILER}
43-
X_CXXFLAGS=${CMAKE_CXX_FLAGS}
44-
MIDDLEWARE=${MIDDLEWARE}
45-
BUILD_DIR=${CMAKE_BINARY_DIR}
46-
IDF_PATH=${IDF_PATH}
47-
IDF_TARGET=${IDF_TARGET}
48-
APP_COLCON_META=${APP_COLCON_META}
49-
IDF_VERSION_MAJOR=${IDF_VERSION_MAJOR}
50-
IDF_VERSION_MINOR=${IDF_VERSION_MINOR}
51-
EXTRA_ROS_PACKAGES=${EXTRA_ROS_PACKAGES}
52-
INSTALL_COMMAND ""
53-
BUILD_BYPRODUCTS ${COMPONENT_DIR}/libmicroros.a
54-
)
33+
X_CC=${CMAKE_C_COMPILER}
34+
X_AR=${CMAKE_AR}
35+
X_STRIP=${CMAKE_STRIP}
36+
X_CFLAGS=${CMAKE_C_FLAGS}
37+
X_CXX=${CMAKE_CXX_COMPILER}
38+
X_CXXFLAGS=${CMAKE_CXX_FLAGS}
39+
MIDDLEWARE=${MIDDLEWARE}
40+
BUILD_DIR=${CMAKE_BINARY_DIR}
41+
IDF_PATH=${IDF_PATH}
42+
IDF_TARGET=${IDF_TARGET}
43+
APP_COLCON_META=${APP_COLCON_META}
44+
IDF_VERSION_MAJOR=${IDF_VERSION_MAJOR}
45+
IDF_VERSION_MINOR=${IDF_VERSION_MINOR}
46+
EXTRA_ROS_PACKAGES=${EXTRA_ROS_PACKAGES}
47+
)
5548

5649
add_prebuilt_library(libmicroros-prebuilt ""
5750
REQUIRES lwip)
@@ -61,9 +54,12 @@ add_dependencies(libmicroros-prebuilt libmicroros_project)
6154
set_target_properties(libmicroros-prebuilt PROPERTIES IMPORTED_LOCATION ${COMPONENT_DIR}/libmicroros.a)
6255
target_include_directories(libmicroros-prebuilt INTERFACE ${COMPONENT_DIR}/include)
6356

64-
set(INCLUDE_ROS2_PACKAGES rmw;rcl;rcl_action;rcl_lifecycle;rcl_logging_interface;rosidl_runtime_c;rosidl_typesupport_interface)
65-
foreach(pkg ${INCLUDE_ROS2_PACKAGES})
66-
target_include_directories(libmicroros-prebuilt INTERFACE ${COMPONENT_DIR}/include/${pkg})
57+
file(GLOB include_folders LIST_DIRECTORIES true CONFIGURE_DEPENDS ${COMPONENT_DIR}/include/*)
58+
foreach(include_folder ${include_folders})
59+
if(IS_DIRECTORY ${include_folder})
60+
get_filename_component(folder_name ${include_folder} NAME)
61+
target_include_directories(libmicroros-prebuilt INTERFACE ${COMPONENT_DIR}/include/${folder_name})
62+
endif()
6763
endforeach()
6864

6965
add_dependencies(${COMPONENT_LIB} libmicroros-prebuilt)

libmicroros.mk

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -43,7 +43,7 @@ $(EXTENSIONS_DIR)/micro_ros_dev/install:
4343
git clone -b ros2 https://github.com/ament/googletest src/googletest; \
4444
git clone -b master https://github.com/ros2/ament_cmake_ros src/ament_cmake_ros; \
4545
git clone -b master https://github.com/ament/ament_index src/ament_index; \
46-
colcon build --cmake-args -DBUILD_TESTING=OFF;
46+
colcon build --cmake-args -DBUILD_TESTING=OFF -DCMAKE_C_COMPILER=gcc -DCMAKE_CXX_COMPILER=gcc;
4747

4848
$(EXTENSIONS_DIR)/micro_ros_src/src:
4949
rm -rf micro_ros_src; \

0 commit comments

Comments
 (0)