diff options
author | Yuchen Deng <loaden@gmail.com> | 2013-10-20 23:44:52 +0800 |
---|---|---|
committer | Tobias Hunger <tobias.hunger@digia.com> | 2013-10-21 12:00:29 +0200 |
commit | 67a7eba6faf7fdd4f1007dba5ad7cceb0785ae51 (patch) | |
tree | 1dfc3ba5afa964a7b32d228c3ce0f6429c74f4db /src | |
parent | 18cba4fcf92a687237ecd5f737f5c61771f9358e (diff) | |
download | qt-creator-67a7eba6faf7fdd4f1007dba5ad7cceb0785ae51.tar.gz |
Add MSVC2013 support
Change-Id: I956b5796a67792f826ddc72e7681609372a9c029
Reviewed-by: Tobias Hunger <tobias.hunger@digia.com>
Diffstat (limited to 'src')
-rw-r--r-- | src/plugins/projectexplorer/abi.cpp | 14 | ||||
-rw-r--r-- | src/plugins/projectexplorer/abi.h | 1 | ||||
-rw-r--r-- | src/plugins/projectexplorer/abstractmsvctoolchain.cpp | 3 | ||||
-rw-r--r-- | src/plugins/projectexplorer/msvctoolchain.cpp | 10 |
4 files changed, 24 insertions, 4 deletions
diff --git a/src/plugins/projectexplorer/abi.cpp b/src/plugins/projectexplorer/abi.cpp index 83705825cc..2ce26a195d 100644 --- a/src/plugins/projectexplorer/abi.cpp +++ b/src/plugins/projectexplorer/abi.cpp @@ -162,6 +162,9 @@ static QList<Abi> parseCoffHeader(const QByteArray &data) case 11: flavor = Abi::WindowsMsvc2012Flavor; break; + case 12: + flavor = Abi::WindowsMsvc2013Flavor; + break; default: // Keep unknown flavor if (minorLinker != 0) flavor = Abi::WindowsMSysFlavor; // MSVC seems to avoid using minor numbers @@ -402,6 +405,8 @@ Abi::Abi(const QString &abiString) : m_osFlavor = WindowsMsvc2010Flavor; else if (abiParts.at(2) == QLatin1String("msvc2012") && m_os == WindowsOS) m_osFlavor = WindowsMsvc2012Flavor; + else if (abiParts.at(2) == QLatin1String("msvc2013") && m_os == WindowsOS) + m_osFlavor = WindowsMsvc2013Flavor; else if (abiParts.at(2) == QLatin1String("msys") && m_os == WindowsOS) m_osFlavor = WindowsMSysFlavor; else if (abiParts.at(2) == QLatin1String("ce") && m_os == WindowsOS) @@ -650,6 +655,8 @@ QString Abi::toString(const OSFlavor &of) return QLatin1String("msvc2010"); case ProjectExplorer::Abi::WindowsMsvc2012Flavor: return QLatin1String("msvc2012"); + case ProjectExplorer::Abi::WindowsMsvc2013Flavor: + return QLatin1String("msvc2013"); case ProjectExplorer::Abi::WindowsMSysFlavor: return QLatin1String("msys"); case ProjectExplorer::Abi::WindowsCEFlavor: @@ -699,7 +706,8 @@ QList<Abi::OSFlavor> Abi::flavorsForOs(const Abi::OS &o) return result << GenericUnixFlavor << SolarisUnixFlavor << UnknownFlavor; case WindowsOS: return result << WindowsMsvc2005Flavor << WindowsMsvc2008Flavor << WindowsMsvc2010Flavor - << WindowsMsvc2012Flavor << WindowsMSysFlavor << WindowsCEFlavor << UnknownFlavor; + << WindowsMsvc2012Flavor << WindowsMsvc2013Flavor << WindowsMSysFlavor + << WindowsCEFlavor << UnknownFlavor; case UnknownOS: return result << UnknownFlavor; default: @@ -717,7 +725,9 @@ Abi Abi::hostAbi() #if defined (Q_OS_WIN) os = WindowsOS; -#if _MSC_VER == 1700 +#if _MSC_VER == 1800 + subos = WindowsMsvc2013Flavor; +#elif _MSC_VER == 1700 subos = WindowsMsvc2012Flavor; #elif _MSC_VER == 1600 subos = WindowsMsvc2010Flavor; diff --git a/src/plugins/projectexplorer/abi.h b/src/plugins/projectexplorer/abi.h index a805a1be04..473918b918 100644 --- a/src/plugins/projectexplorer/abi.h +++ b/src/plugins/projectexplorer/abi.h @@ -88,6 +88,7 @@ public: WindowsMsvc2008Flavor, WindowsMsvc2010Flavor, WindowsMsvc2012Flavor, + WindowsMsvc2013Flavor, WindowsMSysFlavor, WindowsCEFlavor, diff --git a/src/plugins/projectexplorer/abstractmsvctoolchain.cpp b/src/plugins/projectexplorer/abstractmsvctoolchain.cpp index cf20d23f1b..15ad063896 100644 --- a/src/plugins/projectexplorer/abstractmsvctoolchain.cpp +++ b/src/plugins/projectexplorer/abstractmsvctoolchain.cpp @@ -99,7 +99,8 @@ ToolChain::CompilerFlags AbstractMsvcToolChain::compilerFlags(const QStringList flags &= ~MicrosoftExtensions; if (m_abi.osFlavor() == Abi::WindowsMsvc2010Flavor - || m_abi.osFlavor() == Abi::WindowsMsvc2012Flavor) + || m_abi.osFlavor() == Abi::WindowsMsvc2012Flavor + || m_abi.osFlavor() == Abi::WindowsMsvc2013Flavor) flags |= StandardCxx11; return flags; diff --git a/src/plugins/projectexplorer/msvctoolchain.cpp b/src/plugins/projectexplorer/msvctoolchain.cpp index e3544f7949..cb0f7f6686 100644 --- a/src/plugins/projectexplorer/msvctoolchain.cpp +++ b/src/plugins/projectexplorer/msvctoolchain.cpp @@ -103,7 +103,9 @@ static Abi findAbiOfMsvc(MsvcToolChain::Type type, MsvcToolChain::Platform platf else if (version == QLatin1String("v7.0A") || version == QLatin1String("v7.1")) msvcVersionString = QLatin1String("10.0"); } - if (msvcVersionString.startsWith(QLatin1String("11."))) + if (msvcVersionString.startsWith(QLatin1String("12."))) + flavor = Abi::WindowsMsvc2013Flavor; + else if (msvcVersionString.startsWith(QLatin1String("11."))) flavor = Abi::WindowsMsvc2012Flavor; else if (msvcVersionString.startsWith(QLatin1String("10."))) flavor = Abi::WindowsMsvc2010Flavor; @@ -359,6 +361,12 @@ QList<Utils::FileName> MsvcToolChain::suggestedMkspecList() const << Utils::FileName::fromString(QLatin1String("win32-msvc2012")) << Utils::FileName::fromString(QLatin1String("win32-msvc2010")); break; + case ProjectExplorer::Abi::WindowsMsvc2013Flavor: + QList<Utils::FileName>() + << Utils::FileName::fromString(QLatin1String("win32-msvc2013")) + << Utils::FileName::fromString(QLatin1String("win32-msvc2012")) + << Utils::FileName::fromString(QLatin1String("win32-msvc2010")); + break; default: break; } |