diff options
author | Chris Dyer <cdyer@cs.cmu.edu> | 2012-10-11 14:06:32 -0400 |
---|---|---|
committer | Chris Dyer <cdyer@cs.cmu.edu> | 2012-10-11 14:06:32 -0400 |
commit | 9339c80d465545aec5a6dccfef7c83ca715bf11f (patch) | |
tree | 64c56d558331edad1db3832018c80e799551c39a /jam-files/engine/output.c | |
parent | 438dac41810b7c69fa10203ac5130d20efa2da9f (diff) | |
parent | afd7da3b2338661657ad0c4e9eec681e014d37bf (diff) |
Merge branch 'master' of https://github.com/redpony/cdec
Diffstat (limited to 'jam-files/engine/output.c')
-rw-r--r-- | jam-files/engine/output.c | 125 |
1 files changed, 0 insertions, 125 deletions
diff --git a/jam-files/engine/output.c b/jam-files/engine/output.c deleted file mode 100644 index 483c6ca9..00000000 --- a/jam-files/engine/output.c +++ /dev/null @@ -1,125 +0,0 @@ -/* - Copyright 2007 Rene Rivera - Distributed under the Boost Software License, Version 1.0. - (See accompanying file LICENSE_1_0.txt or http://www.boost.org/LICENSE_1_0.txt) -*/ - -#include "jam.h" -#include "output.h" -#include "newstr.h" -#include <stdio.h> - -#define bjam_out (stdout) -#define bjam_err (stderr) - -static void out_ -( - char const * data, - FILE * io -) -{ - while ( *data ) - { - size_t len = strcspn(data,"\r"); - data += fwrite(data,1,len,io); - if ( *data == '\r' ) ++data; - } -} - - -void out_action -( - char const * action, - char const * target, - char const * command, - char const * out_data, - char const * err_data, - int exit_reason -) -{ - /* Print out the action+target line, if the action is quite the action - * should be null. - */ - if ( action ) - { - fprintf( bjam_out, "%s %s\n", action, target ); - } - - /* Print out the command executed if given -d+2. */ - if ( DEBUG_EXEC ) - { - fputs( command, bjam_out ); - fputc( '\n', bjam_out ); - } - - /* Print out the command executed to the command stream. */ - if ( globs.cmdout ) - { - fputs( command, globs.cmdout ); - } - - switch ( exit_reason ) - { - case EXIT_OK: - break; - case EXIT_FAIL: - break; - case EXIT_TIMEOUT: - { - /* Process expired, make user aware with explicit message. */ - if ( action ) - { - /* But only output for non-quietly actions. */ - fprintf( bjam_out, "%ld second time limit exceeded\n", globs.timeout ); - } - break; - } - default: - break; - } - - /* Print out the command output, if requested, or if the program failed. */ - if ( action || exit_reason != EXIT_OK) - { - /* But only output for non-quietly actions. */ - if ( ( 0 != out_data ) && - ( ( globs.pipe_action & 1 /* STDOUT_FILENO */ ) || - ( globs.pipe_action == 0 ) ) ) - { - out_( out_data, bjam_out ); - } - if ( ( 0 != err_data ) && - ( globs.pipe_action & 2 /* STDERR_FILENO */ ) ) - { - out_( err_data, bjam_err ); - } - } - - fflush( bjam_out ); - fflush( bjam_err ); - fflush( globs.cmdout ); -} - - -char * outf_int( int value ) -{ - char buffer[50]; - sprintf( buffer, "%i", value ); - return newstr( buffer ); -} - - -char * outf_double( double value ) -{ - char buffer[50]; - sprintf( buffer, "%f", value ); - return newstr( buffer ); -} - - -char * outf_time( time_t value ) -{ - char buffer[50]; - strftime( buffer, 49, "%Y-%m-%d %H:%M:%SZ", gmtime( &value ) ); - return newstr( buffer ); -} |