Boost logo

Boost-Commit :

Subject: [Boost-commit] svn:boost r78545 - trunk/tools/build/v2/engine
From: jurko.gospodnetic_at_[hidden]
Date: 2012-05-22 17:06:49


Author: jurko
Date: 2012-05-22 17:06:47 EDT (Tue, 22 May 2012)
New Revision: 78545
URL: http://svn.boost.org/trac/boost/changeset/78545

Log:
Explicitly flushed bjam's standard output after printing out '...patience...' lines. Without a fflush() call these lines may get buffered and displayed all at once only after the first actual target has been built. It seems that Visual C++ compiler's runtime does not use line buffering for its standard output stream if given a pipe as its standard output (encountered with bjam compiled using msvc 10 and run by piping its output through the Cygwin tee utility).
Text files modified:
   trunk/tools/build/v2/engine/headers.c | 3 +++
   trunk/tools/build/v2/engine/make.c | 3 +++
   2 files changed, 6 insertions(+), 0 deletions(-)

Modified: trunk/tools/build/v2/engine/headers.c
==============================================================================
--- trunk/tools/build/v2/engine/headers.c (original)
+++ trunk/tools/build/v2/engine/headers.c 2012-05-22 17:06:47 EDT (Tue, 22 May 2012)
@@ -137,7 +137,10 @@
     static int count = 0;
     ++count;
     if ( ((count == 100) || !( count % 1000 )) && DEBUG_MAKE )
+ {
         printf("...patience...\n");
+ fflush(stdout);
+ }
 #endif
 
     /* the following regexp is used to detect cases where a */

Modified: trunk/tools/build/v2/engine/make.c
==============================================================================
--- trunk/tools/build/v2/engine/make.c (original)
+++ trunk/tools/build/v2/engine/make.c 2012-05-22 17:06:47 EDT (Tue, 22 May 2012)
@@ -714,7 +714,10 @@
         ++counts->targets;
 #else
         if ( !( ++counts->targets % 1000 ) && DEBUG_MAKE )
+ {
             printf( "...patience...\n" );
+ fflush(stdout);
+ }
 #endif
 
         if ( fate == T_FATE_ISTMP )


Boost-Commit list run by bdawes at acm.org, david.abrahams at rcn.com, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk