[Scons-users] Scons bug with LINKCOMSTR on windows

Nick Hilton weegreenblobbie at yahoo.com
Sat Aug 16 12:42:28 EDT 2014


Thank Dirk,

You bring up another feature request, custom stdout, stderr filtering.

Using the *COMSTR stuff we can get very brief message (except on windows as already mentioned).  We are compiling a large project at work and on the Linux platform, I'm overriding some evn['SPAWN'] with my own wrapper so I can filter builder output.

This works great on Linux, any builer output is colored in red to make warnings obvious.  I can also get this approach to work on windows, except for when the command line gets too long and the command is written to a temp file.  The link command will succeed, .lib or .exe is created succesfully, however, SCons will think it faild.  If I disable the SPAWN wrapper, the link command succeeds.

I'll try to work up a simple example that demonstrates the bug.

Can we get a clean way to install our own python function to process all builder output?  I'll write up this ticket if the feature doesn't exist already.


:)
Nick


________________________________
 From: Dirk Bächle <tshortik at gmx.de>
To: scons-users at scons.org 
Sent: Saturday, August 16, 2014 3:26 AM
Subject: Re: [Scons-users] Scons bug with LINKCOMSTR on windows
 

Hi Nick,




On 16.08.2014 02:32, Nick Hilton wrote:
> Hello All,
>
> I'm using scons-2.3.2 on Windows 7 64-bit and having trouble with LINKCOMSTR.
>
> I'm creating a static archive of some library code but when the command line arguments to the linker grow too long, I get this output:
>
> Archiving src\foobar\foobar.lib
> Using tempfile c:\users\username\appdata\local\temp\tmpdes6n2.lnk for command line:
> lib /nologo /out:src\foobar\foobar.lib src\foobar\foo.obj src\foobar\bar.obj ...
> # Lots of obj files listed ...
> # Lots of obj files listed ...
> # Lots of obj files listed ...

the "Using tempfile" line definitely comes from SCons, and it's 
hard-coded at the moment. So as soon as the "tempfile" mechanism kicks 
in, you can't turn this one off, unless you turn *all* messages off with 
the "-s" option (silent mode).
The reason for the hard-coded part seems to be that "tempfile"s are 
special actions, which have to get expanded before the usual "string 
expanding 'n' stuff" happens.
Feel free to file a bug, but changing the underlying core sources won't 
happen over the weekend, I'm afraid. ;)

About the list of object files: I'm no Windows user, but I remember 
having read about "cl.exe" that it will always list its source 
files...and there exists no flag to switch this behaviour off. I guess 
the same holds for link.exe...

Best regards,

Dirk

_______________________________________________
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/20140816/95018f61/attachment.html>


More information about the Scons-users mailing list