diff options
author | Alexandru Croitor <alexandru.croitor@qt.io> | 2021-08-23 20:33:55 +0200 |
---|---|---|
committer | Qt Cherry-pick Bot <cherrypick_bot@qt-project.org> | 2021-08-24 10:49:11 +0000 |
commit | a282090d4026a8927b4ccb483185a9c3a7bf9f56 (patch) | |
tree | e36b7016dd1855d972065661afd4232d1b9f29b8 | |
parent | 8d0654563b1d31c8818eaeac721e598263e1bceb (diff) |
CMake: Fix iOS app builds that use QScxmlEcmaScriptDataModelPlugin
The QScxmlEcmaScriptDataModelPlugin project was setting the
PRIVATE_MODULE_INTERFACE option which is not a recognized option for
plugins, but because it came after LIBRARIES, the actual option name
and the values that come after it got recorded as "regular" libraries.
This in turn was passed to qt_internal_extend_target which /does/
recognize PRIVATE_MODULE_INTERFACE, but because there's no counterpart
Private target for the plugin target (as would be needed for
PRIVATE_MODULE_INTERFACE) the option and its values were silently
discarded.
Because qt_internal_add_plugin adds Qt::PlatformPluginInternal after
arg_LIBRARIES (which had PRIVATE_MODULE_INTERFACE as an option),
that means the Qt::PlatformPluginInternal dependency
was also interpreted as to be used for the Private target and thus
discarded.
This means none of the bitcode flags meant to be applied to the plugin
target were applied and linking of an application failed with
ld '/qt/ios/plugins/scxmldatamodel/libqscxmlecmascriptdatamodel.a(mocs_compilation_Release.cpp.o)' does not contain bitcode.
Remove the invalid PRIVATE_MODULE_INTERFACE option.
Amends 9251d5c76fb57674e8b7d3491f064814c5e08b20
Fixes: QTBUG-95921
Task-number: QTBUG-95208
Change-Id: Iaa752aa29295464957934f6d9161c0b31b3970b8
Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
(cherry picked from commit e9f09a1deddcfca61cca561d8ee8ac89d8b0b946)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
-rw-r--r-- | src/plugins/ecmascriptdatamodel/CMakeLists.txt | 4 |
1 files changed, 0 insertions, 4 deletions
diff --git a/src/plugins/ecmascriptdatamodel/CMakeLists.txt b/src/plugins/ecmascriptdatamodel/CMakeLists.txt index a4dbf54..8762788 100644 --- a/src/plugins/ecmascriptdatamodel/CMakeLists.txt +++ b/src/plugins/ecmascriptdatamodel/CMakeLists.txt @@ -15,10 +15,6 @@ qt_internal_add_plugin(QScxmlEcmaScriptDataModelPlugin Qt::Core Qt::Scxml Qt::Qml - PRIVATE_MODULE_INTERFACE - Qt::CorePrivate - Qt::QmlPrivate - Qt::ScxmlPrivate INCLUDE_DIRECTORIES $<TARGET_PROPERTY:Qt::QmlPrivate,INTERFACE_INCLUDE_DIRECTORIES> $<TARGET_PROPERTY:Qt::Scxml,INTERFACE_INCLUDE_DIRECTORIES> |