[Scons-users] Ignoring (some) errors

Marc Branchaud marcnarc at xiplink.com
Wed Apr 8 17:32:12 EDT 2015


On 15-04-08 04:30 PM, Dirk Bächle wrote:
> Hi Marc,
> 
> On 08.04.2015 20:06, Marc Branchaud wrote:
>> Hi all,
>>
>> I have a project that builds many binaries, then assembles them in different
>> ways to create different products.  All of this is conveniently depended-on
>> by a single Alias target (e.g. "allproducts").
>>
>> I would like to execute this build in parallel (with --jobs).  However, I
>> would also like for the second step to be robust against a failure to
>> assemble a product.
>>
>> There is --keep-going, but if I read the man page correctly that would still
>> abort my single allproducts target if there's a failure ("The target that
>> failed and those that depend on it will not be remade, but other targets
>> specified on the command line will still be processed.")
>>
> 
> there is also -i/--ignore-errors (see
> http://stackoverflow.com/questions/23825405/ignore-build-errors-and-build-as-far-as-possible-with-scons-i-or-with-scons-k
> , amongst others).
> Does that help?

(Heh -- missed -i when I skimmed through the man page...)

I guess --ignore-errors wouldn't abort the single allproducts target, but
it's still not what I want.

 - Any error in the first part, where the many binaries are being built,
should abort the whole build.  It's in the second part that I want to get as
many products assembled as possible, irrespective of any products failing.

 - I still want the build to report any product-assembly failures
(specifically, exit with a non-zero code), so that they get noticed and fixed.

 - The description of -i talks about "commands executed to rebuild files" but
I want this to work on clean builds.  (Perhaps I should mention that the main
user of this "allproducts" target is a build bot, not a human.)

		M.



More information about the Scons-users mailing list