diff options
-rw-r--r-- | qmake/main.cpp | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/qmake/main.cpp b/qmake/main.cpp index fe274c4..7da66ac 100644 --- a/qmake/main.cpp +++ b/qmake/main.cpp @@ -84,6 +84,13 @@ bool qmake_setpwd(const QString &p) int runQMake(int argc, char **argv) { + // stderr is unbuffered by default, but stdout buffering depends on whether + // there is a terminal attached. Buffering can make output from stderr and stdout + // appear out of sync, so force stdout to be line buffered to minimize this without + // hurting performance too much (if at all). This is particularly important for + // things like QtCreator and scripted builds. + setvbuf(stdout, (char *)NULL, _IOLBF, 0); + // parse command line int ret = Option::init(argc, argv); if(ret != Option::QMAKE_CMDLINE_SUCCESS) { |