summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBrad King <brad.king@kitware.com>2017-06-07 10:01:18 -0400
committerBrad King <brad.king@kitware.com>2017-06-07 10:01:18 -0400
commitb9d411eb258476a0eb603ac078b01b335661714a (patch)
treeead8bd1e3a641504116014403873c2d971c676a2
parent5f8271962b3498ba0e2cb3756afa8f785b275e78 (diff)
parentcc1b513df143161e437c261cc385225cb4191d16 (diff)
downloadcmake-b9d411eb258476a0eb603ac078b01b335661714a.tar.gz
Merge branch 'autogen-no-vs-per-config' into release-3.9
-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--Source/cmQtAutoGeneratorInitializer.cxx4
4 files changed, 4 insertions, 19 deletions
diff --git a/Help/manual/cmake-qt.7.rst b/Help/manual/cmake-qt.7.rst
index 9f3968cae1..00d6e6e9b0 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 81eff8267c..0171d20e7a 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 4a08072d32..6493bbc78f 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/Source/cmQtAutoGeneratorInitializer.cxx b/Source/cmQtAutoGeneratorInitializer.cxx
index a39c10b812..6924ba2992 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();
}