summaryrefslogtreecommitdiffstats
path: root/addon/doxywizard/CMakeLists.txt
diff options
context:
space:
mode:
authorDimitri van Heesch <dimitri@stack.nl>2014-12-26 21:13:18 (GMT)
committerDimitri van Heesch <dimitri@stack.nl>2015-07-14 20:01:11 (GMT)
commit333c7c44f1aa3c62f9401b190e45eaff15056d5c (patch)
tree254eee541a9f98d560667a05a3222d2f0a921e3e /addon/doxywizard/CMakeLists.txt
parentc33e03f3cb9f0ae1c00b7e785964c915f4085fe0 (diff)
downloadDoxygen-333c7c44f1aa3c62f9401b190e45eaff15056d5c.zip
Doxygen-333c7c44f1aa3c62f9401b190e45eaff15056d5c.tar.gz
Doxygen-333c7c44f1aa3c62f9401b190e45eaff15056d5c.tar.bz2
Make doxywizard compatible with Qt5
Diffstat (limited to 'addon/doxywizard/CMakeLists.txt')
-rw-r--r--addon/doxywizard/CMakeLists.txt46
1 files changed, 41 insertions, 5 deletions
diff --git a/addon/doxywizard/CMakeLists.txt b/addon/doxywizard/CMakeLists.txt
index d81d2e0..eb97388 100644
--- a/addon/doxywizard/CMakeLists.txt
+++ b/addon/doxywizard/CMakeLists.txt
@@ -1,5 +1,40 @@
if (build_wizard)
+# search for Qt5
+if (NOT force_qt4)
+ find_package(Qt5Core QUIET)
+ if (Qt5Core_FOUND)
+ message(STATUS "Using Qt5")
+ find_package(Qt5 COMPONENTS Widgets Gui Xml)
+ macro(qt_use_modules)
+ qt5_use_modules(${ARGN})
+ endmacro()
+ macro(qt_wrap_cpp)
+ qt5_wrap_cpp(${ARGN})
+ endmacro()
+ macro(qt_add_resources)
+ qt5_add_resources(${ARGN})
+ endmacro()
+ endif()
+endif()
+# fallback to Qt4
+if (NOT Qt5Core_FOUND)
+ if (NOT force_qt4)
+ message(STATUS "Qt5 not found, searching for Qt4 instead...")
+ else()
+ message(STATUS "Using Qt4")
+ endif()
+ find_package(Qt4 REQUIRED COMPONENTS QtCore QtXml QtGui)
+ macro(qt_use_modules)
+ endmacro()
+ macro(qt_wrap_cpp)
+ qt4_wrap_cpp(${ARGN})
+ endmacro()
+ macro(qt_add_resources)
+ qt4_add_resources(${ARGN})
+ endmacro()
+endif()
+
include_directories(
.
${CMAKE_SOURCE_DIR}/src
@@ -11,9 +46,9 @@ set(GENERATED_SRC_WIZARD ${GENERATED_SRC}/doxywizard)
file(MAKE_DIRECTORY ${GENERATED_SRC_WIZARD})
add_definitions(-DQT_ARCH_X86_64 -DQT_NO_CAST_FROM_ASCII -DQT_NO_CAST_TO_ASCII -DUNICODE)
-set(QT_USE_QTXML TRUE)
-find_package(Qt4 REQUIRED)
-include(${QT_USE_FILE})
+if (NOT Qt5Core_FOUND)
+ include(${QT_USE_FILE})
+endif()
# generate settings.h
file(GENERATE OUTPUT ${GENERATED_SRC_WIZARD}/settings.h
@@ -43,7 +78,7 @@ set_source_files_properties(${GENERATED_SRC_WIZARD}/configdoc.cpp PROPERTIES GEN
FLEX_TARGET(config_doxyw config_doxyw.l ${GENERATED_SRC_WIZARD}/config_doxyw.cpp COMPILE_FLAGS "-Pconfig_doxywYY")
-QT4_WRAP_CPP(doxywizard_MOC
+qt_wrap_cpp(doxywizard_MOC
doxywizard.h
expert.h
helplabel.h
@@ -54,7 +89,7 @@ inputstrlist.h
wizard.h
)
-QT4_ADD_RESOURCES(doxywizard_RESOURCES_RCC doxywizard.qrc)
+qt_add_resources(doxywizard_RESOURCES_RCC doxywizard.qrc)
add_executable(doxywizard WIN32
doxywizard.cpp
@@ -71,6 +106,7 @@ ${GENERATED_SRC_WIZARD}/configdoc.cpp
${doxywizard_MOC}
${doxywizard_RESOURCES_RCC}
)
+qt_use_modules(doxywizard Core Gui Widgets Xml)
target_link_libraries(doxywizard
${QT_LIBRARIES} ${QT_QTMAIN_LIBRARY}
)