Re: SConsignFile(None) + Decider('MD5-timestamp')

trevor fitzsimmons <[email protected]>
Newsgroups gmane.comp.programming.tools.scons.user
Message-ID <DM6PR19MB423228C10F7F64015AF3E38C96430@DM6PR19MB4232.namprd19.prod.outlook.com>
Python 3.6.9, Scons 4.0.1

________________________________
From: Scons-users <[email protected]> on behalf of Bill Deegan <[email protected]>
Sent: Thursday, August 13, 2020 1:00 PM
To: SCons users mailing list <[email protected]>
Subject: Re: [Scons-users] SConsignFile(None) + Decider('MD5-timestamp')

scons -u is what you want.
See the manpage..

If you're not processing all the SConscripts your build may be out of date.. assuming the current directory depends (recursively) on any other directories targets.

Also see: https://github.com/SCons/scons/wiki/GoFastButton

--implicit-deps-unchanged
and
--implicit-cache

Should help some, but note if your implicit dependencies change will be missed.

Which version of SCons/Python are you using?




On Thu, Aug 13, 2020 at 9:18 AM trevor fitzsimmons <[email protected]<mailto:[email protected]>> wrote:
Specifying a directory or specific target from the top level does work, but there is a performance cost, as scons seems to process all SConstructs, which is about 30s on the actual project.

The only combination of -C, -d, -u, -U which I could find to work was using either -u or -U in combination with -C pointed at the top level, but it has the same performance penalty as above.  Are there changes I need to make to the SConstruct layout?

________________________________
From: Scons-users <[email protected]<mailto:[email protected]>> on behalf of Mats Wichmann <[email protected]<mailto:[email protected]>>
Sent: Thursday, August 13, 2020 11:22 AM
To: [email protected]<mailto:[email protected]> <[email protected]<mailto:[email protected]>>
Subject: Re: [Scons-users] SConsignFile(None) + Decider('MD5-timestamp')

On 8/13/20 9:10 AM, trevor fitzsimmons wrote:
> Sorry, somehow this email ended up in junk & I didn't see it when
> replying to the other one.
>
> The goal is to be able to build from any directory, and only have
> necessary targets rebuilt.  SConsignFile(None) seemed to be the only
> option I could find to do this.
>
> The example was simplified.  The real project has many nested
> directories, libraries, programs, etc.  Typically, builds are run from
> the top level, to build all changes (like when pulling changes from
> other developers).  However, it's also very helpful to be able to build
> from a specific directory when writing code (perhaps a single library,
> or a set of relate libraries), to avoid waiting on a full rebuild.
>
> Is there another setup that accomplishes this?  Maybe I just need to
> restructure things.

You can give the name of the specific directory as a commandline
argument to restrict the build from the top.

You can also use some combination of the -C, -d, -U and -u options to
adjust the behavior if your not at the top, such that you can be in the
directory you want to build in, and kick off a build by going "scons -u"
for example.

_______________________________________________
Scons-users mailing list
[email protected]<mailto:[email protected]>
https://pairlist4.pair.net/mailman/listinfo/scons-users
_______________________________________________
Scons-users mailing list
[email protected]<mailto:[email protected]>
https://pairlist4.pair.net/mailman/listinfo/scons-users

_______________________________________________
Scons-users mailing list
[email protected]
https://pairlist4.pair.net/mailman/listinfo/scons-users
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.