SCons

SCons run phases

Introduction#

SCons is a multi-step build system. First it reads all SConstruct and SConscript to execute Python code and create build graph with targets. Then it scans filesystem to detect which targets from the build graph should be updated, and after that it executes command to build outdated targets.

Inspecting SCons phases

scons describes running phases itself. Running it over an empty SConstruct yields this:

$ scons
scons: Reading SConscript files ...
scons: done reading SConscript files.
scons: Building targets ...
scons: `.' is up to date.
scons: done building targets.

To suppress phase messages, add -Q option. --tree=all allows to see dependency tree for current target that scons constructed while building.

$ scons -Q --tree=all
scons: `.' is up to date.
+-.
  +-SConstruct

. is default target, which means “build SConstruct in current directory”. SConstruct is then a dependency for building the default target.


This modified text is an extract of the original Stack Overflow Documentation created by the contributors and released under CC BY-SA 3.0 This website is not affiliated with Stack Overflow