Details
-
Bug
-
Resolution: Fixed
-
P2: Important
-
6.0.3, 6.1.0, 6.2
-
None
-
df040fb11 (dev), 412e08106 (dev), a72dacce2 (dev), 2bbc0bda3 (dev), 45c8ab114 (6.8), 25f575e85 (dev), 79507816f (6.8), e4549375c (6.8), c53a9d9ff (6.8), feaeb68a2 (6.8), d5c5e8380 (dev), 8c91757e9 (dev), 19702c9bc (6.8), 17856391a (6.8)
Description
Currently tests created by qt_internal_add_test don't have qmlimportscanner run for them (via qt_import_qml_plugins).
This means that in a static Qt build, if the test needs some qml plugins, the test will fail at runtime saying some qml import has failed.
In examples added by the public qt_add_executable, we run qt_import_qml_plugins via scope finalizers.
For tests we have a few options:
- call qt_import_qml_plugins directly in qt_internal_add_test()
- Call it via scope finalizer (only this one function)
- Call all scope finalizers like we do in qt_add_executable. This might prove problematic to implement.
We can't call qt_import_qml_plugins when building the qtdeclarative tests as part of the overall qtdeclarative build (or a top-level build), but we can do it for standalone test builds, which is what is used by the CI.
Attachments
Issue Links
- duplicates
-
QTBUG-104465 It is impossible to build tests with custom plugins in static build configurations
- Reported
- relates to
-
QTBUG-114688 QML application does not start if some QML modules are built static
- Closed
-
QTBUG-100796 qt_internal_add_test calls don't handle extra properties for Android
- Closed
-
QTBUG-112212 Unify target finalizer execution (e.g. auto-linking plugins) for tests across platforms
- Closed
- resulted from
-
QTBUG-93459 [Highlighted example] virtualkeyboard/static fails to compile on iOS
- Closed
- resulted in
-
QTBUG-131141 Target finalizers are not run for qt_internal_add_executable/app/tool
- Reported
- mentioned in
-
Page Loading...