summaryrefslogtreecommitdiff
path: root/src/plugins/qbsprojectmanager/defaultpropertyprovider.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/plugins/qbsprojectmanager/defaultpropertyprovider.cpp')
-rw-r--r--src/plugins/qbsprojectmanager/defaultpropertyprovider.cpp27
1 files changed, 24 insertions, 3 deletions
diff --git a/src/plugins/qbsprojectmanager/defaultpropertyprovider.cpp b/src/plugins/qbsprojectmanager/defaultpropertyprovider.cpp
index 853227da67..ca3ccfa16d 100644
--- a/src/plugins/qbsprojectmanager/defaultpropertyprovider.cpp
+++ b/src/plugins/qbsprojectmanager/defaultpropertyprovider.cpp
@@ -95,9 +95,19 @@ QVariantMap DefaultPropertyProvider::properties(const ProjectExplorer::Kit *k, c
? QStringList() << QLatin1String("mingw") << QLatin1String("gcc")
: QStringList() << QLatin1String("msvc"));
} else if (targetAbi.os() == ProjectExplorer::Abi::MacOS) {
- data.insert(QLatin1String(QBS_TARGETOS), QStringList() << QLatin1String("osx")
- << QLatin1String("darwin") << QLatin1String("bsd4")
- << QLatin1String("bsd") << QLatin1String("unix"));
+ const char IOSQT[] = "Qt4ProjectManager.QtVersion.Ios"; // from Ios::Constants (include header?)
+ if (qt && qt->type() == QLatin1String(IOSQT)) {
+ QStringList targetOS;
+ if (targetAbi.architecture() == ProjectExplorer::Abi::X86Architecture)
+ targetOS << QLatin1String("ios-simulator");
+ targetOS << QLatin1String("ios") << QLatin1String("darwin")
+ << QLatin1String("bsd4") << QLatin1String("bsd") << QLatin1String("unix");
+ data.insert(QLatin1String(QBS_TARGETOS), targetOS);
+ } else {
+ data.insert(QLatin1String(QBS_TARGETOS), QStringList() << QLatin1String("osx")
+ << QLatin1String("darwin") << QLatin1String("bsd4")
+ << QLatin1String("bsd") << QLatin1String("unix"));
+ }
if (tc->type() != QLatin1String("clang")) {
data.insert(QLatin1String(QBS_TOOLCHAIN), QLatin1String("gcc"));
} else {
@@ -117,6 +127,17 @@ QVariantMap DefaultPropertyProvider::properties(const ProjectExplorer::Kit *k, c
<< QLatin1String("llvm")
<< QLatin1String("gcc"));
}
+ } else {
+ // TODO: Factor out toolchain type setting.
+ data.insert(QLatin1String(QBS_TARGETOS), QStringList() << QLatin1String("unix"));
+ if (tc->type() != QLatin1String("clang")) {
+ data.insert(QLatin1String(QBS_TOOLCHAIN), QLatin1String("gcc"));
+ } else {
+ data.insert(QLatin1String(QBS_TOOLCHAIN),
+ QStringList() << QLatin1String("clang")
+ << QLatin1String("llvm")
+ << QLatin1String("gcc"));
+ }
}
Utils::FileName cxx = tc->compilerCommand();
data.insert(QLatin1String(CPP_TOOLCHAINPATH), cxx.toFileInfo().absolutePath());