aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorChristian Tismer <tismer@stackless.com>2017-05-01 11:44:19 +0200
committerChristian Tismer <tismer@stackless.com>2017-05-09 08:34:59 +0000
commita80a6eb94433529a6d984e8ff22874f7dff48eea (patch)
tree9e6caead2f885064700caada4d5602b72fd4a4ac
parent98b6c69ee91a78d0eb7f20130272a612770fbbbe (diff)
Rewrite CMake scripts and generate includes for global.h.in
The CMake files are repeating code three times, which should be avoided. Also, the global.h.in contained too many unconditional includes, which becomes relevant for the PySide 5.9 branch when missing includes are no longer ignored. Instead of maintaining an always growing list of conditionals (did that first), the needed includes are now computed by CMake, and the collected includes are appended to pyside2_global.h . Task-number: PYSIDE-507 Change-Id: I86f27d42c2d60d75ab4597e262e874c7186389c8 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
-rw-r--r--CMakeLists.txt37
-rw-r--r--PySide2/CMakeLists.txt251
-rw-r--r--PySide2/global.h.in82
-rw-r--r--tests/CMakeLists.txt44
4 files changed, 92 insertions, 322 deletions
diff --git a/CMakeLists.txt b/CMakeLists.txt
index 4e9a8919..89d4dc7c 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -104,7 +104,7 @@ if (UNIX AND NOT APPLE)
endif ()
find_package(Shiboken2 2.0.0 REQUIRED)
-find_package(Qt5 5.3.0 REQUIRED COMPONENTS Core)
+find_package(Qt5 5.6.0 REQUIRED COMPONENTS Core)
add_definitions(${Qt5Core_DEFINITIONS})
find_file(GL_H "gl.h" PATH_SUFFIXES "GL")
@@ -188,38 +188,6 @@ else()
CACHE STRING "PySide version [full]" FORCE)
endif()
-find_package(Qt5Core)
-find_package(Qt5Concurrent) # new in Qt5, from QtCore
-find_package(Qt5Gui) # reduced, small version without widgets
-find_package(Qt5Widgets) # widgets in their separate module
-find_package(Qt5PrintSupport)
-find_package(Qt5Xml)
-find_package(Qt5XmlPatterns)
-find_package(Qt5Svg)
-find_package(Qt5Sql)
-find_package(Qt5Designer)
-find_package(Qt5UiTools)
-find_package(Qt5Test)
-find_package(Qt5Network)
-find_package(Qt5WebKit)
-find_package(Qt5WebKitWidgets)
-find_package(Qt5OpenGL)
-find_package(Qt5Script)
-find_package(Qt5ScriptTools)
-find_package(Qt5Help)
-find_package(Qt5Multimedia)
-find_package(Qt5Quick)
-find_package(Qt5Qml)
-find_package(Qt5QuickWidgets)
-find_package(Qt5WebChannel)
-find_package(Qt5WebEngine)
-find_package(Qt5WebEngineWidgets)
-find_package(Qt5WebSockets)
-
-if(UNIX AND NOT APPLE)
- find_package(Qt5X11Extras) # new in Qt5, from QtGui
-endif()
-
string(REGEX MATCHALL "[0-9]+" qt_version_helper "${Qt5Core_VERSION}")
list(GET qt_version_helper 0 QT_VERSION_MAJOR)
@@ -316,9 +284,12 @@ else()
endif()
add_subdirectory(libpyside)
+find_package(Qt5UiTools)
+find_package(Qt5Designer)
if(Qt5UiTools_FOUND AND Qt5Designer_FOUND)
add_subdirectory(plugins)
endif()
+
# project directories
add_subdirectory(PySide2)
if (BUILD_TESTS)
diff --git a/PySide2/CMakeLists.txt b/PySide2/CMakeLists.txt
index 0fe42ce6..d016bc3a 100644
--- a/PySide2/CMakeLists.txt
+++ b/PySide2/CMakeLists.txt
@@ -2,64 +2,21 @@ project(pyside2)
include(PySideModules)
-find_package(Qt5Core)
-find_package(Qt5Concurrent)
-find_package(Qt5Gui)
-find_package(Qt5Widgets)
-find_package(Qt5PrintSupport)
-find_package(Qt5Network)
-find_package(Qt5WebKit)
-find_package(Qt5WebKitWidgets)
-find_package(Qt5Xml)
-find_package(Qt5XmlPatterns)
-find_package(Qt5Svg)
-find_package(Qt5Test)
-find_package(Qt5Sql)
-find_package(Qt5Designer)
-find_package(Qt5OpenGL)
-find_package(Qt5UiTools)
-find_package(Qt5Help)
-find_package(Qt5Script)
-find_package(Qt5ScriptTools)
-find_package(Qt5Multimedia)
-find_package(Qt5MultimediaWidgets)
-find_package(Qt5Qml)
-find_package(Qt5Quick)
-find_package(Qt5QuickWidgets)
-find_package(Qt5WebChannel)
-find_package(Qt5WebEngine)
-find_package(Qt5WebEngineWidgets)
-find_package(Qt5WebSockets)
-
-if(UNIX AND NOT APPLE)
- find_package(Qt5X11Extras)
-endif()
-
-if(WIN32)
- find_package(Qt5WinExtras)
-endif()
-
-if(APPLE)
- find_package(Qt5MacExtras)
-endif()
-
-# Configure include based on platform
-configure_file("${CMAKE_CURRENT_SOURCE_DIR}/global.h.in"
- "${CMAKE_CURRENT_BINARY_DIR}/pyside2_global.h" @ONLY)
-
-configure_file("${CMAKE_CURRENT_SOURCE_DIR}/__init__.py.in"
- "${CMAKE_CURRENT_BINARY_DIR}/__init__.py" @ONLY)
-
-configure_file("${CMAKE_CURRENT_SOURCE_DIR}/_utils.py.in"
- "${CMAKE_CURRENT_BINARY_DIR}/_utils.py" @ONLY)
-
-macro(CHECK_PACKAGE_FOUND name)
+macro(COLLECT_MODULE_IF_FOUND shortname)
+ set(name "Qt5${shortname}")
+ find_package(${name})
set(_name_found "${name}_FOUND")
if(${_name_found})
- message("module ${name} found")
+ message(STATUS "module ${name} found (${ARGN})")
# Hoist this to the parent scope to make sure all tests get built
set("${name}_FOUND" 1 PARENT_SCOPE)
+ # also put the module at the end of pyside2_global.h
+ file(APPEND "${CMAKE_CURRENT_BINARY_DIR}/pyside2_global.h.add"
+ "#include \"Qt${shortname}/Qt${shortname}\"\n")
+ # record the shortnames for the tests
+ list(APPEND all_module_shortnames ${shortname})
+ set(all_module_shortnames ${all_module_shortnames} PARENT_SCOPE)
else()
if("${ARGN}" STREQUAL "opt")
message(STATUS "optional module ${name} skipped")
@@ -72,98 +29,18 @@ macro(CHECK_PACKAGE_FOUND name)
endif()
endmacro()
-#####
-# This macro was needed to skip classes which did not build, yet.
-# It replaces shiboken by a script that filters the missing classes
-# away of the xxx_module_wrapper.cpp file.
-# You can use it like so:
-#
-# skip_missing_classes(QtWidgets_SRC)
-# create_pyside_module(QtWidgets
-# ...
-#
-
-macro(skip_missing_classes sources)
- # this line signals postprocessing to macro "create_pyside_module".
- set(${sources}_skipped_files 1)
- # you just need to pass exactly the same sources variable.
- string(REPLACE ";" "\n" _escaped_sources "${${sources}}")
- file(WRITE "${CMAKE_CURRENT_BINARY_DIR}/filter_init.py"
- "if True: # allow the indentation
- files = '''\n${_escaped_sources}\n'''.strip().split('\\n')
- import sys, os, re, pprint
- pprint.pprint(files)
- nset = set()
- for fname in files:
- name = os.path.splitext(os.path.basename(fname))[0]
- print(name)
- if name.endswith('module_wrapper'):
- fn = fname
- else:
- name = name.split('_wrapper')
- assert name[1] == ''
- nset.add(name[0])
- print(fn)
- with open(fn) as f:
- lines = f.readlines()
- removals = set()
- for idx, line in enumerate(lines):
- res = re.search(' init_(\\w+)', line)
- if res and res.group(1).lower() not in nset:
- removals.add(res.group(1))
- lines[idx] = '//' + line
- with open(fn, 'w') as f:
- f.writelines(lines)
- removals = sorted(list(removals))
- print('Removals:', removals)
- ")
-endmacro()
-
-CHECK_PACKAGE_FOUND(Qt5Core)
-CHECK_PACKAGE_FOUND(Qt5Concurrent essential)
-CHECK_PACKAGE_FOUND(Qt5Gui essential)
-CHECK_PACKAGE_FOUND(Qt5Widgets essential)
-CHECK_PACKAGE_FOUND(Qt5PrintSupport essential)
-CHECK_PACKAGE_FOUND(Qt5Xml)
-CHECK_PACKAGE_FOUND(Qt5XmlPatterns opt)
-CHECK_PACKAGE_FOUND(Qt5Svg opt)
-CHECK_PACKAGE_FOUND(Qt5Sql essential)
-CHECK_PACKAGE_FOUND(Qt5Designer opt)
-CHECK_PACKAGE_FOUND(Qt5UiTools opt)
-CHECK_PACKAGE_FOUND(Qt5Test essential)
-CHECK_PACKAGE_FOUND(Qt5Network essential)
-CHECK_PACKAGE_FOUND(Qt5WebKit opt)
-CHECK_PACKAGE_FOUND(Qt5WebKitWidgets opt)
-CHECK_PACKAGE_FOUND(Qt5Script opt)
-CHECK_PACKAGE_FOUND(Qt5ScriptTools opt)
-CHECK_PACKAGE_FOUND(Qt5Help opt)
-CHECK_PACKAGE_FOUND(Qt5Multimedia opt)
-CHECK_PACKAGE_FOUND(Qt5MultimediaWidgets opt)
-CHECK_PACKAGE_FOUND(Qt5Qml opt)
-CHECK_PACKAGE_FOUND(Qt5Quick opt)
-CHECK_PACKAGE_FOUND(Qt5QuickWidgets opt)
-CHECK_PACKAGE_FOUND(Qt5WebChannel opt)
-CHECK_PACKAGE_FOUND(Qt5WebEngineWidgets opt)
-CHECK_PACKAGE_FOUND(Qt5WebSockets opt)
-
-if(UNIX AND NOT APPLE)
- CHECK_PACKAGE_FOUND(Qt5X11Extras opt)
-endif()
-
-if(WIN32)
- CHECK_PACKAGE_FOUND(Qt5WinExtras opt)
-endif()
-
-if(APPLE)
- CHECK_PACKAGE_FOUND(Qt5MacExtras opt)
-endif()
-
# note: the order of this list is relevant for dependencies.
-# For instance: Qt5Printsupport must come before Qt5WebKitWidgets
-HAS_QT_MODULE(Qt5Core_FOUND QtCore)
+# For instance: Qt5Printsupport must come before Qt5WebKitWidgets.
+COLLECT_MODULE_IF_FOUND(Core)
+COLLECT_MODULE_IF_FOUND(Gui essential)
+COLLECT_MODULE_IF_FOUND(Widgets essential)
+COLLECT_MODULE_IF_FOUND(PrintSupport essential)
+COLLECT_MODULE_IF_FOUND(Sql essential)
+COLLECT_MODULE_IF_FOUND(Network essential)
+COLLECT_MODULE_IF_FOUND(Test essential)
if(NOT MSVC)
# right now this does not build on windows
- HAS_QT_MODULE(Qt5Concurrent_FOUND QtConcurrent)
+ COLLECT_MODULE_IF_FOUND(Concurrent essential)
else()
# Note: in order to use this variable in a sibling project (tests),
# we need to either make the value persistent like so:
@@ -172,61 +49,71 @@ else()
# This is preferable, because there are no sticky side effects.
set(DISABLE_QtConcurrent 1 PARENT_SCOPE)
ENDIF()
-HAS_QT_MODULE(Qt5Gui_FOUND QtGui)
-HAS_QT_MODULE(Qt5Widgets_FOUND QtWidgets)
-# This module is deprecated and should be replaces by QtGui.
-# See http://doc.qt.io/qt-5/qtgui-index.html
-# Update: We support QtOpenGL now!
-# Note: The dependency is wrong: QtWidgets is needed!
-HAS_QT_MODULE(Qt5OpenGL_FOUND QtOpenGL)
-HAS_QT_MODULE(Qt5PrintSupport_FOUND QtPrintSupport)
-HAS_QT_MODULE(Qt5Svg_FOUND QtSvg)
-HAS_QT_MODULE(Qt5Sql_FOUND QtSql)
-HAS_QT_MODULE(Qt5Network_FOUND QtNetwork)
-HAS_QT_MODULE(Qt5Xml_FOUND QtXml)
-HAS_QT_MODULE(Qt5XmlPatterns_FOUND QtXmlPatterns)
-HAS_QT_MODULE(Qt5Test_FOUND QtTest)
-HAS_QT_MODULE(Qt5WebKit_FOUND QtWebKit)
+if(UNIX AND NOT APPLE)
+ COLLECT_MODULE_IF_FOUND(X11Extras essential)
+endif()
+if(WIN32)
+ COLLECT_MODULE_IF_FOUND(WinExtras essential)
+endif()
+if(APPLE)
+ COLLECT_MODULE_IF_FOUND(MacExtras essential)
+endif()
+COLLECT_MODULE_IF_FOUND(Xml)
+COLLECT_MODULE_IF_FOUND(XmlPatterns opt)
+COLLECT_MODULE_IF_FOUND(Help opt)
+COLLECT_MODULE_IF_FOUND(Multimedia opt)
+COLLECT_MODULE_IF_FOUND(MultimediaWidgets opt)
+COLLECT_MODULE_IF_FOUND(OpenGL opt)
+COLLECT_MODULE_IF_FOUND(Qml opt)
+COLLECT_MODULE_IF_FOUND(Quick opt)
+COLLECT_MODULE_IF_FOUND(QuickWidgets opt)
+COLLECT_MODULE_IF_FOUND(Script opt)
if(NOT MSVC)
# right now this does not build on windows
- HAS_QT_MODULE(Qt5WebKitWidgets_FOUND QtWebKitWidgets)
+ COLLECT_MODULE_IF_FOUND(ScriptTools opt)
else()
- set(DISABLE_QtWebKitWidgets 1 PARENT_SCOPE)
+ set(DISABLE_QtScriptTools 1 PARENT_SCOPE)
ENDIF()
-
+COLLECT_MODULE_IF_FOUND(Svg opt)
if(Qt5Designer_FOUND)
- HAS_QT_MODULE(Qt5UiTools_FOUND QtUiTools)
+ COLLECT_MODULE_IF_FOUND(UiTools opt)
else()
set(DISABLE_QtUiTools 1 PARENT_SCOPE)
endif()
-HAS_QT_MODULE(Qt5Script_FOUND QtScript)
+COLLECT_MODULE_IF_FOUND(WebChannel opt)
+# still forgotten:
+#COLLECT_MODULE_IF_FOUND(WebEngineCore opt)
+#COLLECT_MODULE_IF_FOUND(WebEngine opt)
+COLLECT_MODULE_IF_FOUND(WebEngineWidgets opt)
+COLLECT_MODULE_IF_FOUND(WebKit opt)
if(NOT MSVC)
# right now this does not build on windows
- HAS_QT_MODULE(Qt5ScriptTools_FOUND QtScriptTools)
+ COLLECT_MODULE_IF_FOUND(WebKitWidgets opt)
else()
- set(DISABLE_QtScriptTools 1 PARENT_SCOPE)
+ set(DISABLE_QtWebKitWidgets 1 PARENT_SCOPE)
ENDIF()
-HAS_QT_MODULE(Qt5Help_FOUND QtHelp)
-HAS_QT_MODULE(Qt5Multimedia_FOUND QtMultimedia)
-HAS_QT_MODULE(Qt5MultimediaWidgets_FOUND QtMultimediaWidgets)
-HAS_QT_MODULE(Qt5Qml_FOUND QtQml)
-HAS_QT_MODULE(Qt5Quick_FOUND QtQuick)
-HAS_QT_MODULE(Qt5QuickWidgets_FOUND QtQuickWidgets)
-HAS_QT_MODULE(Qt5WebChannel_FOUND QtWebChannel)
-HAS_QT_MODULE(Qt5WebEngineWidgets_FOUND QtWebEngineWidgets)
-HAS_QT_MODULE(Qt5WebSockets_FOUND QtWebSockets)
+COLLECT_MODULE_IF_FOUND(WebSockets opt)
-if(UNIX AND NOT APPLE)
- has_qt_module(Qt5X11Extras_FOUND QtX11Extras)
-endif()
+# Configure include based on platform
+configure_file("${CMAKE_CURRENT_SOURCE_DIR}/global.h.in"
+ "${CMAKE_CURRENT_BINARY_DIR}/pyside2_global.h" @ONLY)
-if(WIN32)
- has_qt_module(Qt5WinExtras_FOUND QtWinExtras)
-endif()
+configure_file("${CMAKE_CURRENT_SOURCE_DIR}/__init__.py.in"
+ "${CMAKE_CURRENT_BINARY_DIR}/__init__.py" @ONLY)
-if(APPLE)
- has_qt_module(Qt5MacExtras_FOUND QtMacExtras)
-endif()
+configure_file("${CMAKE_CURRENT_SOURCE_DIR}/_utils.py.in"
+ "${CMAKE_CURRENT_BINARY_DIR}/_utils.py" @ONLY)
+
+# Add the collected includes to the global include
+file(READ "${CMAKE_CURRENT_BINARY_DIR}/pyside2_global.h.add" GLOBAL_APPEND)
+file(APPEND "${CMAKE_CURRENT_BINARY_DIR}/pyside2_global.h" "${GLOBAL_APPEND}")
+file(REMOVE "${CMAKE_CURRENT_BINARY_DIR}/pyside2_global.h.add")
+
+# now compile all modules.
+foreach(shortname IN LISTS all_module_shortnames)
+ set(name "Qt5${shortname}")
+ HAS_QT_MODULE(${name}_FOUND Qt${shortname})
+endforeach()
# install
install(FILES "${CMAKE_CURRENT_BINARY_DIR}/__init__.py"
diff --git a/PySide2/global.h.in b/PySide2/global.h.in
index 020c9c19..6bddcfcc 100644
--- a/PySide2/global.h.in
+++ b/PySide2/global.h.in
@@ -384,97 +384,45 @@ QT_END_NAMESPACE
#define QT_NO_DEBUG
#include <QtCore/QtCore>
-#include <QtConcurrent/QtConcurrent>
#if @ENABLE_MAC@ || @ENABLE_WIN@ || @ENABLE_X11@
// Workaround to parse the QApplication header
#define Q_INTERNAL_QAPP_SRC
#undef Q_QDOC
#endif
-#include <QtGui/QtGui>
-#include <QtWidgets/QtWidgets>
+#if @Qt5Gui_FOUND@
+# include <QtGui/QtGui>
+#endif
+#if @Qt5Widgets_FOUND@
+# include <QtWidgets/QtWidgets>
+#endif
#ifndef Q_QDOC
// Make sure that Q_QDOC is defined for as much modules as possible.
// This creates more wrappers without extra work.
// Will disappear when we have a really good parser!
# define Q_QDOC
#endif
-#include <QtOpenGL/QtOpenGL>
+
#include "qpytextobject.h" // PySide class
+
#if @ENABLE_X11@
-#if @Qt5X11Extras_FOUND@
-#include <QtX11Extras/QX11Info>
-#endif
+# if @Qt5X11Extras_FOUND@
+# include <QtX11Extras/QX11Info>
+# endif
#elif @ENABLE_MAC@
- #include <QtGui/qmacstyle_mac.h>
+# include <QtGui/qmacstyle_mac.h>
#endif
-#include <QtXml/QtXml>
-#include <QtXmlPatterns/QtXmlPatterns>
-#include <QtUiTools/QtUiTools>
-#include <QtNetwork/QtNetwork>
-#include <QtScript/QtScript>
-#include <QtScriptTools/QtScriptTools>
-#include <QtMultimedia/QtMultimedia>
-#include <QtPrintSupport/QtPrintSupport>
// QT_WIDGETS_LIB must be defined to QSqlRelationalDelegate become visible.
// It also changes code generation in pysideqtesttouch.h
#define QT_WIDGETS_LIB
#undef Q_DECLARE_INTERFACE
-#include <QtSql/QtSql>
-#include <QtSvg/QtSvg>
-#if @Qt5WebKit_FOUND@
-# include <QtWebKit/QtWebKit>
-#endif
-
-#if @Qt5WebKitWidgets_FOUND@
-# include <QtWebKitWidgets/QtWebKitWidgets>
-#endif
#if @Qt5Test_FOUND@
-# include <QtTest/qtest_gui.h>
# include "pysideqtesttouch.h"
#endif
-#if @Qt5Quick_FOUND@
-# include <QtQuick/QtQuick>
-#endif
-
-#if @Qt5Qml_FOUND@
-# include <QtQml/QtQml>
-#endif
-
-#if @Qt5QuickWidgets_FOUND@
-# include <QtQuickWidgets/QtQuickWidgets>
-#endif
-
-#if @Qt5WebEngineWidgets_FOUND@
-# include <QtWebEngineWidgets/QtWebEngineWidgets>
-#endif
-
-#if @Qt5MultimediaWidgets_FOUND@
-# include <QtMultimediaWidgets/QtMultimediaWidgets>
-#endif
-
-#if @Qt5WebChannel_FOUND@
-# include <QtWebChannel/QtWebChannel>
-#endif
-
-#if @Qt5WebSockets_FOUND@
-# include <QtWebSockets/QtWebSockets>
-#endif
-
-#if @Qt5WinExtras_FOUND@
-# include <QtWinExtras/QtWinExtras>
-#endif
-
-#if @Qt5MacExtras_FOUND@
-# include <QtMacExtras/QtMacExtras>
-#endif
-
-//QtHelp needs to be included after QtSql. Why?
-#include <QtHelp/QtHelp>
-
#ifndef QT_NO_OPENGL
-#include <@GL_H@>
-#include <QtOpenGL/QtOpenGL>
+# include <@GL_H@>
#endif // QT_NO_OPENGL
+
+// Here are now all configured modules appended:
diff --git a/tests/CMakeLists.txt b/tests/CMakeLists.txt
index 5fe2d7db..2b7e3b0e 100644
--- a/tests/CMakeLists.txt
+++ b/tests/CMakeLists.txt
@@ -49,46 +49,10 @@ else()
add_subdirectory(pysidetest)
add_subdirectory(signals)
- TEST_QT_MODULE(Qt5Core_FOUND QtCore)
- TEST_QT_MODULE(Qt5Concurrent_FOUND QtConcurrent)
- TEST_QT_MODULE(Qt5Gui_FOUND QtGui)
- TEST_QT_MODULE(Qt5Widgets_FOUND QtWidgets)
- TEST_QT_MODULE(Qt5PrintSupport_FOUND QtPrintSupport)
- TEST_QT_MODULE(Qt5Network_FOUND QtNetwork)
- TEST_QT_MODULE(Qt5WebKit_FOUND QtWebKit)
- TEST_QT_MODULE(Qt5WebKitWidgets_FOUND QtWebKitWidgets)
- TEST_QT_MODULE(Qt5Xml_FOUND QtXml)
- TEST_QT_MODULE(Qt5XmlPatterns_FOUND QtXmlPatterns)
- TEST_QT_MODULE(Qt5Svg_FOUND QtSvg)
- TEST_QT_MODULE(Qt5Test_FOUND QtTest)
- TEST_QT_MODULE(Qt5Sql_FOUND QtSql)
- #TEST_QT_MODULE(Qt5Designer_FOUND QtDesigner)
- TEST_QT_MODULE(Qt5OpenGL_FOUND QtOpenGL)
- TEST_QT_MODULE(Qt5UiTools_FOUND QtUiTools)
- TEST_QT_MODULE(Qt5Help_FOUND QtHelp)
- TEST_QT_MODULE(Qt5Script_FOUND QtScript)
- TEST_QT_MODULE(Qt5ScriptTools_FOUND QtScriptTools)
- TEST_QT_MODULE(Qt5Multimedia_FOUND QtMultimedia)
- TEST_QT_MODULE(Qt5MultimediaWidgets_FOUND QtMultimediaWidgets)
- TEST_QT_MODULE(Qt5Qml_FOUND QtQml)
- TEST_QT_MODULE(Qt5Quick_FOUND QtQuick)
- TEST_QT_MODULE(Qt5QuickWidgets_FOUND QtQuickWidgets)
- TEST_QT_MODULE(Qt5WebChannel_FOUND QtWebChannel)
- #TEST_QT_MODULE(Qt5WebEngine_FOUND QtWebEngine)
- TEST_QT_MODULE(Qt5WebEngineWidgets_FOUND QtWebEngineWidgets)
- TEST_QT_MODULE(Qt5WebSockets_FOUND QtWebSockets)
-
- if(UNIX AND NOT APPLE)
- TEST_QT_MODULE(Qt5X11Extras_FOUND QtX11Extras)
- endif()
-
- if(WIN32)
- TEST_QT_MODULE(Qt5WinExtras_FOUND QtWinExtras)
- endif()
-
- if(APPLE)
- TEST_QT_MODULE(Qt5MacExtras_FOUND QtMacExtras)
- endif()
+ foreach(shortname IN LISTS all_module_shortnames)
+ message(STATUS "preparing tests for module 'Qt${shortname}'")
+ TEST_QT_MODULE(Qt5${shortname}_FOUND Qt${shortname})
+ endforeach()
#platform specific
if (ENABLE_MAC)