To be clear, I'm not in favor of your proposed MSVC_VERSION regex interpretation, so let's table any discussion of that as it's not relevant to figuring out how to properly select a version of MSVC and toolset and product type.
Am I grossly mistaken, or would separate variables as I've proposed above also allow specifying as explicitly as the single string which needs to be regex'd? On Tue, Aug 11, 2020 at 9:24 AM Joseph Brill <joseph.c.br...@gmail.com> wrote: > On Tue, Aug 11, 2020 at 11:51 AM Mats Wichmann <m...@wichmann.us> wrote: > >> To throw another spanner into the works, there are Visual Studio product >> codes too, which are 16.X for 2019, 15.x for 2017 and 14.0 for 2015... >> > > Nothing is straightforward with the microsoft version numbers. > > A mapping was necessary from the vswhere query results containing the MSVS > version to the MSVC version number. The explicitly supported component ids > are listed by product as there are a quite a few component ids in which we > are not interested. And yes, one of the components that we are > not-interested in caused a previous version to fail. > > And it looks like I have a typographical error to fix as well... > > # Vswhere query elements (reverse dictionaries computed during > intialization)# MSVS_MAJOR: MSVS installationVersion.split('.')[0] <-> to > _VCVER# Products: expected product components returned in vswhere query > _MSVC_PRODUCTVERSION_COMPONENTIDS = { > '14.2': { > 'MSVS_MAJOR' : '16', > 'Products' : ['Enterprise', 'Professional', 'Community', > 'BuildTools'] > }, > '14.1': { > 'MSVS_MAJOR' : '15', > 'Products' : ['Enterprise', 'Professional', 'Community', > 'BuildTools', _MSVC_COMPONENT_EXPRESS] > }, > > } > > >
_______________________________________________ Scons-dev mailing list Scons-dev@scons.org https://pairlist2.pair.net/mailman/listinfo/scons-dev