forked from qt-creator/qt-creator
Ios: Move tools to <libexec>/ios, make them lowercase, fix deployment
They can't be directly in libexec path, because then they couldn't have their own qt.conf for resolving the Cocoa platform plugin. Change-Id: I8f3fae85c548747a7d826c078c7ac1fb0a836b43 Reviewed-by: Fawzi Mohamed <fawzi.mohamed@digia.com>
This commit is contained in:
5
dist/installer/mac/ios_qt.conf
vendored
Normal file
5
dist/installer/mac/ios_qt.conf
vendored
Normal file
@@ -0,0 +1,5 @@
|
||||
[Paths]
|
||||
# prefix must be one up because Qt makes it relative to the app's Contents/ path,
|
||||
# even if that doesn't exist!
|
||||
Prefix = ..
|
||||
Plugins = ../../PlugIns
|
||||
@@ -41,10 +41,16 @@ fi
|
||||
|
||||
macdeployqt "$1" \
|
||||
"-executable=$1/Contents/Resources/qtpromaker" \
|
||||
"-executable=$1/Contents/Resources/sdktool" "$qmlpuppetArgument" "$qml2puppetArgument" || exit 1
|
||||
"-executable=$1/Contents/Resources/sdktool" \
|
||||
"-executable=$1/Contents/Resources/ios/iostool" \
|
||||
"-executable=$1/Contents/Resources/ios/iossim" \
|
||||
"$qmlpuppetArgument" "$qml2puppetArgument" || exit 1
|
||||
|
||||
# copy qt creator qt.conf
|
||||
cp -f "$(dirname "${BASH_SOURCE[0]}")/../dist/installer/mac/qt.conf" "$1/Contents/Resources/qt.conf" || exit 1
|
||||
|
||||
# copy ios tools' qt.conf
|
||||
cp -f "$(dirname "${BASH_SOURCE[0]}")/../dist/installer/mac/ios_qt.conf" "$1/Contents/Resources/ios/qt.conf" || exit 1
|
||||
|
||||
# copy Qt translations
|
||||
cp "$2"/*.qm "$1/Contents/Resources/translations/" || exit 1
|
||||
|
||||
@@ -392,6 +392,17 @@ QString ICore::documentationPath()
|
||||
return QDir::cleanPath(QCoreApplication::applicationDirPath() + docPath);
|
||||
}
|
||||
|
||||
/*!
|
||||
Returns the path to the command line tools that are shipped with \QC (corresponding
|
||||
to the IDE_LIBEXEC_PATH qmake variable).
|
||||
*/
|
||||
QString ICore::libexecPath()
|
||||
{
|
||||
const QString libexecPath = QLatin1String(Utils::HostOsInfo::isMacHost()
|
||||
? "/../Resources" : "");
|
||||
return QDir::cleanPath(QCoreApplication::applicationDirPath() + libexecPath);
|
||||
}
|
||||
|
||||
static QString compilerString()
|
||||
{
|
||||
#if defined(Q_CC_CLANG) // must be before GNU, because clang claims to be GNU too
|
||||
|
||||
@@ -88,6 +88,7 @@ public:
|
||||
static QString resourcePath();
|
||||
static QString userResourcePath();
|
||||
static QString documentationPath();
|
||||
static QString libexecPath();
|
||||
|
||||
static QString versionString();
|
||||
static QString buildCompatibilityString();
|
||||
|
||||
@@ -103,14 +103,6 @@ void IosConfigurations::setConfig(const IosConfig &devConfigs)
|
||||
emit updated();
|
||||
}
|
||||
|
||||
FileName IosConfigurations::iosToolPath() const
|
||||
{
|
||||
FileName res = FileName::fromString(QCoreApplication::applicationDirPath()
|
||||
+ QLatin1String("/iosTool"));
|
||||
return res;
|
||||
}
|
||||
|
||||
|
||||
bool equalKits(Kit *a, Kit *b)
|
||||
{
|
||||
return ToolChainKitInformation::toolChain(a) == ToolChainKitInformation::toolChain(b)
|
||||
|
||||
@@ -64,7 +64,6 @@ public:
|
||||
static IosConfigurations &instance();
|
||||
IosConfig config() const { return m_config; }
|
||||
void setConfig(const IosConfig &config);
|
||||
Utils::FileName iosToolPath() const;
|
||||
|
||||
QStringList sdkTargets();
|
||||
void updateSimulators();
|
||||
|
||||
@@ -30,6 +30,7 @@
|
||||
#include "iostoolhandler.h"
|
||||
#include "iosconfigurations.h"
|
||||
|
||||
#include <coreplugin/icore.h>
|
||||
#include <utils/qtcassert.h>
|
||||
#include <utils/fileutils.h>
|
||||
|
||||
@@ -924,13 +925,13 @@ void IosSimulatorToolHandlerPrivate::addDeviceArguments(QStringList &args) const
|
||||
|
||||
QString IosToolHandler::iosDeviceToolPath()
|
||||
{
|
||||
QString res = QCoreApplication::applicationDirPath() + QLatin1String("/iosTool");
|
||||
QString res = Core::ICore::libexecPath() + QLatin1String("/ios/iostool");
|
||||
return res;
|
||||
}
|
||||
|
||||
QString IosToolHandler::iosSimulatorToolPath()
|
||||
{
|
||||
QString res = QCoreApplication::applicationDirPath() + QLatin1String("/iossim");
|
||||
QString res = Core::ICore::libexecPath() + QLatin1String("/ios/iossim");
|
||||
return res;
|
||||
}
|
||||
|
||||
|
||||
3
src/tools/3rdparty/iossim/iossim.pro
vendored
3
src/tools/3rdparty/iossim/iossim.pro
vendored
@@ -34,7 +34,8 @@ iPhoneSimulatorRemoteClientDirectLinking {
|
||||
|
||||
TEMPLATE = app
|
||||
|
||||
DESTDIR = $$IDE_BIN_PATH
|
||||
# put into a subdir, so we can deploy a separate qt.conf for it
|
||||
DESTDIR = $$IDE_LIBEXEC_PATH/ios
|
||||
include(../../../rpath.pri)
|
||||
|
||||
OBJECTIVE_SOURCES += \
|
||||
|
||||
2
src/tools/3rdparty/iossim/iossim.qbs
vendored
2
src/tools/3rdparty/iossim/iossim.qbs
vendored
@@ -24,4 +24,6 @@ QtcTool {
|
||||
"-fobjc-link-runtime"])
|
||||
cpp.frameworks: base.concat(["Foundation", "CoreServices", "ApplicationServices", "IOKit"])
|
||||
cpp.frameworkPaths: base.concat("/System/Library/PrivateFrameworks")
|
||||
|
||||
toolInstallDir: project.ide_libexec_path + "/ios"
|
||||
}
|
||||
|
||||
@@ -9,9 +9,11 @@ Application {
|
||||
return ["-Wl,-s"]
|
||||
}
|
||||
|
||||
property string toolInstallDir: project.ide_libexec_path
|
||||
|
||||
Group {
|
||||
fileTagsFilter: product.type
|
||||
qbs.install: true
|
||||
qbs.installDir: project.ide_libexec_path
|
||||
qbs.installDir: toolInstallDir
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
TARGET = iosTool
|
||||
TARGET = iostool
|
||||
|
||||
QT += core
|
||||
QT += gui xml
|
||||
@@ -17,7 +17,8 @@ TEMPLATE = app
|
||||
|
||||
include(../../../qtcreator.pri)
|
||||
|
||||
DESTDIR = $$IDE_BIN_PATH
|
||||
# put into a subdir, so we can deploy a separate qt.conf for it
|
||||
DESTDIR = $$IDE_LIBEXEC_PATH/ios
|
||||
include(../../rpath.pri)
|
||||
|
||||
SOURCES += main.cpp \
|
||||
|
||||
@@ -18,4 +18,6 @@ QtcTool {
|
||||
cpp.frameworks: base.concat(["CoreFoundation", "CoreServices", "IOKit", "Security",
|
||||
"SystemConfiguration"])
|
||||
cpp.libraries: base.concat(["ssl", "bz2"])
|
||||
|
||||
toolInstallDir: project.ide_libexec_path + "/ios"
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user