diff options
author | Brad King <brad.king@kitware.com> | 2009-09-01 14:37:37 (GMT) |
---|---|---|
committer | Brad King <brad.king@kitware.com> | 2009-09-01 14:37:37 (GMT) |
commit | 69251f75492a9bd1e3122e8e7ae7888e9c700a57 (patch) | |
tree | 2093785c45d7fb4601b1821d250658727711663b /Source/cmExportFileGenerator.cxx | |
parent | 78160cee6e38feb651478dbe859a491a807b9dbc (diff) | |
download | CMake-69251f75492a9bd1e3122e8e7ae7888e9c700a57.zip CMake-69251f75492a9bd1e3122e8e7ae7888e9c700a57.tar.gz CMake-69251f75492a9bd1e3122e8e7ae7888e9c700a57.tar.bz2 |
Define 'multiplicity' for cyclic dependencies
We create target property "LINK_INTERFACE_MULTIPLICITY" and a per-config
version "LINK_INTERFACE_MULTIPLICITY_<CONFIG>". It sets the number of
times a linker should scan through a mutually dependent group of static
libraries. The largest value of this property on any target in the
group is used. This will help projects link even for extreme cases of
cyclic inter-target dependencies.
Diffstat (limited to 'Source/cmExportFileGenerator.cxx')
-rw-r--r-- | Source/cmExportFileGenerator.cxx | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/Source/cmExportFileGenerator.cxx b/Source/cmExportFileGenerator.cxx index 8c15a26..b8ef417 100644 --- a/Source/cmExportFileGenerator.cxx +++ b/Source/cmExportFileGenerator.cxx @@ -161,6 +161,14 @@ cmExportFileGenerator this->SetImportLinkProperty(suffix, target, "IMPORTED_LINK_DEPENDENT_LIBRARIES", iface->SharedDeps, properties); + if(iface->Multiplicity > 0) + { + std::string prop = "IMPORTED_LINK_INTERFACE_MULTIPLICITY"; + prop += suffix; + cmOStringStream m; + m << iface->Multiplicity; + properties[prop] = m.str(); + } } } |