AutogenTest.cmake 1.2 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253
  1. # Tell find_package(Qt5) where to find Qt.
  2. if(QT_QMAKE_EXECUTABLE)
  3. get_filename_component(Qt_BIN_DIR "${QT_QMAKE_EXECUTABLE}" PATH)
  4. get_filename_component(Qt_PREFIX_DIR "${Qt_BIN_DIR}" PATH)
  5. list(APPEND CMAKE_PREFIX_PATH ${Qt_PREFIX_DIR})
  6. endif()
  7. if (QT_TEST_VERSION STREQUAL 4)
  8. find_package(Qt4 REQUIRED)
  9. include(UseQt4)
  10. set(QT_QTCORE_TARGET Qt4::QtCore)
  11. set(QT_QTGUI_TARGET Qt4::QtGui)
  12. # Qt macros
  13. macro(qtx_wrap_cpp)
  14. qt4_wrap_cpp(${ARGN})
  15. endmacro()
  16. macro(qtx_generate_moc)
  17. qt4_generate_moc(${ARGN})
  18. endmacro()
  19. elseif(QT_TEST_VERSION STREQUAL 5)
  20. find_package(Qt5Widgets REQUIRED)
  21. set(QT_QTCORE_TARGET Qt5::Core)
  22. set(QT_QTGUI_TARGET Qt5::Widgets)
  23. include_directories(${Qt5Widgets_INCLUDE_DIRS})
  24. set(QT_LIBRARIES Qt5::Widgets)
  25. if(Qt5_POSITION_INDEPENDENT_CODE AND CMAKE_CXX_COMPILE_OPTIONS_PIC)
  26. add_definitions(${CMAKE_CXX_COMPILE_OPTIONS_PIC})
  27. endif()
  28. # Qt macros
  29. macro(qtx_wrap_cpp)
  30. qt5_wrap_cpp(${ARGN})
  31. endmacro()
  32. macro(qtx_generate_moc)
  33. qt5_generate_moc(${ARGN})
  34. endmacro()
  35. else()
  36. message(SEND_ERROR "Invalid Qt version specified: ${QT_TEST_VERSION}")
  37. endif()
  38. # Get Qt compile features
  39. get_property(QT_COMPILE_FEATURES
  40. TARGET ${QT_QTCORE_TARGET}
  41. PROPERTY INTERFACE_COMPILE_FEATURES
  42. )