diff options
author | Ivan Donchevskii <ivan.donchevskii@qt.io> | 2019-01-31 10:30:58 +0100 |
---|---|---|
committer | Ivan Donchevskii <ivan.donchevskii@qt.io> | 2019-02-07 15:03:39 +0000 |
commit | dd778bcb2388bdc643e1d5eb5ce60c03cee2719b (patch) | |
tree | 99f53071034dd48b3ad6df63750f0dc2f72cdf37 /src/tools/clangpchmanagerbackend | |
parent | 874dde6863129ce5b236a8c7b08e75aec2d5f5dc (diff) | |
download | qt-creator-dd778bcb2388bdc643e1d5eb5ce60c03cee2719b.tar.gz |
Clang: Use full paths in compilation database for symbol collector
We we FilePath and NativeFilePath so that compiler warns us if we mix them
up.
Change-Id: I33d7abc7e4e724dff2a9b2b9b23deea8b358ccfd
Reviewed-by: Marco Bubke <marco.bubke@qt.io>
Diffstat (limited to 'src/tools/clangpchmanagerbackend')
-rw-r--r-- | src/tools/clangpchmanagerbackend/source/pchcreator.cpp | 17 | ||||
-rw-r--r-- | src/tools/clangpchmanagerbackend/source/pchcreator.h | 2 |
2 files changed, 10 insertions, 9 deletions
diff --git a/src/tools/clangpchmanagerbackend/source/pchcreator.cpp b/src/tools/clangpchmanagerbackend/source/pchcreator.cpp index 777252dece..4333d5706a 100644 --- a/src/tools/clangpchmanagerbackend/source/pchcreator.cpp +++ b/src/tools/clangpchmanagerbackend/source/pchcreator.cpp @@ -94,10 +94,9 @@ FilePath PchCreator::generatePchFilePath() const ".pch"}}; } -std::vector<std::string> PchCreator::generateClangCompilerArguments( - const PchTask &pchTask, - FilePathView sourceFilePath, - FilePathView pchOutputPath) +Utils::SmallStringVector PchCreator::generateClangCompilerArguments(const PchTask &pchTask, + FilePathView sourceFilePath, + FilePathView pchOutputPath) { CommandLineBuilder<PchTask> builder{pchTask, pchTask.toolChainArguments, @@ -114,10 +113,12 @@ void PchCreator::generatePch(PchTask &&pchTask) auto content = generatePchIncludeFileContent(pchTask.includes); auto pchOutputPath = generatePchFilePath(); - m_clangTool.addFile(m_environment.pchBuildDirectory().toStdString(), - "dummy.h", - Utils::SmallStringView(content), - generateClangCompilerArguments(pchTask, "dummy.h", pchOutputPath)); + FilePath headerFilePath{m_environment.pchBuildDirectory().toStdString(), "dummy.h"}; + Utils::SmallStringVector commandLine = generateClangCompilerArguments(pchTask, + headerFilePath, + pchOutputPath); + + m_clangTool.addFile(std::move(headerFilePath), std::move(content), std::move(commandLine)); bool success = generatePch(); diff --git a/src/tools/clangpchmanagerbackend/source/pchcreator.h b/src/tools/clangpchmanagerbackend/source/pchcreator.h index 1e36e18b6e..37d0c7c8a1 100644 --- a/src/tools/clangpchmanagerbackend/source/pchcreator.h +++ b/src/tools/clangpchmanagerbackend/source/pchcreator.h @@ -84,7 +84,7 @@ public: bool generatePch(); FilePath generatePchFilePath() const; - static std::vector<std::string> generateClangCompilerArguments(const PchTask &pchTask, + static Utils::SmallStringVector generateClangCompilerArguments(const PchTask &pchTask, FilePathView includePchHeaderPath, FilePathView pchPath); |