diff options
author | Alexander Neundorf <neundorf@kde.org> | 2007-07-17 16:01:39 (GMT) |
---|---|---|
committer | Alexander Neundorf <neundorf@kde.org> | 2007-07-17 16:01:39 (GMT) |
commit | b56815a4e92dd976e9e17fa8ecb4061ecb72b6fe (patch) | |
tree | cccc140cec31e87db4d39a6db2089f6c32f3b8df | |
parent | a4429ad30a069f61c4630b54e44c3e1d747f9d41 (diff) | |
download | CMake-b56815a4e92dd976e9e17fa8ecb4061ecb72b6fe.zip CMake-b56815a4e92dd976e9e17fa8ecb4061ecb72b6fe.tar.gz CMake-b56815a4e92dd976e9e17fa8ecb4061ecb72b6fe.tar.bz2 |
COMP: fix build on Windows, where GetCurrentDirecty() is redefined to
GetCurrentDirectoryA()
-correct return value for md5sum
Alex
-rw-r--r-- | Source/cmake.cxx | 5 | ||||
-rw-r--r-- | Source/cmakemain.cxx | 10 |
2 files changed, 11 insertions, 4 deletions
diff --git a/Source/cmake.cxx b/Source/cmake.cxx index e90311e..49ce652 100644 --- a/Source/cmake.cxx +++ b/Source/cmake.cxx @@ -1063,6 +1063,7 @@ int cmake::ExecuteCMakeCommand(std::vector<std::string>& args) else if (args[1] == "md5sum" && args.size() >= 3) { char md5out[32]; + int retval = 0; for (std::string::size_type cc = 2; cc < args.size(); cc ++) { const char *filename = args[cc].c_str(); @@ -1070,18 +1071,20 @@ int cmake::ExecuteCMakeCommand(std::vector<std::string>& args) if(cmSystemTools::FileIsDirectory(filename)) { std::cerr << "Error: " << filename << " is a directory" << std::endl; + retval++; } else if(!cmSystemTools::ComputeFileMD5(filename, md5out)) { // To mimic md5sum behavior in a shell: std::cerr << filename << ": No such file or directory" << std::endl; + retval++; } else { std::cout << std::string(md5out,32) << " " << filename << std::endl; } } - return 1; + return retval; } // Command to change directory and run a program. diff --git a/Source/cmakemain.cxx b/Source/cmakemain.cxx index a6cd1ed..c089ed6 100644 --- a/Source/cmakemain.cxx +++ b/Source/cmakemain.cxx @@ -14,6 +14,13 @@ PURPOSE. See the above copyright notices for more information. =========================================================================*/ +// include these first, otherwise there will be problems on Windows +// with GetCurrentDirectory() being redefined +#ifdef CMAKE_BUILD_WITH_CMAKE +#include "cmDynamicLoader.h" +#include "cmDocumentation.h" +#endif + #include "cmake.h" #include "cmCacheManager.h" #include "cmListFileCache.h" @@ -24,9 +31,6 @@ #include "cmMakefile.h" #ifdef CMAKE_BUILD_WITH_CMAKE -#include "cmDynamicLoader.h" -#include "cmDocumentation.h" - //---------------------------------------------------------------------------- static const cmDocumentationEntry cmDocumentationName[] = { |