-
Notifications
You must be signed in to change notification settings - Fork 1
Expand file tree
/
Copy pathQtVersionWrapper.cmake
More file actions
49 lines (43 loc) · 1.3 KB
/
QtVersionWrapper.cmake
File metadata and controls
49 lines (43 loc) · 1.3 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
macro(FIND_QTX minVersion)
find_package(Qt5Core QUIET)
if(Qt5Core_FOUND)
message(STATUS "Building with Qt5 support")
else()
set(QT_MIN_VERSION ${minVersion})
find_package(Qt4 REQUIRED)
endif(Qt5Core_FOUND)
if(Qt5Core_FOUND AND WIN32)
set(QT_QTMAIN_LIBRARY ${Qt5Core_QTMAIN_LIBRARIES})
endif(Qt5Core_FOUND AND WIN32)
endmacro()
macro(QTX_ADD_RESOURCES)
if("${Qt5Core_VERSION_MAJOR}" STREQUAL "5")
qt5_add_resources(${ARGV})
else()
qt4_add_resources(${ARGV})
endif()
endmacro()
macro(QTX_USE_MODULES)
if("${Qt5Core_VERSION_MAJOR}" STREQUAL "5")
qt5_use_modules(${ARGV})
else()
set(MODULES ${ARGV})
list_replace(MODULES "Widgets" "Gui" MODULES)
qt4_use_modules(${MODULES})
endif()
endmacro()
macro (QTX_WRAP_CPP outfiles )
if("${Qt5Core_VERSION_MAJOR}" STREQUAL "5")
qt5_wrap_cpp(${outfiles} ${ARGN})
else()
qt4_wrap_cpp(${outfiles} ${ARGN})
endif()
endmacro ()
function(LIST_REPLACE LIST_NAME OLDVALUE NEWVALUE RESULT)
list(FIND ${LIST_NAME} ${OLDVALUE} INDEX)
if(NOT ${INDEX} EQUAL -1)
list(REMOVE_AT ${LIST_NAME} ${INDEX})
list(INSERT ${LIST_NAME} ${INDEX} ${NEWVALUE})
endif()
set(${RESULT} ${${LIST_NAME}} PARENT_SCOPE)
endfunction()