[Scons-users] Is a post-build function possible ?
    William Deegan 
    bill at baddogconsulting.com
       
    Tue Jun 26 13:35:00 EDT 2012
    
    
  
Ray,
On Jun 26, 2012, at 4:00 AM, Ray Pasco wrote:
> On 2012-06-25 10:30 PM, William Deegan wrote:
>> Ray,
>> On Jun 25, 2012, at 6:24 PM, Ray Pasco wrote:
>> 
>>> I understand that execution order is random for Program(), Action(), etc., because [sic].  But, is there a way to execute a post-build command or function which is defined within file SContruct ?  (This would be similar to the wxPython method CallAfter(). )
>> 
>> Order is not random. A DAG (directed acyclic graph) is constructed based on the dependencies, both explicit and implicit.
>> 
>> You can use the python atexit to have something done at the end of the SCons run.
>> http://docs.python.org/library/atexit.html
>> 
>> Or you can use AddPostAction() to be run after a target is built.
>> (see: http://scons.org/doc/production/HTML/scons-man.html and search for AddPostAction() )
>> 
>> -Bill
>> 
> 
> Thanks, AddPostAction looks like what I need.  
> 
> I'm just trying to "black box" just the high-level basics of SCons. I should have been more specific:  If I create a single environment and then call Environment.Program() twice for two independent targets, wouldn't the actual execution of the Program calls be random despite what order they appear in the SConstruct file ?
Nope. Shouldn't be random.
The algorithm is deterministic as far as I know.
If you run -j anything, it may seem random, but that's likely due to variations in the runtime of the many jobs run.
If you run SCons 10 times without -j,  for a clean build, you should (as far as i know) see it do the same compiles in the same order.
-Bill
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://four.pairlist.net/pipermail/scons-users/attachments/20120626/86ee3c0c/attachment.html>
    
    
More information about the Scons-users
mailing list