diff options
Diffstat (limited to 'Source/CTest/cmCTestConfigureCommand.cxx')
-rw-r--r-- | Source/CTest/cmCTestConfigureCommand.cxx | 105 |
1 files changed, 45 insertions, 60 deletions
diff --git a/Source/CTest/cmCTestConfigureCommand.cxx b/Source/CTest/cmCTestConfigureCommand.cxx index 8f15c6d..a90f27a 100644 --- a/Source/CTest/cmCTestConfigureCommand.cxx +++ b/Source/CTest/cmCTestConfigureCommand.cxx @@ -26,64 +26,56 @@ cmCTestGenericHandler* cmCTestConfigureCommand::InitializeHandler() { std::vector<std::string> options; - if (this->Values[ctc_OPTIONS]) - { + if (this->Values[ctc_OPTIONS]) { cmSystemTools::ExpandListArgument(this->Values[ctc_OPTIONS], options); - } + } - if ( this->CTest->GetCTestConfiguration("BuildDirectory").empty() ) - { - this->SetError("Build directory not specified. Either use BUILD " + if (this->CTest->GetCTestConfiguration("BuildDirectory").empty()) { + this->SetError( + "Build directory not specified. Either use BUILD " "argument to CTEST_CONFIGURE command or set CTEST_BINARY_DIRECTORY " "variable"); return 0; - } + } - const char* ctestConfigureCommand - = this->Makefile->GetDefinition("CTEST_CONFIGURE_COMMAND"); + const char* ctestConfigureCommand = + this->Makefile->GetDefinition("CTEST_CONFIGURE_COMMAND"); - if ( ctestConfigureCommand && *ctestConfigureCommand ) - { + if (ctestConfigureCommand && *ctestConfigureCommand) { this->CTest->SetCTestConfiguration("ConfigureCommand", - ctestConfigureCommand, this->Quiet); - } - else - { - const char* cmakeGeneratorName - = this->Makefile->GetDefinition("CTEST_CMAKE_GENERATOR"); - if ( cmakeGeneratorName && *cmakeGeneratorName ) - { - const std::string& source_dir - = this->CTest->GetCTestConfiguration("SourceDirectory"); - if ( source_dir.empty() ) - { - this->SetError("Source directory not specified. Either use SOURCE " + ctestConfigureCommand, this->Quiet); + } else { + const char* cmakeGeneratorName = + this->Makefile->GetDefinition("CTEST_CMAKE_GENERATOR"); + if (cmakeGeneratorName && *cmakeGeneratorName) { + const std::string& source_dir = + this->CTest->GetCTestConfiguration("SourceDirectory"); + if (source_dir.empty()) { + this->SetError( + "Source directory not specified. Either use SOURCE " "argument to CTEST_CONFIGURE command or set CTEST_SOURCE_DIRECTORY " "variable"); return 0; - } + } const std::string cmakelists_file = source_dir + "/CMakeLists.txt"; - if ( !cmSystemTools::FileExists(cmakelists_file.c_str()) ) - { + if (!cmSystemTools::FileExists(cmakelists_file.c_str())) { std::ostringstream e; - e << "CMakeLists.txt file does not exist [" - << cmakelists_file << "]"; + e << "CMakeLists.txt file does not exist [" << cmakelists_file << "]"; this->SetError(e.str()); return 0; - } + } bool multiConfig = false; bool cmakeBuildTypeInOptions = false; - cmGlobalGenerator *gg = + cmGlobalGenerator* gg = this->Makefile->GetCMakeInstance()->CreateGlobalGenerator( cmakeGeneratorName); - if(gg) - { + if (gg) { multiConfig = gg->IsMultiConfig(); delete gg; - } + } std::string cmakeConfigureCommand = "\""; cmakeConfigureCommand += cmSystemTools::GetCMakeCommand(); @@ -91,8 +83,7 @@ cmCTestGenericHandler* cmCTestConfigureCommand::InitializeHandler() std::vector<std::string>::const_iterator it; std::string option; - for (it= options.begin(); it!=options.end(); ++it) - { + for (it = options.begin(); it != options.end(); ++it) { option = *it; cmakeConfigureCommand += " \""; @@ -100,19 +91,17 @@ cmCTestGenericHandler* cmCTestConfigureCommand::InitializeHandler() cmakeConfigureCommand += "\""; if ((0 != strstr(option.c_str(), "CMAKE_BUILD_TYPE=")) || - (0 != strstr(option.c_str(), "CMAKE_BUILD_TYPE:STRING="))) - { + (0 != strstr(option.c_str(), "CMAKE_BUILD_TYPE:STRING="))) { cmakeBuildTypeInOptions = true; - } } + } if (!multiConfig && !cmakeBuildTypeInOptions && - !this->CTest->GetConfigType().empty()) - { + !this->CTest->GetConfigType().empty()) { cmakeConfigureCommand += " \"-DCMAKE_BUILD_TYPE:STRING="; cmakeConfigureCommand += this->CTest->GetConfigType(); cmakeConfigureCommand += "\""; - } + } cmakeConfigureCommand += " \"-G"; cmakeConfigureCommand += cmakeGeneratorName; @@ -120,46 +109,42 @@ cmCTestGenericHandler* cmCTestConfigureCommand::InitializeHandler() const char* cmakeGeneratorPlatform = this->Makefile->GetDefinition("CTEST_CMAKE_GENERATOR_PLATFORM"); - if(cmakeGeneratorPlatform && *cmakeGeneratorPlatform) - { + if (cmakeGeneratorPlatform && *cmakeGeneratorPlatform) { cmakeConfigureCommand += " \"-A"; cmakeConfigureCommand += cmakeGeneratorPlatform; cmakeConfigureCommand += "\""; - } + } const char* cmakeGeneratorToolset = this->Makefile->GetDefinition("CTEST_CMAKE_GENERATOR_TOOLSET"); - if(cmakeGeneratorToolset && *cmakeGeneratorToolset) - { + if (cmakeGeneratorToolset && *cmakeGeneratorToolset) { cmakeConfigureCommand += " \"-T"; cmakeConfigureCommand += cmakeGeneratorToolset; cmakeConfigureCommand += "\""; - } + } cmakeConfigureCommand += " \""; cmakeConfigureCommand += source_dir; cmakeConfigureCommand += "\""; - this->CTest->SetCTestConfiguration("ConfigureCommand", - cmakeConfigureCommand.c_str(), this->Quiet); - } - else - { - this->SetError("Configure command is not specified. If this is a " + this->CTest->SetCTestConfiguration( + "ConfigureCommand", cmakeConfigureCommand.c_str(), this->Quiet); + } else { + this->SetError( + "Configure command is not specified. If this is a " "\"built with CMake\" project, set CTEST_CMAKE_GENERATOR. If not, " "set CTEST_CONFIGURE_COMMAND."); return 0; - } } + } - cmCTestGenericHandler* handler - = this->CTest->GetInitializedHandler("configure"); - if ( !handler ) - { + cmCTestGenericHandler* handler = + this->CTest->GetInitializedHandler("configure"); + if (!handler) { this->SetError( "internal CTest error. Cannot instantiate configure handler"); return 0; - } + } handler->SetQuiet(this->Quiet); return handler; } |