SourceWalkThrough - ajf58/scons GitHub Wiki
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:
| src | the sources |
| doc | the documentation (man pages, guides, etc) |
| test | the test suite |
| www | the old SCons website repository |
The src directory is the one you probably care about. It is organized like this:
-
engine: the guts of SCons-
SCons: the root of the SCons python module hierarchy-
*.py: the python modules -
*Tests.py: unit tests, discovered automatically; see TestingMethodology -
Tool: Tool modules, e.g. cc.py, msvc.py, latex.py... -
Scanner: Scanner modules for dependency scanning -
Node: the Node object, the central filesystem abstraction for building the dependency graph -
Script: Main.py in here has the main loop that parses SCons options and reads the SConstruct; it's what's called from the "scons" script
-
-
-
script: the "scons" wrapper script
Some key files in src/SCons:
-
Environment.py: SCons Environment class: the user way to communicate dependencies and construction information to the SCons engine -
Node/FS.py: File() and Dir() nodes are defined here