summaryrefslogtreecommitdiffstats
path: root/Source/cmakemain.cxx
diff options
context:
space:
mode:
authorJohan Björk <phb@spotify.com>2011-07-26 07:36:40 (GMT)
committerBrad King <brad.king@kitware.com>2011-07-28 14:43:09 (GMT)
commit642f10066a5c9b33e8736b9ca013a44023c21b2c (patch)
treec6e63fd944f9e04b588009c67148d75ca5b3b5d0 /Source/cmakemain.cxx
parent856a9e499f299a33cb4f763bf36a75524a03e4f5 (diff)
downloadCMake-642f10066a5c9b33e8736b9ca013a44023c21b2c.zip
CMake-642f10066a5c9b33e8736b9ca013a44023c21b2c.tar.gz
CMake-642f10066a5c9b33e8736b9ca013a44023c21b2c.tar.bz2
RunSingleCommand: Add a OUTPUT_NORMAL flag.
OUTPUT_NORMAL does no processing of the output streams, it just passes them through the same streams as they were received on.
Diffstat (limited to 'Source/cmakemain.cxx')
-rw-r--r--Source/cmakemain.cxx8
1 files changed, 7 insertions, 1 deletions
diff --git a/Source/cmakemain.cxx b/Source/cmakemain.cxx
index 663ce8f..1fe9e82 100644
--- a/Source/cmakemain.cxx
+++ b/Source/cmakemain.cxx
@@ -62,6 +62,7 @@ static const char * cmDocumentationDescription[][3] =
" --config <cfg> = For multi-configuration tools, choose <cfg>.\n" \
" --clean-first = Build target 'clean' first, then build.\n" \
" (To clean only, use --target 'clean'.)\n" \
+ " --use-stderr = Don't merge stdout/stderr.\n" \
" -- = Pass remaining options to the native tool.\n"
//----------------------------------------------------------------------------
@@ -568,6 +569,7 @@ static int do_build(int ac, char** av)
std::string dir;
std::vector<std::string> nativeOptions;
bool clean = false;
+ cmSystemTools::OutputOption outputflag = cmSystemTools::OUTPUT_MERGE;
enum Doing { DoingNone, DoingDir, DoingTarget, DoingConfig, DoingNative};
Doing doing = DoingDir;
@@ -590,6 +592,10 @@ static int do_build(int ac, char** av)
clean = true;
doing = DoingNone;
}
+ else if(strcmp(av[i], "--use-stderr") == 0)
+ {
+ outputflag = cmSystemTools::OUTPUT_NORMAL;
+ }
else if(strcmp(av[i], "--") == 0)
{
doing = DoingNative;
@@ -635,6 +641,6 @@ static int do_build(int ac, char** av)
}
cmake cm;
- return cm.Build(dir, target, config, nativeOptions, clean);
+ return cm.Build(dir, target, config, nativeOptions, clean, outputflag);
#endif
}