Mercurial > hg > orthanc-stone
changeset 1040:14c0a29cd9ec
qt and lsb
author | Sebastien Jodogne <s.jodogne@gmail.com> |
---|---|
date | Tue, 08 Oct 2019 11:19:58 +0200 |
parents | 3a35d8397559 |
children | 95939fa925f6 |
files | Framework/OpenGL/IOpenGLContext.h Resources/CMake/QtConfiguration.cmake |
diffstat | 2 files changed, 71 insertions(+), 51 deletions(-) [+] |
line wrap: on
line diff
--- a/Framework/OpenGL/IOpenGLContext.h Mon Oct 07 22:37:24 2019 +0200 +++ b/Framework/OpenGL/IOpenGLContext.h Tue Oct 08 11:19:58 2019 +0200 @@ -34,7 +34,7 @@ { } - virtual bool IsContextLost() = 0; + virtual bool IsContextLost() = 0; virtual void MakeCurrent() = 0; @@ -46,10 +46,9 @@ virtual void* DebugGetInternalContext() const = 0; - // This is for manual context loss (debug purposes) - virtual void SetLostContext() = 0; + // This is for manual context loss (debug purposes) + virtual void SetLostContext() = 0; virtual void RestoreLostContext() = 0; - }; } }
--- a/Resources/CMake/QtConfiguration.cmake Mon Oct 07 22:37:24 2019 +0200 +++ b/Resources/CMake/QtConfiguration.cmake Tue Oct 08 11:19:58 2019 +0200 @@ -20,72 +20,93 @@ set(CMAKE_AUTOMOC OFF) set(CMAKE_AUTOUIC OFF) -# Find the QtWidgets library -find_package(Qt5Widgets QUIET) +if ("${CMAKE_SYSTEM_VERSION}" STREQUAL "LinuxStandardBase") + # Linux Standard Base version 5 ships Qt 4.2.3 + include(Qt4Macros) -if (Qt5Widgets_FOUND) - message("Qt5 has been detected") - find_package(Qt5Core REQUIRED) - link_libraries( - Qt5::Widgets - Qt5::Core + set(QT_UIC_EXECUTABLE ${LSB_PATH}/bin/uic) + set(QT_MOC_EXECUTABLE ${LSB_PATH}/bin/moc) + + include_directories( + ${LSB_PATH}/include/QtCore + ${LSB_PATH}/include/QtGui + ${LSB_PATH}/include/QtOpenGL ) - if (ENABLE_OPENGL) - link_libraries( - Qt5::QtOpenGL - ) - endif() - - # Create aliases for the CMake commands - macro(ORTHANC_QT_WRAP_UI) - QT5_WRAP_UI(${ARGN}) - endmacro() - - macro(ORTHANC_QT_WRAP_CPP) - QT5_WRAP_CPP(${ARGN}) - endmacro() - -else() - message("Qt5 has not been found, trying with Qt4") - find_package(Qt4 REQUIRED QtGui) - link_libraries( - Qt4::QtGui - ) - - if (ENABLE_OPENGL) - link_libraries( - Qt4::QtOpenGL - ) - endif() - - # Create aliases for the CMake commands macro(ORTHANC_QT_WRAP_UI) QT4_WRAP_UI(${ARGN}) endmacro() macro(ORTHANC_QT_WRAP_CPP) QT4_WRAP_CPP(${ARGN}) - endmacro() + endmacro() + + link_libraries(QtCore QtGui QtOpenGL) +else() + # Not using Linux Standard Base + # Find the QtWidgets library + find_package(Qt5Widgets QUIET) + + if (Qt5Widgets_FOUND) + message("Qt5 has been detected") + find_package(Qt5Core REQUIRED) + link_libraries( + Qt5::Widgets + Qt5::Core + ) + + if (ENABLE_OPENGL) + find_package(Qt5OpenGL REQUIRED) + link_libraries( + Qt5::OpenGL + ) + endif() + + # Create aliases for the CMake commands + macro(ORTHANC_QT_WRAP_UI) + QT5_WRAP_UI(${ARGN}) + endmacro() + + macro(ORTHANC_QT_WRAP_CPP) + QT5_WRAP_CPP(${ARGN}) + endmacro() + + else() + message("Qt5 has not been found, trying with Qt4") + find_package(Qt4 REQUIRED QtGui) + link_libraries( + Qt4::QtGui + ) + + if (ENABLE_OPENGL) + find_package(Qt4 REQUIRED QtOpenGL) + link_libraries( + Qt4::QtOpenGL + ) + endif() + + # Create aliases for the CMake commands + macro(ORTHANC_QT_WRAP_UI) + QT4_WRAP_UI(${ARGN}) + endmacro() + + macro(ORTHANC_QT_WRAP_CPP) + QT4_WRAP_CPP(${ARGN}) + endmacro() + endif() endif() -list(APPEND QT_SOURCES - ${ORTHANC_STONE_ROOT}/Applications/Qt/QCairoWidget.cpp - ) - -ORTHANC_QT_WRAP_CPP(QT_SOURCES - ${ORTHANC_STONE_ROOT}/Applications/Qt/QCairoWidget.h - ) - if (ENABLE_STONE_DEPRECATED) list(APPEND QT_SOURCES + ${ORTHANC_STONE_ROOT}/Applications/Qt/QCairoWidget.cpp + ${ORTHANC_STONE_ROOT}/Applications/Qt/QStoneMainWindow.cpp ${ORTHANC_STONE_ROOT}/Applications/Qt/QtStoneApplicationRunner.cpp - ${ORTHANC_STONE_ROOT}/Applications/Qt/QStoneMainWindow.cpp ) ORTHANC_QT_WRAP_CPP(QT_SOURCES + ${ORTHANC_STONE_ROOT}/Applications/Qt/QCairoWidget.h ${ORTHANC_STONE_ROOT}/Applications/Qt/QStoneMainWindow.h ) endif()