summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorBrad King <brad.king@kitware.com>2014-06-30 14:43:36 (GMT)
committerBrad King <brad.king@kitware.com>2014-07-07 12:52:40 (GMT)
commit251e835b3f7320f0099d003de5a675af58e62e46 (patch)
tree7cf1b052f7d501391e0cda0fc9f265765716af9e
parent848c8ccf18e325e0d2833ac468f733261832feca (diff)
downloadCMake-251e835b3f7320f0099d003de5a675af58e62e46.zip
CMake-251e835b3f7320f0099d003de5a675af58e62e46.tar.gz
CMake-251e835b3f7320f0099d003de5a675af58e62e46.tar.bz2
cmTarget: Add to LinkImplementation a backtrace for each library
Allow clients to provide backtrace context on evaluation diagnostics.
-rw-r--r--Source/cmTarget.cxx2
-rw-r--r--Source/cmTarget.h10
2 files changed, 7 insertions, 5 deletions
diff --git a/Source/cmTarget.cxx b/Source/cmTarget.cxx
index 94b339b..6bc4273 100644
--- a/Source/cmTarget.cxx
+++ b/Source/cmTarget.cxx
@@ -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();
diff --git a/Source/cmTarget.h b/Source/cmTarget.h
index 8578c51..5f2a557 100644
--- a/Source/cmTarget.h
+++ b/Source/cmTarget.h
@@ -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: