summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--Help/manual/cmake-variables.7.rst5
-rw-r--r--Help/release/dev/cmake-host-solaris.rst5
-rw-r--r--Help/variable/CMAKE_ECLIPSE_GENERATE_LINKED_RESOURCES.rst10
-rw-r--r--Help/variable/CMAKE_ECLIPSE_GENERATE_SOURCE_PROJECT.rst11
-rw-r--r--Help/variable/CMAKE_ECLIPSE_MAKE_ARGUMENTS.rst9
-rw-r--r--Help/variable/CMAKE_ECLIPSE_VERSION.rst10
-rw-r--r--Help/variable/CMAKE_HOST_SOLARIS.rst6
-rw-r--r--Modules/FindGit.cmake6
-rw-r--r--Modules/FindMPI.cmake15
-rw-r--r--Source/CMakeVersion.cmake2
-rw-r--r--Source/QtDialog/CMakeSetup.cxx1
-rw-r--r--Source/cmState.cxx3
12 files changed, 78 insertions, 5 deletions
diff --git a/Help/manual/cmake-variables.7.rst b/Help/manual/cmake-variables.7.rst
index 7cf3a3d..181fbbc 100644
--- a/Help/manual/cmake-variables.7.rst
+++ b/Help/manual/cmake-variables.7.rst
@@ -116,6 +116,10 @@ Variables that Change Behavior
/variable/CMAKE_DEBUG_TARGET_PROPERTIES
/variable/CMAKE_DEPENDS_IN_PROJECT_ONLY
/variable/CMAKE_DISABLE_FIND_PACKAGE_PackageName
+ /variable/CMAKE_ECLIPSE_GENERATE_LINKED_RESOURCES
+ /variable/CMAKE_ECLIPSE_GENERATE_SOURCE_PROJECT
+ /variable/CMAKE_ECLIPSE_MAKE_ARGUMENTS
+ /variable/CMAKE_ECLIPSE_VERSION
/variable/CMAKE_ERROR_DEPRECATED
/variable/CMAKE_ERROR_ON_ABSOLUTE_INSTALL_DESTINATION
/variable/CMAKE_EXPORT_COMPILE_COMMANDS
@@ -175,6 +179,7 @@ Variables that Describe the System
/variable/CMAKE_CL_64
/variable/CMAKE_COMPILER_2005
/variable/CMAKE_HOST_APPLE
+ /variable/CMAKE_HOST_SOLARIS
/variable/CMAKE_HOST_SYSTEM_NAME
/variable/CMAKE_HOST_SYSTEM_PROCESSOR
/variable/CMAKE_HOST_SYSTEM
diff --git a/Help/release/dev/cmake-host-solaris.rst b/Help/release/dev/cmake-host-solaris.rst
new file mode 100644
index 0000000..da7ab89
--- /dev/null
+++ b/Help/release/dev/cmake-host-solaris.rst
@@ -0,0 +1,5 @@
+cmake-host-solaris
+------------------
+
+* A new :variable:`CMAKE_HOST_SOLARIS` variable was introduced to
+ indicate when CMake is running on an Oracle Solaris host.
diff --git a/Help/variable/CMAKE_ECLIPSE_GENERATE_LINKED_RESOURCES.rst b/Help/variable/CMAKE_ECLIPSE_GENERATE_LINKED_RESOURCES.rst
new file mode 100644
index 0000000..331aae8
--- /dev/null
+++ b/Help/variable/CMAKE_ECLIPSE_GENERATE_LINKED_RESOURCES.rst
@@ -0,0 +1,10 @@
+CMAKE_ECLIPSE_GENERATE_LINKED_RESOURCES
+---------------------------------------
+
+This cache variable is used by the Eclipse project generator. See
+:manual:`cmake-generators(7)`.
+
+The Eclipse project generator generates so-called linked resources
+e.g. to the subproject root dirs in the source tree or to the source files
+of targets.
+This can be disabled by setting this variable to FALSE.
diff --git a/Help/variable/CMAKE_ECLIPSE_GENERATE_SOURCE_PROJECT.rst b/Help/variable/CMAKE_ECLIPSE_GENERATE_SOURCE_PROJECT.rst
new file mode 100644
index 0000000..7b4367d
--- /dev/null
+++ b/Help/variable/CMAKE_ECLIPSE_GENERATE_SOURCE_PROJECT.rst
@@ -0,0 +1,11 @@
+CMAKE_ECLIPSE_GENERATE_SOURCE_PROJECT
+-------------------------------------
+
+This cache variable is used by the Eclipse project generator. See
+:manual:`cmake-generators(7)`.
+
+If this variable is set to TRUE, the Eclipse project generator will generate
+an Eclipse project in :variable:`CMAKE_SOURCE_DIR` . This project can then
+be used in Eclipse e.g. for the version control functionality.
+:variable:`CMAKE_ECLIPSE_GENERATE_SOURCE_PROJECT` defaults to FALSE; so
+nothing is written into the source directory.
diff --git a/Help/variable/CMAKE_ECLIPSE_MAKE_ARGUMENTS.rst b/Help/variable/CMAKE_ECLIPSE_MAKE_ARGUMENTS.rst
new file mode 100644
index 0000000..6e8a408
--- /dev/null
+++ b/Help/variable/CMAKE_ECLIPSE_MAKE_ARGUMENTS.rst
@@ -0,0 +1,9 @@
+CMAKE_ECLIPSE_MAKE_ARGUMENTS
+----------------------------
+
+This cache variable is used by the Eclipse project generator. See
+:manual:`cmake-generators(7)`.
+
+This variable holds arguments which are used when Eclipse invokes the make
+tool. By default it is initialized to hold flags to enable parallel builds
+(using -j typically).
diff --git a/Help/variable/CMAKE_ECLIPSE_VERSION.rst b/Help/variable/CMAKE_ECLIPSE_VERSION.rst
new file mode 100644
index 0000000..8cc7882
--- /dev/null
+++ b/Help/variable/CMAKE_ECLIPSE_VERSION.rst
@@ -0,0 +1,10 @@
+CMAKE_ECLIPSE_VERSION
+---------------------
+
+This cache variable is used by the Eclipse project generator. See
+:manual:`cmake-generators(7)`.
+
+When using the Eclipse project generator, CMake tries to find the Eclipse
+executable and detect the version of it. Depending on the version it finds,
+some features are enabled or disabled. If CMake doesn't find
+Eclipse, it assumes the oldest supported version, Eclipse Callisto (3.2).
diff --git a/Help/variable/CMAKE_HOST_SOLARIS.rst b/Help/variable/CMAKE_HOST_SOLARIS.rst
new file mode 100644
index 0000000..82b5d69
--- /dev/null
+++ b/Help/variable/CMAKE_HOST_SOLARIS.rst
@@ -0,0 +1,6 @@
+CMAKE_HOST_SOLARIS
+------------------
+
+``True`` for Oracle Solaris operating systems.
+
+Set to ``true`` when the host system is Oracle Solaris.
diff --git a/Modules/FindGit.cmake b/Modules/FindGit.cmake
index d18f965..95188ce 100644
--- a/Modules/FindGit.cmake
+++ b/Modules/FindGit.cmake
@@ -45,8 +45,10 @@ if(WIN32)
if(NOT CMAKE_GENERATOR MATCHES "MSYS")
set(git_names git.cmd git eg.cmd eg)
# GitHub search path for Windows
- set(github_path "$ENV{LOCALAPPDATA}/Github/PortableGit*/bin")
- file(GLOB github_path "${github_path}")
+ file(GLOB github_path
+ "$ENV{LOCALAPPDATA}/Github/PortableGit*/cmd"
+ "$ENV{LOCALAPPDATA}/Github/PortableGit*/bin"
+ )
# SourceTree search path for Windows
set(_git_sourcetree_path "$ENV{LOCALAPPDATA}/Atlassian/SourceTree/git_local/bin")
endif()
diff --git a/Modules/FindMPI.cmake b/Modules/FindMPI.cmake
index 0e406e0..fbc6795 100644
--- a/Modules/FindMPI.cmake
+++ b/Modules/FindMPI.cmake
@@ -357,10 +357,10 @@ function (interrogate_mpi_compiler lang try_libs)
endif()
# Extract linker paths from the link command line
- string(REGEX MATCHALL "(^| |-Wl,)-L([^\" ]+|\"[^\"]+\")" MPI_ALL_LINK_PATHS "${MPI_LINK_CMDLINE}")
+ string(REGEX MATCHALL "(^| |-Wl,)(-L|/LIBPATH:)([^\" ]+|\"[^\"]+\")" MPI_ALL_LINK_PATHS "${MPI_LINK_CMDLINE}")
set(MPI_LINK_PATH)
foreach(LPATH ${MPI_ALL_LINK_PATHS})
- string(REGEX REPLACE "^(| |-Wl,)-L" "" LPATH ${LPATH})
+ string(REGEX REPLACE "^(| |-Wl,)(-L|/LIBPATH:)" "" LPATH ${LPATH})
string(REPLACE "//" "/" LPATH ${LPATH})
list(APPEND MPI_LINK_PATH ${LPATH})
endforeach()
@@ -385,6 +385,13 @@ function (interrogate_mpi_compiler lang try_libs)
# Extract the set of libraries to link against from the link command
# line
string(REGEX MATCHALL "(^| )-l([^\" ]+|\"[^\"]+\")" MPI_LIBNAMES "${MPI_LINK_CMDLINE}")
+ if(WIN32)
+ # The intel wrappers on windows link against static versions of the MPI libraries.
+ # The static libraries are simply listed on the command line without -l.
+ # For instance: " icl ... impi.lib "
+ string(REGEX MATCHALL "(^| )([^\" ]+)\\.lib" tmp "${MPI_LINK_CMDLINE}")
+ list(APPEND MPI_LIBNAMES ${tmp})
+ endif()
# add the compiler implicit directories because some compilers
# such as the intel compiler have libraries that show up
@@ -399,6 +406,10 @@ function (interrogate_mpi_compiler lang try_libs)
# to link against in an MPI program
foreach(LIB ${MPI_LIBNAMES})
string(REGEX REPLACE "^ ?-l" "" LIB ${LIB})
+ if(WIN32)
+ string(REGEX REPLACE "\\.lib$" "" LIB ${LIB})
+ endif()
+ string(STRIP ${LIB} LIB)
# MPI_LIB is cached by find_library, but we don't want that. Clear it first.
set(MPI_LIB "MPI_LIB-NOTFOUND" CACHE FILEPATH "Cleared" FORCE)
find_library(MPI_LIB NAMES ${LIB} HINTS ${MPI_LINK_PATH})
diff --git a/Source/CMakeVersion.cmake b/Source/CMakeVersion.cmake
index 2a5b01a..af88d2c 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 5)
-set(CMake_VERSION_PATCH 20160415)
+set(CMake_VERSION_PATCH 20160418)
#set(CMake_VERSION_RC 1)
diff --git a/Source/QtDialog/CMakeSetup.cxx b/Source/QtDialog/CMakeSetup.cxx
index 4f93a77..cff4f6f 100644
--- a/Source/QtDialog/CMakeSetup.cxx
+++ b/Source/QtDialog/CMakeSetup.cxx
@@ -217,6 +217,7 @@ static bool cmOSXInstall(std::string const& dir, std::string const& tool)
return true;
}
}
+ cmSystemTools::MakeDirectory(dir);
if (symlink(tool.c_str(), link.c_str()) == 0)
{
std::cerr << "Linked: '" << link << "' -> '" << tool << "'\n";
diff --git a/Source/cmState.cxx b/Source/cmState.cxx
index be8e418..7670c10 100644
--- a/Source/cmState.cxx
+++ b/Source/cmState.cxx
@@ -1425,6 +1425,9 @@ void cmState::Snapshot::SetDefaultDefinitions()
this->SetDefinition("APPLE", "1");
this->SetDefinition("CMAKE_HOST_APPLE", "1");
#endif
+ #if defined(__sun__)
+ this->SetDefinition("CMAKE_HOST_SOLARIS", "1");
+ #endif
char temp[1024];
sprintf(temp, "%d", cmVersion::GetMinorVersion());