1- # Qt4-support (more info: http://qtnode.net/wiki?title=Qt_with_cmake)
2- find_package(Qt4 REQUIRED)
3- set(QT_USE_QTOPENGL TRUE)
4- set(QT_USE_QTXML TRUE)
5- # include the files enabled above
6- include(${QT_USE_FILE})
1+
2+ if(OCTOVIS_QT5)
3+ find_package(Qt5Core REQUIRED)
4+ find_package(Qt5Gui REQUIRED)
5+ find_package(Qt5OpenGL REQUIRED)
6+ find_package(Qt5Widgets REQUIRED)
7+ find_package(Qt5Xml REQUIRED)
8+ set(QT_LIBRARIES Qt5::Core Qt5::Gui Qt5::OpenGL Qt5::Widgets Qt5::Xml "${OPENGL_gl_LIBRARY}" "${OPENGL_glu_LIBRARY}")
9+ include_directories(
10+ "${Qt5Core_INCLUDE_DIRS}"
11+ "${Qt5Gui_INCLUDE_DIRS}"
12+ "${Qt5OpenGL_INCLUDE_DIRS}"
13+ "${Qt5Widgets_INCLUDE_DIRS}"
14+ "${Qt5Xml_INCLUDE_DIRS}"
15+ )
16+ else(OCTOVIS_QT5)
17+ # Qt4-support (more info: http://qtnode.net/wiki?title=Qt_with_cmake)
18+ find_package(Qt4 REQUIRED)
19+ set(QT_USE_QTOPENGL TRUE)
20+ set(QT_USE_QTXML TRUE)
21+ # include the files enabled above
22+ include(${QT_USE_FILE})
23+ endif(OCTOVIS_QT5)
724
825# Mac OS X seems to require special linker flags:
926IF(${CMAKE_SYSTEM_NAME} MATCHES "Darwin")
@@ -34,7 +51,11 @@ set(viewer_SRCS
3451)
3552
3653# Resource files (icons, ...)
37- QT4_ADD_RESOURCES(viewer_RES src/icons.qrc)
54+ if(OCTOVIS_QT5)
55+ QT5_ADD_RESOURCES(viewer_RES src/icons.qrc)
56+ else(OCTOVIS_QT5)
57+ QT4_ADD_RESOURCES(viewer_RES src/icons.qrc)
58+ endif(OCTOVIS_QT5)
3859
3960#found QGLViewer lib dir
4061link_directories(${QGLViewer_LIBRARY_DIR})
@@ -53,7 +74,11 @@ SET(viewer_MOC_HDRS
5374)
5475
5576# generate list of MOC srcs:
56- QT4_WRAP_CPP(viewer_MOC_SRCS ${viewer_MOC_HDRS})
77+ if(OCTOVIS_QT5)
78+ QT5_WRAP_CPP(viewer_MOC_SRCS ${viewer_MOC_HDRS})
79+ else(OCTOVIS_QT5)
80+ QT4_WRAP_CPP(viewer_MOC_SRCS ${viewer_MOC_HDRS})
81+ endif(OCTOVIS_QT5)
5782
5883# let cmake generate ui*.h files from .ui files (Qt Designer):
5984SET(viewer_UIS
@@ -62,7 +87,11 @@ SET(viewer_UIS
6287 ${PROJECT_SOURCE_DIR}/include/octovis/ViewerSettingsPanel.ui
6388 ${PROJECT_SOURCE_DIR}/include/octovis/ViewerSettingsPanelCamera.ui
6489)
65- QT4_WRAP_UI(viewer_UIS_H ${viewer_UIS})
90+ if(OCTOVIS_QT5)
91+ QT5_WRAP_UI(viewer_UIS_H ${viewer_UIS})
92+ else(OCTOVIS_QT5)
93+ QT4_WRAP_UI(viewer_UIS_H ${viewer_UIS})
94+ endif(OCTOVIS_QT5)
6695
6796# Don't forget to include output directory, otherwise
6897# the UI file won't be wrapped!
@@ -108,8 +137,8 @@ target_link_libraries(octovis
108137
109138# special handling of MacOS X:
110139IF(${CMAKE_SYSTEM_NAME} MATCHES "Darwin")
111- add_custom_command(TARGET octovis POST_BUILD
112- COMMAND install_name_tool -change libQGLViewer.2.dylib /opt/local/lib/libQGLViewer.2.dylib ${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/octovis
140+ add_custom_command(TARGET octovis POST_BUILD
141+ COMMAND install_name_tool -change libQGLViewer.2.dylib /opt/local/lib/libQGLViewer.2.dylib ${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/octovis
113142 )
114143ENDIF(${CMAKE_SYSTEM_NAME} MATCHES "Darwin")
115144
0 commit comments