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