[Scons-users] Builder execution order?

delbert dev delbertum at gmail.com
Fri Jan 17 03:49:23 EST 2014


That gives nothing:

*user at ubuntu:~/tmp/af_test$ scons --tree=prune*
*scons: Reading SConscript files ...*
*scons: *** source file [gtest-1.7.0.zip] must be exist Stop.*


I am running SCons version 2.3:

*$ scons --version*
*SCons by Steven Knight et al.:*
* script: v2.3.0, 2013/03/03 09:48:35, by garyo on reepicheep*
* engine: v2.3.0, 2013/03/03 09:48:35, by garyo on reepicheep*
* engine path: ['/usr/lib/scons/SCons']*
*Copyright (c) 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010,
2011, 2012, 2013 The SCons Foundation*






On Fri, Jan 17, 2014 at 6:03 AM, William Deegan
<bill at baddogconsulting.com>wrote:


> Delbert,

>

> On Jan 16, 2014, at 4:21 PM, delbert dev <delbertum at gmail.com> wrote:

>

> In the root of my git repo I have a SConstruct file that calls some

> subscripts (SConscript):

>

>

> *subscripts = [*

>

> * ['A/SConscript', 'testA'], *

> * ['B/SConscript', 'testB']*

> * ]*

> *for c in subscripts:*

> * odir = outputdir + '/' + c[1]*

> * SConscript(c[0],*

> * variant_dir = odir,*

> * duplicate = 0,*

> * exports = ['env', 'odir'])*

>

>

> As a result I can simply call 'scons' from the root and all the above

> projects will be build. If I only want to build B I simply type 'scons

> testB' (I guess this here:

> http://www.scons.org/doc/production/HTML/scons-user/c3186.html#AEN3191would be a better approach?)

>

> In project B I am using the two scripts defined here (which I have copied

> to site_scons/site_tools ):

> http://www.scons.org/wiki/DownloadUnpack

>

>

>

>

>

>

>

>

>

> *env.Tool('URLDownload', '#site_scons/site_tools')env.Tool('Unpack',

> '#site_scons/site_tools')env.Replace(URLDOWNLOAD_USEURLFILENAME = False )

> ouutdir = Entry('outdir')a = env.Alias('abc',

> env.URLDownload(gtestOutputFile, gtestUrl))b = env.Alias('xyz', env.Unpack(

> ouutdir, gtestOutputFile ))*

>

>

> but when I run 'scons abc' it appears that it runs xyz first (complain

> about the file not existing).

>

> If I remove *b* *a* is executed just fine. And if I re-enable *b* it

> extract the file downloaded in *a*. Why is *b* run before *a*?

>

>

> Try running:

> scons --tree=prune

> That should give a visual picture of the dependencies that SCons expects.

>

> -Bill

>

> _______________________________________________

> Scons-users mailing list

> Scons-users at scons.org

> http://four.pairlist.net/mailman/listinfo/scons-users

>

>

-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://four.pairlist.net/pipermail/scons-users/attachments/20140117/3ce72de7/attachment.htm


More information about the Scons-users mailing list