aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorhjk <hjk@qt.io>2019-06-14 13:25:27 +0200
committerhjk <hjk@qt.io>2019-06-18 09:41:09 +0000
commitbe55253f6fd8d95952006c113a948a9c48b09414 (patch)
tree6f1482dc2d1cb23684ab3ecd6dd1b1b99cbc8831
parent295a0c559396c725c3d9a157661ea2acda129ca8 (diff)
ProjectExplorer: Remove the display argument
... from the special MsvcToolChain constructor. There's a generic way to set that in the base already. Change-Id: Idd9f44672fec16ff8e3b08ad0f9809b1e7e066f0 Reviewed-by: David Schulz <david.schulz@qt.io>
-rw-r--r--src/plugins/projectexplorer/msvctoolchain.cpp35
-rw-r--r--src/plugins/projectexplorer/msvctoolchain.h3
2 files changed, 18 insertions, 20 deletions
diff --git a/src/plugins/projectexplorer/msvctoolchain.cpp b/src/plugins/projectexplorer/msvctoolchain.cpp
index ac53671c05..34e56c18d0 100644
--- a/src/plugins/projectexplorer/msvctoolchain.cpp
+++ b/src/plugins/projectexplorer/msvctoolchain.cpp
@@ -844,7 +844,6 @@ static void addToAvailableMsvcToolchains(const MsvcToolChain *toolchain)
}
MsvcToolChain::MsvcToolChain(Core::Id typeId,
- const QString &name,
const Abi &abi,
const QString &varsBat,
const QString &varsBatArg)
@@ -861,10 +860,6 @@ MsvcToolChain::MsvcToolChain(Core::Id typeId,
&MsvcToolChain::environmentModifications,
varsBat,
varsBatArg));
-
- Q_ASSERT(!name.isEmpty());
-
- setDisplayName(name);
}
MsvcToolChain::MsvcToolChain(Core::Id typeId)
@@ -1594,7 +1589,8 @@ static QList<ToolChain *> detectClangClToolChainInPath(const QString &clangClPat
clangClPath);
}));
if (!tc) {
- tc = new ClangClToolChain(name, clangClPath);
+ tc = new ClangClToolChain(clangClPath);
+ tc->setDisplayName(name);
tc->setDetection(ToolChain::AutoDetection);
tc->setLanguage(language);
tc->resetMsvcToolChain(toolChain);
@@ -1656,9 +1652,8 @@ void ClangClToolChainConfigWidget::makeReadOnlyImpl()
// clang-cl.exe as a [to some extent] compatible drop-in replacement for cl.
// --------------------------------------------------------------------------
-ClangClToolChain::ClangClToolChain(const QString &name,
- const QString &clangPath)
- : MsvcToolChain(Constants::CLANG_CL_TOOLCHAIN_TYPEID, name, Abi(), "", "")
+ClangClToolChain::ClangClToolChain(const QString &clangPath)
+ : MsvcToolChain(Constants::CLANG_CL_TOOLCHAIN_TYPEID, Abi(), "", "")
, m_clangPath(clangPath)
{}
@@ -1838,7 +1833,8 @@ static QList<ToolChain *> findOrCreateToolChain(const QList<ToolChain *> &alread
return mtc->varsBat() == varsBat && mtc->varsBatArg() == varsBatArg;
});
if (!tc) {
- tc = new MsvcToolChain(Constants::MSVC_TOOLCHAIN_TYPEID, name, abi, varsBat, varsBatArg);
+ tc = new MsvcToolChain(Constants::MSVC_TOOLCHAIN_TYPEID, abi, varsBat, varsBatArg);
+ tc->setDisplayName(name);
tc->setLanguage(language);
}
res << tc;
@@ -1863,9 +1859,8 @@ static void detectCppBuildTools2015(QList<ToolChain *> *list)
{" (x86_arm)", "x86_arm", Abi::ArmArchitecture, Abi::PEFormat, 32},
{" (x64_arm)", "amd64_arm", Abi::ArmArchitecture, Abi::PEFormat, 64}};
- const QString name = QStringLiteral("Microsoft Visual C++ Build Tools");
- const QString vcVarsBat = windowsProgramFilesDir() + QLatin1Char('/') + name
- + QStringLiteral("/vcbuildtools.bat");
+ const QString name = "Microsoft Visual C++ Build Tools";
+ const QString vcVarsBat = windowsProgramFilesDir() + '/' + name + "/vcbuildtools.bat";
if (!QFileInfo(vcVarsBat).isFile())
return;
for (const Entry &e : entries) {
@@ -1876,10 +1871,10 @@ static void detectCppBuildTools2015(QList<ToolChain *> *list)
e.wordSize);
for (auto language : {Constants::C_LANGUAGE_ID, Constants::CXX_LANGUAGE_ID}) {
auto tc = new MsvcToolChain(Constants::MSVC_TOOLCHAIN_TYPEID,
- name + QLatin1String(e.postFix),
abi,
vcVarsBat,
QLatin1String(e.varsBatArg));
+ tc->setDisplayName(name + QLatin1String(e.postFix));
tc->setDetection(ToolChain::AutoDetection);
tc->setLanguage(language);
list->append(tc);
@@ -2032,7 +2027,10 @@ QList<ToolChain *> ClangClToolChainFactory::autoDetect(const QList<ToolChain *>
ToolChain *ClangClToolChainFactory::create()
{
- return new ClangClToolChain("clang-cl", "");
+ // FIXME: Looks odd. Shouldn't clang-cl be the path?
+ auto tc = new ClangClToolChain("");
+ tc->setDisplayName("clang-cl");
+ return tc;
}
bool MsvcToolChain::operator==(const ToolChain &other) const
@@ -2152,9 +2150,10 @@ bool MsvcToolChainFactory::canCreate() const
ToolChain *MsvcToolChainFactory::create()
{
- return new MsvcToolChain(Constants::MSVC_TOOLCHAIN_TYPEID,
- "Microsoft Visual C++ Compiler",
- Abi::hostAbi(), g_availableMsvcToolchains.first()->varsBat(), "");
+ auto tc = new MsvcToolChain(Constants::MSVC_TOOLCHAIN_TYPEID,
+ Abi::hostAbi(), g_availableMsvcToolchains.first()->varsBat(), "");
+ tc->setDisplayName("Microsoft Visual C++ Compiler");
+ return tc;
}
MsvcToolChain::WarningFlagAdder::WarningFlagAdder(const QString &flag, WarningFlags &flags)
diff --git a/src/plugins/projectexplorer/msvctoolchain.h b/src/plugins/projectexplorer/msvctoolchain.h
index 13bd5d1c6a..57cf93fedf 100644
--- a/src/plugins/projectexplorer/msvctoolchain.h
+++ b/src/plugins/projectexplorer/msvctoolchain.h
@@ -58,7 +58,6 @@ public:
enum Platform { x86, amd64, x86_amd64, ia64, x86_ia64, arm, x86_arm, amd64_arm, amd64_x86 };
explicit MsvcToolChain(Core::Id typeId,
- const QString &name,
const Abi &abi,
const QString &varsBat,
const QString &varsBatArg);
@@ -173,7 +172,7 @@ protected:
class PROJECTEXPLORER_EXPORT ClangClToolChain : public MsvcToolChain
{
public:
- ClangClToolChain(const QString &name, const QString &llvmDir);
+ explicit ClangClToolChain(const QString &llvmDir);
ClangClToolChain();
bool isValid() const override;