diff options
| author | Tim Schneeberger <tim.schneeberger@outlook.de> | 2026-06-23 07:09:25 +0200 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2026-06-23 05:09:25 +0000 |
| commit | 0d2346d322b00df45470338406ef290d210ac92e (patch) | |
| tree | dd03964444127a2c27e21b36513fa267fcedb162 /StormLib/src/SFileAttributes.cpp | |
| parent | e50d03dab0a60c505d14cf15b965e5eef8bba0e5 (diff) | |
Reduce LUS header bloat & improve build speed (#6802)
* Avoid `randomizer_check_tracker.h` in widely used `randomizer.h` due to transitive `libultraship.h`/`UIWidgets.hpp` inclusion
* Avoid `libultraship.h` inclusion in heavily used `GameInteractor.h` header
* Remove unused libultraship includes
* Break huge unneeded transitive include chain (via UIWidgets.hpp)
This avoids that changing just UIWidgets.hpp, for example, would retrigger a rebuild of like half the project.
There were a huge transitive include chains, mostly via MenuTypes.h and UIWidgets.hpp. Because of that, I'm splitting UIWidgets into a second header file UIWidgetOptions.hpp, which can be consumed by MenuTypes.h. MenuTypes.h is split into BackendTypes.h to avoid pulling in Fast3D/Windowing/GUI stuff into unrelated code.
Example chain, one of many:
libultraship.h <- UIWidgets.hpp <- MenuTypes.hpp <- randomizer/option.h <- randomizer/item_location.h <- trial.h <- static_data.h <- SeedContext <- (basically all randomizer related sources, lots of other sources in Enhancement, more...)
* Avoid libultraship.h in Notification.h and ObjectExtension.h; these headers are also heavily used
* Add missing include
* Remove unused libultraship includes
* Include only ship/window/GuiWindow.h in GUI-related headers instead of libultraship.h
* Cleanup ConfigUpdater.h and playthrough.cpp
* Remove libultraship.h from Anchor.h and fix transitive dependencies in OTRGlobals.cpp
* Remove unused libultraship.h includes in Anchor code
Diffstat (limited to 'StormLib/src/SFileAttributes.cpp')
0 files changed, 0 insertions, 0 deletions
