automoc: also accept other files when .moc is included in non-strict mode

Alex
This commit is contained in:
Alex Neundorf 2011-12-02 21:43:15 +01:00
parent 9c0df72dc4
commit c207f5d361
1 changed files with 14 additions and 20 deletions

View File

@ -675,28 +675,22 @@ void cmQtAutomoc::ParseCppFile(const std::string& absFilename,
std::string fileToMoc = absFilename;
if (basename != scannedFileBasename)
{
bool fail = true;
if (basename == scannedFileBasename+"_p")
std::string mocSubDir = extractSubDir(absPath, currentMoc);
std::string headerToMoc = findMatchingHeader(
absPath, mocSubDir, basename, headerExtensions);
if (!headerToMoc.empty())
{
std::string mocSubDir = extractSubDir(absPath, currentMoc);
std::string headerToMoc = findMatchingHeader(
absPath, mocSubDir, basename, headerExtensions);
if (!headerToMoc.empty())
{
// this is for KDE4 compatibility:
fail = false;
fileToMoc = headerToMoc;
std::cerr << "AUTOMOC: warning: " << absFilename << ": The file "
"includes the moc file \"" << currentMoc <<
"\" instead of \"moc_" << basename << ".cpp\". "
"Running moc on "
<< "\"" << headerToMoc << "\" ! Better include \"moc_"
<< basename << ".cpp\" for a robust build.\n"
<< std::endl;
}
// this is for KDE4 compatibility:
fileToMoc = headerToMoc;
std::cerr << "AUTOMOC: warning: " << absFilename << ": The file "
"includes the moc file \"" << currentMoc <<
"\" instead of \"moc_" << basename << ".cpp\". "
"Running moc on "
<< "\"" << headerToMoc << "\" ! Better include \"moc_"
<< basename << ".cpp\" for a robust build.\n"
<< std::endl;
}
if (fail)
else
{
std::cerr <<"AUTOMOC: error: " << absFilename << ": The file "
"includes the moc file \"" << currentMoc <<