linamh/dev-util/cmake/files/cmake-2.6.3-no-duplicates-in-rpath.patch
2010-12-25 17:43:20 +00:00

20 lines
794 B
Diff

Patch by Heiko Przybyl
--- Source/cmComputeLinkInformation.cxx
+++ Source/cmComputeLinkInformation.cxx
@@ -1686,6 +1686,14 @@ std::string cmComputeLinkInformation::Ge
for(std::vector<std::string>::const_iterator ri = runtimeDirs.begin();
ri != runtimeDirs.end(); ++ri)
{
+ // Do not add duplicates.
+ // I'd like to have that check already in the list generation code
+ // but that would need lots of more changes, even in ExpandListArgument().
+ if(*sep != '\0' && (rpath + sep).find(*ri + sep) != std::string::npos)
+ {
+ //std::cerr << "ignoring duplicate: '" << *ri << "' in '" << rpath << "'" << std::endl;
+ continue;
+ }
// Separate from previous path.
rpath += sep;
sep = this->GetRuntimeSep().c_str();