dust3d/thirdparty/Qt-Color-Widgets/cmake/qt-configuration.cmake

59 lines
1.8 KiB
CMake
Raw Normal View History

function (select_qt
QT_SUPPORTED_VERSIONS i_qt_supported_versions
QT_DEFAULT_VERSION i_default_qt_version)
set (QT_VERSION ${i_default_qt_version} CACHE STRING
"Qt version to build against")
set_property (
CACHE QT_VERSION
PROPERTY STRINGS ${i_qt_supported_versions})
endfunction (select_qt)
macro (find_qt
QT_SUPPORTED_VERSIONS i_qt_supported_versions
REQUIRED_COMPONENTS i_required_components
OPTIONAL_COMPONENTS i_optional_components)
# Auto generate moc files
if (4 EQUAL QT_VERSION)
find_package (Qt4 4.8 REQUIRED
COMPONENTS
${i_required_components}
OPTIONAL_COMPONENTS
${i_optional_components})
elseif (5 EQUAL QT_VERSION)
find_package (Qt5 5.9 REQUIRED
COMPONENTS
${i_required_components}
OPTIONAL_COMPONENTS
${i_optional_components})
else (5 EQUAL QT_VERSION)
message (FATAL_ERROR "Unsupported version of Qt: ${QT_VERSION}")
endif (4 EQUAL QT_VERSION)
endmacro (find_qt)
function (use_qt
TARGET_NAME i_target_name
QT_SUPPORTED_VERSIONS i_qt_supported_versions
REQUIRED_COMPONENTS i_required_components
OPTIONAL_COMPONENTS i_optional_components)
if (4 EQUAL QT_VERSION)
foreach (COMPONENT IN LISTS i_required_components, i_optional_components)
target_link_libraries (${i_target_name}
PRIVATE
Qt4::${COMPONENT}
)
endforeach (COMPONENT IN LISTS i_required_components, i_optional_components)
elseif (5 EQUAL QT_VERSION)
foreach (COMPONENT IN LISTS i_required_components)
target_link_libraries (${i_target_name}
PRIVATE
Qt5::${COMPONENT}
)
endforeach (COMPONENT IN LISTS i_required_components, i_optional_components)
else (5 EQUAL QT_VERSION)
message (FATAL_ERROR "Unsupported version of Qt: ${QT_VERSION}")
endif (4 EQUAL QT_VERSION)
endfunction (use_qt)