[SERVER-68305] Add Jumbo/Unity Builds Created: 26/Jul/22  Updated: 24/Jan/24  Resolved: 24/Jan/24

Status: Closed
Project: Core Server
Component/s: None
Affects Version/s: None
Fix Version/s: None

Type: New Feature Priority: Major - P3
Reporter: Alex Neben Assignee: Unassigned
Resolution: Won't Fix Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Assigned Teams:
Build
Participants:

 Description   

Other makefile generators (like CMake, via a CMAKE_UNITY_BUILD option) or products like Google Chromium (with an option use_jumbo_build) have a compilation mode where multiple files (up to 200) are compiled by means of a single compilation unit whose content is:

#include "file1.cpp"
#include "file2.cpp"
...
#include "file200.cpp"

This improves the build time by avoiding the startup of the compiler N times, and linking has to work with less .obj files. Even when the user modifies a single file and the compilation has to process many more files, the reduced link time offsets the extra time spent in the compilation (and in any case this penalty can be compensated by tweaking the number of bundled files)


Generated at Thu Feb 08 06:10:27 UTC 2024 using Jira 9.7.1#970001-sha1:2222b88b221c4928ef0de3161136cc90c8356a66.