mirror of
https://github.com/reactos/CMake.git
synced 2024-12-12 13:56:00 +00:00
2ef640819f
Some AUTOGEN tests require the Qt core libraries only and some require the Qt gui libraries to function. This replaces the AutogenTest.cmake script with two specific AutogenCoreTest.cmake and AutogenGuiTest.cmake scripts that are included on demand.
56 lines
1.2 KiB
CMake
56 lines
1.2 KiB
CMake
|
|
# Tell find_package(Qt5) where to find Qt.
|
|
if(QT_QMAKE_EXECUTABLE)
|
|
get_filename_component(Qt_BIN_DIR "${QT_QMAKE_EXECUTABLE}" PATH)
|
|
get_filename_component(Qt_PREFIX_DIR "${Qt_BIN_DIR}" PATH)
|
|
list(APPEND CMAKE_PREFIX_PATH ${Qt_PREFIX_DIR})
|
|
endif()
|
|
|
|
if (QT_TEST_VERSION EQUAL 4)
|
|
|
|
find_package(Qt4 REQUIRED)
|
|
include(UseQt4)
|
|
|
|
set(QT_QTCORE_TARGET Qt4::QtCore)
|
|
|
|
# Qt macros
|
|
macro(qtx_wrap_cpp)
|
|
qt4_wrap_cpp(${ARGN})
|
|
endmacro()
|
|
macro(qtx_generate_moc)
|
|
qt4_generate_moc(${ARGN})
|
|
endmacro()
|
|
|
|
elseif(QT_TEST_VERSION EQUAL 5)
|
|
|
|
find_package(Qt5Widgets REQUIRED)
|
|
|
|
set(QT_QTCORE_TARGET Qt5::Core)
|
|
set(QT_LIBRARIES Qt5::Widgets)
|
|
|
|
# Include directories
|
|
include_directories(${Qt5Widgets_INCLUDE_DIRS})
|
|
|
|
# Definitions
|
|
if(Qt5_POSITION_INDEPENDENT_CODE AND CMAKE_CXX_COMPILE_OPTIONS_PIC)
|
|
add_definitions(${CMAKE_CXX_COMPILE_OPTIONS_PIC})
|
|
endif()
|
|
|
|
# Qt macros
|
|
macro(qtx_wrap_cpp)
|
|
qt5_wrap_cpp(${ARGN})
|
|
endmacro()
|
|
macro(qtx_generate_moc)
|
|
qt5_generate_moc(${ARGN})
|
|
endmacro()
|
|
|
|
else()
|
|
message(SEND_ERROR "Invalid Qt version specified: ${QT_TEST_VERSION}")
|
|
endif()
|
|
|
|
# Get Qt compile features
|
|
get_property(QT_COMPILE_FEATURES
|
|
TARGET ${QT_QTCORE_TARGET}
|
|
PROPERTY INTERFACE_COMPILE_FEATURES
|
|
)
|