Uploaded image for project: 'Core Server'
  1. Core Server
  2. SERVER-68305

Add Jumbo/Unity Builds

    XMLWordPrintableJSON

Details

    • Icon: New Feature New Feature
    • Resolution: Won't Fix
    • Icon: Major - P3 Major - P3
    • None
    • None
    • None
    • None
    • Build

    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)

      Attachments

        Activity

          People

            Unassigned Unassigned
            alex.neben@mongodb.com Alex Neben
            Votes:
            0 Vote for this issue
            Watchers:
            6 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: