Squish: Fix MSVC2017 toolchain

Without this, Creator cannot set up CMake properly
in the kit so configuring projects fails.

MSVC2015 also needs a fix.

Change-Id: I19c065eb087d098174c84301aa52cc3888ec42b7
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
This commit is contained in:
Robert Löhning
2022-05-11 20:18:33 +02:00
parent 259759b5c9
commit 67f907f295
2 changed files with 32 additions and 2 deletions

View File

@@ -40,7 +40,13 @@
<value type="QString" key="ProjectExplorer.MsvcToolChain.SupportedAbi">x86-windows-msvc2017-pe-64bit</value>
<value type="QString" key="ProjectExplorer.MsvcToolChain.VarsBat">C:/Program Files (x86)/Microsoft Visual Studio/2017/Community/VC/Auxiliary/Build/vcvarsall.bat</value>
<value type="QString" key="ProjectExplorer.MsvcToolChain.VarsBatArg">amd64</value>
<value type="bool" key="ProjectExplorer.ToolChain.Autodetect">false</value>
<valuelist type="QVariantList" key="ProjectExplorer.MsvcToolChain.environmentModifications">
<valuelist type="QVariantList">
<value type="QString">PATH</value>
<value type="int">0</value>
<value type="QString">SQUISH_MSVC2017_PATH</value>
</valuelist>
</valuelist>
<value type="QString" key="ProjectExplorer.ToolChain.DisplayName">MSVC2017 (amd64)</value>
<value type="QString" key="ProjectExplorer.ToolChain.Id">ProjectExplorer.ToolChain.Msvc:{ce3a8004-e9ae-46f2-b62d-d7daf69435ca}</value>
<value type="int" key="ProjectExplorer.ToolChain.Language">1</value>
@@ -79,7 +85,13 @@
<value type="QString" key="ProjectExplorer.MsvcToolChain.SupportedAbi">x86-windows-msvc2017-pe-64bit</value>
<value type="QString" key="ProjectExplorer.MsvcToolChain.VarsBat">C:/Program Files (x86)/Microsoft Visual Studio/2017/Community/VC/Auxiliary/Build/vcvarsall.bat</value>
<value type="QString" key="ProjectExplorer.MsvcToolChain.VarsBatArg">amd64</value>
<value type="bool" key="ProjectExplorer.ToolChain.Autodetect">false</value>
<valuelist type="QVariantList" key="ProjectExplorer.MsvcToolChain.environmentModifications">
<valuelist type="QVariantList">
<value type="QString">PATH</value>
<value type="int">0</value>
<value type="QString">SQUISH_MSVC2017_PATH</value>
</valuelist>
</valuelist>
<value type="QString" key="ProjectExplorer.ToolChain.DisplayName">MSVC2017 (amd64)</value>
<value type="QString" key="ProjectExplorer.ToolChain.Id">ProjectExplorer.ToolChain.Msvc:{3df7c776-a480-4a04-9099-6c75adac2dca}</value>
<value type="int" key="ProjectExplorer.ToolChain.Language">2</value>

View File

@@ -231,6 +231,23 @@ def substituteCdb(settingsDir):
__substitute__(debuggers, "SQUISH_DEBUGGER_BITNESS", bitness)
test.log("Injected architecture '%s' and bitness '%s' in cdb path..." % (architecture, bitness))
def substituteMsvcPaths(settingsDir):
for msvcFlavor in ["Community", "BuildTools"]:
try:
msvc2017Path = os.path.join("C:\\Program Files (x86)", "Microsoft Visual Studio",
"2017", msvcFlavor, "VC", "Tools", "MSVC")
msvc2017Path = os.path.join(msvc2017Path, os.listdir(msvc2017Path)[0], "bin",
"HostX64", "x64")
__substitute__(os.path.join(settingsDir, "QtProject", 'qtcreator', 'toolchains.xml'),
"SQUISH_MSVC2017_PATH", msvc2017Path)
return
except:
continue
test.warning("PATH variable for MSVC2017 could not be set, some tests will fail.",
"Please make sure that MSVC2017 is installed correctly.")
def __guessABI__(supportedABIs, use64Bit):
if platform.system() == 'Linux':
supportedABIs = filter(lambda x: 'linux' in x, supportedABIs)
@@ -325,6 +342,7 @@ def copySettingsToTmpDir(destination=None, omitFiles=[]):
substituteDefaultCompiler(tmpSettingsDir)
elif platform.system() in ('Windows', 'Microsoft'):
substituteCdb(tmpSettingsDir)
substituteMsvcPaths(tmpSettingsDir)
substituteUnchosenTargetABIs(tmpSettingsDir)
SettingsPath = ['-settingspath', '"%s"' % tmpSettingsDir]