diff --git a/CMakeLists.txt b/CMakeLists.txt index 98f8d172945bc815251c72cbf6a25ab2442fde43..c0f94b067cc4dc054720c4e2a4dbcee2b8659807 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -2,9 +2,36 @@ CMAKE_MINIMUM_REQUIRED(VERSION 2.8) PROJECT(QtTesting) -IF(NOT QT_FOUND) - FIND_PACKAGE(Qt4 REQUIRED) - INCLUDE( ${QT_USE_FILE} ) +SET(QtTesting_QT_VERSION "4" CACHE STRING "Expected Qt version") +MARK_AS_ADVANCED(QtTesting_QT_VERSION) +SET_PROPERTY(CACHE QtTesting_QT_VERSION PROPERTY STRINGS 4 5) +IF(NOT (QtTesting_QT_VERSION VERSION_EQUAL "4" OR + QtTesting_QT_VERSION VERSION_EQUAL "5")) + message(FATAL_ERROR "Expected value for QtTesting_QT_VERSION is either '4' or '5'") +ENDIF() + +IF(QtTesting_QT_VERSION VERSION_GREATER "4") + IF(NOT Qt5Test_FOUND) + FIND_PACKAGE(Qt5Widgets REQUIRED) + FIND_PACKAGE(Qt5Test REQUIRED) + ADD_DEFINITIONS( + ${Qt5Widgets_DEFINITIONS} + ${Qt5Test_DEFINITIONS} + ) + INCLUDE_DIRECTORIES( + ${Qt5Widgets_INCLUDE_DIRS} + ${Qt5Test_INCLUDE_DIRS} + ) + SET(QT_LIBRARIES + ${Qt5Widgets_LIBRARIES} + ${Qt5Test_LIBRARIES} + ) + ENDIF() +ELSE() + IF(NOT QT_FOUND) + FIND_PACKAGE(Qt4 REQUIRED) + INCLUDE( ${QT_USE_FILE} ) + ENDIF() ENDIF() IF(NOT DEFINED QT_TESTING_WITH_PYTHON) @@ -79,7 +106,7 @@ INCLUDE_DIRECTORIES( GET_DIRECTORY_PROPERTY(include_dirs_tmp INCLUDE_DIRECTORIES) SET_DIRECTORY_PROPERTIES(PROPERTIES INCLUDE_DIRECTORIES "${MOC_INCLUDE_DIRS}") -QT4_WRAP_CPP(MOC_BUILT_SOURCES +SET(MOC_SRCS pq3DViewEventTranslator.h pqAbstractButtonEventTranslator.h pqAbstractItemViewEventTranslator.h @@ -106,14 +133,31 @@ QT4_WRAP_CPP(MOC_BUILT_SOURCES pqTreeViewEventPlayer.h pqTreeViewEventTranslator.h pqWidgetEventTranslator.h - ${PYTHON_MOCS} ) +IF(QtTesting_QT_VERSION VERSION_GREATER "4") + QT5_WRAP_CPP(MOC_BUILT_SOURCES + ${MOC_SRCS} + ${PYTHON_MOCS} + ) +ELSE() + QT4_WRAP_CPP(MOC_BUILT_SOURCES + ${MOC_SRCS} + ${PYTHON_MOCS} + ) +ENDIF() + SET_DIRECTORY_PROPERTIES(PROPERTIES INCLUDE_DIRECTORIES "${include_dirs_tmp}") -QT4_WRAP_UI(UI_BUILT_SOURCES - pqRecordEventsDialog.ui -) +IF(QtTesting_QT_VERSION VERSION_GREATER "4") + QT5_WRAP_UI(UI_BUILT_SOURCES + pqRecordEventsDialog.ui + ) +ELSE() + QT4_WRAP_UI(UI_BUILT_SOURCES + pqRecordEventsDialog.ui + ) +ENDIF() SET(QtTesting_SOURCES pq3DViewEventPlayer.cxx diff --git a/Examples/CMakeLists.txt b/Examples/CMakeLists.txt index 1cc7b2169ad3e65547005682646407152d981a85..c343fe01a0d3c3f96fdfc113481a074750bf4c2d 100644 --- a/Examples/CMakeLists.txt +++ b/Examples/CMakeLists.txt @@ -16,8 +16,13 @@ SET (MOC_FILES INCLUDE_DIRECTORIES(${CMAKE_CURRENT_BINARY_DIR}) -QT4_WRAP_UI (EXAMPLE_UI_BUILT_SOURCES ${UI_FILES}) -QT4_WRAP_CPP(EXAMPLE_MOC_BUILT_SOURCES ${MOC_FILES}) +IF(QtTesting_QT_VERSION VERSION_GREATER "4") + QT5_WRAP_UI (EXAMPLE_UI_BUILT_SOURCES ${UI_FILES}) + QT5_WRAP_CPP(EXAMPLE_MOC_BUILT_SOURCES ${MOC_FILES}) +ELSE() + QT4_WRAP_UI (EXAMPLE_UI_BUILT_SOURCES ${UI_FILES}) + QT4_WRAP_CPP(EXAMPLE_MOC_BUILT_SOURCES ${MOC_FILES}) +ENDIF() add_executable (TestingDemo ${SOURCE_FILES} @@ -27,3 +32,5 @@ add_executable (TestingDemo target_link_libraries(TestingDemo QtTesting) +set_target_properties(TestingDemo PROPERTIES + COMPILE_FLAGS "${Qt5Widgets_EXECUTABLE_COMPILE_FLAGS}")