ソースを参照

Merge topic 'minor-cleanup'

e2cb3e7 Help: Note that COMPATIBLE_INTERFACE_ properties may be origin-debugged.
41e48c4 Avoid certain actions on IMPORTED targets.
Brad King 12 年 前
コミット
0845aaddc5

+ 5 - 3
Help/variable/CMAKE_DEBUG_TARGET_PROPERTIES.rst

@@ -5,7 +5,9 @@ Enables tracing output for target properties.
 
 This variable can be populated with a list of properties to generate
 debug output for when evaluating target properties.  Currently it can
-only be used when evaluating the INCLUDE_DIRECTORIES,
-COMPILE_DEFINITIONS, COMPILE_OPTIONS and AUTOUIC_OPTIONS target properties.
-In that case, it outputs a backtrace for each entry in the target property.
+only be used when evaluating the :prop_tgt:`INCLUDE_DIRECTORIES`,
+:prop_tgt:`COMPILE_DEFINITIONS`, :prop_tgt:`COMPILE_OPTIONS`, :prop_tgt:`AUTOUIC_OPTIONS`,
+:prop_tgt:`POSITION_INDEPENDENT_CODE` target properties and any other property
+listed in :prop_tgt:`COMPATIBLE_INTERFACE_STRING` and other ``COMPATIBLE_INTERFACE_``
+properties.  It outputs an origin for each entry in the target property.
 Default is unset.

+ 4 - 0
Source/cmGlobalGenerator.cxx

@@ -1379,6 +1379,10 @@ void cmGlobalGenerator::ComputeGeneratorTargetObjects()
     for(cmGeneratorTargetsType::iterator ti = targets.begin();
         ti != targets.end(); ++ti)
       {
+      if (ti->second->Target->IsImported())
+        {
+        continue;
+        }
       cmGeneratorTarget* gt = ti->second;
       gt->ClassifySources();
       gt->LookupObjectLibraries();

+ 8 - 0
Source/cmLocalGenerator.cxx

@@ -261,6 +261,10 @@ void cmLocalGenerator::TraceDependencies()
   for(cmGeneratorTargetsType::iterator t = targets.begin();
       t != targets.end(); ++t)
     {
+    if (t->second->Target->IsImported())
+      {
+      continue;
+      }
     t->second->TraceDependencies();
     }
 }
@@ -545,6 +549,10 @@ void cmLocalGenerator::GenerateTargetManifest()
       {
       continue;
       }
+    if (target.Target->IsImported())
+      {
+      continue;
+      }
     if(configNames.empty())
       {
       target.GenerateTargetManifest(0);