forked from qt-creator/qt-creator
support Visual Studio 2015
Task-number: QTBUG-46344 Change-Id: I49c3e2776e65cc83d40d1f5ab3be1365d17242d1 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@theqtcompany.com>
This commit is contained in:
@@ -72,7 +72,8 @@ QByteArray GeneratorInfo::generator() const
|
|||||||
|| targetAbi.osFlavor() == ProjectExplorer::Abi::WindowsMsvc2008Flavor
|
|| targetAbi.osFlavor() == ProjectExplorer::Abi::WindowsMsvc2008Flavor
|
||||||
|| targetAbi.osFlavor() == ProjectExplorer::Abi::WindowsMsvc2010Flavor
|
|| targetAbi.osFlavor() == ProjectExplorer::Abi::WindowsMsvc2010Flavor
|
||||||
|| targetAbi.osFlavor() == ProjectExplorer::Abi::WindowsMsvc2012Flavor
|
|| targetAbi.osFlavor() == ProjectExplorer::Abi::WindowsMsvc2012Flavor
|
||||||
|| targetAbi.osFlavor() == ProjectExplorer::Abi::WindowsMsvc2013Flavor) {
|
|| targetAbi.osFlavor() == ProjectExplorer::Abi::WindowsMsvc2013Flavor
|
||||||
|
|| targetAbi.osFlavor() == ProjectExplorer::Abi::WindowsMsvc2015Flavor) {
|
||||||
return "NMake Makefiles";
|
return "NMake Makefiles";
|
||||||
} else if (targetAbi.osFlavor() == ProjectExplorer::Abi::WindowsMSysFlavor) {
|
} else if (targetAbi.osFlavor() == ProjectExplorer::Abi::WindowsMSysFlavor) {
|
||||||
if (Utils::HostOsInfo::isWindowsHost())
|
if (Utils::HostOsInfo::isWindowsHost())
|
||||||
@@ -105,7 +106,8 @@ QString GeneratorInfo::displayName() const
|
|||||||
|| targetAbi.osFlavor() == ProjectExplorer::Abi::WindowsMsvc2008Flavor
|
|| targetAbi.osFlavor() == ProjectExplorer::Abi::WindowsMsvc2008Flavor
|
||||||
|| targetAbi.osFlavor() == ProjectExplorer::Abi::WindowsMsvc2010Flavor
|
|| targetAbi.osFlavor() == ProjectExplorer::Abi::WindowsMsvc2010Flavor
|
||||||
|| targetAbi.osFlavor() == ProjectExplorer::Abi::WindowsMsvc2012Flavor
|
|| targetAbi.osFlavor() == ProjectExplorer::Abi::WindowsMsvc2012Flavor
|
||||||
|| targetAbi.osFlavor() == ProjectExplorer::Abi::WindowsMsvc2013Flavor) {
|
|| targetAbi.osFlavor() == ProjectExplorer::Abi::WindowsMsvc2013Flavor
|
||||||
|
|| targetAbi.osFlavor() == ProjectExplorer::Abi::WindowsMsvc2015Flavor) {
|
||||||
return tr("NMake Generator (%1)").arg(m_kit->displayName());
|
return tr("NMake Generator (%1)").arg(m_kit->displayName());
|
||||||
} else if (targetAbi.osFlavor() == ProjectExplorer::Abi::WindowsMSysFlavor) {
|
} else if (targetAbi.osFlavor() == ProjectExplorer::Abi::WindowsMSysFlavor) {
|
||||||
if (Utils::HostOsInfo::isWindowsHost())
|
if (Utils::HostOsInfo::isWindowsHost())
|
||||||
@@ -140,7 +142,8 @@ QList<GeneratorInfo> GeneratorInfo::generatorInfosFor(ProjectExplorer::Kit *k, N
|
|||||||
|| targetAbi.osFlavor() == ProjectExplorer::Abi::WindowsMsvc2008Flavor
|
|| targetAbi.osFlavor() == ProjectExplorer::Abi::WindowsMsvc2008Flavor
|
||||||
|| targetAbi.osFlavor() == ProjectExplorer::Abi::WindowsMsvc2010Flavor
|
|| targetAbi.osFlavor() == ProjectExplorer::Abi::WindowsMsvc2010Flavor
|
||||||
|| targetAbi.osFlavor() == ProjectExplorer::Abi::WindowsMsvc2012Flavor
|
|| targetAbi.osFlavor() == ProjectExplorer::Abi::WindowsMsvc2012Flavor
|
||||||
|| targetAbi.osFlavor() == ProjectExplorer::Abi::WindowsMsvc2013Flavor) {
|
|| targetAbi.osFlavor() == ProjectExplorer::Abi::WindowsMsvc2013Flavor
|
||||||
|
|| targetAbi.osFlavor() == ProjectExplorer::Abi::WindowsMsvc2015Flavor) {
|
||||||
if (hasCodeBlocks)
|
if (hasCodeBlocks)
|
||||||
results << GeneratorInfo(k);
|
results << GeneratorInfo(k);
|
||||||
} else if (targetAbi.osFlavor() == ProjectExplorer::Abi::WindowsMSysFlavor) {
|
} else if (targetAbi.osFlavor() == ProjectExplorer::Abi::WindowsMSysFlavor) {
|
||||||
|
@@ -761,6 +761,8 @@ static QByteArray msvcRunTime(const Abi::OSFlavor flavour)
|
|||||||
return "MSVCR110";
|
return "MSVCR110";
|
||||||
case Abi::WindowsMsvc2013Flavor:
|
case Abi::WindowsMsvc2013Flavor:
|
||||||
return "MSVCR120";
|
return "MSVCR120";
|
||||||
|
case Abi::WindowsMsvc2015Flavor:
|
||||||
|
return "MSVCR140";
|
||||||
default:
|
default:
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
@@ -168,6 +168,9 @@ static QList<Abi> parseCoffHeader(const QByteArray &data)
|
|||||||
case 12:
|
case 12:
|
||||||
flavor = Abi::WindowsMsvc2013Flavor;
|
flavor = Abi::WindowsMsvc2013Flavor;
|
||||||
break;
|
break;
|
||||||
|
case 14:
|
||||||
|
flavor = Abi::WindowsMsvc2015Flavor;
|
||||||
|
break;
|
||||||
default: // Keep unknown flavor
|
default: // Keep unknown flavor
|
||||||
if (minorLinker != 0)
|
if (minorLinker != 0)
|
||||||
flavor = Abi::WindowsMSysFlavor; // MSVC seems to avoid using minor numbers
|
flavor = Abi::WindowsMSysFlavor; // MSVC seems to avoid using minor numbers
|
||||||
@@ -414,6 +417,8 @@ Abi::Abi(const QString &abiString) :
|
|||||||
m_osFlavor = WindowsMsvc2012Flavor;
|
m_osFlavor = WindowsMsvc2012Flavor;
|
||||||
else if (abiParts.at(2) == QLatin1String("msvc2013") && m_os == WindowsOS)
|
else if (abiParts.at(2) == QLatin1String("msvc2013") && m_os == WindowsOS)
|
||||||
m_osFlavor = WindowsMsvc2013Flavor;
|
m_osFlavor = WindowsMsvc2013Flavor;
|
||||||
|
else if (abiParts.at(2) == QLatin1String("msvc2015") && m_os == WindowsOS)
|
||||||
|
m_osFlavor = WindowsMsvc2015Flavor;
|
||||||
else if (abiParts.at(2) == QLatin1String("msys") && m_os == WindowsOS)
|
else if (abiParts.at(2) == QLatin1String("msys") && m_os == WindowsOS)
|
||||||
m_osFlavor = WindowsMSysFlavor;
|
m_osFlavor = WindowsMSysFlavor;
|
||||||
else if (abiParts.at(2) == QLatin1String("ce") && m_os == WindowsOS)
|
else if (abiParts.at(2) == QLatin1String("ce") && m_os == WindowsOS)
|
||||||
@@ -674,6 +679,8 @@ QString Abi::toString(const OSFlavor &of)
|
|||||||
return QLatin1String("msvc2012");
|
return QLatin1String("msvc2012");
|
||||||
case Abi::WindowsMsvc2013Flavor:
|
case Abi::WindowsMsvc2013Flavor:
|
||||||
return QLatin1String("msvc2013");
|
return QLatin1String("msvc2013");
|
||||||
|
case Abi::WindowsMsvc2015Flavor:
|
||||||
|
return QLatin1String("msvc2015");
|
||||||
case Abi::WindowsMSysFlavor:
|
case Abi::WindowsMSysFlavor:
|
||||||
return QLatin1String("msys");
|
return QLatin1String("msys");
|
||||||
case Abi::WindowsCEFlavor:
|
case Abi::WindowsCEFlavor:
|
||||||
@@ -724,8 +731,8 @@ QList<Abi::OSFlavor> Abi::flavorsForOs(const Abi::OS &o)
|
|||||||
return result << GenericUnixFlavor << SolarisUnixFlavor << UnknownFlavor;
|
return result << GenericUnixFlavor << SolarisUnixFlavor << UnknownFlavor;
|
||||||
case WindowsOS:
|
case WindowsOS:
|
||||||
return result << WindowsMsvc2005Flavor << WindowsMsvc2008Flavor << WindowsMsvc2010Flavor
|
return result << WindowsMsvc2005Flavor << WindowsMsvc2008Flavor << WindowsMsvc2010Flavor
|
||||||
<< WindowsMsvc2012Flavor << WindowsMsvc2013Flavor << WindowsMSysFlavor
|
<< WindowsMsvc2012Flavor << WindowsMsvc2013Flavor << WindowsMsvc2015Flavor
|
||||||
<< WindowsCEFlavor << UnknownFlavor;
|
<< WindowsMSysFlavor << WindowsCEFlavor << UnknownFlavor;
|
||||||
case VxWorks:
|
case VxWorks:
|
||||||
return result << VxWorksFlavor << UnknownFlavor;
|
return result << VxWorksFlavor << UnknownFlavor;
|
||||||
case UnknownOS:
|
case UnknownOS:
|
||||||
|
@@ -90,6 +90,7 @@ public:
|
|||||||
WindowsMsvc2010Flavor,
|
WindowsMsvc2010Flavor,
|
||||||
WindowsMsvc2012Flavor,
|
WindowsMsvc2012Flavor,
|
||||||
WindowsMsvc2013Flavor,
|
WindowsMsvc2013Flavor,
|
||||||
|
WindowsMsvc2015Flavor,
|
||||||
WindowsMSysFlavor,
|
WindowsMSysFlavor,
|
||||||
WindowsCEFlavor,
|
WindowsCEFlavor,
|
||||||
|
|
||||||
|
@@ -101,7 +101,8 @@ ToolChain::CompilerFlags AbstractMsvcToolChain::compilerFlags(const QStringList
|
|||||||
|
|
||||||
if (m_abi.osFlavor() == Abi::WindowsMsvc2010Flavor
|
if (m_abi.osFlavor() == Abi::WindowsMsvc2010Flavor
|
||||||
|| m_abi.osFlavor() == Abi::WindowsMsvc2012Flavor
|
|| m_abi.osFlavor() == Abi::WindowsMsvc2012Flavor
|
||||||
|| m_abi.osFlavor() == Abi::WindowsMsvc2013Flavor)
|
|| m_abi.osFlavor() == Abi::WindowsMsvc2013Flavor
|
||||||
|
|| m_abi.osFlavor() == Abi::WindowsMsvc2015Flavor)
|
||||||
flags |= StandardCxx11;
|
flags |= StandardCxx11;
|
||||||
|
|
||||||
return flags;
|
return flags;
|
||||||
|
@@ -135,7 +135,9 @@ static Abi findAbiOfMsvc(MsvcToolChain::Type type, MsvcToolChain::Platform platf
|
|||||||
else if (version == QLatin1String("v7.0A") || version == QLatin1String("v7.1"))
|
else if (version == QLatin1String("v7.0A") || version == QLatin1String("v7.1"))
|
||||||
msvcVersionString = QLatin1String("10.0");
|
msvcVersionString = QLatin1String("10.0");
|
||||||
}
|
}
|
||||||
if (msvcVersionString.startsWith(QLatin1String("12.")))
|
if (msvcVersionString.startsWith(QLatin1String("14.")))
|
||||||
|
flavor = Abi::WindowsMsvc2015Flavor;
|
||||||
|
else if (msvcVersionString.startsWith(QLatin1String("12.")))
|
||||||
flavor = Abi::WindowsMsvc2013Flavor;
|
flavor = Abi::WindowsMsvc2013Flavor;
|
||||||
else if (msvcVersionString.startsWith(QLatin1String("11.")))
|
else if (msvcVersionString.startsWith(QLatin1String("11.")))
|
||||||
flavor = Abi::WindowsMsvc2012Flavor;
|
flavor = Abi::WindowsMsvc2012Flavor;
|
||||||
@@ -404,6 +406,14 @@ QList<Utils::FileName> MsvcToolChain::suggestedMkspecList() const
|
|||||||
<< Utils::FileName::fromLatin1("winrt-x64-msvc2013")
|
<< Utils::FileName::fromLatin1("winrt-x64-msvc2013")
|
||||||
<< Utils::FileName::fromLatin1("win32-msvc2012")
|
<< Utils::FileName::fromLatin1("win32-msvc2012")
|
||||||
<< Utils::FileName::fromLatin1("win32-msvc2010");
|
<< Utils::FileName::fromLatin1("win32-msvc2010");
|
||||||
|
case Abi::WindowsMsvc2015Flavor:
|
||||||
|
return QList<Utils::FileName>()
|
||||||
|
<< Utils::FileName::fromLatin1("win32-msvc2015")
|
||||||
|
<< Utils::FileName::fromLatin1("winphone-arm-msvc2015")
|
||||||
|
<< Utils::FileName::fromLatin1("winphone-x86-msvc2015")
|
||||||
|
<< Utils::FileName::fromLatin1("winrt-arm-msvc2015")
|
||||||
|
<< Utils::FileName::fromLatin1("winrt-x86-msvc2015")
|
||||||
|
<< Utils::FileName::fromLatin1("winrt-x64-msvc2015");
|
||||||
default:
|
default:
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
@@ -257,7 +257,8 @@ QVariantMap DefaultPropertyProvider::autoGeneratedProperties(const ProjectExplor
|
|||||||
if (!m.isEmpty())
|
if (!m.isEmpty())
|
||||||
data.insert(QLatin1String(CPP_COMPILERPATHBYLANGUAGE), m);
|
data.insert(QLatin1String(CPP_COMPILERPATHBYLANGUAGE), m);
|
||||||
|
|
||||||
if (targetAbi.osFlavor() == ProjectExplorer::Abi::WindowsMsvc2013Flavor) {
|
if (targetAbi.osFlavor() == ProjectExplorer::Abi::WindowsMsvc2013Flavor
|
||||||
|
|| targetAbi.osFlavor() == ProjectExplorer::Abi::WindowsMsvc2015Flavor) {
|
||||||
const QLatin1String flags("/FS");
|
const QLatin1String flags("/FS");
|
||||||
data.insert(QLatin1String(CPP_PLATFORMCFLAGS), flags);
|
data.insert(QLatin1String(CPP_PLATFORMCFLAGS), flags);
|
||||||
data.insert(QLatin1String(CPP_PLATFORMCXXFLAGS), flags);
|
data.insert(QLatin1String(CPP_PLATFORMCXXFLAGS), flags);
|
||||||
|
Reference in New Issue
Block a user