Forráskód Böngészése

Export: Skip INTERFACE libraries when generating -config files.

The properties object has just been created, so is always empty,
which means the if block is never entered. The following lines do
not have any effect because an INTERFACE library has no LOCATION.
At the end, no code is generated for INTERFACE libraries in
config-specific exported files, so skip them early.
Stephen Kelly 12 éve
szülő
commit
b51b6e97a2
1 módosított fájl, 5 hozzáadás és 7 törlés
  1. 5 7
      Source/cmExportInstallFileGenerator.cxx

+ 5 - 7
Source/cmExportInstallFileGenerator.cxx

@@ -297,16 +297,14 @@ cmExportInstallFileGenerator
     {
     // Collect import properties for this target.
     cmTargetExport const* te = *tei;
-    ImportPropertyMap properties;
-    std::set<std::string> importedLocations;
-    if (!properties.empty()
-        && te->Target->GetType() == cmTarget::INTERFACE_LIBRARY)
+    if (te->Target->GetType() == cmTarget::INTERFACE_LIBRARY)
       {
-      this->GenerateImportPropertyCode(os, config, te->Target, properties);
-      this->GenerateImportedFileChecksCode(os, te->Target, properties,
-                                           importedLocations);
       continue;
       }
+
+    ImportPropertyMap properties;
+    std::set<std::string> importedLocations;
+
     this->SetImportLocationProperty(config, suffix, te->ArchiveGenerator,
                                     properties, importedLocations);
     this->SetImportLocationProperty(config, suffix, te->LibraryGenerator,