diff options
author | Bill Hoffman <bill.hoffman@kitware.com> | 2007-01-03 21:09:14 (GMT) |
---|---|---|
committer | Bill Hoffman <bill.hoffman@kitware.com> | 2007-01-03 21:09:14 (GMT) |
commit | 99d60a6ded9a2e6a09f68127d06562994fd98d40 (patch) | |
tree | 3d087ffba55a26b63e4548c42e27c39c47849edb | |
parent | 1529dfaa2f7f79d7e8b549e7b3d3d3d015bf1f70 (diff) | |
download | CMake-99d60a6ded9a2e6a09f68127d06562994fd98d40.zip CMake-99d60a6ded9a2e6a09f68127d06562994fd98d40.tar.gz CMake-99d60a6ded9a2e6a09f68127d06562994fd98d40.tar.bz2 |
ENH: merge from main tree
-rw-r--r-- | CMakeLists.txt | 2 | ||||
-rw-r--r-- | ChangeLog.manual | 13 | ||||
-rwxr-xr-x | Modules/CPack.STGZ_Header.sh.in | 8 | ||||
-rw-r--r-- | Modules/FindDoxygen.cmake | 7 | ||||
-rw-r--r-- | Modules/FindJNI.cmake | 2 | ||||
-rw-r--r-- | Modules/FindRuby.cmake | 2 | ||||
-rw-r--r-- | Source/cmFindBase.cxx | 82 | ||||
-rw-r--r-- | Source/cmFindBase.h | 4 | ||||
-rw-r--r-- | Tests/CTestTest3/test.cmake.in | 3 |
9 files changed, 85 insertions, 38 deletions
diff --git a/CMakeLists.txt b/CMakeLists.txt index afccbf0..4c7e191 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -7,7 +7,7 @@ SET(CMake_VERSION_MAJOR 2) SET(CMake_VERSION_MINOR 4) SET(CMake_VERSION_PATCH 6) # for an actual release this should not be defined -SET(CMake_VERSION_RC 1) +SET(CMake_VERSION_RC 2) SET(CMake_VERSION "${CMake_VERSION_MAJOR}.${CMake_VERSION_MINOR}") SET(CMake_VERSION_FULL "${CMake_VERSION}.${CMake_VERSION_PATCH}") diff --git a/ChangeLog.manual b/ChangeLog.manual index 9b2d54e..4c54a2d 100644 --- a/ChangeLog.manual +++ b/ChangeLog.manual @@ -1,4 +1,17 @@ Changes in CMake 2.4.6 + +* Remove svn test in ctestctest3 + +* Fix for FIND_* order and framworks with PREFIX usage. + +* Fix for FindDoxygen and quiet mode. + +* Find JavaVM as well as jvm + +* Look for ruby1.8 and ruby + +* Fix for cpack .tgz.sh and dash + * Fix for finding custom commands from a full path with CMAKE_CFG_INTDIR. * Fix for Borland make and custom commands that do nothing diff --git a/Modules/CPack.STGZ_Header.sh.in b/Modules/CPack.STGZ_Header.sh.in index 1325239..7044be8 100755 --- a/Modules/CPack.STGZ_Header.sh.in +++ b/Modules/CPack.STGZ_Header.sh.in @@ -58,7 +58,7 @@ for a in "$@CPACK_AT_SIGN@"; do fi done -if [ "x${cpack_include_subdir}x" != "xx" -o "x${cpack_skip_license}x" == "xTRUEx" ] +if [ "x${cpack_include_subdir}x" != "xx" -o "x${cpack_skip_license}x" = "xTRUEx" ] then interactive=FALSE fi @@ -73,7 +73,7 @@ fi echo "The archive will be extracted to: ${toplevel}" -if [ "x${interactive}x" == "xTRUEx" ] +if [ "x${interactive}x" = "xTRUEx" ] then echo "" echo "If you want to stop extracting, please press <ctrl-C>." @@ -95,7 +95,7 @@ ____cpack__here_doc____ esac fi - if [ "x${cpack_include_subdir}x" == "xx" ] + if [ "x${cpack_include_subdir}x" = "xx" ] then echo "By default the @CPACK_PACKAGE_NAME@ will be installed in:" echo " \"${toplevel}/@CPACK_PACKAGE_FILE_NAME@\"" @@ -110,7 +110,7 @@ ____cpack__here_doc____ fi fi -if [ "x${cpack_include_subdir}x" == "xTRUEx" ] +if [ "x${cpack_include_subdir}x" = "xTRUEx" ] then toplevel="${toplevel}/@CPACK_PACKAGE_FILE_NAME@" mkdir -p "${toplevel}" diff --git a/Modules/FindDoxygen.cmake b/Modules/FindDoxygen.cmake index 5d4554b..b489a49 100644 --- a/Modules/FindDoxygen.cmake +++ b/Modules/FindDoxygen.cmake @@ -23,6 +23,13 @@ SET(TEMP_DOXYGEN_SAVE_CMAKE_FIND_APPBUNDLE ${CMAKE_FIND_APPBUNDLE}) # Disable the App-bundle detection feature SET(CMAKE_FIND_APPBUNDLE "NEVER") +# For backwards compatibility support +# DOXYGEN_FIND_QUIETLY, but it should have been +# Doxygen_FIND_QUIETLY. +IF(Doxygen_FIND_QUIETLY) + SET(DOXYGEN_FIND_QUIETLY TRUE) +ENDIF(Doxygen_FIND_QUIETLY) + IF (NOT DOXYGEN_FIND_QUIETLY) MESSAGE(STATUS "Looking for doxygen...") ENDIF (NOT DOXYGEN_FIND_QUIETLY) diff --git a/Modules/FindJNI.cmake b/Modules/FindJNI.cmake index 694bc96..45e6c20 100644 --- a/Modules/FindJNI.cmake +++ b/Modules/FindJNI.cmake @@ -96,7 +96,7 @@ ELSE(APPLE) FIND_LIBRARY(JAVA_AWT_LIBRARY jawt PATHS ${JAVA_AWT_LIBRARY_DIRECTORIES} ) - FIND_LIBRARY(JAVA_JVM_LIBRARY jvm + FIND_LIBRARY(JAVA_JVM_LIBRARY NAMES jvm JavaVM PATHS ${JAVA_JVM_LIBRARY_DIRECTORIES} ) ENDIF(APPLE) diff --git a/Modules/FindRuby.cmake b/Modules/FindRuby.cmake index 943b131..44fc462 100644 --- a/Modules/FindRuby.cmake +++ b/Modules/FindRuby.cmake @@ -46,7 +46,7 @@ FIND_PATH(RUBY_INCLUDE_PATH /usr/lib/ruby/1.8/i586-linux-gnu/ ) FIND_LIBRARY(RUBY_LIBRARY - NAMES ruby + NAMES ruby ruby1.8 PATHS ${RUBY_POSSIBLE_LIB_PATH} ) diff --git a/Source/cmFindBase.cxx b/Source/cmFindBase.cxx index ef7e5fe..9113a6d 100644 --- a/Source/cmFindBase.cxx +++ b/Source/cmFindBase.cxx @@ -444,14 +444,13 @@ void cmFindBase::ExpandPaths(std::vector<std::string> userPaths) this->AddFrameWorkPaths(); } } + std::vector<std::string> paths; // add the paths specified in the FIND_* call for(unsigned int i =0; i < userPaths.size(); ++i) { - this->SearchPaths.push_back(userPaths[i]); + paths.push_back(userPaths[i]); } - - // clean things up - this->ExpandRegistryAndCleanPath(); + this->AddPaths(paths); } void cmFindBase::AddEnvironmentVairables() @@ -459,16 +458,17 @@ void cmFindBase::AddEnvironmentVairables() std::string var = "CMAKE_"; var += this->CMakePathName; var += "_PATH"; - cmSystemTools::GetPath(this->SearchPaths, var.c_str()); + std::vector<std::string> paths; + cmSystemTools::GetPath(paths, var.c_str()); if(this->SearchAppBundleLast) { - cmSystemTools::GetPath(this->SearchPaths, "CMAKE_APPBUNDLE_PATH"); + cmSystemTools::GetPath(paths, "CMAKE_APPBUNDLE_PATH"); } if(this->SearchFrameworkLast) { - cmSystemTools::GetPath(this->SearchPaths, "CMAKE_FRAMEWORK_PATH"); + cmSystemTools::GetPath(paths, "CMAKE_FRAMEWORK_PATH"); } - + this->AddPaths(paths); } void cmFindBase::AddFrameWorkPaths() @@ -477,10 +477,11 @@ void cmFindBase::AddFrameWorkPaths() { return; } + std::vector<std::string> paths; // first environment variables if(!this->NoCMakeEnvironmentPath) { - cmSystemTools::GetPath(this->SearchPaths, "CMAKE_FRAMEWORK_PATH"); + cmSystemTools::GetPath(paths, "CMAKE_FRAMEWORK_PATH"); } // add cmake variables if(!this->NoCMakePath) @@ -488,7 +489,7 @@ void cmFindBase::AddFrameWorkPaths() if(const char* path = this->Makefile->GetDefinition("CMAKE_FRAMEWORK_PATH")) { - cmSystemTools::ExpandListArgument(path, this->SearchPaths); + cmSystemTools::ExpandListArgument(path, paths); } } // AddCMakeSystemVariables @@ -497,9 +498,20 @@ void cmFindBase::AddFrameWorkPaths() if(const char* path = this->Makefile->GetDefinition("CMAKE_SYSTEM_FRAMEWORK_PATH")) { - cmSystemTools::ExpandListArgument(path, this->SearchPaths); + cmSystemTools::ExpandListArgument(path, paths); } } + this->AddPaths(paths); +} + +void cmFindBase::AddPaths(std::vector<std::string> & paths) +{ + // add suffixes and clean up paths + this->ExpandRegistryAndCleanPath(paths); + // add the paths to the search paths + this->SearchPaths.insert(this->SearchPaths.end(), + paths.begin(), + paths.end()); } void cmFindBase::AddAppBundlePaths() @@ -508,10 +520,11 @@ void cmFindBase::AddAppBundlePaths() { return; } + std::vector<std::string> paths; // first environment variables if(!this->NoCMakeEnvironmentPath) { - cmSystemTools::GetPath(this->SearchPaths, "CMAKE_APPBUNDLE_PATH"); + cmSystemTools::GetPath(paths, "CMAKE_APPBUNDLE_PATH"); } // add cmake variables if(!this->NoCMakePath) @@ -519,7 +532,7 @@ void cmFindBase::AddAppBundlePaths() if(const char* path = this->Makefile->GetDefinition("CMAKE_APPBUNDLE_PATH")) { - cmSystemTools::ExpandListArgument(path, this->SearchPaths); + cmSystemTools::ExpandListArgument(path, paths); } } // AddCMakeSystemVariables @@ -528,9 +541,10 @@ void cmFindBase::AddAppBundlePaths() if(const char* path = this->Makefile->GetDefinition("CMAKE_SYSTEM_APPBUNDLE_PATH")) { - cmSystemTools::ExpandListArgument(path, this->SearchPaths); + cmSystemTools::ExpandListArgument(path, paths); } } + this->AddPaths(paths); } void cmFindBase::AddCMakeVairables() @@ -538,16 +552,17 @@ void cmFindBase::AddCMakeVairables() std::string var = "CMAKE_"; var += this->CMakePathName; var += "_PATH"; + std::vector<std::string> paths; if(const char* path = this->Makefile->GetDefinition(var.c_str())) { - cmSystemTools::ExpandListArgument(path, this->SearchPaths); + cmSystemTools::ExpandListArgument(path, paths); } if(this->SearchAppBundleLast) { if(const char* path = this->Makefile->GetDefinition("CMAKE_APPBUNDLE_PATH")) { - cmSystemTools::ExpandListArgument(path, this->SearchPaths); + cmSystemTools::ExpandListArgument(path, paths); } } if(this->SearchFrameworkLast) @@ -555,20 +570,23 @@ void cmFindBase::AddCMakeVairables() if(const char* path = this->Makefile->GetDefinition("CMAKE_FRAMEWORK_PATH")) { - cmSystemTools::ExpandListArgument(path, this->SearchPaths); + cmSystemTools::ExpandListArgument(path, paths); } } + this->AddPaths(paths); } void cmFindBase::AddSystemEnvironmentVairables() { // Add LIB or INCLUDE + std::vector<std::string> paths; if(this->EnvironmentPath.size()) { - cmSystemTools::GetPath(this->SearchPaths, this->EnvironmentPath.c_str()); + cmSystemTools::GetPath(paths, this->EnvironmentPath.c_str()); } // Add PATH - cmSystemTools::GetPath(this->SearchPaths); + cmSystemTools::GetPath(paths); + this->AddPaths(paths); } void cmFindBase::AddCMakeSystemVariables() @@ -576,16 +594,17 @@ void cmFindBase::AddCMakeSystemVariables() std::string var = "CMAKE_SYSTEM_"; var += this->CMakePathName; var += "_PATH"; + std::vector<std::string> paths; if(const char* path = this->Makefile->GetDefinition(var.c_str())) { - cmSystemTools::ExpandListArgument(path, this->SearchPaths); + cmSystemTools::ExpandListArgument(path, paths); } if(this->SearchAppBundleLast) { if(const char* path = this->Makefile->GetDefinition("CMAKE_SYSTEM_APPBUNDLE_PATH")) { - cmSystemTools::ExpandListArgument(path, this->SearchPaths); + cmSystemTools::ExpandListArgument(path, paths); } } if(this->SearchFrameworkLast) @@ -593,23 +612,28 @@ void cmFindBase::AddCMakeSystemVariables() if(const char* path = this->Makefile->GetDefinition("CMAKE_SYSTEM_FRAMEWORK_PATH")) { - cmSystemTools::ExpandListArgument(path, this->SearchPaths); + cmSystemTools::ExpandListArgument(path, paths); } } + this->AddPaths(paths); } -void cmFindBase::ExpandRegistryAndCleanPath() +void cmFindBase::ExpandRegistryAndCleanPath(std::vector<std::string>& paths) { std::vector<std::string> finalPath; std::vector<std::string>::iterator i; - for(i = this->SearchPaths.begin(); - i != this->SearchPaths.end(); ++i) + // glob and expand registry stuff from paths and put + // into finalPath + for(i = paths.begin(); + i != paths.end(); ++i) { cmSystemTools::ExpandRegistryValues(*i); cmSystemTools::GlobDirs(i->c_str(), finalPath); } - this->SearchPaths.clear(); - // convert all paths to unix slashes + // clear the path + paths.clear(); + // convert all paths to unix slashes and add search path suffixes + // if there are any for(i = finalPath.begin(); i != finalPath.end(); ++i) { @@ -623,7 +647,7 @@ void cmFindBase::ExpandRegistryAndCleanPath() std::string p = *i + std::string("/") + *j; // add to all paths because the search path may be modified // later with lib being replaced for lib64 which may exist - this->SearchPaths.push_back(p); + paths.push_back(p); } } // now put the path without the path suffixes in the SearchPaths @@ -632,7 +656,7 @@ void cmFindBase::ExpandRegistryAndCleanPath() { // put all search paths in because it may later be replaced // by lib64 stuff fixes bug 4009 - this->SearchPaths.push_back(*i); + paths.push_back(*i); } } diff --git a/Source/cmFindBase.h b/Source/cmFindBase.h index e7084a4..e9fae38 100644 --- a/Source/cmFindBase.h +++ b/Source/cmFindBase.h @@ -42,13 +42,15 @@ public: protected: void PrintFindStuff(); void ExpandPaths(std::vector<std::string> userPaths); + // add to the SearchPaths + void AddPaths(std::vector<std::string>& paths); void AddFrameWorkPaths(); void AddAppBundlePaths(); void AddEnvironmentVairables(); void AddCMakeVairables(); void AddSystemEnvironmentVairables(); void AddCMakeSystemVariables(); - void ExpandRegistryAndCleanPath(); + void ExpandRegistryAndCleanPath(std::vector<std::string>& paths); // see if the VariableName is already set in the cache, // also copy the documentation from the cache to VariableDocumentation // if it has documentation in the cache diff --git a/Tests/CTestTest3/test.cmake.in b/Tests/CTestTest3/test.cmake.in index 4db2ae4..ade256a 100644 --- a/Tests/CTestTest3/test.cmake.in +++ b/Tests/CTestTest3/test.cmake.in @@ -55,7 +55,8 @@ CTEST_MEMCHECK(BUILD "${CTEST_BINARY_DIRECTORY}" RETURN_VALUE res) CTEST_COVERAGE(BUILD "${CTEST_BINARY_DIRECTORY}" RETURN_VALUE res) CTEST_SUBMIT(RETURN_VALUE res) -SET(svncommand "@SVNCOMMAND@") +#SET(svncommand "@SVNCOMMAND@") +set(svncommand FALSE) # turn this off until namic svn cmake is back IF(svncommand) # Project 2 PROJECT_START("KWSys from SVN") |