-
Notifications
You must be signed in to change notification settings - Fork 3.8k
Enable unity(Jumbo) builds #5768
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
Signed-off-by: Jean-Simon Lapointe <jean-simon.lapointe@ubisoft.com>
Codecov ReportAll modified and coverable lines are covered by tests ✅
Additional details and impacted files@@ Coverage Diff @@
## main #5768 +/- ##
=======================================
Coverage 56.39% 56.39%
=======================================
Files 503 503
Lines 29620 29620
Branches 4426 4426
=======================================
Hits 16704 16704
Misses 12109 12109
Partials 807 807 ☔ View full report in Codecov by Sentry. |
Signed-off-by: Jean-Simon Lapointe <jean-simon.lapointe@ubisoft.com>
Also, I think it would be best to have at least one unity build part of the CI process, to make sure it does not get broken. Do you think it is something we could do? If so, how? |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Could you fix the linting errors? Thanks!
Signed-off-by: Jean-Simon Lapointe <jean-simon.lapointe@ubisoft.com>
Added a cmake option to enable Unity builds. Added missing include guards Fixed some missing/extra #undef that cause Unity builds to fail. Fixed some duplicated symbol names that made Unity builds to fail For large code base, especially in the game dev industry, Unity builds (https://en.wikipedia.org/wiki/Unity_build) are used to speed up the compilations. Special care must be taken to enable Unity builds for a project, since many translation units will be merged togheter. --------- Signed-off-by: Jean-Simon Lapointe <jean-simon.lapointe@ubisoft.com> Co-authored-by: Justin Chu <justinchuby@users.noreply.github.com> Co-authored-by: G. Ramalingam <grama@microsoft.com> Signed-off-by: Linsho Kaku <linsho@preferred.jp>
Description
Added a cmake option to enable Unity builds.
Added missing include guards
Fixed some missing/extra #undef that cause Unity builds to fail.
Fixed some duplicated symbol names that made Unity builds to fail
Motivation and Context
For large code base, especially in the game dev industry, Unity builds (https://en.wikipedia.org/wiki/Unity_build) are used to speed up the compilations.
Special care must be taken to enable Unity builds for a project, since many translation units will be merged togheter.