From 9062e6d922956bd374d626498a382d02804bbf83 Mon Sep 17 00:00:00 2001 From: Bill Hoffman Date: Tue, 19 Jul 2005 17:16:23 -0400 Subject: [PATCH] ENH: fix for bug 1866, make -G,-D -C options allow for space between arg and value --- Source/cmake.cxx | 11 +++++++++-- Source/cmake.h | 6 +++--- 2 files changed, 12 insertions(+), 5 deletions(-) diff --git a/Source/cmake.cxx b/Source/cmake.cxx index e108e18d1..c64e3b295 100644 --- a/Source/cmake.cxx +++ b/Source/cmake.cxx @@ -246,6 +246,10 @@ bool cmake::SetCacheArgs(const std::vector& args) if(arg.find("-D",0) == 0) { std::string entry = arg.substr(2); + if(entry.size() == 0) + { + entry = args[++i]; + } std::string var, value; cmCacheManager::CacheEntryType type = cmCacheManager::UNINITIALIZED; if(cmCacheManager::ParseEntry(entry.c_str(), var, value, type) || @@ -268,8 +272,7 @@ bool cmake::SetCacheArgs(const std::vector& args) std::string path = arg.substr(2); if ( path.size() == 0 ) { - cmSystemTools::Error("No initial cache file provided."); - return false; + path = args[++i]; } std::cerr << "loading initial cache file " << path.c_str() << "\n"; this->ReadListFile(path.c_str()); @@ -384,6 +387,10 @@ void cmake::SetArgs(const std::vector& args) else if(arg.find("-G",0) == 0) { std::string value = arg.substr(2); + if(value.size() == 0) + { + value = args[++i]; + } cmGlobalGenerator* gen = this->CreateGlobalGenerator(value.c_str()); if(!gen) diff --git a/Source/cmake.h b/Source/cmake.h index 4e61c5f74..0d6f7d9cd 100644 --- a/Source/cmake.h +++ b/Source/cmake.h @@ -318,20 +318,20 @@ private: }; #define CMAKE_STANDARD_OPTIONS_TABLE \ - {"-C", "Pre-load cmake cache from given file.", \ + {"-C ", "Pre-load cmake cache from given file.", \ "When cmake is first run in an empty build tree, it creates a " \ "CMakeCache.txt file and populates it with customizable settings " \ "for the project. This option may be used to specify a file from " \ "which to load cache entries before the first pass through " \ "the project's cmake listfiles. The loaded entries take priority " \ "over the project's default values."}, \ - {"-D:=", "Create a cmake cache entry.", \ + {"-D :=", "Create a cmake cache entry.", \ "When cmake is first run in an empty build tree, it creates a " \ "CMakeCache.txt file and populates it with customizable settings " \ "for the project. This option may be used to specify a setting " \ "that takes priority over the project's default value. The option " \ "may be repeated for as many cache entries as desired."}, \ - {"-G", "Specify a makefile generator.", \ + {"-G ", "Specify a makefile generator.", \ "CMake may support multiple native build systems on certain platforms. " \ "A makefile generator is responsible for generating a particular build " \ "system. Possible generator names are specified in the Generators " \