diff options
Diffstat (limited to 'src/libs/utils/consoleprocess_unix.cpp')
-rw-r--r-- | src/libs/utils/consoleprocess_unix.cpp | 28 |
1 files changed, 15 insertions, 13 deletions
diff --git a/src/libs/utils/consoleprocess_unix.cpp b/src/libs/utils/consoleprocess_unix.cpp index c13430e33c..6607e71ed7 100644 --- a/src/libs/utils/consoleprocess_unix.cpp +++ b/src/libs/utils/consoleprocess_unix.cpp @@ -32,6 +32,8 @@ #include "environment.h" #include "qtcprocess.h" +#include <utils/hostosinfo.h> + #include <QCoreApplication> #include <QDir> #include <QSettings> @@ -133,12 +135,14 @@ bool ConsoleProcess::start(const QString &program, const QString &args) } } + if (Utils::HostOsInfo::isMacHost()) { + xtermArgs << (QCoreApplication::applicationDirPath() + + QLatin1String("/../Resources/qtcreator_process_stub")); + } else { + xtermArgs << (QCoreApplication::applicationDirPath() + + QLatin1String("/qtcreator_process_stub")); + } xtermArgs -#ifdef Q_OS_MAC - << (QCoreApplication::applicationDirPath() + QLatin1String("/../Resources/qtcreator_process_stub")) -#else - << (QCoreApplication::applicationDirPath() + QLatin1String("/qtcreator_process_stub")) -#endif << modeOption(d->m_mode) << d->m_stubServer.fullServerName() << msgPromptToClose() @@ -295,9 +299,9 @@ static const Terminal knownTerminals[] = QString ConsoleProcess::defaultTerminalEmulator() { -#ifdef Q_OS_MAC - return QLatin1String("/usr/X11/bin/xterm -e"); -#else + if (Utils::HostOsInfo::isMacHost()) + return QLatin1String("/usr/X11/bin/xterm"); + const Environment env = Environment::systemEnvironment(); const int terminalCount = int(sizeof(knownTerminals) / sizeof(knownTerminals[0])); for (int i = 0; i < terminalCount; ++i) { @@ -309,14 +313,13 @@ QString ConsoleProcess::defaultTerminalEmulator() } } return QLatin1String("xterm -e"); -#endif } QStringList ConsoleProcess::availableTerminalEmulators() { -#ifdef Q_OS_MAC - return QStringList(defaultTerminalEmulator()); -#else + if (Utils::HostOsInfo::isMacHost()) + return QStringList(defaultTerminalEmulator()); + QStringList result; const Environment env = Environment::systemEnvironment(); const int terminalCount = int(sizeof(knownTerminals) / sizeof(knownTerminals[0])); @@ -330,7 +333,6 @@ QStringList ConsoleProcess::availableTerminalEmulators() } result.sort(); return result; -#endif } QString ConsoleProcess::terminalEmulator(const QSettings *settings) |