diff options
author | Bill Hoffman <bill.hoffman@kitware.com> | 2005-07-19 21:16:23 (GMT) |
---|---|---|
committer | Bill Hoffman <bill.hoffman@kitware.com> | 2005-07-19 21:16:23 (GMT) |
commit | 9062e6d922956bd374d626498a382d02804bbf83 (patch) | |
tree | 11175f8b368be4559d3165f99dea659756ac6433 /Source | |
parent | a13713818cea07e565bdda8463f054e3d2ccd1fa (diff) | |
download | CMake-9062e6d922956bd374d626498a382d02804bbf83.zip CMake-9062e6d922956bd374d626498a382d02804bbf83.tar.gz CMake-9062e6d922956bd374d626498a382d02804bbf83.tar.bz2 |
ENH: fix for bug 1866, make -G,-D -C options allow for space between arg and value
Diffstat (limited to 'Source')
-rw-r--r-- | Source/cmake.cxx | 11 | ||||
-rw-r--r-- | Source/cmake.h | 6 |
2 files changed, 12 insertions, 5 deletions
diff --git a/Source/cmake.cxx b/Source/cmake.cxx index e108e18..c64e3b2 100644 --- a/Source/cmake.cxx +++ b/Source/cmake.cxx @@ -246,6 +246,10 @@ bool cmake::SetCacheArgs(const std::vector<std::string>& 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<std::string>& 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<std::string>& 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 4e61c5f..0d6f7d9 100644 --- a/Source/cmake.h +++ b/Source/cmake.h @@ -318,20 +318,20 @@ private: }; #define CMAKE_STANDARD_OPTIONS_TABLE \ - {"-C<initial-cache>", "Pre-load cmake cache from given file.", \ + {"-C <initial-cache>", "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<var>:<type>=<value>", "Create a cmake cache entry.", \ + {"-D <var>:<type>=<value>", "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<generator-name>", "Specify a makefile generator.", \ + {"-G <generator-name>", "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 " \ |