diff options
author | Tor Arne Vestbø <tor.arne.vestbo@qt.io> | 2020-03-31 12:25:43 +0200 |
---|---|---|
committer | Tor Arne Vestbø <tor.arne.vestbo@qt.io> | 2020-05-22 15:38:28 +0200 |
commit | 7a1650e34331f87bab5a9372087d2a1135f9f63a (patch) | |
tree | ef3c6949722b9521cd672d55fdad6d69353947b1 /src | |
parent | 948134371eb3ea5a4b4237f4e1f1399d90562ded (diff) |
Move QtVulkanSupport into QtGui and QtOpenGL
Task-number: QTBUG-83255
Change-Id: Ib021cecebda89fa2ab9332752124a8cec0a51a10
Reviewed-by: Laszlo Agocs <laszlo.agocs@qt.io>
Diffstat (limited to 'src')
30 files changed, 34 insertions, 122 deletions
diff --git a/src/gui/CMakeLists.txt b/src/gui/CMakeLists.txt index 2448f36e5f..d9067bb4b8 100644 --- a/src/gui/CMakeLists.txt +++ b/src/gui/CMakeLists.txt @@ -695,6 +695,7 @@ qt_extend_target(Gui CONDITION QT_FEATURE_vulkan vulkan/qvulkanfunctions.cpp vulkan/qvulkaninstance.cpp vulkan/qvulkaninstance.h vulkan/qvulkanwindow.cpp vulkan/qvulkanwindow.h vulkan/qvulkanwindow_p.h + vulkan/qbasicvulkanplatforminstance.cpp vulkan/qbasicvulkanplatforminstance_p.h PUBLIC_LIBRARIES Vulkan::Vulkan_nolink ) diff --git a/src/platformsupport/vkconvenience/qbasicvulkanplatforminstance.cpp b/src/gui/vulkan/qbasicvulkanplatforminstance.cpp index 6f6ba58319..6f6ba58319 100644 --- a/src/platformsupport/vkconvenience/qbasicvulkanplatforminstance.cpp +++ b/src/gui/vulkan/qbasicvulkanplatforminstance.cpp diff --git a/src/platformsupport/vkconvenience/qbasicvulkanplatforminstance_p.h b/src/gui/vulkan/qbasicvulkanplatforminstance_p.h index e59d9219fb..cfd180b57a 100644 --- a/src/platformsupport/vkconvenience/qbasicvulkanplatforminstance_p.h +++ b/src/gui/vulkan/qbasicvulkanplatforminstance_p.h @@ -51,6 +51,8 @@ // We mean it. // +#include <QtGui/qtguiglobal.h> + #include <QtCore/QLibrary> #include <qpa/qplatformvulkaninstance.h> @@ -58,7 +60,7 @@ QT_BEGIN_NAMESPACE class QLibrary; -class QBasicPlatformVulkanInstance : public QPlatformVulkanInstance +class Q_GUI_EXPORT QBasicPlatformVulkanInstance : public QPlatformVulkanInstance { public: QBasicPlatformVulkanInstance(); diff --git a/src/gui/vulkan/qvulkanwindow_p.h b/src/gui/vulkan/qvulkanwindow_p.h index 915e359673..41abf977e4 100644 --- a/src/gui/vulkan/qvulkanwindow_p.h +++ b/src/gui/vulkan/qvulkanwindow_p.h @@ -61,7 +61,7 @@ QT_BEGIN_NAMESPACE -class QVulkanWindowPrivate : public QWindowPrivate +class Q_GUI_EXPORT QVulkanWindowPrivate : public QWindowPrivate { Q_DECLARE_PUBLIC(QVulkanWindow) diff --git a/src/gui/vulkan/vulkan.pri b/src/gui/vulkan/vulkan.pri index 5c902e8b82..3ac3b8edc3 100644 --- a/src/gui/vulkan/vulkan.pri +++ b/src/gui/vulkan/vulkan.pri @@ -5,13 +5,15 @@ qtConfig(vulkan) { vulkan/qvulkaninstance.h \ vulkan/qplatformvulkaninstance.h \ vulkan/qvulkanwindow.h \ - vulkan/qvulkanwindow_p.h + vulkan/qvulkanwindow_p.h \ + vulkan/qbasicvulkanplatforminstance_p.h SOURCES += \ vulkan/qvulkaninstance.cpp \ vulkan/qplatformvulkaninstance.cpp \ vulkan/qvulkanfunctions.cpp \ - vulkan/qvulkanwindow.cpp + vulkan/qvulkanwindow.cpp \ + vulkan/qbasicvulkanplatforminstance.cpp # Applications must inherit the Vulkan header include path. QMAKE_USE += vulkan/nolink diff --git a/src/opengl/CMakeLists.txt b/src/opengl/CMakeLists.txt index c0acee56e5..9050ad0c58 100644 --- a/src/opengl/CMakeLists.txt +++ b/src/opengl/CMakeLists.txt @@ -84,6 +84,14 @@ qt_extend_target(OpenGL CONDITION NOT QT_FEATURE_opengles2 qopenglqueryhelper_p.h qopengltimerquery.cpp qopengltimerquery.h ) + +qt_extend_target(OpenGL CONDITION QT_FEATURE_vulkan + SOURCES + qvkconvenience.cpp qvkconvenience_p.h + PUBLIC_LIBRARIES + Vulkan::Vulkan_nolink +) + qt_add_docs(OpenGL doc/qtopengl.qdocconf ) diff --git a/src/opengl/opengl.pro b/src/opengl/opengl.pro index 777bca40ec..37694787f3 100644 --- a/src/opengl/opengl.pro +++ b/src/opengl/opengl.pro @@ -129,4 +129,14 @@ qtConfig(opengles2) { SOURCES += qopenglfunctions_es2.cpp } +qtConfig(vulkan) { + CONFIG += generated_privates + + HEADERS += qvkconvenience_p.h + SOURCES += qvkconvenience.cpp + + # Applications must inherit the Vulkan header include path. + QMAKE_USE += vulkan/nolink +} + load(qt_module) diff --git a/src/platformsupport/vkconvenience/qvkconvenience.cpp b/src/opengl/qvkconvenience.cpp index 59de335333..59de335333 100644 --- a/src/platformsupport/vkconvenience/qvkconvenience.cpp +++ b/src/opengl/qvkconvenience.cpp diff --git a/src/platformsupport/vkconvenience/qvkconvenience_p.h b/src/opengl/qvkconvenience_p.h index 580271b593..bc8694979b 100644 --- a/src/platformsupport/vkconvenience/qvkconvenience_p.h +++ b/src/opengl/qvkconvenience_p.h @@ -51,12 +51,12 @@ // We mean it. // -#include <QtCore/qglobal.h> +#include <QtOpenGL/qtopenglglobal.h> #include <qvulkaninstance.h> QT_BEGIN_NAMESPACE -class QVkConvenience +class Q_OPENGL_EXPORT QVkConvenience { public: #if QT_CONFIG(opengl) diff --git a/src/platformsupport/CMakeLists.txt b/src/platformsupport/CMakeLists.txt index 0e589ecc86..eb67070d24 100644 --- a/src/platformsupport/CMakeLists.txt +++ b/src/platformsupport/CMakeLists.txt @@ -40,6 +40,3 @@ endif() if(QT_FEATURE_accessibility AND WIN32 AND NOT WINRT) add_subdirectory(windowsuiautomation) endif() -if(QT_FEATURE_vulkan) - add_subdirectory(vkconvenience) -endif() diff --git a/src/platformsupport/platformsupport.pro b/src/platformsupport/platformsupport.pro index fe3f6504fe..7d099b7bbc 100644 --- a/src/platformsupport/platformsupport.pro +++ b/src/platformsupport/platformsupport.pro @@ -37,9 +37,6 @@ qtConfig(accessibility) { win32:!winrt: SUBDIRS += windowsuiautomation } -qtConfig(vulkan): \ - SUBDIRS += vkconvenience - !android:linux*:qtHaveModule(dbus) \ SUBDIRS += linuxofono diff --git a/src/platformsupport/vkconvenience/.prev_CMakeLists.txt b/src/platformsupport/vkconvenience/.prev_CMakeLists.txt deleted file mode 100644 index 6f17cfa306..0000000000 --- a/src/platformsupport/vkconvenience/.prev_CMakeLists.txt +++ /dev/null @@ -1,31 +0,0 @@ -# Generated from vkconvenience.pro. - -##################################################################### -## VulkanSupport Module: -##################################################################### - -qt_add_module(VulkanSupport - STATIC - INTERNAL_MODULE - SOURCES - qbasicvulkanplatforminstance.cpp qbasicvulkanplatforminstance_p.h - qvkconvenience.cpp qvkconvenience_p.h - DEFINES - QT_NO_CAST_FROM_ASCII - PUBLIC_LIBRARIES - Qt::CorePrivate - Qt::GuiPrivate - PRECOMPILED_HEADER - "../../corelib/global/qt_pch.h" -) - -#### Keys ignored in scope 1:.:.:vkconvenience.pro:<TRUE>: -# MODULE = "vulkan_support" - -## Scopes: -##################################################################### - -qt_extend_target(VulkanSupport CONDITION QT_FEATURE_opengl - PUBLIC_LIBRARIES - Qt::OpenGL -) diff --git a/src/platformsupport/vkconvenience/CMakeLists.txt b/src/platformsupport/vkconvenience/CMakeLists.txt deleted file mode 100644 index 6ec2574375..0000000000 --- a/src/platformsupport/vkconvenience/CMakeLists.txt +++ /dev/null @@ -1,33 +0,0 @@ -# Generated from vkconvenience.pro. - -qt_find_package(Vulkan) # special case - -##################################################################### -## VulkanSupport Module: -##################################################################### - -qt_add_module(VulkanSupport - STATIC - INTERNAL_MODULE - SOURCES - qbasicvulkanplatforminstance.cpp qbasicvulkanplatforminstance_p.h - qvkconvenience.cpp qvkconvenience_p.h - DEFINES - QT_NO_CAST_FROM_ASCII - PUBLIC_LIBRARIES - Qt::CorePrivate - Qt::GuiPrivate - PRECOMPILED_HEADER - "../../corelib/global/qt_pch.h" -) - -#### Keys ignored in scope 1:.:.:vkconvenience.pro:<TRUE>: -# MODULE = "vulkan_support" - -## Scopes: -##################################################################### - -qt_extend_target(VulkanSupport CONDITION QT_FEATURE_opengl - PUBLIC_LIBRARIES - Qt::OpenGL -) diff --git a/src/platformsupport/vkconvenience/vkconvenience.pro b/src/platformsupport/vkconvenience/vkconvenience.pro deleted file mode 100644 index f3ada5768a..0000000000 --- a/src/platformsupport/vkconvenience/vkconvenience.pro +++ /dev/null @@ -1,20 +0,0 @@ -TARGET = QtVulkanSupport -MODULE = vulkan_support - -QT = core-private gui-private -qtConfig(opengl): QT += opengl - -CONFIG += static internal_module - -DEFINES += QT_NO_CAST_FROM_ASCII -PRECOMPILED_HEADER = ../../corelib/global/qt_pch.h - -SOURCES += \ - qvkconvenience.cpp \ - qbasicvulkanplatforminstance.cpp - -HEADERS += \ - qvkconvenience_p.h \ - qbasicvulkanplatforminstance_p.h - -load(qt_module) diff --git a/src/plugins/platforms/android/CMakeLists.txt b/src/plugins/platforms/android/CMakeLists.txt index 6333e51e03..c61d8653c7 100644 --- a/src/plugins/platforms/android/CMakeLists.txt +++ b/src/plugins/platforms/android/CMakeLists.txt @@ -74,8 +74,6 @@ qt_extend_target(QAndroidIntegrationPlugin CONDITION QT_FEATURE_vulkan SOURCES qandroidplatformvulkaninstance.cpp qandroidplatformvulkaninstance.h qandroidplatformvulkanwindow.cpp qandroidplatformvulkanwindow.h - PUBLIC_LIBRARIES - Qt::VulkanSupportPrivate ) qt_extend_target(QAndroidIntegrationPlugin CONDITION TARGET Qt::PlatformCompositorSupportPrivate diff --git a/src/plugins/platforms/android/android.pro b/src/plugins/platforms/android/android.pro index 8ea78f7cba..2baf04addd 100644 --- a/src/plugins/platforms/android/android.pro +++ b/src/plugins/platforms/android/android.pro @@ -7,8 +7,6 @@ QT += \ eventdispatcher_support-private accessibility_support-private \ fontdatabase_support-private egl_support-private -qtConfig(vulkan): QT += vulkan_support-private - qtHaveModule(platformcompositor_support-private): QT += platformcompositor_support-private OTHER_FILES += $$PWD/android.json diff --git a/src/plugins/platforms/android/qandroidplatformvulkaninstance.h b/src/plugins/platforms/android/qandroidplatformvulkaninstance.h index 67edcceed9..80f73215ad 100644 --- a/src/plugins/platforms/android/qandroidplatformvulkaninstance.h +++ b/src/plugins/platforms/android/qandroidplatformvulkaninstance.h @@ -40,7 +40,7 @@ #ifndef QANDROIDPLATFORMVULKANINSTANCE_H #define QANDROIDPLATFORMVULKANINSTANCE_H -#include <QtVulkanSupport/private/qbasicvulkanplatforminstance_p.h> +#include <QtGui/private/qbasicvulkanplatforminstance_p.h> #include <QLibrary> QT_BEGIN_NAMESPACE diff --git a/src/plugins/platforms/cocoa/CMakeLists.txt b/src/plugins/platforms/cocoa/CMakeLists.txt index c79a320318..14244a6dac 100644 --- a/src/plugins/platforms/cocoa/CMakeLists.txt +++ b/src/plugins/platforms/cocoa/CMakeLists.txt @@ -93,8 +93,6 @@ qt_extend_target(QCocoaIntegrationPlugin CONDITION QT_FEATURE_opengl qt_extend_target(QCocoaIntegrationPlugin CONDITION QT_FEATURE_vulkan SOURCES qcocoavulkaninstance.h qcocoavulkaninstance.mm - PUBLIC_LIBRARIES - Qt::VulkanSupportPrivate ) qt_extend_target(QCocoaIntegrationPlugin CONDITION QT_FEATURE_accessibility diff --git a/src/plugins/platforms/cocoa/cocoa.pro b/src/plugins/platforms/cocoa/cocoa.pro index 2fa6b67747..be75cf3f51 100644 --- a/src/plugins/platforms/cocoa/cocoa.pro +++ b/src/plugins/platforms/cocoa/cocoa.pro @@ -99,8 +99,6 @@ QT += \ theme_support-private \ fontdatabase_support-private -qtConfig(vulkan): QT += vulkan_support-private - qtHaveModule(platformcompositor_support-private): QT += platformcompositor_support-private CONFIG += no_app_extension_api_only diff --git a/src/plugins/platforms/cocoa/qcocoavulkaninstance.h b/src/plugins/platforms/cocoa/qcocoavulkaninstance.h index 2a8d04757e..e6b69ba54f 100644 --- a/src/plugins/platforms/cocoa/qcocoavulkaninstance.h +++ b/src/plugins/platforms/cocoa/qcocoavulkaninstance.h @@ -47,7 +47,7 @@ #include <MoltenVK/mvk_vulkan.h> #include <QtCore/QHash> -#include <QtVulkanSupport/private/qbasicvulkanplatforminstance_p.h> +#include <QtGui/private/qbasicvulkanplatforminstance_p.h> #include <AppKit/AppKit.h> diff --git a/src/plugins/platforms/direct2d/direct2d.pro b/src/plugins/platforms/direct2d/direct2d.pro index 6e73bd14f9..a68e1f10ff 100644 --- a/src/plugins/platforms/direct2d/direct2d.pro +++ b/src/plugins/platforms/direct2d/direct2d.pro @@ -6,7 +6,6 @@ QT += \ fontdatabase_support-private theme_support-private qtConfig(accessibility): QT += accessibility_support-private -qtConfig(vulkan): QT += vulkan_support-private LIBS += -ldwmapi -lversion QMAKE_USE_PRIVATE += gdi32 dwrite_1 d2d1_1 d3d11_1 dxgi1_2 diff --git a/src/plugins/platforms/eglfs/CMakeLists.txt b/src/plugins/platforms/eglfs/CMakeLists.txt index 0078c1f0d7..cef9b94859 100644 --- a/src/plugins/platforms/eglfs/CMakeLists.txt +++ b/src/plugins/platforms/eglfs/CMakeLists.txt @@ -53,8 +53,6 @@ qt_extend_target(EglFSDeviceIntegration CONDITION QT_FEATURE_vulkan SOURCES api/vulkan/qeglfsvulkaninstance.cpp api/vulkan/qeglfsvulkaninstance_p.h api/vulkan/qeglfsvulkanwindow.cpp api/vulkan/qeglfsvulkanwindow_p.h - PUBLIC_LIBRARIES - Qt::VulkanSupportPrivate ) # special case: diff --git a/src/plugins/platforms/eglfs/api/vulkan/qeglfsvulkaninstance_p.h b/src/plugins/platforms/eglfs/api/vulkan/qeglfsvulkaninstance_p.h index 9d6d47f439..7715cc37c0 100644 --- a/src/plugins/platforms/eglfs/api/vulkan/qeglfsvulkaninstance_p.h +++ b/src/plugins/platforms/eglfs/api/vulkan/qeglfsvulkaninstance_p.h @@ -52,7 +52,7 @@ // #include "qeglfsglobal_p.h" -#include <QtVulkanSupport/private/qbasicvulkanplatforminstance_p.h> +#include <QtGui/private/qbasicvulkanplatforminstance_p.h> QT_BEGIN_NAMESPACE diff --git a/src/plugins/platforms/eglfs/eglfsdeviceintegration.pro b/src/plugins/platforms/eglfs/eglfsdeviceintegration.pro index bd02aea4d3..8bb7b614f1 100644 --- a/src/plugins/platforms/eglfs/eglfsdeviceintegration.pro +++ b/src/plugins/platforms/eglfs/eglfsdeviceintegration.pro @@ -20,9 +20,6 @@ qtHaveModule(input_support-private): \ qtHaveModule(platformcompositor_support-private): \ QT += platformcompositor_support-private -qtConfig(vulkan): \ - QT += vulkan_support-private - # Avoid X11 header collision, use generic EGL native types DEFINES += QT_EGL_NO_X11 diff --git a/src/plugins/platforms/windows/CMakeLists.txt b/src/plugins/platforms/windows/CMakeLists.txt index b8655ac69d..ba39c7567d 100644 --- a/src/plugins/platforms/windows/CMakeLists.txt +++ b/src/plugins/platforms/windows/CMakeLists.txt @@ -120,8 +120,6 @@ qt_extend_target(QWindowsIntegrationPlugin CONDITION QT_FEATURE_accessibility qt_extend_target(QWindowsIntegrationPlugin CONDITION QT_FEATURE_vulkan SOURCES qwindowsvulkaninstance.cpp qwindowsvulkaninstance.h - PUBLIC_LIBRARIES - Qt::VulkanSupportPrivate ) qt_extend_target(QWindowsIntegrationPlugin CONDITION QT_FEATURE_directwrite3 diff --git a/src/plugins/platforms/windows/qwindowsvulkaninstance.h b/src/plugins/platforms/windows/qwindowsvulkaninstance.h index cc7ef476d4..4b9293cc64 100644 --- a/src/plugins/platforms/windows/qwindowsvulkaninstance.h +++ b/src/plugins/platforms/windows/qwindowsvulkaninstance.h @@ -46,7 +46,7 @@ #define VK_USE_PLATFORM_WIN32_KHR -#include <QtVulkanSupport/private/qbasicvulkanplatforminstance_p.h> +#include <QtGui/private/qbasicvulkanplatforminstance_p.h> #include <QtCore/qlibrary.h> QT_BEGIN_NAMESPACE diff --git a/src/plugins/platforms/windows/windows.pro b/src/plugins/platforms/windows/windows.pro index b14969cc3a..ff5201e290 100644 --- a/src/plugins/platforms/windows/windows.pro +++ b/src/plugins/platforms/windows/windows.pro @@ -8,7 +8,6 @@ QT += \ qtHaveModule(platformcompositor_support-private): QT += platformcompositor_support-private qtConfig(accessibility): QT += accessibility_support-private -qtConfig(vulkan): QT += vulkan_support-private qtConfig(directwrite3): DEFINES *= QT_USE_DIRECTWRITE2 QT_USE_DIRECTWRITE3 diff --git a/src/plugins/platforms/xcb/CMakeLists.txt b/src/plugins/platforms/xcb/CMakeLists.txt index a7cb58ba29..278ef82cb8 100644 --- a/src/plugins/platforms/xcb/CMakeLists.txt +++ b/src/plugins/platforms/xcb/CMakeLists.txt @@ -81,8 +81,6 @@ qt_extend_target(XcbQpa CONDITION QT_FEATURE_vulkan SOURCES qxcbvulkaninstance.cpp qxcbvulkaninstance.h qxcbvulkanwindow.cpp qxcbvulkanwindow.h - PUBLIC_LIBRARIES - Qt::VulkanSupportPrivate ) qt_extend_target(XcbQpa CONDITION QT_FEATURE_glib diff --git a/src/plugins/platforms/xcb/qxcbvulkaninstance.h b/src/plugins/platforms/xcb/qxcbvulkaninstance.h index 53f7345254..abf8935e6a 100644 --- a/src/plugins/platforms/xcb/qxcbvulkaninstance.h +++ b/src/plugins/platforms/xcb/qxcbvulkaninstance.h @@ -46,7 +46,7 @@ #define VK_USE_PLATFORM_XCB_KHR -#include <QtVulkanSupport/private/qbasicvulkanplatforminstance_p.h> +#include <QtGui/private/qbasicvulkanplatforminstance_p.h> #include <QLibrary> QT_BEGIN_NAMESPACE diff --git a/src/plugins/platforms/xcb/xcb_qpa_lib.pro b/src/plugins/platforms/xcb/xcb_qpa_lib.pro index 1f651e7697..8154d300b1 100644 --- a/src/plugins/platforms/xcb/xcb_qpa_lib.pro +++ b/src/plugins/platforms/xcb/xcb_qpa_lib.pro @@ -15,8 +15,6 @@ qtHaveModule(platformcompositor_support-private): \ qtHaveModule(linuxaccessibility_support-private): \ QT += linuxaccessibility_support-private -qtConfig(vulkan): QT += vulkan_support-private - qtConfig(glib) : QMAKE_USE_PRIVATE += glib SOURCES = \ |