summaryrefslogtreecommitdiffstats
path: root/src/plugins/platforms/direct2d
diff options
context:
space:
mode:
authorCraig Scott <craig.scott@qt.io>2021-02-10 12:11:39 +1100
committerQt Cherry-pick Bot <cherrypick_bot@qt-project.org>2021-02-24 08:32:35 +0000
commitbd70f6d5503ead56012a9703b110b2080fd266e4 (patch)
treeb428f53f4b522e234a65866bf967904a97a21550 /src/plugins/platforms/direct2d
parent933e4c328e580d265dae5d1a73f7c44c61eef40d (diff)
cmake: Don't give plugins PUBLIC usage requirements
The pro2cmake.py conversion script faithfully reproduced the .pro files for the plugins, which specified the libraries as public. But in CMake, the implications of this are that public usage requirements should then be propagated to consumers. We don't expect any consumers, since a plugin is created as a MODULE library in CMake, so for Windows we don't even have an import library to link with. The only exception to this is for static builds where plugins are created as STATIC libraries instead, but only in certain controlled situations do we then link to plugins. Even then, usage requirements are not expected to propagate to the consumers, so these relationships should always be specified as private. This change warns on any PUBLIC usage requirements specified for a plugin. This check is disabled by default to avoid spamming CI builds for repos that haven't been fixed yet. The check can be enabled by a CMake cache option, which is intended for developers to use locally when fixing this issue in other repos (all plugins in qtbase should not trigger this warning as a result of changes in this commit). Task-number: QTBUG-90819 Change-Id: I09f2c8da77db1193ad3370f85d367dfc6ab7b9a6 Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org> Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io> (cherry picked from commit fe29159aad0e03ca5eebabf910c90f279b222d03) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
Diffstat (limited to 'src/plugins/platforms/direct2d')
-rw-r--r--src/plugins/platforms/direct2d/CMakeLists.txt23
1 files changed, 11 insertions, 12 deletions
diff --git a/src/plugins/platforms/direct2d/CMakeLists.txt b/src/plugins/platforms/direct2d/CMakeLists.txt
index 3d507af070..94c435ea69 100644
--- a/src/plugins/platforms/direct2d/CMakeLists.txt
+++ b/src/plugins/platforms/direct2d/CMakeLists.txt
@@ -50,27 +50,26 @@ qt_internal_add_plugin(QWindowsDirect2DIntegrationPlugin
INCLUDE_DIRECTORIES
../windows
LIBRARIES
- advapi32
- d2d1 # special case
- dwrite # special case
- gdi32
- ole32
- shell32
- user32
- winmm
- PUBLIC_LIBRARIES
Qt::Core
Qt::CorePrivate
Qt::Gui
Qt::GuiPrivate
+ advapi32
+ d2d1 # special case
d3d11
dwmapi
+ dwrite # special case
dxgi
dxguid
+ gdi32
imm32
+ ole32
oleaut32
+ shell32
shlwapi
+ user32
version
+ winmm
winspool
wtsapi32
)
@@ -102,12 +101,12 @@ qt_internal_add_resource(QWindowsDirect2DIntegrationPlugin "openglblacklists"
# PLUGIN_EXTENDS = "-"
qt_internal_extend_target(QWindowsDirect2DIntegrationPlugin CONDITION QT_FEATURE_opengl AND NOT QT_FEATURE_dynamicgl
- PUBLIC_LIBRARIES
+ LIBRARIES
opengl32
)
qt_internal_extend_target(QWindowsDirect2DIntegrationPlugin CONDITION MINGW
- PUBLIC_LIBRARIES
+ LIBRARIES
uuid
)
@@ -272,7 +271,7 @@ qt_internal_extend_target(QWindowsDirect2DIntegrationPlugin CONDITION QT_FEATURE
)
qt_internal_extend_target(QWindowsDirect2DIntegrationPlugin CONDITION MINGW AND QT_FEATURE_accessibility
- PUBLIC_LIBRARIES
+ LIBRARIES
uuid
)