Merge topic 'cmake-error-advice'

18e1bfb cmake: On configure error suggest looking at CMake*.log files
This commit is contained in:
Brad King 2013-07-15 09:31:18 -04:00 committed by CMake Topic Stage
commit c0fe24e539
8 changed files with 37 additions and 3 deletions

View File

@ -892,12 +892,28 @@ void cmGlobalGenerator::Configure()
if ( this->CMakeInstance->GetWorkingMode() == cmake::NORMAL_MODE)
{
const char* msg = "Configuring done";
cmOStringStream msg;
if(cmSystemTools::GetErrorOccuredFlag())
{
msg = "Configuring incomplete, errors occurred!";
msg << "Configuring incomplete, errors occurred!";
const char* logs[] = {"CMakeOutput.log", "CMakeError.log", 0};
for(const char** log = logs; *log; ++log)
{
std::string f = this->CMakeInstance->GetHomeOutputDirectory();
f += this->CMakeInstance->GetCMakeFilesDirectory();
f += "/";
f += *log;
if(cmSystemTools::FileExists(f.c_str()))
{
msg << "\nSee also \"" << f << "\".";
}
}
}
this->CMakeInstance->UpdateProgress(msg, -1);
else
{
msg << "Configuring done";
}
this->CMakeInstance->UpdateProgress(msg.str().c_str(), -1);
}
}

View File

@ -56,6 +56,7 @@ add_RunCMake_test(CTest)
if(UNIX AND "${CMAKE_TEST_GENERATOR}" MATCHES "Unix Makefiles")
add_RunCMake_test(CompilerChange)
endif()
add_RunCMake_test(Configure)
add_RunCMake_test(ExternalData)
add_RunCMake_test(FPHSA)
add_RunCMake_test(GeneratorExpression)

View File

@ -0,0 +1,3 @@
cmake_minimum_required(VERSION 2.8)
project(${RunCMake_TEST} NONE)
include(${RunCMake_TEST}.cmake)

View File

@ -0,0 +1 @@
1

View File

@ -0,0 +1,4 @@
CMake Error at ErrorLogs.cmake:3 \(message\):
Some error!
Call Stack \(most recent call first\):
CMakeLists.txt:3 \(include\)

View File

@ -0,0 +1,3 @@
-- Configuring incomplete, errors occurred!
See also ".*/Tests/RunCMake/Configure/ErrorLogs-build/CMakeFiles/CMakeOutput\.log"\.
See also ".*/Tests/RunCMake/Configure/ErrorLogs-build/CMakeFiles/CMakeError\.log"\.

View File

@ -0,0 +1,3 @@
file(APPEND ${CMAKE_BINARY_DIR}${CMAKE_FILES_DIRECTORY}/CMakeError.log
"Some detailed error information!\n")
message(SEND_ERROR "Some error!")

View File

@ -0,0 +1,3 @@
include(RunCMake)
run_cmake(ErrorLogs)