summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--Help/manual/cmake-qt.7.rst9
-rw-r--r--Help/prop_tgt/AUTOMOC.rst7
-rw-r--r--Help/prop_tgt/AUTOUIC.rst3
-rw-r--r--Help/release/3.9.rst5
-rw-r--r--Help/release/dev/0-sample-topic.rst7
-rw-r--r--Help/release/index.rst2
-rw-r--r--Modules/FindDoxygen.cmake42
-rw-r--r--Source/CMakeVersion.cmake6
-rw-r--r--Source/Checks/cm_cxx_features.cmake4
-rw-r--r--Source/cmQtAutoGeneratorInitializer.cxx4
-rw-r--r--Utilities/Release/upload_release.cmake2
11 files changed, 41 insertions, 50 deletions
diff --git a/Help/manual/cmake-qt.7.rst b/Help/manual/cmake-qt.7.rst
index 9f3968c..00d6e6e 100644
--- a/Help/manual/cmake-qt.7.rst
+++ b/Help/manual/cmake-qt.7.rst
@@ -72,9 +72,6 @@ Included ``moc_*.cpp`` and ``*.moc`` files will be generated in the
automatically added to the target's :prop_tgt:`INCLUDE_DIRECTORIES`.
(This differs from CMake 3.7 and below; see their documentation for details.)
-* For multi configuration generators, except Xcode, the include directory is
- ``<AUTOGEN_BUILD_DIR>/include_<CONFIG>``.
-
* See :prop_tgt:`AUTOGEN_BUILD_DIR`.
Not included ``moc_<basename>.cpp`` files will be generated in custom
@@ -82,9 +79,6 @@ folders to avoid name collisions and included in a separate
``<AUTOGEN_BUILD_DIR>/mocs_compilation.cpp`` file which is compiled
into the target.
-* For multi configuration generators, except Xcode, the file is
- ``<AUTOGEN_BUILD_DIR>/mocs_compilation_<CONFIG>.cpp``.
-
* See :prop_tgt:`AUTOGEN_BUILD_DIR`.
The ``moc`` command line will consume the :prop_tgt:`COMPILE_DEFINITIONS` and
@@ -123,9 +117,6 @@ The generated generated ``ui_*.h`` files are placed in the
automatically added to the target's :prop_tgt:`INCLUDE_DIRECTORIES`.
(This differs from CMake 3.7 and below; see their documentation for details.)
-* For multi configuration generators, except Xcode, the include directory is
- ``<AUTOGEN_BUILD_DIR>/include_<CONFIG>``.
-
* See :prop_tgt:`AUTOGEN_BUILD_DIR`.
The :prop_tgt:`AUTOUIC` target property may be pre-set for all following
diff --git a/Help/prop_tgt/AUTOMOC.rst b/Help/prop_tgt/AUTOMOC.rst
index 81eff82..0171d20 100644
--- a/Help/prop_tgt/AUTOMOC.rst
+++ b/Help/prop_tgt/AUTOMOC.rst
@@ -20,9 +20,6 @@ source files at build time and invoke moc accordingly.
This allows the compiler to find the included ``moc_<basename>.cpp`` file
regardless of the location the original source.
- * For multi configuration generators, except Xcode, the include directory is
- ``<AUTOGEN_BUILD_DIR>/include_<CONFIG>``.
-
* See :prop_tgt:`AUTOGEN_BUILD_DIR`.
* If an ``#include`` statement like ``#include "<basename>.moc"`` is found,
@@ -36,10 +33,6 @@ source files at build time and invoke moc accordingly.
``<AUTOGEN_BUILD_DIR>/mocs_compilation.cpp`` file,
which is compiled as part of the target.
- * For multi configuration generators, except Xcode, the file names are
- ``moc_<basename>_<CONFIG>.cpp`` and
- ``<AUTOGEN_BUILD_DIR>/mocs_compilation_<CONFIG>.cpp``.
-
* The custom directories with checksum
based names help to avoid name collisions for moc files with the same
``<basename>``.
diff --git a/Help/prop_tgt/AUTOUIC.rst b/Help/prop_tgt/AUTOUIC.rst
index 4a08072..6493bbc 100644
--- a/Help/prop_tgt/AUTOUIC.rst
+++ b/Help/prop_tgt/AUTOUIC.rst
@@ -17,9 +17,6 @@ optional :prop_tgt:`AUTOUIC_SEARCH_PATHS` of the target.
``<AUTOGEN_BUILD_DIR>/include``,
which is automatically added to the target's :prop_tgt:`INCLUDE_DIRECTORIES`.
-* For multi configuration generators, except Xcode, the include directory is
- ``<AUTOGEN_BUILD_DIR>/include_<CONFIG>``.
-
* See :prop_tgt:`AUTOGEN_BUILD_DIR`.
This property is initialized by the value of the :variable:`CMAKE_AUTOUIC`
diff --git a/Help/release/3.9.rst b/Help/release/3.9.rst
index 5169aa4..65bcd2e 100644
--- a/Help/release/3.9.rst
+++ b/Help/release/3.9.rst
@@ -141,6 +141,11 @@ Modules
check whether interprocedural optimization (IPO) is supported by
the current toolchain and CMake version.
+* The :module:`CMakeFindDependencyMacro` module ``find_dependency`` macro
+ now forwards all arguments to the underlying :command:`find_package`
+ call. Existing uses will continue to function as before, but callers can
+ now access the full suite of arguments that ``find_package`` accepts.
+
* The :module:`FeatureSummary` module :command:`feature_summary` command now
accepts the new ``DEFAULT_DESCRIPTION`` option that will print the default
title for the selected package type.
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 7f481a3..8222d0c 100644
--- a/Help/release/index.rst
+++ b/Help/release/index.rst
@@ -5,8 +5,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/FindDoxygen.cmake b/Modules/FindDoxygen.cmake
index 76456a0..0d9e161 100644
--- a/Modules/FindDoxygen.cmake
+++ b/Modules/FindDoxygen.cmake
@@ -396,10 +396,12 @@ macro(_Doxygen_find_doxygen)
endif()
# Create an imported target for Doxygen
- add_executable(Doxygen::doxygen IMPORTED GLOBAL)
- set_target_properties(Doxygen::doxygen PROPERTIES
- IMPORTED_LOCATION "${DOXYGEN_EXECUTABLE}"
- )
+ if(NOT TARGET Doxygen::doxygen)
+ add_executable(Doxygen::doxygen IMPORTED GLOBAL)
+ set_target_properties(Doxygen::doxygen PROPERTIES
+ IMPORTED_LOCATION "${DOXYGEN_EXECUTABLE}"
+ )
+ endif()
endif()
endmacro()
@@ -429,10 +431,12 @@ macro(_Doxygen_find_dia)
endif()
# Create an imported target for component
- add_executable(Doxygen::dia IMPORTED GLOBAL)
- set_target_properties(Doxygen::dia PROPERTIES
- IMPORTED_LOCATION "${DOXYGEN_DIA_EXECUTABLE}"
- )
+ if(NOT TARGET Doxygen::dia)
+ add_executable(Doxygen::dia IMPORTED GLOBAL)
+ set_target_properties(Doxygen::dia PROPERTIES
+ IMPORTED_LOCATION "${DOXYGEN_DIA_EXECUTABLE}"
+ )
+ endif()
endif()
unset(_x86)
@@ -474,10 +478,12 @@ macro(_Doxygen_find_dot)
endif()
# Create an imported target for component
- add_executable(Doxygen::dot IMPORTED GLOBAL)
- set_target_properties(Doxygen::dot PROPERTIES
- IMPORTED_LOCATION "${DOXYGEN_DOT_EXECUTABLE}"
- )
+ if(NOT TARGET Doxygen::dot)
+ add_executable(Doxygen::dot IMPORTED GLOBAL)
+ set_target_properties(Doxygen::dot PROPERTIES
+ IMPORTED_LOCATION "${DOXYGEN_DOT_EXECUTABLE}"
+ )
+ endif()
endif()
unset(_Doxygen_GRAPHVIZ_BIN_DIRS)
@@ -510,10 +516,12 @@ macro(_Doxygen_find_mscgen)
endif()
# Create an imported target for component
- add_executable(Doxygen::mscgen IMPORTED GLOBAL)
- set_target_properties(Doxygen::mscgen PROPERTIES
- IMPORTED_LOCATION "${DOXYGEN_MSCGEN_EXECUTABLE}"
- )
+ if(NOT TARGET Doxygen::mscgen)
+ add_executable(Doxygen::mscgen IMPORTED GLOBAL)
+ set_target_properties(Doxygen::mscgen PROPERTIES
+ IMPORTED_LOCATION "${DOXYGEN_MSCGEN_EXECUTABLE}"
+ )
+ endif()
endif()
unset(_x86)
@@ -586,7 +594,7 @@ else()
set(DOXYGEN_FOUND "NO")
endif()
if(_Doxygen_keep_backward_compat)
- if(DOXYGEN_DOT_FOUND)
+ if(Doxygen_dot_FOUND)
set(DOXYGEN_DOT_FOUND "YES")
else()
set(DOXYGEN_DOT_FOUND "NO")
diff --git a/Source/CMakeVersion.cmake b/Source/CMakeVersion.cmake
index 8983057..7165003 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 8)
-set(CMake_VERSION_PATCH 20170605)
-#set(CMake_VERSION_RC 1)
+set(CMake_VERSION_MINOR 9)
+set(CMake_VERSION_PATCH 0)
+set(CMake_VERSION_RC 2)
diff --git a/Source/Checks/cm_cxx_features.cmake b/Source/Checks/cm_cxx_features.cmake
index c3835c3..3b08025 100644
--- a/Source/Checks/cm_cxx_features.cmake
+++ b/Source/Checks/cm_cxx_features.cmake
@@ -14,8 +14,10 @@ function(cm_check_cxx_feature name)
CMAKE_FLAGS ${maybe_cxx_standard}
OUTPUT_VARIABLE OUTPUT
)
+ # Filter out MSBuild output that looks like a warning.
+ string(REGEX REPLACE " +0 Warning\\(s\\)" "" check_output "${OUTPUT}")
# If using the feature causes warnings, treat it as broken/unavailable.
- if(OUTPUT MATCHES "[Ww]arning")
+ if(check_output MATCHES "[Ww]arning")
set(CMake_HAVE_CXX_${FEATURE} OFF CACHE INTERNAL "TRY_COMPILE" FORCE)
endif()
if(CMake_HAVE_CXX_${FEATURE})
diff --git a/Source/cmQtAutoGeneratorInitializer.cxx b/Source/cmQtAutoGeneratorInitializer.cxx
index a39c10b..6924ba2 100644
--- a/Source/cmQtAutoGeneratorInitializer.cxx
+++ b/Source/cmQtAutoGeneratorInitializer.cxx
@@ -162,6 +162,10 @@ static bool IsMultiConfig(cmGlobalGenerator* globalGen)
if (globalGen->GetName().find("Xcode") != std::string::npos) {
return false;
}
+ // FIXME: Visual Studio does not fully support per-config sources yet.
+ if (globalGen->GetName().find("Visual Studio") != std::string::npos) {
+ return false;
+ }
return globalGen->IsMultiConfig();
}
diff --git a/Utilities/Release/upload_release.cmake b/Utilities/Release/upload_release.cmake
index c49cb4f..5b2cc57 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.8)
+ set(VERSION 3.9)
endif()
if(NOT DEFINED PROJECT_PREFIX)
set(PROJECT_PREFIX cmake-${VERSION})