Details
-
Task
-
Resolution: Fixed
-
P2: Important
-
6.2.4, 6.3.0 RC
-
None
Description
By #include ing not only the *.moc, but also the moc_*.cpp files, we can speed up compilation of Qt (albeit not for users of Qt), reduce the TEXT size of libraries, and enable more warnings (like Clang's -Wunused-private-field). By the time we tackle this, there should be a new includemocs6 script (from QTBUG-102886) in QtBase, that no longer requires a qmake build to operate.
- Acceptance criteria: mocs_compilation.cpp files should not #include anything.
- Backport to all branches (6.3, 6.2, 5.15).
- Script incl wrapper: https://codereview.qt-project.org/c/qt/qtbase/+/409553
- inspiration in case stuff goes wrong:
- no QT_END_NAMESPACE found: https://codereview.qt-project.org/c/qt/qtdeclarative/+/409613
- no .cpp found to include the moc-file:
- simple: https://codereview.qt-project.org/c/qt/qtconnectivity/+/409378
- a bit more complicated: https://codereview.qt-project.org/c/qt/qtdeclarative/+/409612
If you have questions, ask mmutz.
Attachments
Issue Links
- clones
-
QTBUG-103294 include moc files [QtActiveQt]
- Open
For Gerrit Dashboard: QTBUG-103295 | ||||||
---|---|---|---|---|---|---|
# | Subject | Branch | Project | Status | CR | V |
413825,2 | Add a TU for qwaylandquickextension.h | 6.3 | qt/qtwayland | Status: MERGED | +2 | 0 |
413826,2 | Add a TU for qwaylandcompositorquickextensions_p.h | 6.3 | qt/qtwayland | Status: MERGED | +2 | 0 |
413827,2 | Add missing QT_{BEGIN,END}_NAMESPACE | 6.3 | qt/qtwayland | Status: MERGED | +2 | 0 |
413828,2 | QtWlShellIntegrationPrivate: includemocs | 6.3 | qt/qtwayland | Status: MERGED | +2 | 0 |
413829,3 | QtWaylandCompositor: includemocs | 6.3 | qt/qtwayland | Status: MERGED | +2 | 0 |
413830,3 | QtWaylandTextureSharing: includemocs | 6.3 | qt/qtwayland | Status: MERGED | +2 | 0 |
413831,2 | QtWaylandCompositorQtShell: includemocs | 6.3 | qt/qtwayland | Status: MERGED | +2 | 0 |
413832,2 | QWaylandXdgShellIntegrationPlugin: includemocs | 6.3 | qt/qtwayland | Status: MERGED | +2 | 0 |
413833,2 | QWaylandXdgShellIntegrationPlugin: includemocs - qt6 | 6.3 | qt/qtwayland | Status: MERGED | +2 | 0 |
413834,3 | QtWaylandClient: includemocs - qt6 | 6.3 | qt/qtwayland | Status: MERGED | +2 | 0 |
413835,2 | QtWaylandEglClientHwIntegrationPrivate: includemocs | 6.3 | qt/qtwayland | Status: MERGED | +2 | 0 |
413836,2 | Add a TU for qwaylandquickextension.h | dev | qt/qtwayland | Status: MERGED | +2 | 0 |
413837,2 | Add a TU for qwaylandcompositorquickextensions_p.h | dev | qt/qtwayland | Status: MERGED | +2 | 0 |
413838,3 | Add missing QT_{BEGIN,END}_NAMESPACE | dev | qt/qtwayland | Status: MERGED | +2 | 0 |
413839,2 | QtWlShellIntegrationPrivate: includemocs | dev | qt/qtwayland | Status: MERGED | +2 | 0 |
413840,2 | QWaylandXdgShellIntegrationPlugin: includemocs | dev | qt/qtwayland | Status: MERGED | +2 | 0 |
413841,2 | QWaylandXdgShellIntegrationPlugin: includemocs - qt6 | dev | qt/qtwayland | Status: MERGED | +2 | 0 |
413842,2 | QtWaylandTextureSharing: includemocs | dev | qt/qtwayland | Status: MERGED | +2 | 0 |
413843,2 | QtWaylandCompositorQtShell: includemocs | dev | qt/qtwayland | Status: MERGED | +2 | 0 |
413844,2 | QtWaylandEglClientHwIntegrationPrivate: includemocs | dev | qt/qtwayland | Status: MERGED | +2 | 0 |
413845,2 | QtWaylandClient: includemocs | dev | qt/qtwayland | Status: MERGED | +2 | 0 |
413846,2 | QtWaylandClient: includemocs - qt6 | dev | qt/qtwayland | Status: MERGED | +2 | 0 |
413847,2 | QtWaylandCompositor: includemocs - qt6 | dev | qt/qtwayland | Status: MERGED | +2 | 0 |
413848,2 | QtWaylandCompositor: includemocs | dev | qt/qtwayland | Status: MERGED | +2 | 0 |
413876,3 | QtWaylandCompositor: includemocs - qt6 | 6.3 | qt/qtwayland | Status: MERGED | +2 | 0 |
413877,3 | QtWaylandClient: includemocs | 6.3 | qt/qtwayland | Status: MERGED | +2 | 0 |
413880,2 | Add a TU for qwaylandquickextension.h | tqtc/lts-5.15 | qt/tqtc-qtwayland | Status: ABANDONED | -2 | 0 |
413881,2 | Add a TU for qwaylandquickextension.h | tqtc/lts-6.2 | qt/tqtc-qtwayland | Status: MERGED | +2 | 0 |
413882,2 | Add missing QT_{BEGIN,END}_NAMESPACE | tqtc/lts-5.15 | qt/tqtc-qtwayland | Status: MERGED | +2 | 0 |
413883,2 | Add a TU for qwaylandcompositorquickextensions_p.h | tqtc/lts-6.2 | qt/tqtc-qtwayland | Status: MERGED | +2 | 0 |
413884,2 | QtWaylandCompositor: includemocs | tqtc/lts-5.15 | qt/tqtc-qtwayland | Status: MERGED | +2 | 0 |
413885,3 | QtWaylandTextureSharing: includemocs | tqtc/lts-5.15 | qt/tqtc-qtwayland | Status: MERGED | +2 | 0 |
413886,3 | QtWaylandEglClientHwIntegrationPrivate: includemocs | tqtc/lts-5.15 | qt/tqtc-qtwayland | Status: MERGED | +2 | 0 |
413887,2 | QtWaylandEglClientHwIntegrationPrivate: includemocs | tqtc/lts-6.2 | qt/tqtc-qtwayland | Status: MERGED | +2 | 0 |
413888,2 | Add missing QT_{BEGIN,END}_NAMESPACE | tqtc/lts-6.2 | qt/tqtc-qtwayland | Status: MERGED | +2 | 0 |
413889,2 | QtWlShellIntegrationPrivate: includemocs | tqtc/lts-5.15 | qt/tqtc-qtwayland | Status: MERGED | +2 | 0 |
413890,2 | QtWlShellIntegrationPrivate: includemocs | tqtc/lts-6.2 | qt/tqtc-qtwayland | Status: MERGED | +2 | 0 |
413891,4 | QtWaylandCompositor: includemocs | tqtc/lts-6.2 | qt/tqtc-qtwayland | Status: MERGED | +2 | 0 |
413892,2 | QtWaylandTextureSharing: includemocs | tqtc/lts-6.2 | qt/tqtc-qtwayland | Status: MERGED | +2 | 0 |
413893,2 | QWaylandXdgShellIntegrationPlugin: includemocs | tqtc/lts-6.2 | qt/tqtc-qtwayland | Status: MERGED | +2 | 0 |
413894,2 | QWaylandXdgShellIntegrationPlugin: includemocs | tqtc/lts-5.15 | qt/tqtc-qtwayland | Status: MERGED | +2 | 0 |
413895,1 | QWaylandXdgShellIntegrationPlugin: includemocs - qt6 | tqtc/lts-6.2 | qt/tqtc-qtwayland | Status: ABANDONED | 0 | 0 |
413896,2 | QtWaylandClient: includemocs - qt6 | tqtc/lts-6.2 | qt/tqtc-qtwayland | Status: MERGED | +2 | 0 |
413897,3 | QtWaylandCompositor: includemocs - qt6 | tqtc/lts-6.2 | qt/tqtc-qtwayland | Status: MERGED | +2 | 0 |
413898,2 | QtWaylandClient: includemocs | tqtc/lts-6.2 | qt/tqtc-qtwayland | Status: MERGED | +2 | 0 |
413899,2 | QtWaylandClient: includemocs | tqtc/lts-5.15 | qt/tqtc-qtwayland | Status: MERGED | +2 | 0 |