diff options
Diffstat (limited to 'Source/cmSearchPath.cxx')
-rw-r--r-- | Source/cmSearchPath.cxx | 45 |
1 files changed, 19 insertions, 26 deletions
diff --git a/Source/cmSearchPath.cxx b/Source/cmSearchPath.cxx index 0f2ef6e..26c0de2 100644 --- a/Source/cmSearchPath.cxx +++ b/Source/cmSearchPath.cxx @@ -27,10 +27,9 @@ void cmSearchPath::ExtractWithout(const std::set<std::string>& ignore, if (clear) { outPaths.clear(); } - for (std::vector<std::string>::const_iterator p = this->Paths.begin(); - p != this->Paths.end(); ++p) { - if (ignore.count(*p) == 0) { - outPaths.push_back(*p); + for (std::string const& path : this->Paths) { + if (ignore.count(path) == 0) { + outPaths.push_back(path); } } } @@ -69,9 +68,8 @@ void cmSearchPath::AddUserPath(const std::string& path) } // Process them all from the current directory - for (std::vector<std::string>::const_iterator p = outPaths.begin(); - p != outPaths.end(); ++p) { - this->AddPathInternal(*p, this->FC->Makefile->GetCurrentSourceDirectory()); + for (std::string const& p : outPaths) { + this->AddPathInternal(p, this->FC->Makefile->GetCurrentSourceDirectory()); } } @@ -84,9 +82,8 @@ void cmSearchPath::AddCMakePath(const std::string& variable) std::vector<std::string> expanded; cmSystemTools::ExpandListArgument(value, expanded); - for (std::vector<std::string>::const_iterator p = expanded.begin(); - p != expanded.end(); ++p) { - this->AddPathInternal(*p, + for (std::string const& p : expanded) { + this->AddPathInternal(p, this->FC->Makefile->GetCurrentSourceDirectory()); } } @@ -96,9 +93,8 @@ void cmSearchPath::AddEnvPath(const std::string& variable) { std::vector<std::string> expanded; cmSystemTools::GetPath(expanded, variable.c_str()); - for (std::vector<std::string>::const_iterator p = expanded.begin(); - p != expanded.end(); ++p) { - this->AddPathInternal(*p); + for (std::string const& p : expanded) { + this->AddPathInternal(p); } } @@ -142,26 +138,24 @@ void cmSearchPath::AddSuffixes(const std::vector<std::string>& suffixes) inPaths.swap(this->Paths); this->Paths.reserve(inPaths.size() * (suffixes.size() + 1)); - for (std::vector<std::string>::iterator ip = inPaths.begin(); - ip != inPaths.end(); ++ip) { - cmSystemTools::ConvertToUnixSlashes(*ip); + for (std::string& inPath : inPaths) { + cmSystemTools::ConvertToUnixSlashes(inPath); // if *i is only / then do not add a // // this will get incorrectly considered a network // path on windows and cause huge delays. - std::string p = *ip; + std::string p = inPath; if (!p.empty() && *p.rbegin() != '/') { p += "/"; } // Combine with all the suffixes - for (std::vector<std::string>::const_iterator s = suffixes.begin(); - s != suffixes.end(); ++s) { - this->Paths.push_back(p + *s); + for (std::string const& suffix : suffixes) { + this->Paths.push_back(p + suffix); } // And now the original w/o any suffix - this->Paths.push_back(*ip); + this->Paths.push_back(inPath); } } @@ -181,9 +175,8 @@ void cmSearchPath::AddPrefixPaths(const std::vector<std::string>& paths, subdir = ""; // ? what to do for frameworks ? } - for (std::vector<std::string>::const_iterator p = paths.begin(); - p != paths.end(); ++p) { - std::string dir = *p; + for (std::string const& path : paths) { + std::string dir = path; if (!subdir.empty() && !dir.empty() && *dir.rbegin() != '/') { dir += "/"; } @@ -201,8 +194,8 @@ void cmSearchPath::AddPrefixPaths(const std::vector<std::string>& paths, if (subdir == "bin") { this->AddPathInternal(dir + "sbin", base); } - if (!subdir.empty() && *p != "/") { - this->AddPathInternal(*p, base); + if (!subdir.empty() && path != "/") { + this->AddPathInternal(path, base); } } } |