qt5base-lts/doc/global
Marc Mutz f29566c5a4 Prevent repeated instantiations of some qRegisterNormalizedMetaType<>s [1/N] (QtGui)
Create macros that wrap the magic developed in
7d63efc16f and apply it to all
Q_DECLARE_METATYPE invocations that show up in Clang -ftime-trace for
a PCH'ed QtGui build.

Effects on compile times:

Clang 10 -ftme-trace:

  $ ClangBuildAnalyzer --analyze qtgui-before.trace  | head -n6
  Analyzing build trace from 'qtgui-before.trace'...
  **** Time summary:
  Compilation (523 times):
    Parsing (frontend):          628.3 s
    Codegen & opts (backend):    304.5 s

  $ ClangBuildAnalyzer --analyze qtgui-after.trace  | head -n6
  Analyzing build trace from 'qtgui-after.trace'...
  **** Time summary:
  Compilation (523 times):
    Parsing (frontend):          546.0 s
    Codegen & opts (backend):    304.4 s

GCC 11 time (bash builtin):

before:

  $ time for ((i=0; i < 3; ++i)) do touch src/gui/painting/qpolygon.h ; ninja libQt6Gui.so; done

  real    4m13,539s
  user    49m24,416s
  sys     3m18,177s

after:

  $ time for ((i=0; i < 3; ++i)) do touch src/gui/painting/qpolygon.h ; ninja libQt6Gui.so; done

  real    3m55,697s
  user    45m19,941s
  sys     3m7,370s

Task-number: QTBUG-97601
Pick-to: 6.3
Change-Id: Ia8e37a58937568a7ed21cfeb4b27274deca4d53b
Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io>
2022-01-21 11:22:35 +00:00
..
externalsites Doc: Fix typo in \externalpage command 2022-01-07 17:13:18 +01:00
includes Document that QStandardPath::findExecutable works with absolute paths 2022-01-21 00:48:23 +01:00
includes-online
template Doc: Add styling for note/warning/important admonitions 2021-11-03 16:47:18 +02:00
compat.qdocconf Doc: Ignore QML/JavaScript parsing errors 2017-02-07 08:34:39 +00:00
config.qdocconf Update copyright year to 2022 2022-01-04 12:44:19 +01:00
externalsites.qdocconf
fileextensions.qdocconf
html-config.qdocconf
html-footer-online.qdocconf Update copyright year to 2022 2022-01-04 12:44:19 +01:00
html-footer.qdocconf Update copyright year to 2022 2022-01-04 12:44:19 +01:00
html-header-offline.qdocconf
html-header-online.qdocconf doc: Update online navigation header to match http://doc.qt.io/ 2018-10-17 16:16:28 +00:00
macros-online.qdocconf Doc: Make \youtube macro work with litehtml help backend 2020-12-01 08:12:09 +00:00
macros.qdocconf Doc: Add \QtMajorVersion macro 2021-11-10 13:31:05 +01:00
manifest-meta.qdocconf Doc: Add thumbnail for Widgets Gallery Example 2020-11-30 17:16:22 +01:00
qt-cpp-defines.qdocconf Prevent repeated instantiations of some qRegisterNormalizedMetaType<>s [1/N] (QtGui) 2022-01-21 11:22:35 +00:00
qt-html-templates-offline-simple.qdocconf Doc: Adjust offline style for the litehtml rendering engine 2020-03-26 15:28:31 +01:00
qt-html-templates-offline.qdocconf Merge remote-tracking branch 'origin/5.12' into 5.13 2019-05-09 13:06:11 +00:00
qt-html-templates-online.qdocconf Merge remote-tracking branch 'origin/5.12' into 5.13 2019-05-09 13:06:11 +00:00
qt-module-defaults-offline.qdocconf doc/global: Remove references to Qt 5 in comments 2020-11-19 17:27:30 +01:00
qt-module-defaults-online-commercial.qdocconf Doc: Update global documentation config for Qt 6 2020-06-08 13:41:07 +02:00
qt-module-defaults-online.qdocconf Update copyright year to 2022 2022-01-04 12:44:19 +01:00
qt-module-defaults.qdocconf doc/global: Remove references to Qt 5 in comments 2020-11-19 17:27:30 +01:00