summaryrefslogtreecommitdiff
path: root/src/plugins/cpptools/compileroptionsbuilder.cpp
diff options
context:
space:
mode:
authorIvan Donchevskii <ivan.donchevskii@qt.io>2018-04-30 15:26:36 +0200
committerIvan Donchevskii <ivan.donchevskii@qt.io>2018-05-04 09:58:37 +0000
commit52ac74b61ce7000d693b846e0de1b4cf833ca50a (patch)
tree8d1b6d85839d11b2207e244b024a05b4a77a25c7 /src/plugins/cpptools/compileroptionsbuilder.cpp
parent80ae992c91985389f6d870ac0201c16d895bc5cc (diff)
downloadqt-creator-52ac74b61ce7000d693b846e0de1b4cf833ca50a.tar.gz
ClangTools: Remove clang executable settings
We use custom clang executable and it does not make sense anymore to give a choice of changing it. Change-Id: Icf86042ac3fcd08c320ef2bbdaabef1102b023b5 Reviewed-by: Nikolai Kosjar <nikolai.kosjar@qt.io>
Diffstat (limited to 'src/plugins/cpptools/compileroptionsbuilder.cpp')
-rw-r--r--src/plugins/cpptools/compileroptionsbuilder.cpp17
1 files changed, 13 insertions, 4 deletions
diff --git a/src/plugins/cpptools/compileroptionsbuilder.cpp b/src/plugins/cpptools/compileroptionsbuilder.cpp
index 93e6ed3c10..57f937fb18 100644
--- a/src/plugins/cpptools/compileroptionsbuilder.cpp
+++ b/src/plugins/cpptools/compileroptionsbuilder.cpp
@@ -528,7 +528,7 @@ void CompilerOptionsBuilder::addClangIncludeFolder()
{
QTC_CHECK(!m_clangVersion.isEmpty());
add(SYSTEM_INCLUDE_PREFIX);
- add(clangIncludeDirectory());
+ add(clangIncludeDirectory(m_clangVersion, m_clangResourceDirectory));
}
void CompilerOptionsBuilder::addProjectConfigFileInclude()
@@ -548,14 +548,23 @@ static QString creatorLibexecPath()
#endif
}
-QString CompilerOptionsBuilder::clangIncludeDirectory() const
+QString clangIncludeDirectory(const QString &clangVersion, const QString &clangResourceDirectory)
{
- QDir dir(creatorLibexecPath() + "/clang" + clangIncludePath(m_clangVersion));
+ QDir dir(creatorLibexecPath() + "/clang" + clangIncludePath(clangVersion));
if (!dir.exists() || !QFileInfo(dir, "stdint.h").exists())
- dir = QDir(m_clangResourceDirectory);
+ dir = QDir(clangResourceDirectory);
return QDir::toNativeSeparators(dir.canonicalPath());
}
+QString clangExecutable(const QString &clangBinDirectory)
+{
+ const QString hostExeSuffix(QTC_HOST_EXE_SUFFIX);
+ QDir executable(creatorLibexecPath() + "/clang/bin/clang" + hostExeSuffix);
+ if (!executable.exists())
+ executable = QDir(clangBinDirectory + "/clang" + hostExeSuffix);
+ return QDir::toNativeSeparators(executable.canonicalPath());
+}
+
void CompilerOptionsBuilder::undefineClangVersionMacrosForMsvc()
{
if (m_projectPart.toolchainType == ProjectExplorer::Constants::MSVC_TOOLCHAIN_TYPEID) {