Details
-
User Story
-
Resolution: Done
-
Not Evaluated
-
None
Description
We generate pchs for every header file outside of a project part. So the pchs contains header files from other project parts. This can lead to an expensive recreation of many pchs if a central header is changed. And the generation is very expensive. But we can reduce this expense if we split the pchs in two parts. One contains the headers from outside the project like Qt and the STL and the other contains header from the other project parts. So we need only recreate the second pchs which is quite cheaper.
This can be also be combined with merging of project parts.
Attachments
Gerrit Reviews
For Gerrit Dashboard: QTCREATORBUG-21149 | ||||||
---|---|---|---|---|---|---|
# | Subject | Branch | Project | Status | CR | V |
243082,6 | Clang: Add top system includes to include collector | 4.8 | qt-creator/qt-creator | Status: MERGED | -2 | 0 |
243144,5 | ClangPchManager: Add build dependencies to include collector | 4.8 | qt-creator/qt-creator | Status: MERGED | -2 | 0 |
243717,5 | ClangPchManager: Add PchTaskGenerator | 4.8 | qt-creator/qt-creator | Status: MERGED | +2 | 0 |
243762,7 | ClangPchManager: Add BuildDependenciesProvider | 4.8 | qt-creator/qt-creator | Status: MERGED | -2 | 0 |
244871,3 | Clang: Add BuildDependenciesStorage | 4.8 | qt-creator/qt-creator | Status: MERGED | -2 | 0 |
245325,7 | Clang: Add BuildDependencyCollector | 4.8 | qt-creator/qt-creator | Status: MERGED | -2 | 0 |
246000,3 | ClangPchManager: Filter missing includes recursively | 4.8 | qt-creator/qt-creator | Status: MERGED | +2 | 0 |
246108,3 | ClangPchManager: Store collected build dependencies | 4.8 | qt-creator/qt-creator | Status: MERGED | +2 | 0 |
246254,7 | ClangPchManager: Add UsedMacroFilter | master | qt-creator/qt-creator | Status: MERGED | +2 | 0 |
247204,6 | ClangPchManager: Introduce PchTasksMerger | master | qt-creator/qt-creator | Status: MERGED | +2 | 0 |
247398,4 | ClangPchManager: Introduce PchTaskQueue | master | qt-creator/qt-creator | Status: MERGED | +2 | 0 |
247779,5 | CppTools: Introduce HeaderPathFilter | master | qt-creator/qt-creator | Status: MERGED | -2 | 0 |
247939,3 | CppTools: Adapt CompilerOptionsBuilder to HeaderPathFilter | master | qt-creator/qt-creator | Status: MERGED | +2 | 0 |
247942,6 | CppTools: Add reset function to CompilerOptionsBuilder | master | qt-creator/qt-creator | Status: MERGED | +2 | 0 |
248449,24 | PchManager: Split pch tasks in project and system pch tasks | master | qt-creator/qt-creator | Status: MERGED | -2 | 0 |
248449,24 | PchManager: Split pch tasks in project and system pch tasks | master | qt-creator/qt-creator | Status: MERGED | -2 | 0 |
248449,24 | PchManager: Split pch tasks in project and system pch tasks | master | qt-creator/qt-creator | Status: MERGED | -2 | 0 |
248449,24 | PchManager: Split pch tasks in project and system pch tasks | master | qt-creator/qt-creator | Status: MERGED | -2 | 0 |
248449,24 | PchManager: Split pch tasks in project and system pch tasks | master | qt-creator/qt-creator | Status: MERGED | -2 | 0 |
248449,24 | PchManager: Split pch tasks in project and system pch tasks | master | qt-creator/qt-creator | Status: MERGED | -2 | 0 |
248873,3 | ClangPchManager: Add CommandLineBuilder | master | qt-creator/qt-creator | Status: ABANDONED | 0 | 0 |
250531,3 | PchManager: Update only after generated files have been updated | master | qt-creator/qt-creator | Status: MERGED | +2 | 0 |
250616,7 | PchManager: Use Generated Files in BuildDependencyCollector | master | qt-creator/qt-creator | Status: MERGED | +2 | 0 |
250617,7 | PchManager: Fix generated file handling in PchCreator | master | qt-creator/qt-creator | Status: MERGED | +2 | 0 |
250724,7 | CppTools: Add sourceFilePath to AbstractEditorSupport | master | qt-creator/qt-creator | Status: MERGED | +2 | 0 |
250757,4 | ClangRefactoring: Adapt project part in the database | master | qt-creator/qt-creator | Status: MERGED | -2 | 0 |
250836,7 | ClangPchManager: Update ClangPathWatcher after PCH creation | master | qt-creator/qt-creator | Status: MERGED | -2 | 0 |
251507,8 | ClangPchManager: Merge system pch tasks | 4.9 | qt-creator/qt-creator | Status: MERGED | -2 | 0 |