From c66084f5d7df57c991d0f498de04a5f00ae0fcc1 Mon Sep 17 00:00:00 2001
From: Stephen Kelly <steveire@gmail.com>
Date: Wed, 16 Sep 2015 05:07:06 +0200
Subject: cmGeneratorTarget: Port GetImportLinkInterface away from cmTarget.

---
 Source/cmGeneratorTarget.cxx | 10 +++++-----
 Source/cmGeneratorTarget.h   |  3 ++-
 2 files changed, 7 insertions(+), 6 deletions(-)

diff --git a/Source/cmGeneratorTarget.cxx b/Source/cmGeneratorTarget.cxx
index 8a550bf..26119c3 100644
--- a/Source/cmGeneratorTarget.cxx
+++ b/Source/cmGeneratorTarget.cxx
@@ -4451,7 +4451,7 @@ cmGeneratorTarget::GetLinkInterface(const std::string& config,
   // Imported targets have their own link interface.
   if(this->IsImported())
     {
-    return this->GetImportLinkInterface(config, head->Target, false);
+    return this->GetImportLinkInterface(config, head, false);
     }
 
   // Link interfaces are not supported for executables that do not
@@ -4599,7 +4599,7 @@ cmGeneratorTarget::GetLinkInterfaceLibraries(const std::string& config,
   // Imported targets have their own link interface.
   if(this->IsImported())
     {
-    return this->GetImportLinkInterface(config, head->Target,
+    return this->GetImportLinkInterface(config, head,
                                                 usage_requirements_only);
     }
 
@@ -5040,7 +5040,7 @@ cmGeneratorTarget::ComputeLinkInterfaceLibraries(
 //----------------------------------------------------------------------------
 const cmLinkInterface *
 cmGeneratorTarget::GetImportLinkInterface(const std::string& config,
-                                 cmTarget const* headTarget,
+                                 cmGeneratorTarget const* headTarget,
                                  bool usage_requirements_only) const
 {
   cmTarget::ImportInfo const* info = this->Target->GetImportInfo(config);
@@ -5062,7 +5062,7 @@ cmGeneratorTarget::GetImportLinkInterface(const std::string& config,
     return &hm.begin()->second;
     }
 
-  cmOptionalLinkInterface& iface = hm[headTarget];
+  cmOptionalLinkInterface& iface = hm[headTarget->Target];
   if(!iface.AllDone)
     {
     iface.AllDone = true;
@@ -5070,7 +5070,7 @@ cmGeneratorTarget::GetImportLinkInterface(const std::string& config,
     cmSystemTools::ExpandListArgument(info->Languages, iface.Languages);
     this->ExpandLinkItems(info->LibrariesProp, info->Libraries,
                                   config,
-                          headTarget, usage_requirements_only,
+                          headTarget->Target, usage_requirements_only,
                           iface.Libraries,
                           iface.HadHeadSensitiveCondition);
     std::vector<std::string> deps;
diff --git a/Source/cmGeneratorTarget.h b/Source/cmGeneratorTarget.h
index 15b1b80..03548e2 100644
--- a/Source/cmGeneratorTarget.h
+++ b/Source/cmGeneratorTarget.h
@@ -491,7 +491,8 @@ private:
       std::string const& config) const;
 
   cmLinkInterface const*
-    GetImportLinkInterface(const std::string& config, cmTarget const* head,
+    GetImportLinkInterface(const std::string& config,
+                           const cmGeneratorTarget* head,
                            bool usage_requirements_only) const;
 
   typedef std::map<std::string, std::vector<cmSourceFile*> >
-- 
cgit v0.12