Details
-
New Feature
-
Resolution: Won't Do
-
Major - P3
-
None
-
None
-
None
-
Server Development Platform
-
Fully Compatible
-
Platform 2 04/24/15
Description
The current module system does not provide an API by which a module can express things like the addition of new options or variables to scons, and does not provide a simple way to integrate additional configure checks or environment modifications.
Additionally, the top level SConstructs use of modules is fairly limited.
A better module system should be developed that allows options, variables, configure checks to be pushed down into each loaded module. Additionally, the top level SConstruct should be updated so that it acts, essentially, as a builder of modules.
Once this is done, we should write module definitions for src/mongo and src/third_party and push down much of the logic in the top level SConstruct into those modules.