diff --git a/visualization/CMakeLists.txt b/visualization/CMakeLists.txt index 5d23d982..5065bc9f 100644 --- a/visualization/CMakeLists.txt +++ b/visualization/CMakeLists.txt @@ -10,6 +10,17 @@ find_package(catkin REQUIRED COMPONENTS rviz ) +# rviz transitively includes OGRE headers which break with `-Wall -Werror` +# so isolate these include dirs and add them as SYSTEM include where needed. +set(rviz_OGRE_INCLUDE_DIRS) +foreach(header IN ITEMS OgreRoot.h OgreOverlay.h) + find_path(include_dir ${header} + HINTS ${catkin_INCLUDE_DIRS} + NO_DEFAULT_PATH) + list(REMOVE_ITEM catkin_INCLUDE_DIRS "${include_dir}") + list(APPEND rviz_OGRE_INCLUDE_DIRS "${include_dir}") +endforeach() + # definition needed for boost/math/constants/constants.hpp included by Ogre to compile add_definitions(-DBOOST_MATH_DISABLE_FLOAT128) diff --git a/visualization/motion_planning_tasks/src/CMakeLists.txt b/visualization/motion_planning_tasks/src/CMakeLists.txt index f2eaa354..832134c7 100644 --- a/visualization/motion_planning_tasks/src/CMakeLists.txt +++ b/visualization/motion_planning_tasks/src/CMakeLists.txt @@ -39,6 +39,9 @@ target_include_directories(${MOVEIT_LIB_NAME} PUBLIC $ PUBLIC ${catkin_INCLUDE_DIRS} ) +target_include_directories(${MOVEIT_LIB_NAME} SYSTEM + PUBLIC ${rviz_OGRE_INCLUDE_DIRS} +) install(TARGETS ${MOVEIT_LIB_NAME} ARCHIVE DESTINATION ${CATKIN_PACKAGE_LIB_DESTINATION} diff --git a/visualization/visualization_tools/CMakeLists.txt b/visualization/visualization_tools/CMakeLists.txt index 7ee5bd16..49116a1e 100644 --- a/visualization/visualization_tools/CMakeLists.txt +++ b/visualization/visualization_tools/CMakeLists.txt @@ -35,6 +35,9 @@ target_include_directories(${MOVEIT_LIB_NAME} PUBLIC include PRIVATE ${catkin_INCLUDE_DIRS} ) +target_include_directories(${MOVEIT_LIB_NAME} SYSTEM + PUBLIC ${rviz_OGRE_INCLUDE_DIRS} +) add_dependencies(${MOVEIT_LIB_NAME} ${catkin_EXPORTED_TARGETS}) install(DIRECTORY include/ DESTINATION ${CATKIN_GLOBAL_INCLUDE_DESTINATION})