cmTarget: Add to LinkImplementation a backtrace for each library

Allow clients to provide backtrace context on evaluation diagnostics.
This commit is contained in:
Brad King 2014-06-30 10:43:36 -04:00
parent 848c8ccf18
commit 251e835b3f
2 changed files with 7 additions and 5 deletions

View File

@ -6677,7 +6677,7 @@ void cmTarget::ComputeLinkImplementation(const std::string& config,
// The entry is meant for this configuration.
impl.Libraries.push_back(
cmLinkImplItem(name, this->FindTargetToLink(name)));
cmLinkImplItem(name, this->FindTargetToLink(name), le->Backtrace));
}
std::set<std::string> const& seenProps = cge->GetSeenTargetProperties();

View File

@ -57,12 +57,14 @@ public:
class cmLinkImplItem: public cmLinkItem
{
public:
cmLinkImplItem(): cmLinkItem() {}
cmLinkImplItem(): cmLinkItem(), Backtrace(0) {}
cmLinkImplItem(std::string const& n,
cmTarget const* t):
cmLinkItem(n, t) {}
cmTarget const* t,
cmListFileBacktrace const& bt):
cmLinkItem(n, t), Backtrace(bt) {}
cmLinkImplItem(cmLinkImplItem const& r):
cmLinkItem(r) {}
cmLinkItem(r), Backtrace(r.Backtrace) {}
cmListFileBacktrace Backtrace;
};
struct cmTargetLinkInformationMap: