[Cmake-commits] CMake branch, next, updated. v3.5.2-1084-g98f49de
Brad King
brad.king at kitware.com
Mon Apr 25 10:41:30 EDT 2016
This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "CMake".
The branch, next has been updated
via 98f49de1dbf36c7774df5c0bafbf4683086b3aee (commit)
via 9647af3f4c7f6bd1a98e51c449db0fd98f353beb (commit)
via 9b58190c8fb1e48ce02480f6a71f561f45299379 (commit)
via 657a446175c1b61999a77958c5b7480f8be041a5 (commit)
via 4417f913795a66205ab65b23ecdd3af479150878 (commit)
via 38d1c67c4dc03d1365da8b3334d708ed75cfa93a (commit)
from b832d5f71d98e954fadfb03681e9a5c8cd12e1ea (commit)
Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.
- Log -----------------------------------------------------------------
https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=98f49de1dbf36c7774df5c0bafbf4683086b3aee
commit 98f49de1dbf36c7774df5c0bafbf4683086b3aee
Merge: b832d5f 9647af3
Author: Brad King <brad.king at kitware.com>
AuthorDate: Mon Apr 25 10:41:23 2016 -0400
Commit: CMake Topic Stage <kwrobot at kitware.com>
CommitDate: Mon Apr 25 10:41:23 2016 -0400
Merge topic 'autogen-message-cleanup' into next
9647af3f Autogen: Message tweaks: Compiler type (moc/qrc/ui) added to progress messages
9b58190c Autogen: Message cleanups: Compose messages in std::stringstream
657a4461 CMake Nightly Date Stamp
4417f913 CMake Nightly Date Stamp
38d1c67c CMake Nightly Date Stamp
https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=9647af3f4c7f6bd1a98e51c449db0fd98f353beb
commit 9647af3f4c7f6bd1a98e51c449db0fd98f353beb
Author: Sebastian Holtermann <sebholt at xwmw.org>
AuthorDate: Sun Apr 24 15:44:10 2016 +0200
Commit: Brad King <brad.king at kitware.com>
CommitDate: Mon Apr 25 10:38:58 2016 -0400
Autogen: Message tweaks: Compiler type (moc/qrc/ui) added to progress messages
diff --git a/Source/cmQtAutoGenerators.cxx b/Source/cmQtAutoGenerators.cxx
index 3783c36..07fc239 100644
--- a/Source/cmQtAutoGenerators.cxx
+++ b/Source/cmQtAutoGenerators.cxx
@@ -1196,7 +1196,7 @@ bool cmQtAutoGenerators::GenerateMocFiles(
// actually write _automoc.cpp
{
- std::string msg = "Generating ";
+ std::string msg = "Generating moc compilation ";
msg += this->OutMocCppFilenameRel;
cmSystemTools::MakefileColorEcho(cmsysTerminal_Color_ForegroundBlue
|cmsysTerminal_Color_ForegroundBold,
@@ -1231,7 +1231,7 @@ bool cmQtAutoGenerators::GenerateMoc(const std::string& sourceFile,
cmsys::SystemTools::MakeDirectory(mocDir.c_str());
}
- std::string msg = "Generating ";
+ std::string msg = "Generating moc source ";
msg += mocFileName;
cmSystemTools::MakefileColorEcho(cmsysTerminal_Color_ForegroundBlue
|cmsysTerminal_Color_ForegroundBold,
@@ -1358,7 +1358,7 @@ bool cmQtAutoGenerators::GenerateUi(const std::string& realName,
&sourceNewerThanUi);
if (this->GenerateAll || !success || sourceNewerThanUi >= 0)
{
- std::string msg = "Generating ";
+ std::string msg = "Generating ui header ";
msg += uiOutputFile;
cmSystemTools::MakefileColorEcho(cmsysTerminal_Color_ForegroundBlue
|cmsysTerminal_Color_ForegroundBold,
@@ -1497,7 +1497,7 @@ bool cmQtAutoGenerators::GenerateQrc (
if (this->GenerateAll || generateQrc)
{
- std::string msg = "Generating ";
+ std::string msg = "Generating qrc source ";
msg += qrcOutputFile;
cmSystemTools::MakefileColorEcho(cmsysTerminal_Color_ForegroundBlue
|cmsysTerminal_Color_ForegroundBold,
https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=9b58190c8fb1e48ce02480f6a71f561f45299379
commit 9b58190c8fb1e48ce02480f6a71f561f45299379
Author: Sebastian Holtermann <sebholt at xwmw.org>
AuthorDate: Sun Apr 24 15:00:26 2016 +0200
Commit: Brad King <brad.king at kitware.com>
CommitDate: Mon Apr 25 10:38:58 2016 -0400
Autogen: Message cleanups: Compose messages in std::stringstream
To avoid Race conditions with other processes writing to stdout/stderr compose
the whole message in a std::stringstream then submit the single complete message.
diff --git a/Source/cmQtAutoGeneratorInitializer.cxx b/Source/cmQtAutoGeneratorInitializer.cxx
index ea9ea7c..9b2362a 100644
--- a/Source/cmQtAutoGeneratorInitializer.cxx
+++ b/Source/cmQtAutoGeneratorInitializer.cxx
@@ -592,8 +592,10 @@ static std::string ListQt5RccInputs(cmSourceFile* sf,
&retVal, 0, cmSystemTools::OUTPUT_NONE);
if (!result || retVal)
{
- std::cerr << "AUTOGEN: error: Rcc list process for " << sf->GetFullPath()
- << " failed:\n" << rccStdOut << "\n" << rccStdErr << std::endl;
+ std::stringstream err;
+ err << "AUTOGEN: error: Rcc list process for " << sf->GetFullPath()
+ << " failed:\n" << rccStdOut << "\n" << rccStdErr << std::endl;
+ std::cerr << err.str();
return std::string();
}
@@ -623,8 +625,10 @@ static std::string ListQt5RccInputs(cmSourceFile* sf,
std::string::size_type pos = eline.find(searchString);
if (pos == std::string::npos)
{
- std::cerr << "AUTOGEN: error: Rcc lists unparsable output "
- << eline << std::endl;
+ std::stringstream err;
+ err << "AUTOGEN: error: Rcc lists unparsable output "
+ << eline << std::endl;
+ std::cerr << err.str();
return std::string();
}
pos += searchString.length();
diff --git a/Source/cmQtAutoGenerators.cxx b/Source/cmQtAutoGenerators.cxx
index 3c6db2d..3783c36 100644
--- a/Source/cmQtAutoGenerators.cxx
+++ b/Source/cmQtAutoGenerators.cxx
@@ -549,7 +549,9 @@ bool cmQtAutoGenerators::RunAutogen(cmMakefile* makefile)
const std::string &absFilename = *it;
if (this->Verbose)
{
- std::cout << "AUTOGEN: Checking " << absFilename << std::endl;
+ std::stringstream err;
+ err << "AUTOGEN: Checking " << absFilename << std::endl;
+ this->LogInfo(err.str());
}
if (this->RelaxedMode)
{
@@ -577,7 +579,9 @@ bool cmQtAutoGenerators::RunAutogen(cmMakefile* makefile)
const std::string &absFilename = *it;
if (this->Verbose)
{
- std::cout << "AUTOGEN: Checking " << absFilename << std::endl;
+ std::stringstream err;
+ err << "AUTOGEN: Checking " << absFilename << std::endl;
+ this->LogInfo(err.str());
}
this->ParseForUic(absFilename, includedUis);
}
@@ -607,17 +611,20 @@ bool cmQtAutoGenerators::RunAutogen(cmMakefile* makefile)
if (this->RunMocFailed)
{
- std::cerr << "moc failed..." << std::endl;
+ std::stringstream err; err << "moc failed..." << std::endl;
+ this->LogError(err.str());
return false;
}
if (this->RunUicFailed)
{
- std::cerr << "uic failed..." << std::endl;
+ std::stringstream err; err << "uic failed..." << std::endl;
+ this->LogError(err.str());
return false;
}
if (this->RunRccFailed)
{
- std::cerr << "rcc failed..." << std::endl;
+ std::stringstream err; err << "rcc failed..." << std::endl;
+ this->LogError(err.str());
return false;
}
@@ -637,8 +644,10 @@ void cmQtAutoGenerators::ParseCppFile(const std::string& absFilename,
const std::string contentsString = ReadAll(absFilename);
if (contentsString.empty())
{
- std::cerr << "AUTOGEN: warning: " << absFilename << ": file is empty\n"
- << std::endl;
+ std::stringstream err;
+ err << "AUTOGEN: warning: " << absFilename << ": file is empty\n"
+ << std::endl;
+ this->LogError(err.str());
return;
}
this->ParseForUic(absFilename, contentsString, includedUis);
@@ -670,7 +679,6 @@ void cmQtAutoGenerators::ParseCppFile(const std::string& absFilename,
do
{
const std::string currentMoc = mocIncludeRegExp.match(1);
- //std::cout << "found moc include: " << currentMoc << std::endl;
std::string basename = cmsys::SystemTools::
GetFilenameWithoutLastExtension(currentMoc);
@@ -703,20 +711,21 @@ void cmQtAutoGenerators::ParseCppFile(const std::string& absFilename,
}
else
{
- std::cerr << "AUTOGEN: error: " << absFilename << ": The file "
- << "includes the moc file \"" << currentMoc << "\", "
- << "but could not find header \"" << basename
- << '{' << this->JoinExts(headerExtensions) << "}\" ";
+ std::stringstream err;
+ err << "AUTOGEN: error: " << absFilename << ": The file "
+ << "includes the moc file \"" << currentMoc << "\", "
+ << "but could not find header \"" << basename
+ << '{' << this->JoinExts(headerExtensions) << "}\" ";
if (mocSubDir.empty())
{
- std::cerr << "in " << absPath << "\n" << std::endl;
+ err << "in " << absPath << "\n" << std::endl;
}
else
{
- std::cerr << "neither in " << absPath
- << " nor in " << mocSubDir << "\n" << std::endl;
+ err << "neither in " << absPath
+ << " nor in " << mocSubDir << "\n" << std::endl;
}
-
+ this->LogError(err.str());
::exit(EXIT_FAILURE);
}
}
@@ -734,34 +743,40 @@ void cmQtAutoGenerators::ParseCppFile(const std::string& absFilename,
fileToMoc = headerToMoc;
if ((requiresMoc==false) &&(basename==scannedFileBasename))
{
- std::cerr << "AUTOGEN: warning: " << absFilename << ": The file "
- "includes the moc file \"" << currentMoc <<
- "\", but does not contain a " << macroName
- << " macro. Running moc on "
- << "\"" << headerToMoc << "\" ! Include \"moc_"
- << basename << ".cpp\" for a compatibility with "
- "strict mode (see CMAKE_AUTOMOC_RELAXED_MODE).\n"
- << std::endl;
+ std::stringstream err;
+ err << "AUTOGEN: warning: " << absFilename << ": The file "
+ "includes the moc file \"" << currentMoc <<
+ "\", but does not contain a " << macroName
+ << " macro. Running moc on "
+ << "\"" << headerToMoc << "\" ! Include \"moc_"
+ << basename << ".cpp\" for a compatibility with "
+ "strict mode (see CMAKE_AUTOMOC_RELAXED_MODE).\n"
+ << std::endl;
+ this->LogError(err.str());
}
else
{
- std::cerr << "AUTOGEN: warning: " << absFilename << ": The file "
- "includes the moc file \"" << currentMoc <<
- "\" instead of \"moc_" << basename << ".cpp\". "
- "Running moc on "
- << "\"" << headerToMoc << "\" ! Include \"moc_"
- << basename << ".cpp\" for compatibility with "
- "strict mode (see CMAKE_AUTOMOC_RELAXED_MODE).\n"
- << std::endl;
+ std::stringstream err;
+ err << "AUTOGEN: warning: " << absFilename << ": The file "
+ "includes the moc file \"" << currentMoc <<
+ "\" instead of \"moc_" << basename << ".cpp\". "
+ "Running moc on "
+ << "\"" << headerToMoc << "\" ! Include \"moc_"
+ << basename << ".cpp\" for compatibility with "
+ "strict mode (see CMAKE_AUTOMOC_RELAXED_MODE).\n"
+ << std::endl;
+ this->LogError(err.str());
}
}
else
{
- std::cerr <<"AUTOGEN: error: " << absFilename << ": The file "
- "includes the moc file \"" << currentMoc <<
- "\", which seems to be the moc file from a different "
- "source file. CMake also could not find a matching "
- "header.\n" << std::endl;
+ std::stringstream err;
+ err << "AUTOGEN: error: " << absFilename << ": The file "
+ "includes the moc file \"" << currentMoc <<
+ "\", which seems to be the moc file from a different "
+ "source file. CMake also could not find a matching "
+ "header.\n" << std::endl;
+ this->LogError(err.str());
::exit(EXIT_FAILURE);
}
}
@@ -785,27 +800,33 @@ void cmQtAutoGenerators::ParseCppFile(const std::string& absFilename,
if (mocUnderscoreIncluded == true)
{
// this is for KDE4 compatibility:
- std::cerr << "AUTOGEN: warning: " << absFilename << ": The file "
- << "contains a " << macroName << " macro, but does not "
- "include "
- << "\"" << scannedFileBasename << ".moc\", but instead "
- "includes "
- << "\"" << ownMocUnderscoreFile << "\". Running moc on "
- << "\"" << absFilename << "\" ! Better include \""
- << scannedFileBasename << ".moc\" for compatibility with "
- "strict mode (see CMAKE_AUTOMOC_RELAXED_MODE).\n"
- << std::endl;
+ std::stringstream err;
+ err << "AUTOGEN: warning: " << absFilename << ": The file "
+ << "contains a " << macroName << " macro, but does not "
+ "include "
+ << "\"" << scannedFileBasename << ".moc\", but instead "
+ "includes "
+ << "\"" << ownMocUnderscoreFile << "\". Running moc on "
+ << "\"" << absFilename << "\" ! Better include \""
+ << scannedFileBasename << ".moc\" for compatibility with "
+ "strict mode (see CMAKE_AUTOMOC_RELAXED_MODE).\n"
+ << std::endl;
+ this->LogError(err.str());
+
includedMocs[absFilename] = ownMocUnderscoreFile;
includedMocs.erase(ownMocHeaderFile);
}
else
{
// otherwise always error out since it will not compile:
- std::cerr << "AUTOGEN: error: " << absFilename << ": The file "
- << "contains a " << macroName << " macro, but does not "
- "include "
- << "\"" << scannedFileBasename << ".moc\" !\n"
- << std::endl;
+ std::stringstream err;
+ err << "AUTOGEN: error: " << absFilename << ": The file "
+ << "contains a " << macroName << " macro, but does not "
+ "include "
+ << "\"" << scannedFileBasename << ".moc\" !\n"
+ << std::endl;
+ this->LogError(err.str());
+
::exit(EXIT_FAILURE);
}
}
@@ -825,8 +846,10 @@ void cmQtAutoGenerators::StrictParseCppFile(const std::string& absFilename,
const std::string contentsString = ReadAll(absFilename);
if (contentsString.empty())
{
- std::cerr << "AUTOGEN: warning: " << absFilename << ": file is empty\n"
- << std::endl;
+ std::stringstream err;
+ err << "AUTOGEN: warning: " << absFilename << ": file is empty\n"
+ << std::endl;
+ this->LogError(err.str());
return;
}
this->ParseForUic(absFilename, contentsString, includedUis);
@@ -878,20 +901,21 @@ void cmQtAutoGenerators::StrictParseCppFile(const std::string& absFilename,
}
else
{
- std::cerr << "AUTOGEN: error: " << absFilename << " The file "
- << "includes the moc file \"" << currentMoc << "\", "
- << "but could not find header \"" << basename
- << '{' << this->JoinExts(headerExtensions) << "}\" ";
+ std::stringstream err;
+ err << "AUTOGEN: error: " << absFilename << " The file "
+ << "includes the moc file \"" << currentMoc << "\", "
+ << "but could not find header \"" << basename
+ << '{' << this->JoinExts(headerExtensions) << "}\" ";
if (mocSubDir.empty())
{
- std::cerr << "in " << absPath << "\n" << std::endl;
+ err << "in " << absPath << "\n" << std::endl;
}
else
{
- std::cerr << "neither in " << absPath
- << " nor in " << mocSubDir << "\n" << std::endl;
+ err << "neither in " << absPath
+ << " nor in " << mocSubDir << "\n" << std::endl;
}
-
+ this->LogError(err.str());
::exit(EXIT_FAILURE);
}
}
@@ -899,12 +923,14 @@ void cmQtAutoGenerators::StrictParseCppFile(const std::string& absFilename,
{
if (basename != scannedFileBasename)
{
- std::cerr <<"AUTOGEN: error: " << absFilename << ": The file "
- "includes the moc file \"" << currentMoc <<
- "\", which seems to be the moc file from a different "
- "source file. This is not supported. "
- "Include \"" << scannedFileBasename << ".moc\" to run "
- "moc on this source file.\n" << std::endl;
+ std::stringstream err;
+ err << "AUTOGEN: error: " << absFilename << ": The file "
+ "includes the moc file \"" << currentMoc <<
+ "\", which seems to be the moc file from a different "
+ "source file. This is not supported. "
+ "Include \"" << scannedFileBasename << ".moc\" to run "
+ "moc on this source file.\n" << std::endl;
+ this->LogError(err.str());
::exit(EXIT_FAILURE);
}
dotMocIncluded = true;
@@ -923,10 +949,12 @@ void cmQtAutoGenerators::StrictParseCppFile(const std::string& absFilename,
macroName)))
{
// otherwise always error out since it will not compile:
- std::cerr << "AUTOGEN: error: " << absFilename << ": The file "
- << "contains a " << macroName << " macro, but does not include "
- << "\"" << scannedFileBasename << ".moc\" !\n"
- << std::endl;
+ std::stringstream err;
+ err << "AUTOGEN: error: " << absFilename << ": The file "
+ << "contains a " << macroName << " macro, but does not include "
+ << "\"" << scannedFileBasename << ".moc\" !\n"
+ << std::endl;
+ this->LogError(err.str());
::exit(EXIT_FAILURE);
}
@@ -943,8 +971,10 @@ void cmQtAutoGenerators::ParseForUic(const std::string& absFilename,
const std::string contentsString = ReadAll(absFilename);
if (contentsString.empty())
{
- std::cerr << "AUTOGEN: warning: " << absFilename << ": file is empty\n"
- << std::endl;
+ std::stringstream err;
+ err << "AUTOGEN: warning: " << absFilename << ": file is empty\n"
+ << std::endl;
+ this->LogError(err.str());
return;
}
this->ParseForUic(absFilename, contentsString, includedUis);
@@ -1045,13 +1075,14 @@ void cmQtAutoGenerators::ParseHeaders(const std::set<std::string>& absHeaders,
{
if (this->Verbose)
{
- std::cout << "AUTOGEN: Checking " << headerName << std::endl;
+ std::stringstream err;
+ err << "AUTOGEN: Checking " << headerName << std::endl;
+ this->LogInfo(err.str());
}
std::string macroName;
if (requiresMocing(contents, macroName))
{
- //std::cout << "header contains Q_OBJECT macro";
const std::string parentDir = this->TargetBuildSubDir
+ this->SourceRelativePath ( headerName );
const std::string basename = cmsys::SystemTools::
@@ -1077,14 +1108,15 @@ bool cmQtAutoGenerators::GenerateMocFiles(
mergedMocs.insert ( notIncludedMocs.begin(), notIncludedMocs.end() );
if( this->NameCollisionTest ( mergedMocs, collisions ) )
{
- std::cerr <<
+ std::stringstream err;
+ err <<
"AUTOGEN: error: "
"The same moc file will be generated "
"from different sources." << std::endl <<
"To avoid this error either" << std::endl <<
"- rename the source files or" << std::endl <<
"- do not include the (moc_NAME.cpp|NAME.moc) file" << std::endl;
- this->NameCollisionLog ( collisions );
+ this->NameCollisionLog ( err.str(), collisions );
::exit(EXIT_FAILURE);
}
}
@@ -1153,8 +1185,10 @@ bool cmQtAutoGenerators::GenerateMocFiles(
// nothing changed: don't touch the _automoc.cpp file
if (this->Verbose)
{
- std::cout << "AUTOGEN: " << this->OutMocCppFilenameRel
- << " still up to date" << std::endl;
+ std::stringstream err;
+ err << "AUTOGEN: " << this->OutMocCppFilenameRel
+ << " still up to date" << std::endl;
+ this->LogInfo(err.str());
}
return true;
}
@@ -1229,8 +1263,10 @@ bool cmQtAutoGenerators::GenerateMoc(const std::string& sourceFile,
&retVal);
if (!result || retVal)
{
- std::cerr << "AUTOGEN: error: process for " << mocFilePath <<" failed:\n"
- << output << std::endl;
+ std::stringstream err;
+ err << "AUTOGEN: error: process for " << mocFilePath <<" failed:\n"
+ << output << std::endl;
+ this->LogError(err.str());
this->RunMocFailed = true;
cmSystemTools::RemoveFile(mocFilePath);
}
@@ -1272,10 +1308,11 @@ bool cmQtAutoGenerators::GenerateUiFiles(
std::multimap<std::string, std::string> collisions;
if( this->NameCollisionTest ( testMap, collisions ) )
{
- std::cerr << "AUTOGEN: error: The same ui_NAME.h file will be generated "
- "from different sources." << std::endl
- << "To avoid this error rename the source files." << std::endl;
- this->NameCollisionLog ( collisions );
+ std::stringstream err;
+ err << "AUTOGEN: error: The same ui_NAME.h file will be generated "
+ "from different sources." << std::endl
+ << "To avoid this error rename the source files." << std::endl;
+ this->NameCollisionLog ( err.str(), collisions );
::exit(EXIT_FAILURE);
}
}
@@ -1356,9 +1393,11 @@ bool cmQtAutoGenerators::GenerateUi(const std::string& realName,
&retVal);
if (!result || retVal)
{
- std::cerr << "AUTOUIC: error: process for " << uiOutputFile <<
- " needed by\n \"" << realName << "\"\nfailed:\n" << output
- << std::endl;
+ std::stringstream err;
+ err << "AUTOUIC: error: process for " << uiOutputFile <<
+ " needed by\n \"" << realName << "\"\nfailed:\n" << output
+ << std::endl;
+ this->LogError(err.str());
this->RunUicFailed = true;
cmSystemTools::RemoveFile(uiOutputFile);
return false;
@@ -1413,11 +1452,12 @@ bool cmQtAutoGenerators::GenerateQrcFiles()
std::multimap<std::string, std::string> collisions;
if( this->NameCollisionTest ( qrcGenMap, collisions ) )
{
- std::cerr << "AUTOGEN: error: The same qrc_NAME.cpp file"
- " will be generated from different sources." << std::endl
- << "To avoid this error rename the source .qrc files."
- << std::endl;
- this->NameCollisionLog ( collisions );
+ std::stringstream err;
+ err << "AUTOGEN: error: The same qrc_NAME.cpp file"
+ " will be generated from different sources." << std::endl
+ << "To avoid this error rename the source .qrc files."
+ << std::endl;
+ this->NameCollisionLog ( err.str(), collisions );
::exit(EXIT_FAILURE);
}
}
@@ -1489,8 +1529,10 @@ bool cmQtAutoGenerators::GenerateQrc (
&retVal);
if (!result || retVal)
{
- std::cerr << "AUTORCC: error: process for " << qrcOutputFile <<
- " failed:\n" << output << std::endl;
+ std::stringstream err;
+ err << "AUTORCC: error: process for " << qrcOutputFile <<
+ " failed:\n" << output << std::endl;
+ this->LogError(err.str());
this->RunRccFailed = true;
cmSystemTools::RemoveFile(qrcBuildFile);
return false;
@@ -1582,17 +1624,30 @@ bool cmQtAutoGenerators::NameCollisionTest(
}
void cmQtAutoGenerators::NameCollisionLog(
- const std::multimap<std::string, std::string>& collisions)
+ const std::string& message,
+ const std::multimap<std::string, std::string>& collisions)
{
typedef std::multimap<std::string, std::string>::const_iterator Iter;
- std::stringstream sbuf;
+ std::stringstream err;
+ // Add message
+ err << message;
+ // Append collision list
for(Iter it = collisions.begin(); it != collisions.end(); ++it )
{
- sbuf << it->first << " : " << it->second << std::endl;
+ err << it->first << " : " << it->second << std::endl;
}
- sbuf.flush();
- std::cerr << sbuf.str();
+ this->LogError(err.str());
+}
+
+void cmQtAutoGenerators::LogInfo(const std::string& message)
+{
+ std::cout << message;
+}
+
+void cmQtAutoGenerators::LogError(const std::string& message)
+{
+ std::cerr << message;
}
void cmQtAutoGenerators::LogCommand(const std::vector<std::string>& command)
@@ -1608,11 +1663,10 @@ void cmQtAutoGenerators::LogCommand(const std::vector<std::string>& command)
}
sbuf << *cmdIt;
}
- sbuf.flush();
if ( !sbuf.str().empty() )
{
- std::cout << sbuf.str();
- std::cout << std::endl;
+ sbuf << std::endl;
+ this->LogInfo ( sbuf.str() );
}
}
diff --git a/Source/cmQtAutoGenerators.h b/Source/cmQtAutoGenerators.h
index 422e1ed..e46e0fc 100644
--- a/Source/cmQtAutoGenerators.h
+++ b/Source/cmQtAutoGenerators.h
@@ -83,8 +83,11 @@ private:
bool NameCollisionTest(const std::map<std::string, std::string >& genFiles,
std::multimap<std::string, std::string>& collisions );
void NameCollisionLog(
- const std::multimap<std::string, std::string>& collisions );
+ const std::string& message,
+ const std::multimap<std::string, std::string>& collisions );
+ void LogInfo(const std::string& message);
+ void LogError(const std::string& message);
void LogCommand(const std::vector<std::string>& command);
std::string JoinExts(const std::vector<std::string>& lst);
-----------------------------------------------------------------------
Summary of changes:
Source/CMakeVersion.cmake | 2 +-
Source/cmQtAutoGeneratorInitializer.cxx | 12 +-
Source/cmQtAutoGenerators.cxx | 270 ++++++++++++++++++-------------
Source/cmQtAutoGenerators.h | 5 +-
4 files changed, 175 insertions(+), 114 deletions(-)
hooks/post-receive
--
CMake
More information about the Cmake-commits
mailing list