diff options
-rw-r--r-- | Help/release/3.10.rst | 29 | ||||
-rw-r--r-- | Help/release/dev/0-sample-topic.rst | 7 | ||||
-rw-r--r-- | Help/release/index.rst | 2 | ||||
-rw-r--r-- | Modules/FindJava.cmake | 67 | ||||
-rw-r--r-- | Modules/FindOpenMP.cmake | 15 | ||||
-rw-r--r-- | Source/CMakeVersion.cmake | 6 | ||||
-rw-r--r-- | Source/CPack/cmCPackPackageMakerGenerator.cxx | 4 | ||||
-rw-r--r-- | Source/cmGeneratorTarget.cxx | 2 | ||||
-rw-r--r-- | Source/cmInstallCommandArguments.cxx | 6 | ||||
-rw-r--r-- | Source/cmProcessTools.cxx | 2 | ||||
-rw-r--r-- | Source/cmcmd.cxx | 4 | ||||
-rw-r--r-- | Utilities/Release/upload_release.cmake | 2 |
12 files changed, 79 insertions, 67 deletions
diff --git a/Help/release/3.10.rst b/Help/release/3.10.rst index 2e32401..35fe602 100644 --- a/Help/release/3.10.rst +++ b/Help/release/3.10.rst @@ -161,25 +161,16 @@ Autogen * When using :prop_tgt:`AUTOMOC`, CMake searches for the strings ``Q_OBJECT``, ``Q_GADGET`` or ``Q_NAMESPACE`` in a source file to determine if it needs - to be ``moc`` processed. The new variable - :variable:`CMAKE_AUTOMOC_MACRO_NAMES` allows to register additional - strings (macro names) so search for. - -* When using :prop_tgt:`AUTOMOC`, CMake searches for the strings ``Q_OBJECT``, - ``Q_GADGET`` or ``Q_NAMESPACE`` in a source file to determine if it needs - to be ``moc`` processed. The new target property - :prop_tgt:`AUTOMOC_MACRO_NAMES` allows to register additional strings - (macro names) so search for. - -* When using :prop_tgt:`AUTOMOC`, the new variable - :variable:`CMAKE_AUTOMOC_COMPILER_PREDEFINES` allows to default - enable or disable the generation of the compiler pre definitions file + to be ``moc`` processed. The new :variable:`CMAKE_AUTOMOC_MACRO_NAMES` + variable and :prop_tgt:`AUTOMOC_MACRO_NAMES` target property may be set + to register additional strings (macro names) to search for. + +* When using :prop_tgt:`AUTOMOC`, the new + :variable:`CMAKE_AUTOMOC_COMPILER_PREDEFINES` variable and + :prop_tgt:`AUTOMOC_COMPILER_PREDEFINES` target property specify whether + to enable or disable the generation of the compiler pre definitions file ``moc_predefs.h``. -* When using :prop_tgt:`AUTOMOC`, the new boolean target property - :prop_tgt:`AUTOMOC_COMPILER_PREDEFINES` allows to enable or disable the - generation of the compiler pre definitions file ``moc_predefs.h``. - CTest ----- @@ -218,8 +209,8 @@ CPack * The :module:`CPackIFW` module gained new :variable:`CPACK_IFW_REPOSITORIES_DIRECTORIES` variable to specify additional repositories dirs that will be used to resolve and - repack dependent components. This feature available only - since QtIFW 3.1. + repack dependent components. This feature is only available when + using QtIFW 3.1 or later. * Modules :module:`CPackRPM` and :module:`CPackDeb` learned to set package epoch version. diff --git a/Help/release/dev/0-sample-topic.rst b/Help/release/dev/0-sample-topic.rst deleted file mode 100644 index e4cc01e..0000000 --- a/Help/release/dev/0-sample-topic.rst +++ /dev/null @@ -1,7 +0,0 @@ -0-sample-topic --------------- - -* This is a sample release note for the change in a topic. - Developers should add similar notes for each topic branch - making a noteworthy change. Each document should be named - and titled to match the topic name to avoid merge conflicts. diff --git a/Help/release/index.rst b/Help/release/index.rst index 6472b51..0c7572f 100644 --- a/Help/release/index.rst +++ b/Help/release/index.rst @@ -7,8 +7,6 @@ CMake Release Notes This file should include the adjacent "dev.txt" file in development versions but not in release versions. -.. include:: dev.txt - Releases ======== diff --git a/Modules/FindJava.cmake b/Modules/FindJava.cmake index eb2242b..b913e17 100644 --- a/Modules/FindJava.cmake +++ b/Modules/FindJava.cmake @@ -39,7 +39,7 @@ # Java_VERSION_MINOR = The minor version of the package found. # Java_VERSION_PATCH = The patch version of the package found. # Java_VERSION_TWEAK = The tweak version of the package found (after '_') -# Java_VERSION = This is set to: $major.$minor.$patch(.$tweak) +# Java_VERSION = This is set to: $major[.$minor[.$patch[.$tweak]]] # # # @@ -133,39 +133,56 @@ if(Java_JAVA_EXECUTABLE) message( STATUS "Warning, could not run java -version") endif() else() - # extract major/minor version and patch level from "java -version" output - # Tested on linux using - # 1. Sun / Sun OEM - # 2. OpenJDK 1.6 - # 3. GCJ 1.5 - # 4. Kaffe 1.4.2 - # 5. OpenJDK 1.7.x on OpenBSD - if(var MATCHES "java version \"([0-9]+\\.[0-9]+\\.[0-9_.]+.*)\"") - # This is most likely Sun / OpenJDK, or maybe GCJ-java compat layer + # Extract version components (up to 4 levels) from "java -version" output. + set(_java_version_regex [[(([0-9]+)(\.([0-9]+)(\.([0-9]+)(_([0-9]+))?)?)?.*)]]) + if(var MATCHES "java version \"${_java_version_regex}\"") + # Sun, GCJ, older OpenJDK set(Java_VERSION_STRING "${CMAKE_MATCH_1}") + set(Java_VERSION_MAJOR "${CMAKE_MATCH_2}") + set(Java_VERSION_MINOR "${CMAKE_MATCH_4}") + set(Java_VERSION_PATCH "${CMAKE_MATCH_6}") + set(Java_VERSION_TWEAK "${CMAKE_MATCH_8}") + elseif(var MATCHES "openjdk version \"${_java_version_regex}\"") + # OpenJDK + set(Java_VERSION_STRING "${CMAKE_MATCH_1}") + set(Java_VERSION_MAJOR "${CMAKE_MATCH_2}") + set(Java_VERSION_MINOR "${CMAKE_MATCH_4}") + set(Java_VERSION_PATCH "${CMAKE_MATCH_6}") + set(Java_VERSION_TWEAK "${CMAKE_MATCH_8}") elseif(var MATCHES "openjdk version \"([0-9]+)-[A-Za-z]+\"") # OpenJDK 9 early access builds or locally built set(Java_VERSION_STRING "1.${CMAKE_MATCH_1}.0") - elseif(var MATCHES "java full version \"kaffe-([0-9]+\\.[0-9]+\\.[0-9_]+)\"") + set(Java_VERSION_MAJOR "1") + set(Java_VERSION_MINOR "${CMAKE_MATCH_1}") + set(Java_VERSION_PATCH "0") + set(Java_VERSION_TWEAK "") + elseif(var MATCHES "java full version \"kaffe-${_java_version_regex}\"") # Kaffe style set(Java_VERSION_STRING "${CMAKE_MATCH_1}") - elseif(var MATCHES "openjdk version \"([0-9]+\\.[0-9]+\\.[0-9_]+.*)\"") - # OpenJDK ver 1.7.x on OpenBSD - set(Java_VERSION_STRING "${CMAKE_MATCH_1}") + set(Java_VERSION_MAJOR "${CMAKE_MATCH_2}") + set(Java_VERSION_MINOR "${CMAKE_MATCH_4}") + set(Java_VERSION_PATCH "${CMAKE_MATCH_6}") + set(Java_VERSION_TWEAK "${CMAKE_MATCH_8}") else() if(NOT Java_FIND_QUIETLY) - message(WARNING "regex not supported: ${var}. Please report") + string(REPLACE "\n" "\n " ver_msg "\n${var}") + message(WARNING "Java version not recognized:${ver_msg}\nPlease report.") endif() + set(Java_VERSION_STRING "") + set(Java_VERSION_MAJOR "") + set(Java_VERSION_MINOR "") + set(Java_VERSION_PATCH "") + set(Java_VERSION_TWEAK "") endif() - string( REGEX REPLACE "([0-9]+).*" "\\1" Java_VERSION_MAJOR "${Java_VERSION_STRING}" ) - string( REGEX REPLACE "[0-9]+\\.([0-9]+).*" "\\1" Java_VERSION_MINOR "${Java_VERSION_STRING}" ) - string( REGEX REPLACE "[0-9]+\\.[0-9]+\\.([0-9]+).*" "\\1" Java_VERSION_PATCH "${Java_VERSION_STRING}" ) - # warning tweak version can be empty: - string( REGEX REPLACE "[0-9]+\\.[0-9]+\\.[0-9]+[_\\.]?([0-9]*).*$" "\\1" Java_VERSION_TWEAK "${Java_VERSION_STRING}" ) - if( Java_VERSION_TWEAK STREQUAL "" ) # check case where tweak is not defined - set(Java_VERSION ${Java_VERSION_MAJOR}.${Java_VERSION_MINOR}.${Java_VERSION_PATCH}) - else() - set(Java_VERSION ${Java_VERSION_MAJOR}.${Java_VERSION_MINOR}.${Java_VERSION_PATCH}.${Java_VERSION_TWEAK}) + set(Java_VERSION "${Java_VERSION_MAJOR}") + if(NOT "x${Java_VERSION}" STREQUAL "x") + foreach(c MINOR PATCH TWEAK) + if(NOT "x${Java_VERSION_${c}}" STREQUAL "x") + string(APPEND Java_VERSION ".${Java_VERSION_${c}}") + else() + break() + endif() + endforeach() endif() endif() @@ -254,7 +271,7 @@ else() find_package_handle_standard_args(Java REQUIRED_VARS Java_JAVA_EXECUTABLE Java_JAR_EXECUTABLE Java_JAVAC_EXECUTABLE Java_JAVAH_EXECUTABLE Java_JAVADOC_EXECUTABLE - VERSION_VAR Java_VERSION + VERSION_VAR Java_VERSION_STRING ) endif() diff --git a/Modules/FindOpenMP.cmake b/Modules/FindOpenMP.cmake index 272f4dc..1d6a039 100644 --- a/Modules/FindOpenMP.cmake +++ b/Modules/FindOpenMP.cmake @@ -166,14 +166,23 @@ function(_OPENMP_GET_FLAGS LANG FLAG_MODE OPENMP_FLAG_VAR OPENMP_LIB_NAMES_VAR) _OPENMP_FLAG_CANDIDATES("${LANG}") _OPENMP_WRITE_SOURCE_FILE("${LANG}" "TEST_SOURCE" OpenMPTryFlag _OPENMP_TEST_SRC) + unset(OpenMP_VERBOSE_COMPILE_OPTIONS) + separate_arguments(OpenMP_VERBOSE_OPTIONS NATIVE_COMMAND "${CMAKE_${LANG}_VERBOSE_FLAG}") + foreach(_VERBOSE_OPTION IN LISTS OpenMP_VERBOSE_OPTIONS) + if(NOT _VERBOSE_OPTION MATCHES "^-Wl,") + list(APPEND OpenMP_VERBOSE_COMPILE_OPTIONS ${_VERBOSE_OPTION}) + endif() + endforeach() + foreach(OPENMP_FLAG IN LISTS OpenMP_${LANG}_FLAG_CANDIDATES) set(OPENMP_FLAGS_TEST "${OPENMP_FLAG}") - if(CMAKE_${LANG}_VERBOSE_FLAG) - string(APPEND OPENMP_FLAGS_TEST " ${CMAKE_${LANG}_VERBOSE_FLAG}") + if(OpenMP_VERBOSE_COMPILE_OPTIONS) + string(APPEND OPENMP_FLAGS_TEST " ${OpenMP_VERBOSE_COMPILE_OPTIONS}") endif() string(REGEX REPLACE "[-/=+]" "" OPENMP_PLAIN_FLAG "${OPENMP_FLAG}") try_compile( OpenMP_COMPILE_RESULT_${FLAG_MODE}_${OPENMP_PLAIN_FLAG} ${CMAKE_BINARY_DIR} ${_OPENMP_TEST_SRC} CMAKE_FLAGS "-DCOMPILE_DEFINITIONS:STRING=${OPENMP_FLAGS_TEST}" + LINK_LIBRARIES ${CMAKE_${LANG}_VERBOSE_FLAG} OUTPUT_VARIABLE OpenMP_TRY_COMPILE_OUTPUT ) @@ -230,6 +239,8 @@ function(_OPENMP_GET_FLAGS LANG FLAG_MODE OPENMP_FLAG_VAR OPENMP_LIB_NAMES_VAR) set("${OPENMP_LIB_NAMES_VAR}" "NOTFOUND" PARENT_SCOPE) set("${OPENMP_FLAG_VAR}" "NOTFOUND" PARENT_SCOPE) endforeach() + + unset(OpenMP_VERBOSE_COMPILE_OPTIONS) endfunction() set(OpenMP_C_CXX_CHECK_VERSION_SOURCE diff --git a/Source/CMakeVersion.cmake b/Source/CMakeVersion.cmake index 47d8025..4ce6575 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 9) -set(CMake_VERSION_PATCH 20171005) -#set(CMake_VERSION_RC 1) +set(CMake_VERSION_MINOR 10) +set(CMake_VERSION_PATCH 0) +set(CMake_VERSION_RC 1) diff --git a/Source/CPack/cmCPackPackageMakerGenerator.cxx b/Source/CPack/cmCPackPackageMakerGenerator.cxx index 0299279..dbcb022 100644 --- a/Source/CPack/cmCPackPackageMakerGenerator.cxx +++ b/Source/CPack/cmCPackPackageMakerGenerator.cxx @@ -288,8 +288,8 @@ int cmCPackPackageMakerGenerator::PackageFiles() tmpFile += "/hdiutilOutput.log"; std::ostringstream dmgCmd; dmgCmd << "\"" << this->GetOption("CPACK_INSTALLER_PROGRAM_DISK_IMAGE") - << "\" create -ov -format UDZO -srcfolder \"" << packageDirFileName - << "\" \"" << packageFileNames[0] << "\""; + << "\" create -ov -fs HFS+ -format UDZO -srcfolder \"" + << packageDirFileName << "\" \"" << packageFileNames[0] << "\""; std::string output; int retVal = 1; int numTries = 10; diff --git a/Source/cmGeneratorTarget.cxx b/Source/cmGeneratorTarget.cxx index ea41204e..103d034 100644 --- a/Source/cmGeneratorTarget.cxx +++ b/Source/cmGeneratorTarget.cxx @@ -4654,7 +4654,7 @@ void cmGeneratorTarget::ComputeLinkInterfaceLibraries( "INTERFACE_LINK_LIBRARIES:\n" " " << newExplicitLibraries << "\n" << linkIfaceProp << ":\n" - " " << (explicitLibraries ? explicitLibraries : "(empty)") << "\n"; + " " << explicitLibraries << "\n"; /* clang-format on */ this->LocalGenerator->IssueMessage(cmake::AUTHOR_WARNING, w.str()); this->PolicyWarnedCMP0022 = true; diff --git a/Source/cmInstallCommandArguments.cxx b/Source/cmInstallCommandArguments.cxx index ff6420d..12abac8 100644 --- a/Source/cmInstallCommandArguments.cxx +++ b/Source/cmInstallCommandArguments.cxx @@ -39,7 +39,7 @@ const std::string& cmInstallCommandArguments::GetDestination() const if (this->GenericArguments != nullptr) { return this->GenericArguments->GetDestination(); } - return this->EmptyString; + return EmptyString; } const std::string& cmInstallCommandArguments::GetComponent() const @@ -65,7 +65,7 @@ const std::string& cmInstallCommandArguments::GetRename() const if (this->GenericArguments != nullptr) { return this->GenericArguments->GetRename(); } - return this->EmptyString; + return EmptyString; } const std::string& cmInstallCommandArguments::GetPermissions() const @@ -76,7 +76,7 @@ const std::string& cmInstallCommandArguments::GetPermissions() const if (this->GenericArguments != nullptr) { return this->GenericArguments->GetPermissions(); } - return this->EmptyString; + return EmptyString; } bool cmInstallCommandArguments::GetOptional() const diff --git a/Source/cmProcessTools.cxx b/Source/cmProcessTools.cxx index 05b1b00..7ab1fa3 100644 --- a/Source/cmProcessTools.cxx +++ b/Source/cmProcessTools.cxx @@ -38,7 +38,7 @@ void cmProcessTools::RunProcess(struct cmsysProcess_s* cp, OutputParser* out, if (err) { processOutput.DecodeText(std::string(), strdata, 2); if (!strdata.empty()) { - out->Process(strdata.c_str(), int(strdata.size())); + err->Process(strdata.c_str(), int(strdata.size())); } } cmsysProcess_WaitForExit(cp, nullptr); diff --git a/Source/cmcmd.cxx b/Source/cmcmd.cxx index c0c7d03..ed507fd 100644 --- a/Source/cmcmd.cxx +++ b/Source/cmcmd.cxx @@ -1556,11 +1556,13 @@ struct NumberFormatter std::ostream& operator<<(std::ostream& stream, NumberFormatter const& formatter) { + auto const& flags = stream.flags(); if (formatter.Format == FORMAT_DECIMAL) { - stream << formatter.Value; + stream << std::dec << formatter.Value; } else { stream << "0x" << std::hex << formatter.Value; } + stream.flags(flags); return stream; } static bool RunCommand(const char* comment, std::vector<std::string>& command, diff --git a/Utilities/Release/upload_release.cmake b/Utilities/Release/upload_release.cmake index 5b2cc57..3c83957 100644 --- a/Utilities/Release/upload_release.cmake +++ b/Utilities/Release/upload_release.cmake @@ -1,6 +1,6 @@ set(CTEST_RUN_CURRENT_SCRIPT 0) if(NOT VERSION) - set(VERSION 3.9) + set(VERSION 3.10) endif() if(NOT DEFINED PROJECT_PREFIX) set(PROJECT_PREFIX cmake-${VERSION}) |