summaryrefslogtreecommitdiffstats
path: root/Source/cmLinkItem.cxx
diff options
context:
space:
mode:
authorKyle Edwards <kyle.edwards@kitware.com>2020-02-13 16:12:34 (GMT)
committerKyle Edwards <kyle.edwards@kitware.com>2020-02-17 13:24:57 (GMT)
commit7abc3d61acf5be976ce5b9f2c13f48f7f61e8e76 (patch)
tree2208f8fcb6dd079fdc3585926c145f3ca578b543 /Source/cmLinkItem.cxx
parentb88a671f75bdd1cb4f24166a9a6d98a678de1e62 (diff)
downloadCMake-7abc3d61acf5be976ce5b9f2c13f48f7f61e8e76.zip
CMake-7abc3d61acf5be976ce5b9f2c13f48f7f61e8e76.tar.gz
CMake-7abc3d61acf5be976ce5b9f2c13f48f7f61e8e76.tar.bz2
Ninja Multi-Config: Fix issue with framework dependencies and Autogen
Fixes: #20345
Diffstat (limited to 'Source/cmLinkItem.cxx')
-rw-r--r--Source/cmLinkItem.cxx15
1 files changed, 11 insertions, 4 deletions
diff --git a/Source/cmLinkItem.cxx b/Source/cmLinkItem.cxx
index 91eb183..4e50d70 100644
--- a/Source/cmLinkItem.cxx
+++ b/Source/cmLinkItem.cxx
@@ -8,14 +8,17 @@
cmLinkItem::cmLinkItem() = default;
-cmLinkItem::cmLinkItem(std::string n, cmListFileBacktrace bt)
+cmLinkItem::cmLinkItem(std::string n, bool c, cmListFileBacktrace bt)
: String(std::move(n))
+ , Cross(c)
, Backtrace(std::move(bt))
{
}
-cmLinkItem::cmLinkItem(cmGeneratorTarget const* t, cmListFileBacktrace bt)
+cmLinkItem::cmLinkItem(cmGeneratorTarget const* t, bool c,
+ cmListFileBacktrace bt)
: Target(t)
+ , Cross(c)
, Backtrace(std::move(bt))
{
}
@@ -39,12 +42,16 @@ bool operator<(cmLinkItem const& l, cmLinkItem const& r)
return false;
}
// Order among strings.
- return l.String < r.String;
+ if (l.String < r.String) {
+ return true;
+ }
+ // Order among cross-config.
+ return l.Cross < r.Cross;
}
bool operator==(cmLinkItem const& l, cmLinkItem const& r)
{
- return l.Target == r.Target && l.String == r.String;
+ return l.Target == r.Target && l.String == r.String && l.Cross == r.Cross;
}
std::ostream& operator<<(std::ostream& os, cmLinkItem const& item)