diff options
author | Ivan Donchevskii <ivan.donchevskii@qt.io> | 2017-09-27 10:32:52 +0200 |
---|---|---|
committer | Ivan Donchevskii <ivan.donchevskii@qt.io> | 2017-10-23 12:46:34 +0000 |
commit | b10f8484c7bb62b297fbbdafdbf9ef0e7074a01a (patch) | |
tree | 5d7af481cacb6f618d121185474e00cfc36f1958 /src/plugins/cpptools/compileroptionsbuilder.h | |
parent | f19facd37842de97f2330e3a34c2bdfc3552dea9 (diff) | |
download | qt-creator-b10f8484c7bb62b297fbbdafdbf9ef0e7074a01a.tar.gz |
CppTools: merge CompilerOptionsBuilder with Clang one
Since it's never used for other compilers.
Change-Id: I9512692d1dc9f9a701ea2453b7d50005478bed5d
Reviewed-by: Nikolai Kosjar <nikolai.kosjar@qt.io>
Diffstat (limited to 'src/plugins/cpptools/compileroptionsbuilder.h')
-rw-r--r-- | src/plugins/cpptools/compileroptionsbuilder.h | 23 |
1 files changed, 18 insertions, 5 deletions
diff --git a/src/plugins/cpptools/compileroptionsbuilder.h b/src/plugins/cpptools/compileroptionsbuilder.h index 8ca985dc28..5f5e3d5e8d 100644 --- a/src/plugins/cpptools/compileroptionsbuilder.h +++ b/src/plugins/cpptools/compileroptionsbuilder.h @@ -39,9 +39,21 @@ public: Use }; - CompilerOptionsBuilder(const ProjectPart &projectPart); + CompilerOptionsBuilder(const ProjectPart &projectPart, + const QString &clangVersion = QString(), + const QString &clangResourceDirectory = QString()); virtual ~CompilerOptionsBuilder() {} + virtual void addTargetTriple(); + virtual void enableExceptions(); + virtual void addPredefinedHeaderPathsOptions(); + virtual void addLanguageOption(ProjectFile::Kind fileKind); + virtual void addOptionsForLanguage(bool checkForBorlandExtensions = true); + + virtual void addExtraOptions() {} + + QStringList build(ProjectFile::Kind fileKind, + PchUsage pchUsage); QStringList options() const; // Add custom options @@ -50,19 +62,17 @@ public: // Add options based on project part void addWordWidth(); - virtual void addTargetTriple(); - virtual void enableExceptions(); void addHeaderPathOptions(); void addPrecompiledHeaderOptions(PchUsage pchUsage); void addToolchainAndProjectMacros(); void addMacros(const ProjectExplorer::Macros ¯os); - virtual void addLanguageOption(ProjectFile::Kind fileKind); - virtual void addOptionsForLanguage(bool checkForBorlandExtensions = true); void addMsvcCompatibilityVersion(); void undefineCppLanguageFeatureMacrosForMsvc2015(); void addDefineFloat128ForMingw(); + void addProjectConfigFileInclude(); + void undefineClangVersionMacrosForMsvc(); protected: virtual bool excludeDefineDirective(const ProjectExplorer::Macro ¯o) const; @@ -79,8 +89,11 @@ private: QByteArray macroOption(const ProjectExplorer::Macro ¯o) const; QByteArray toDefineOption(const ProjectExplorer::Macro ¯o) const; QString defineDirectiveToDefineOption(const ProjectExplorer::Macro &marco) const; + QString clangIncludeDirectory() const; QStringList m_options; + QString m_clangVersion; + QString m_clangResourceDirectory; }; } // namespace CppTools |