summaryrefslogtreecommitdiffstats
path: root/src/macdeployqt/shared/shared.h
diff options
context:
space:
mode:
authorMorten Johan Sørvig <morten.sorvig@qt.io>2018-07-06 10:00:32 +0200
committerMorten Johan Sørvig <morten.sorvig@qt.io>2021-09-09 17:16:34 +0200
commit3f9b2871b633c055b194cac9ea4733c0cbe8f8c2 (patch)
tree89f78a794cfc4e660905d390e9954121f15a0ec8 /src/macdeployqt/shared/shared.h
parent6644b3b4bce6622cc6c6a6f3b63599305363eabe (diff)
macdeployqt: process rpaths in deterministic order
Use QList<QString> instead of QSet<QString> to make macdeployqt process rpaths in deterministic order instead of arbitrary order based on the QString hash value. Make sure that the fallback QLibraryInfo::LibrariesPath is added last in order to give preference to the actual rpaths. (Use of LibrariesPath was added in an earlier commit to cover cases where the app binary did not have an rpath set that points to the Qt libs) Task-number: QTBUG-53533 Change-Id: Ic8d91e196f50b8b43e6c09d5c64b7cdb01b8a8b2 Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io>
Diffstat (limited to 'src/macdeployqt/shared/shared.h')
-rw-r--r--src/macdeployqt/shared/shared.h8
1 files changed, 4 insertions, 4 deletions
diff --git a/src/macdeployqt/shared/shared.h b/src/macdeployqt/shared/shared.h
index 15ff08430..8761fe8c0 100644
--- a/src/macdeployqt/shared/shared.h
+++ b/src/macdeployqt/shared/shared.h
@@ -101,7 +101,7 @@ public:
QString qtPath;
QString pluginPath;
QStringList deployedFrameworks;
- QSet<QString> rpathsUsed;
+ QList<QString> rpathsUsed;
bool useLoaderPath;
bool isFramework;
bool isDebug;
@@ -112,10 +112,10 @@ public:
inline QDebug operator<<(QDebug debug, const ApplicationBundleInfo &info);
OtoolInfo findDependencyInfo(const QString &binaryPath);
-FrameworkInfo parseOtoolLibraryLine(const QString &line, const QString &appBundlePath, const QSet<QString> &rpaths, bool useDebugLibs);
+FrameworkInfo parseOtoolLibraryLine(const QString &line, const QString &appBundlePath, const QList<QString> &rpaths, bool useDebugLibs);
QString findAppBinary(const QString &appBundlePath);
-QList<FrameworkInfo> getQtFrameworks(const QString &path, const QString &appBundlePath, const QSet<QString> &rpaths, bool useDebugLibs);
-QList<FrameworkInfo> getQtFrameworks(const QStringList &otoolLines, const QString &appBundlePath, const QSet<QString> &rpaths, bool useDebugLibs);
+QList<FrameworkInfo> getQtFrameworks(const QString &path, const QString &appBundlePath, const QList<QString> &rpaths, bool useDebugLibs);
+QList<FrameworkInfo> getQtFrameworks(const QStringList &otoolLines, const QString &appBundlePath, const QList<QString> &rpaths, bool useDebugLibs);
QString copyFramework(const FrameworkInfo &framework, const QString path);
DeploymentInfo deployQtFrameworks(const QString &appBundlePath, const QStringList &additionalExecutables, bool useDebugLibs);
DeploymentInfo deployQtFrameworks(QList<FrameworkInfo> frameworks,const QString &bundlePath, const QStringList &binaryPaths, bool useDebugLibs, bool useLoaderPath);