diff options
-rw-r--r-- | Help/variable/CMAKE_VS_PLATFORM_TOOLSET_HOST_ARCHITECTURE.rst | 2 | ||||
-rw-r--r-- | Help/variable/MSVC_VERSION.rst | 3 | ||||
-rw-r--r-- | Modules/CPackRPM.cmake | 10 | ||||
-rw-r--r-- | Modules/CSharpUtilities.cmake | 32 | ||||
-rw-r--r-- | Modules/FindBoost.cmake | 6 | ||||
-rw-r--r-- | Modules/FindGit.cmake | 16 | ||||
-rw-r--r-- | Modules/FindHDF5.cmake | 4 | ||||
-rw-r--r-- | Modules/FindVulkan.cmake | 1 | ||||
-rw-r--r-- | Source/cmGlobalVisualStudioGenerator.cxx | 4 | ||||
-rw-r--r-- | Source/cmLocalGenerator.cxx | 11 |
10 files changed, 60 insertions, 29 deletions
diff --git a/Help/variable/CMAKE_VS_PLATFORM_TOOLSET_HOST_ARCHITECTURE.rst b/Help/variable/CMAKE_VS_PLATFORM_TOOLSET_HOST_ARCHITECTURE.rst index 4c04e97..9b59c52 100644 --- a/Help/variable/CMAKE_VS_PLATFORM_TOOLSET_HOST_ARCHITECTURE.rst +++ b/Help/variable/CMAKE_VS_PLATFORM_TOOLSET_HOST_ARCHITECTURE.rst @@ -4,7 +4,7 @@ CMAKE_VS_PLATFORM_TOOLSET_HOST_ARCHITECTURE Visual Studio preferred tool architecture. The :ref:`Visual Studio Generators` for VS 2013 and above support optional -selection of a 64-bit toolchain on 64-bit hosts by specifying a ``host=64`` +selection of a 64-bit toolchain on 64-bit hosts by specifying a ``host=x64`` value in the :variable:`CMAKE_GENERATOR_TOOLSET` option. CMake provides the selected toolchain architecture preference in this variable (either ``x64`` or empty). diff --git a/Help/variable/MSVC_VERSION.rst b/Help/variable/MSVC_VERSION.rst index e2aff3c9..8932147 100644 --- a/Help/variable/MSVC_VERSION.rst +++ b/Help/variable/MSVC_VERSION.rst @@ -13,4 +13,5 @@ Known version numbers are:: 1600 = VS 10.0 1700 = VS 11.0 1800 = VS 12.0 - 1900 = VS 14.0, 15.0 + 1900 = VS 14.0 + 1910 = VS 15.0 diff --git a/Modules/CPackRPM.cmake b/Modules/CPackRPM.cmake index 722ee15..036875b 100644 --- a/Modules/CPackRPM.cmake +++ b/Modules/CPackRPM.cmake @@ -2141,7 +2141,9 @@ function(cpack_rpm_generate_package) if(CPACK_RPM_DEBUGINFO_PACKAGE) # only add current package files to debuginfo list if debuginfo # generation is enabled for current package - set(install_files_ "${CPACK_RPM_INSTALL_FILES}") + string(STRIP "${CPACK_RPM_INSTALL_FILES}" install_files_) + string(REPLACE "\n" ";" install_files_ "${install_files_}") + string(REPLACE "\"" "" install_files_ "${install_files_}") else() unset(install_files_) endif() @@ -2199,7 +2201,11 @@ function(cpack_rpm_generate_package) cpack_rpm_debugsymbol_check("${install_files_}" "${WDIR}") else() - cpack_rpm_debugsymbol_check("${CPACK_RPM_INSTALL_FILES}" "${WDIR}") + string(STRIP "${CPACK_RPM_INSTALL_FILES}" install_files_) + string(REPLACE "\n" ";" install_files_ "${install_files_}") + string(REPLACE "\"" "" install_files_ "${install_files_}") + + cpack_rpm_debugsymbol_check("${install_files_}" "${WDIR}") endif() if(TMP_DEBUGINFO_ADDITIONAL_SOURCES) diff --git a/Modules/CSharpUtilities.cmake b/Modules/CSharpUtilities.cmake index ddad85a..e9e1510 100644 --- a/Modules/CSharpUtilities.cmake +++ b/Modules/CSharpUtilities.cmake @@ -30,7 +30,7 @@ Main functions provided by the module .. command:: csharp_set_windows_forms_properties Sets source file properties for use of Windows Forms. Use this, if your CSharp - target uses windows forms:: + target uses Windows Forms:: csharp_set_windows_forms_properties([<file1> [<file2> [...]]]) @@ -59,8 +59,10 @@ Main functions provided by the module .. command:: csharp_set_designer_cs_properties - Sets source file properties for use of WPF/XAML. Use this, if your CSharp - target uses WPF/XAML:: + Sets source file properties of ``.Designer.cs`` files depending on + sibling filenames. Use this, if your CSharp target does **not** + use Windows Forms (for Windows Forms use + :command:`csharp_set_designer_cs_properties` instead):: csharp_set_designer_cs_properties([<file1> [<file2> [...]]]) @@ -88,10 +90,16 @@ Main functions provided by the module - VS_CSHARP_DesignTimeSharedInput "True" - VS_CSHARP_DependentUpon <settings-filename> +.. note:: + + Because the source file properties of the ``.Designer.cs`` file are set according + to the found matches and every match sets the **VS_CSHARP_DependentUpon** + property, there should only be one match for each ``Designer.cs`` file. + .. command:: csharp_set_xaml_cs_properties - Sets source file properties for use of WPF/XAML. Use this, if your - CSharp target uses WPF/XAML:: + Sets source file properties for use of Windows Presentation Foundation (WPF) and + XAML. Use this, if your CSharp target uses WPF/XAML:: csharp_set_xaml_cs_properties([<file1> [<file2> [...]]]) @@ -101,7 +109,7 @@ Main functions provided by the module ``.xaml``, and ``.xaml.cs`` extensions). In the list of all given files for all files ending with - ``.xaml.cs`` is searched. For every xaml file, a file + ``.xaml.cs`` is searched. For every *xaml-cs* file, a file with the same base name but extension ``.xaml`` is searched. If a match is found, the source file properties of the ``.xaml.cs`` file are set: @@ -120,10 +128,10 @@ Helper functions which are used by the above ones csharp_get_filename_keys(OUT [<file1> [<file2> [...]]]) ``OUT`` - name of the variable in which the list of keys is stored + Name of the variable in which the list of keys is stored ``<fileN>`` - filename as given to to CSharp target using :command:`add_library` + filename(s) as given to to CSharp target using :command:`add_library` or :command:`add_executable` In some way the function applies a canonicalization to the source names. @@ -146,14 +154,14 @@ Helper functions which are used by the above ones .. command:: csharp_get_filename_key_base - Returns the full filepath and name **withouth** extension of a key. + Returns the full filepath and name **without** extension of a key. KEY is expected to be a key from csharp_get_filename_keys. In BASE the value of KEY without the file extension is returned:: csharp_get_filename_key_base(BASE KEY) ``BASE`` - The computed "base" of ``KEY``. + Name of the variable with the computed "base" of ``KEY``. ``KEY`` The key of which the base will be computed. Expected to be a @@ -167,10 +175,10 @@ Helper functions which are used by the above ones csharp_get_dependentupon_name(NAME FILE) ``NAME`` - result value + Name of the variable with the result value ``FILE`` - filename to convert to DependentUpon value + Filename to convert to ``<DependentUpon>`` value Actually this is only the filename without any path given at the moment. diff --git a/Modules/FindBoost.cmake b/Modules/FindBoost.cmake index e795aad..7e42c10 100644 --- a/Modules/FindBoost.cmake +++ b/Modules/FindBoost.cmake @@ -428,7 +428,7 @@ function(_Boost_GUESS_COMPILER_PREFIX _ret) set(_boost_COMPILER "-ghs") elseif("x${CMAKE_CXX_COMPILER_ID}" STREQUAL "xMSVC") if (NOT CMAKE_CXX_COMPILER_VERSION VERSION_LESS 19.10) - set(_boost_COMPILER "-vc150") + set(_boost_COMPILER "-vc1410") elseif (NOT CMAKE_CXX_COMPILER_VERSION VERSION_LESS 19) set(_boost_COMPILER "-vc140") elseif(NOT CMAKE_CXX_COMPILER_VERSION VERSION_LESS 18) @@ -742,7 +742,7 @@ function(_Boost_COMPONENT_DEPENDENCIES component _ret) set(_Boost_THREAD_DEPENDENCIES chrono system date_time atomic) set(_Boost_WAVE_DEPENDENCIES filesystem system serialization thread chrono date_time atomic) set(_Boost_WSERIALIZATION_DEPENDENCIES serialization) - elseif(NOT Boost_VERSION VERSION_LESS 106300 AND Boost_VERSION VERSION_LESS 106400) + elseif(NOT Boost_VERSION VERSION_LESS 106300 AND Boost_VERSION VERSION_LESS 106500) set(_Boost_CHRONO_DEPENDENCIES system) set(_Boost_CONTEXT_DEPENDENCIES thread chrono system date_time) set(_Boost_COROUTINE_DEPENDENCIES context system) @@ -963,7 +963,7 @@ else() # _Boost_COMPONENT_HEADERS. See the instructions at the top of # _Boost_COMPONENT_DEPENDENCIES. set(_Boost_KNOWN_VERSIONS ${Boost_ADDITIONAL_VERSIONS} - "1.63.0" "1.63" "1.62.0" "1.62" "1.61.0" "1.61" "1.60.0" "1.60" + "1.64.0" "1.64" "1.63.0" "1.63" "1.62.0" "1.62" "1.61.0" "1.61" "1.60.0" "1.60" "1.59.0" "1.59" "1.58.0" "1.58" "1.57.0" "1.57" "1.56.0" "1.56" "1.55.0" "1.55" "1.54.0" "1.54" "1.53.0" "1.53" "1.52.0" "1.52" "1.51.0" "1.51" "1.50.0" "1.50" "1.49.0" "1.49" "1.48.0" "1.48" "1.47.0" "1.47" "1.46.1" diff --git a/Modules/FindGit.cmake b/Modules/FindGit.cmake index b830c08..fae31eb 100644 --- a/Modules/FindGit.cmake +++ b/Modules/FindGit.cmake @@ -43,12 +43,26 @@ if(CMAKE_HOST_WIN32) endif() endif() +# First search the PATH and specific locations. find_program(GIT_EXECUTABLE NAMES ${git_names} PATHS ${github_path} ${_git_sourcetree_path} - PATH_SUFFIXES Git/cmd Git/bin DOC "Git command line client" ) + +if(CMAKE_HOST_WIN32) + # Now look for installations in Git/ directories under typical installation + # prefixes on Windows. Exclude PATH from this search because VS 2017's + # command prompt happens to have a PATH entry with a Git/ subdirectory + # containing a minimal git not meant for general use. + find_program(GIT_EXECUTABLE + NAMES ${git_names} + PATH_SUFFIXES Git/cmd Git/bin + NO_SYSTEM_ENVIRONMENT_PATH + DOC "Git command line client" + ) +endif() + mark_as_advanced(GIT_EXECUTABLE) unset(git_names) diff --git a/Modules/FindHDF5.cmake b/Modules/FindHDF5.cmake index 65a825d..24a356c 100644 --- a/Modules/FindHDF5.cmake +++ b/Modules/FindHDF5.cmake @@ -352,7 +352,7 @@ macro( _HDF5_parse_compile_line list(APPEND ${include_paths} "${CMAKE_MATCH_1}") elseif("${arg}" MATCHES "^-D(.*)$") # compile definition - list(APPEND ${definitions} "${CMAKE_MATCH_1}") + list(APPEND ${definitions} "-D${CMAKE_MATCH_1}") elseif("${arg}" MATCHES "^-L(.*)$") # library search path list(APPEND ${library_paths} "${CMAKE_MATCH_1}") @@ -520,7 +520,7 @@ if(NOT HDF5_FOUND) foreach(L IN LISTS HDF5_${__lang}_LIBRARY_NAMES) set(_HDF5_SEARCH_NAMES_LOCAL) - if(x"${L}" MATCHES "hdf5") + if("x${L}" MATCHES "hdf5") # hdf5 library set(_HDF5_SEARCH_OPTS_LOCAL ${_HDF5_SEARCH_OPTS}) if(UNIX AND HDF5_USE_STATIC_LIBRARIES) diff --git a/Modules/FindVulkan.cmake b/Modules/FindVulkan.cmake index 0be9f97..1f4c8ad 100644 --- a/Modules/FindVulkan.cmake +++ b/Modules/FindVulkan.cmake @@ -48,6 +48,7 @@ if(WIN32) PATHS "$ENV{VULKAN_SDK}/Lib32" "$ENV{VULKAN_SDK}/Bin32" + NO_SYSTEM_ENVIRONMENT_PATH ) endif() else() diff --git a/Source/cmGlobalVisualStudioGenerator.cxx b/Source/cmGlobalVisualStudioGenerator.cxx index cc2536c..ced0c26 100644 --- a/Source/cmGlobalVisualStudioGenerator.cxx +++ b/Source/cmGlobalVisualStudioGenerator.cxx @@ -750,6 +750,10 @@ bool cmGlobalVisualStudioGenerator::TargetIsCSharpOnly( if (!gt->GetConfigCommonSourceFiles(sources)) { return false; } + // Only "real" targets are allowed to be C# targets. + if (gt->Target->GetType() > cmStateEnums::OBJECT_LIBRARY) { + return false; + } } gt->GetLanguages(languages, ""); if (languages.size() == 1) { diff --git a/Source/cmLocalGenerator.cxx b/Source/cmLocalGenerator.cxx index 44c390c..7077bbb 100644 --- a/Source/cmLocalGenerator.cxx +++ b/Source/cmLocalGenerator.cxx @@ -214,14 +214,7 @@ void cmLocalGenerator::TraceDependencies() void cmLocalGenerator::GenerateTestFiles() { - std::string file = this->StateSnapshot.GetDirectory().GetCurrentBinary(); - file += "/"; - file += "CTestTestfile.cmake"; - if (!this->Makefile->IsOn("CMAKE_TESTING_ENABLED")) { - if (cmSystemTools::FileExists(file)) { - cmSystemTools::RemoveFile(file); - } return; } @@ -230,6 +223,10 @@ void cmLocalGenerator::GenerateTestFiles() const std::string& config = this->Makefile->GetConfigurations(configurationTypes, false); + std::string file = this->StateSnapshot.GetDirectory().GetCurrentBinary(); + file += "/"; + file += "CTestTestfile.cmake"; + cmGeneratedFileStream fout(file.c_str()); fout.SetCopyIfDifferent(true); |