DevGuide SourceWalkThrough - SCons/scons GitHub Wiki
SCons Source Tree Walkthrough
Here's a quick introduction to the structure of the SCons repository.
When you first check out SCons, the main directories you will see are:
| SCons | the sources |
| doc | the documentation (man pages, guides, etc) |
| scripts | the things your would run from a cmdline |
| test | the test suite (end to end tests) |
| testing | the testing framework |
The SCons directory is the one you probably care about. It is organized like this:
SCons: the root of the SCons python module hierarchy*.py: the python modules*Tests.py: unit tests, discovered automatically; see TestingMethodology*.xml: documentation files that are kept close to the implementation (these are folded in to the contents ofdocwhen documentation is built)Tool: Tool modules, e.g. cc.py, msvc.py, latex.py...Scanner: Scanner modules for dependency scanningNode: the Node object, the central filesystem abstraction for building the dependency graphScript:Main.pyin here has the main loop that parses SCons options and reads theSConstruct; it's what's called from the "scons" script
Some key files in SCons:
Environment.py: SCons Environment class: the user way to communicate dependencies and construction information to the SCons engineNode/FS.py: File() and Dir() nodes are defined here
After working with the source tree for a while, there may be two additional directories of interest:
| build | where the documentation build goes |
| bootstrap | localized scons distribution used for packaging |