|
1 |
| -cmake_minimum_required(VERSION 3.5) |
| 1 | +cmake_minimum_required(VERSION 3.20) |
2 | 2 | project(rviz_visual_tools)
|
3 | 3 |
|
4 |
| -# Default to C++14 |
| 4 | +# Default to C++17 |
5 | 5 | if(NOT CMAKE_CXX_STANDARD)
|
6 |
| - set(CMAKE_CXX_STANDARD 14) |
| 6 | + set(CMAKE_CXX_STANDARD 17) |
7 | 7 | endif()
|
8 | 8 |
|
9 | 9 | if(CMAKE_COMPILER_IS_GNUCXX OR CMAKE_CXX_COMPILER_ID MATCHES "Clang")
|
@@ -40,7 +40,21 @@ find_package(rviz_common REQUIRED)
|
40 | 40 | find_package(rviz_rendering REQUIRED)
|
41 | 41 | find_package(rviz_default_plugins REQUIRED)
|
42 | 42 |
|
43 |
| -find_package(Qt5 REQUIRED COMPONENTS Widgets) |
| 43 | + |
| 44 | +find_package(QT NAMES Qt6 Qt5 COMPONENTS Test Widgets) |
| 45 | + |
| 46 | +if(Qt${QT_VERSION_MAJOR} STREQUAL "Qt6") |
| 47 | + find_package(Qt${QT_VERSION_MAJOR} REQUIRED COMPONENTS Test Widgets Core5Compat) |
| 48 | + if(${QT_VERSION} VERSION_LESS 5.15.0) |
| 49 | + function(qt_wrap_cpp out) |
| 50 | + qt5_wrap_cpp(_sources ${ARGN}) |
| 51 | + set("${out}" ${_sources} PARENT_SCOPE) |
| 52 | + endfunction() |
| 53 | + endif() |
| 54 | +elseif()#Qt5 |
| 55 | + find_package(Qt${QT_VERSION_MAJOR} REQUIRED COMPONENTS Test Widgets) |
| 56 | +endif() |
| 57 | + |
44 | 58 |
|
45 | 59 | ## Qt5 boilerplate options from http://doc.qt.io/qt-5/cmake-manual.html
|
46 | 60 | set(CMAKE_INCLUDE_CURRENT_DIR ON)
|
@@ -84,7 +98,12 @@ ament_target_dependencies(${PROJECT_NAME}_gui PUBLIC
|
84 | 98 | rviz_default_plugins
|
85 | 99 | rviz_ogre_vendor
|
86 | 100 | )
|
87 |
| -target_link_libraries(${PROJECT_NAME}_gui PUBLIC Qt5::Widgets) |
| 101 | +if(Qt${QT_VERSION_MAJOR} STREQUAL "Qt6") |
| 102 | + target_link_libraries(${PROJECT_NAME}_gui PUBLIC Qt${QT_VERSION_MAJOR}::Widgets Qt${QT_VERSION_MAJOR}::Core5Compat) |
| 103 | +elseif() |
| 104 | + target_link_libraries(${PROJECT_NAME}_gui PUBLIC Qt${QT_VERSION_MAJOR}::Widgets ) |
| 105 | +endif() |
| 106 | + |
88 | 107 |
|
89 | 108 | # prevent pluginlib from using boost
|
90 | 109 | target_compile_definitions(${PROJECT_NAME}_gui PUBLIC "PLUGINLIB__DISABLE_BOOST_FUNCTIONS")
|
@@ -119,9 +138,16 @@ add_library(${PROJECT_NAME} SHARED
|
119 | 138 | )
|
120 | 139 | target_compile_definitions(${PROJECT_NAME} PRIVATE _USE_MATH_DEFINES)
|
121 | 140 | ament_target_dependencies(${PROJECT_NAME} PUBLIC Eigen3)
|
122 |
| -target_link_libraries(${PROJECT_NAME} |
123 |
| - ${PROJECT_NAME}_remote_control |
124 |
| -) |
| 141 | + |
| 142 | +if(Qt${QT_VERSION_MAJOR} STREQUAL "Qt6") |
| 143 | + target_link_libraries(${PROJECT_NAME} |
| 144 | + ${PROJECT_NAME}_remote_control |
| 145 | + Qt${QT_VERSION_MAJOR}::Core5Compat |
| 146 | + ) |
| 147 | +elseif() |
| 148 | + target_link_libraries(${PROJECT_NAME} ${PROJECT_NAME}_remote_control) |
| 149 | +endif() |
| 150 | + |
125 | 151 | ament_target_dependencies(${PROJECT_NAME}
|
126 | 152 | rclcpp
|
127 | 153 | rclcpp_components
|
|
0 commit comments