Package SCons :: Package Node :: Module FS :: Class FileBuildInfo
[hide private]
[frames] | no frames]

Class FileBuildInfo

source code

   object --+    
            |    
BuildInfoBase --+
                |
               FileBuildInfo
Known Subclasses:

This is info loaded from sconsign.

Attributes unique to FileBuildInfo:
dependency_map : Caches file->csig mapping
for all dependencies. Currently this is only used when using MD5-timestamp decider. It's used to ensure that we copy the correct csig from previous build to be written to .sconsign when current build is done. Previously the matching of csig to file was strictly by order they appeared in bdepends, bsources, or bimplicit, and so a change in order or count of any of these could yield writing wrong csig, and then false positive rebuilds
Instance Methods [hide private]
 
__setattr__(self, key, value)
x.__setattr__('name', value) <==> x.name = value
source code
 
convert_from_sconsign(self, dir, name)
Converts a newly-read FileBuildInfo object for in-SCons use
source code
 
convert_to_sconsign(self)
Converts this FileBuildInfo object for writing to a .sconsign file
source code
 
format(self, names=0) source code
 
prepare_dependencies(self)
Prepares a FileBuildInfo object for explaining what changed
source code

Inherited from BuildInfoBase: __getstate__, __init__, __setstate__, merge

Inherited from object: __delattr__, __format__, __getattribute__, __hash__, __new__, __reduce__, __reduce_ex__, __repr__, __sizeof__, __str__, __subclasshook__

Class Variables [hide private]
  current_version_id = 2
Properties [hide private]
  dependency_map

Inherited from BuildInfoBase: bact, bactsig, bdepends, bdependsigs, bimplicit, bimplicitsigs, bsources, bsourcesigs

Inherited from object: __class__

Method Details [hide private]

__setattr__(self, key, value)

source code 
x.__setattr__('name', value) <==> x.name = value
Overrides: object.__setattr__
(inherited documentation)

convert_from_sconsign(self, dir, name)

source code 

Converts a newly-read FileBuildInfo object for in-SCons use

For normal up-to-date checking, we don't have any conversion to perform--but we're leaving this method here to make that clear.

convert_to_sconsign(self)

source code 

Converts this FileBuildInfo object for writing to a .sconsign file

This replaces each Node in our various dependency lists with its usual string representation: relative to the top-level SConstruct directory, or an absolute path if it's outside.

prepare_dependencies(self)

source code 

Prepares a FileBuildInfo object for explaining what changed

The bsources, bdepends and bimplicit lists have all been stored on disk as paths relative to the top-level SConstruct directory. Convert the strings to actual Nodes (for use by the --debug=explain code and --implicit-cache).