summaryrefslogtreecommitdiffstats
path: root/src/macdeployqt/shared
diff options
context:
space:
mode:
authorAlexander Afanasyev <alexander.afanasyev@ucla.edu>2016-12-23 16:06:13 -0800
committerMorten Johan Sørvig <morten.sorvig@qt.io>2017-03-23 12:59:50 +0000
commit8f9b747f030bb41556831a23ec2a8e7e76fb7dc0 (patch)
tree29ad7ea148ba55d13fb957d87f4f237e50956900 /src/macdeployqt/shared
parentd1ad2c353ebe35c40fe68af4783d08dc83d247bc (diff)
macdeployqt: Add a fix for cases when qt libraries are symlinked
Task-number: QTBUG-56814 Change-Id: If981cf5ac3a593cee4425edf547bbee57b12eb8c Reviewed-by: Morten Johan Sørvig <morten.sorvig@qt.io>
Diffstat (limited to 'src/macdeployqt/shared')
-rw-r--r--src/macdeployqt/shared/shared.cpp6
1 files changed, 6 insertions, 0 deletions
diff --git a/src/macdeployqt/shared/shared.cpp b/src/macdeployqt/shared/shared.cpp
index e57bc785d..3163a5171 100644
--- a/src/macdeployqt/shared/shared.cpp
+++ b/src/macdeployqt/shared/shared.cpp
@@ -821,6 +821,12 @@ void changeInstallName(const QString &bundlePath, const FrameworkInfo &framework
deployedInstallName = framework.deployedInstallName;
}
changeInstallName(framework.installName, deployedInstallName, binary);
+ // Workaround for the case when the library ID name is a symlink, while the dependencies
+ // specified using the canonical path to the library (QTBUG-56814)
+ QString canonicalInstallName = QFileInfo(framework.installName).canonicalFilePath();
+ if (canonicalInstallName != framework.installName) {
+ changeInstallName(canonicalInstallName, deployedInstallName, binary);
+ }
}
}