Qt 6.x
The Qt SDK
Loading...
Searching...
No Matches
shared.h
Go to the documentation of this file.
1// Copyright (C) 2016 The Qt Company Ltd.
2// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only WITH Qt-GPL-exception-1.0
3#ifndef MAC_DEPLOMYMENT_SHARED_H
4#define MAC_DEPLOMYMENT_SHARED_H
5
6#include <QString>
7#include <QStringList>
8#include <QDebug>
9#include <QSet>
10#include <QVersionNumber>
11
12extern int logLevel;
13#define LogError() if (logLevel < 0) {} else qDebug() << "ERROR:"
14#define LogWarning() if (logLevel < 1) {} else qDebug() << "WARNING:"
15#define LogNormal() if (logLevel < 2) {} else qDebug() << "Log:"
16#define LogDebug() if (logLevel < 3) {} else qDebug() << "Log:"
17
18extern bool runStripEnabled;
19
21{
22public:
23 bool isDylib;
37
38 bool isDebugLibrary() const
39 {
40 if (isDylib)
41 return binaryName.contains(QStringLiteral("_debug."));
42 else
43 return binaryName.endsWith(QStringLiteral("_debug"));
44 }
45};
46
48{
49public:
53};
54
56{
57public:
63};
64
65bool operator==(const FrameworkInfo &a, const FrameworkInfo &b);
67
69{
70 public:
74};
75
77{
78public:
85 bool isDebug;
86
87 bool containsModule(const QString &module, const QString &libInFix) const;
88};
89
91
92OtoolInfo findDependencyInfo(const QString &binaryPath);
93FrameworkInfo parseOtoolLibraryLine(const QString &line, const QString &appBundlePath, const QList<QString> &rpaths, bool useDebugLibs);
94QString findAppBinary(const QString &appBundlePath);
95QList<FrameworkInfo> getQtFrameworks(const QString &path, const QString &appBundlePath, const QList<QString> &rpaths, bool useDebugLibs);
96QList<FrameworkInfo> getQtFrameworks(const QStringList &otoolLines, const QString &appBundlePath, const QList<QString> &rpaths, bool useDebugLibs);
97QString copyFramework(const FrameworkInfo &framework, const QString path);
98DeploymentInfo deployQtFrameworks(const QString &appBundlePath, const QStringList &additionalExecutables, bool useDebugLibs);
99DeploymentInfo deployQtFrameworks(QList<FrameworkInfo> frameworks,const QString &bundlePath, const QStringList &binaryPaths, bool useDebugLibs, bool useLoaderPath);
100void createQtConf(const QString &appBundlePath);
101void deployPlugins(const QString &appBundlePath, DeploymentInfo deploymentInfo, bool useDebugLibs);
102bool deployQmlImports(const QString &appBundlePath, DeploymentInfo deploymentInfo, QStringList &qmlDirs, QStringList &qmlImportPaths);
103void changeIdentification(const QString &id, const QString &binaryPath);
104void changeInstallName(const QString &oldName, const QString &newName, const QString &binaryPath);
105void runStrip(const QString &binaryPath);
106void stripAppBinary(const QString &bundlePath);
107QString findAppBinary(const QString &appBundlePath);
108QStringList findAppFrameworkNames(const QString &appBundlePath);
109QStringList findAppFrameworkPaths(const QString &appBundlePath);
110void codesignFile(const QString &identity, const QString &filePath);
111QSet<QString> codesignBundle(const QString &identity,
112 const QString &appBundlePath,
113 QList<QString> additionalBinariesContainingRpaths);
114void codesign(const QString &identity, const QString &appBundlePath);
115void createDiskImage(const QString &appBundlePath, const QString &filesystemType);
116void fixupFramework(const QString &appBundlePath);
117
118
119#endif
QStringList libraryPaths
Definition shared.h:73
QStringList deployedFrameworks
Definition shared.h:81
bool useLoaderPath
Definition shared.h:83
bool containsModule(const QString &module, const QString &libInFix) const
Definition shared.cpp:934
bool isDebug
Definition shared.h:85
QList< QString > rpathsUsed
Definition shared.h:82
QString qtPath
Definition shared.h:79
QString pluginPath
Definition shared.h:80
bool isFramework
Definition shared.h:84
QVersionNumber compatibilityVersion
Definition shared.h:52
QString binaryPath
Definition shared.h:50
QVersionNumber currentVersion
Definition shared.h:51
QString frameworkDirectory
Definition shared.h:24
QString binaryName
Definition shared.h:28
QString rpathUsed
Definition shared.h:30
QString binaryDestinationDirectory
Definition shared.h:36
QString frameworkPath
Definition shared.h:26
bool isDebugLibrary() const
Definition shared.h:38
QString sourceFilePath
Definition shared.h:34
QString frameworkName
Definition shared.h:25
QString binaryDirectory
Definition shared.h:27
bool isDylib
Definition shared.h:23
QString version
Definition shared.h:31
QString binaryPath
Definition shared.h:29
QString frameworkDestinationDirectory
Definition shared.h:35
QString deployedInstallName
Definition shared.h:33
QString installName
Definition shared.h:32
QString binaryPath
Definition shared.h:59
QVersionNumber currentVersion
Definition shared.h:60
QString installName
Definition shared.h:58
QList< DylibInfo > dependencies
Definition shared.h:62
QVersionNumber compatibilityVersion
Definition shared.h:61
\inmodule QtCore
Definition qlist.h:74
Definition qset.h:18
\inmodule QtCore
\macro QT_RESTRICTED_CAST_FROM_ASCII
Definition qstring.h:127
bool endsWith(const QString &s, Qt::CaseSensitivity cs=Qt::CaseSensitive) const
Returns true if the string ends with s; otherwise returns false.
Definition qstring.cpp:5350
bool contains(QChar c, Qt::CaseSensitivity cs=Qt::CaseSensitive) const
Definition qstring.h:1217
\inmodule QtCore
GLboolean GLboolean GLboolean b
GLboolean GLboolean GLboolean GLboolean a
[7]
GLsizei const GLchar *const * path
#define QStringLiteral(str)
QSet< QString > codesignBundle(const QString &identity, const QString &appBundlePath, QList< QString > additionalBinariesContainingRpaths)
Definition shared.cpp:1404
void codesignFile(const QString &identity, const QString &filePath)
Definition shared.cpp:1368
void changeInstallName(const QString &oldName, const QString &newName, const QString &binaryPath)
Definition shared.cpp:904
bool deployQmlImports(const QString &appBundlePath, DeploymentInfo deploymentInfo, QStringList &qmlDirs, QStringList &qmlImportPaths)
Definition shared.cpp:1260
void createQtConf(const QString &appBundlePath)
Definition shared.cpp:1197
void runStrip(const QString &binaryPath)
Definition shared.cpp:913
QString findAppBinary(const QString &appBundlePath)
Definition shared.cpp:367
bool operator==(const FrameworkInfo &a, const FrameworkInfo &b)
Definition shared.cpp:44
void fixupFramework(const QString &appBundlePath)
Definition shared.cpp:1579
void deployPlugins(const QString &appBundlePath, DeploymentInfo deploymentInfo, bool useDebugLibs)
Definition shared.cpp:1228
void changeIdentification(const QString &id, const QString &binaryPath)
Definition shared.cpp:821
OtoolInfo findDependencyInfo(const QString &binaryPath)
Definition shared.cpp:146
DeploymentInfo deployQtFrameworks(const QString &appBundlePath, const QStringList &additionalExecutables, bool useDebugLibs)
Definition shared.cpp:1030
void createDiskImage(const QString &appBundlePath, const QString &filesystemType)
Definition shared.cpp:1543
QString copyFramework(const FrameworkInfo &framework, const QString path)
Definition shared.cpp:742
bool runStripEnabled
Definition shared.cpp:28
void stripAppBinary(const QString &bundlePath)
Definition shared.cpp:929
QStringList findAppFrameworkPaths(const QString &appBundlePath)
Definition shared.cpp:420
QStringList findAppFrameworkNames(const QString &appBundlePath)
Definition shared.cpp:403
void codesign(const QString &identity, const QString &appBundlePath)
Definition shared.cpp:1539
FrameworkInfo parseOtoolLibraryLine(const QString &line, const QString &appBundlePath, const QList< QString > &rpaths, bool useDebugLibs)
Definition shared.cpp:210
QDebug operator<<(QDebug debug, const FrameworkInfo &info)
Definition shared.cpp:49
QList< FrameworkInfo > getQtFrameworks(const QString &path, const QString &appBundlePath, const QList< QString > &rpaths, bool useDebugLibs)
Definition shared.cpp:560
int logLevel
Definition shared.cpp:37
QFileInfo info(fileName)
[8]