summaryrefslogtreecommitdiffstats
path: root/Source/cmGeneratorTarget.cxx
diff options
context:
space:
mode:
authorTim Blechmann <tim@klingt.org>2020-01-14 10:17:50 (GMT)
committerTim Blechmann <tim@klingt.org>2020-01-14 10:20:39 (GMT)
commit22f38c0d6b482e99bb793f64c7701259dcf00bd7 (patch)
tree9c920e53c23ad1559c345c1705475619bf7cb7b4 /Source/cmGeneratorTarget.cxx
parent23e782ce05b5996536eff4c075d4bc36a8d8ba85 (diff)
downloadCMake-22f38c0d6b482e99bb793f64c7701259dcf00bd7.zip
CMake-22f38c0d6b482e99bb793f64c7701259dcf00bd7.tar.gz
CMake-22f38c0d6b482e99bb793f64c7701259dcf00bd7.tar.bz2
cmake: avoid getcwd in `CollapseFullPath`
`CollapseFullPath` calls getcwd, which is a rather expensive system call. we can replace it with `GetHomeOutputDirectory()` to save us from the calling overhead
Diffstat (limited to 'Source/cmGeneratorTarget.cxx')
-rw-r--r--Source/cmGeneratorTarget.cxx3
1 files changed, 2 insertions, 1 deletions
diff --git a/Source/cmGeneratorTarget.cxx b/Source/cmGeneratorTarget.cxx
index 19d5b4d..53daa89 100644
--- a/Source/cmGeneratorTarget.cxx
+++ b/Source/cmGeneratorTarget.cxx
@@ -3087,7 +3087,8 @@ std::vector<BT<std::string>> cmGeneratorTarget::GetIncludeDirectories(
cmLinkImplementationLibraries const* impl =
this->GetLinkImplementationLibraries(config);
for (cmLinkImplItem const& lib : impl->Libraries) {
- std::string libDir = cmSystemTools::CollapseFullPath(lib.AsStr());
+ std::string libDir = cmSystemTools::CollapseFullPath(
+ lib.AsStr(), this->Makefile->GetHomeOutputDirectory());
static cmsys::RegularExpression frameworkCheck(
"(.*\\.framework)(/Versions/[^/]+)?/[^/]+$");