Procházet zdrojové kódy

Add the AUTOGEN_TARGETS_FOLDER and obsolete AUTOMOC_TARGETS_FOLDER.

Stephen Kelly před 12 roky
rodič
revize
98632effeb

+ 1 - 0
Help/manual/cmake-properties.7.rst

@@ -10,6 +10,7 @@ Properties of Global Scope
 
 
 .. toctree::
 .. toctree::
    /prop_gbl/ALLOW_DUPLICATE_CUSTOM_TARGETS
    /prop_gbl/ALLOW_DUPLICATE_CUSTOM_TARGETS
+   /prop_gbl/AUTOGEN_TARGETS_FOLDER
    /prop_gbl/AUTOMOC_TARGETS_FOLDER
    /prop_gbl/AUTOMOC_TARGETS_FOLDER
    /prop_gbl/DEBUG_CONFIGURATIONS
    /prop_gbl/DEBUG_CONFIGURATIONS
    /prop_gbl/DISABLED_FEATURES
    /prop_gbl/DISABLED_FEATURES

+ 8 - 0
Help/prop_gbl/AUTOGEN_TARGETS_FOLDER.rst

@@ -0,0 +1,8 @@
+AUTOGEN_TARGETS_FOLDER
+----------------------
+
+Name of FOLDER for ``*_automoc`` targets that are added automatically by CMake for targets for which AUTOMOC is enabled.
+
+If not set, CMake uses the FOLDER property of the parent target as a
+default value for this property.  See also the documentation for the
+FOLDER target property and the AUTOMOC target property.

+ 2 - 0
Help/prop_gbl/AUTOMOC_TARGETS_FOLDER.rst

@@ -3,6 +3,8 @@ AUTOMOC_TARGETS_FOLDER
 
 
 Name of FOLDER for ``*_automoc`` targets that are added automatically by CMake for targets for which AUTOMOC is enabled.
 Name of FOLDER for ``*_automoc`` targets that are added automatically by CMake for targets for which AUTOMOC is enabled.
 
 
+This property is obsolete.  Use AUTOGEN_TARGETS_FOLDER instead.
+
 If not set, CMake uses the FOLDER property of the parent target as a
 If not set, CMake uses the FOLDER property of the parent target as a
 default value for this property.  See also the documentation for the
 default value for this property.  See also the documentation for the
 FOLDER target property and the AUTOMOC target property.
 FOLDER target property and the AUTOMOC target property.

+ 8 - 3
Source/cmQtAutoGenerators.cxx

@@ -269,11 +269,16 @@ void cmQtAutoGenerators::SetupAutoGenerateTarget(cmTarget* target)
                                 workingDirectory.c_str(), depends,
                                 workingDirectory.c_str(), depends,
                                 commandLines, false, autogenComment.c_str());
                                 commandLines, false, autogenComment.c_str());
     // Set target folder
     // Set target folder
-    const char* automocFolder = makefile->GetCMakeInstance()->GetProperty(
+    const char* autogenFolder = makefile->GetCMakeInstance()->GetProperty(
                                                      "AUTOMOC_TARGETS_FOLDER");
                                                      "AUTOMOC_TARGETS_FOLDER");
-    if (automocFolder && *automocFolder)
+    if (!autogenFolder)
       {
       {
-      autogenTarget->SetProperty("FOLDER", automocFolder);
+      autogenFolder = makefile->GetCMakeInstance()->GetProperty(
+                                                     "AUTOGEN_TARGETS_FOLDER");
+      }
+    if (autogenFolder && *autogenFolder)
+      {
+      autogenTarget->SetProperty("FOLDER", autogenFolder);
       }
       }
     else
     else
       {
       {