diff options
Diffstat (limited to 'Source')
-rw-r--r-- | Source/CMakeInstallDestinations.cmake | 5 | ||||
-rw-r--r-- | Source/CMakeLists.txt | 2 | ||||
-rw-r--r-- | Source/CMakeVersion.cmake | 4 | ||||
-rw-r--r-- | Source/CursesDialog/CMakeLists.txt | 2 | ||||
-rw-r--r-- | Source/cmConfigure.cmake.h.in | 1 | ||||
-rw-r--r-- | Source/cmGlobalGenerator.h | 2 | ||||
-rw-r--r-- | Source/cmGlobalVisualStudioGenerator.h | 2 | ||||
-rw-r--r-- | Source/cmGlobalXCodeGenerator.cxx | 2 | ||||
-rw-r--r-- | Source/cmGlobalXCodeGenerator.h | 2 | ||||
-rw-r--r-- | Source/cmSystemTools.cxx | 21 |
10 files changed, 28 insertions, 15 deletions
diff --git a/Source/CMakeInstallDestinations.cmake b/Source/CMakeInstallDestinations.cmake index 2f9d95a..023f6c0 100644 --- a/Source/CMakeInstallDestinations.cmake +++ b/Source/CMakeInstallDestinations.cmake @@ -1,27 +1,32 @@ # Keep formatting here consistent with bootstrap script expectations. if(BEOS) + set(CMAKE_BIN_DIR_DEFAULT "bin") # HAIKU set(CMAKE_DATA_DIR_DEFAULT "share/cmake-${CMake_VERSION_MAJOR}.${CMake_VERSION_MINOR}") # HAIKU set(CMAKE_MAN_DIR_DEFAULT "documentation/man") # HAIKU set(CMAKE_DOC_DIR_DEFAULT "documentation/doc/cmake-${CMake_VERSION_MAJOR}.${CMake_VERSION_MINOR}") # HAIKU set(CMAKE_XDGDATA_DIR_DEFAULT "share") # HAIKU elseif(CYGWIN) + set(CMAKE_BIN_DIR_DEFAULT "bin") # CYGWIN set(CMAKE_DATA_DIR_DEFAULT "share/cmake-${CMake_VERSION}") # CYGWIN set(CMAKE_DOC_DIR_DEFAULT "share/doc/cmake-${CMake_VERSION}") # CYGWIN set(CMAKE_MAN_DIR_DEFAULT "share/man") # CYGWIN set(CMAKE_XDGDATA_DIR_DEFAULT "share") # CYGWIN else() + set(CMAKE_BIN_DIR_DEFAULT "bin") # OTHER set(CMAKE_DATA_DIR_DEFAULT "share/cmake-${CMake_VERSION_MAJOR}.${CMake_VERSION_MINOR}") # OTHER set(CMAKE_DOC_DIR_DEFAULT "doc/cmake-${CMake_VERSION_MAJOR}.${CMake_VERSION_MINOR}") # OTHER set(CMAKE_MAN_DIR_DEFAULT "man") # OTHER set(CMAKE_XDGDATA_DIR_DEFAULT "share") # OTHER endif() +set(CMAKE_BIN_DIR_DESC "bin") set(CMAKE_DATA_DIR_DESC "data") set(CMAKE_DOC_DIR_DESC "docs") set(CMAKE_MAN_DIR_DESC "man pages") set(CMAKE_XDGDATA_DIR_DESC "XDG specific files") foreach(v + CMAKE_BIN_DIR CMAKE_DATA_DIR CMAKE_DOC_DIR CMAKE_MAN_DIR diff --git a/Source/CMakeLists.txt b/Source/CMakeLists.txt index 3223831..3f00c8e 100644 --- a/Source/CMakeLists.txt +++ b/Source/CMakeLists.txt @@ -786,7 +786,7 @@ endif() foreach(_tool ${_tools}) CMake_OPTIONAL_COMPONENT(${_tool}) - install(TARGETS ${_tool} DESTINATION bin ${COMPONENT}) + install(TARGETS ${_tool} DESTINATION ${CMAKE_BIN_DIR} ${COMPONENT}) endforeach() install(FILES cmCPluginAPI.h DESTINATION ${CMAKE_DATA_DIR}/include) diff --git a/Source/CMakeVersion.cmake b/Source/CMakeVersion.cmake index 6de2243..390e408 100644 --- a/Source/CMakeVersion.cmake +++ b/Source/CMakeVersion.cmake @@ -1,5 +1,5 @@ # CMake version number components. set(CMake_VERSION_MAJOR 3) set(CMake_VERSION_MINOR 6) -set(CMake_VERSION_PATCH 0) -set(CMake_VERSION_RC 1) +set(CMake_VERSION_PATCH 20160602) +#set(CMake_VERSION_RC 1) diff --git a/Source/CursesDialog/CMakeLists.txt b/Source/CursesDialog/CMakeLists.txt index 93ff425..55599b6 100644 --- a/Source/CursesDialog/CMakeLists.txt +++ b/Source/CursesDialog/CMakeLists.txt @@ -48,4 +48,4 @@ else() endif() CMake_OPTIONAL_COMPONENT(ccmake) -install(TARGETS ccmake DESTINATION bin ${COMPONENT}) +install(TARGETS ccmake DESTINATION ${CMAKE_BIN_DIR} ${COMPONENT}) diff --git a/Source/cmConfigure.cmake.h.in b/Source/cmConfigure.cmake.h.in index 62128a7..11ff00b 100644 --- a/Source/cmConfigure.cmake.h.in +++ b/Source/cmConfigure.cmake.h.in @@ -15,4 +15,5 @@ #cmakedefine CMAKE_USE_MACH_PARSER #cmakedefine CMAKE_ENCODING_UTF8 #cmakedefine CMake_HAVE_CXX11_UNORDERED_MAP +#define CMAKE_BIN_DIR "/@CMAKE_BIN_DIR@" #define CMAKE_DATA_DIR "/@CMAKE_DATA_DIR@" diff --git a/Source/cmGlobalGenerator.h b/Source/cmGlobalGenerator.h index 2575911..68ff042 100644 --- a/Source/cmGlobalGenerator.h +++ b/Source/cmGlobalGenerator.h @@ -319,7 +319,7 @@ public: /** Return true if the generated build tree may contain multiple builds. i.e. "Can I build Debug and Release in the same tree?" */ - virtual bool IsMultiConfig() { return false; } + virtual bool IsMultiConfig() const { return false; } std::string GetSharedLibFlagsForLanguage(std::string const& lang) const; diff --git a/Source/cmGlobalVisualStudioGenerator.h b/Source/cmGlobalVisualStudioGenerator.h index fb2cdbd..1d456ff 100644 --- a/Source/cmGlobalVisualStudioGenerator.h +++ b/Source/cmGlobalVisualStudioGenerator.h @@ -85,7 +85,7 @@ public: /** Return true if the generated build tree may contain multiple builds. i.e. "Can I build Debug and Release in the same tree?" */ - virtual bool IsMultiConfig() { return true; } + virtual bool IsMultiConfig() const { return true; } /** Return true if building for Windows CE */ virtual bool TargetsWindowsCE() const { return false; } diff --git a/Source/cmGlobalXCodeGenerator.cxx b/Source/cmGlobalXCodeGenerator.cxx index 6628cfc..b666594 100644 --- a/Source/cmGlobalXCodeGenerator.cxx +++ b/Source/cmGlobalXCodeGenerator.cxx @@ -3437,7 +3437,7 @@ std::string cmGlobalXCodeGenerator::ComputeInfoPListLocation( // Return true if the generated build tree may contain multiple builds. // i.e. "Can I build Debug and Release in the same tree?" -bool cmGlobalXCodeGenerator::IsMultiConfig() +bool cmGlobalXCodeGenerator::IsMultiConfig() const { // Old Xcode 1.5 is single config: if (this->XcodeVersion == 15) { diff --git a/Source/cmGlobalXCodeGenerator.h b/Source/cmGlobalXCodeGenerator.h index 2ca4c19..0485d4f 100644 --- a/Source/cmGlobalXCodeGenerator.h +++ b/Source/cmGlobalXCodeGenerator.h @@ -79,7 +79,7 @@ public: /** Return true if the generated build tree may contain multiple builds. i.e. "Can I build Debug and Release in the same tree?" */ - virtual bool IsMultiConfig(); + virtual bool IsMultiConfig() const; virtual bool SetGeneratorToolset(std::string const& ts, cmMakefile* mf); void AppendFlag(std::string& flags, std::string const& flag); diff --git a/Source/cmSystemTools.cxx b/Source/cmSystemTools.cxx index 7dece47..99d8569 100644 --- a/Source/cmSystemTools.cxx +++ b/Source/cmSystemTools.cxx @@ -1930,11 +1930,11 @@ void cmSystemTools::FindCMakeResources(const char* argv0) } if (cmSystemTools::GetFilenameName(exe_dir) == "MacOS") { // The executable is inside an application bundle. - // Look for ../bin (install tree) and then fall back to + // Look for ..<CMAKE_BIN_DIR> (install tree) and then fall back to // ../../../bin (build tree). exe_dir = cmSystemTools::GetFilenamePath(exe_dir); - if (cmSystemTools::FileExists((exe_dir + "/bin/cmake").c_str())) { - exe_dir += "/bin"; + if (cmSystemTools::FileExists(exe_dir + CMAKE_BIN_DIR "/cmake")) { + exe_dir += CMAKE_BIN_DIR; } else { exe_dir = cmSystemTools::GetFilenamePath(exe_dir); exe_dir = cmSystemTools::GetFilenamePath(exe_dir); @@ -1985,13 +1985,20 @@ void cmSystemTools::FindCMakeResources(const char* argv0) } #ifdef CMAKE_BUILD_WITH_CMAKE - // Install tree has "<prefix>/bin/cmake" and "<prefix><CMAKE_DATA_DIR>". - std::string dir = cmSystemTools::GetFilenamePath(exe_dir); - cmSystemToolsCMakeRoot = dir + CMAKE_DATA_DIR; - if (!cmSystemTools::FileExists( + // Install tree has + // - "<prefix><CMAKE_BIN_DIR>/cmake" + // - "<prefix><CMAKE_DATA_DIR>" + if (cmHasSuffix(exe_dir, CMAKE_BIN_DIR)) { + std::string const prefix = + exe_dir.substr(0, exe_dir.size() - strlen(CMAKE_BIN_DIR)); + cmSystemToolsCMakeRoot = prefix + CMAKE_DATA_DIR; + } + if (cmSystemToolsCMakeRoot.empty() || + !cmSystemTools::FileExists( (cmSystemToolsCMakeRoot + "/Modules/CMake.cmake").c_str())) { // Build tree has "<build>/bin[/<config>]/cmake" and // "<build>/CMakeFiles/CMakeSourceDir.txt". + std::string dir = cmSystemTools::GetFilenamePath(exe_dir); std::string src_dir_txt = dir + "/CMakeFiles/CMakeSourceDir.txt"; cmsys::ifstream fin(src_dir_txt.c_str()); std::string src_dir; |