Help: CMAKE_GENERATOR_INSTANCE docs for version= need clarification
!6651 (merged) added support for passing a version=...
form in the CMAKE_GENERATOR_INSTANCE
CMake variable. In the Visual Studio Instance Selection section, there are the following conflicting statements:
The
CMAKE_GENERATOR_INSTANCE
variable may be set as a cache entry selecting an instance of Visual Studio via one of the following forms:
location
location[,key=value]*
key=value[,key=value]*
and further down:
New in version 3.23: A portable VS instance may be specified that is not known to the Visual Studio Installer tool. The
location
andversion=
values must both be provided.
The first case implies that potentially only one of location
or key=...
should be used, but the second case explicitly states that both are required. The wording of the first case looks to be the part that should be updated.
Also, the actual version=
part is documented as just this:
version=<major>.<minor>.<MMMDD>.<BBB>
New in version 3.23.
Specify the 4-component VS Build Version.
There's no explanation what MMM
, DD
or BBB
mean. One might assume MMM
is three letters of a month and DD
is a two-digit day of the month, but that is not the case (at least, that doesn't look to match any published version numbers I saw with a casual look). The BBB
part is probably a build number, but I found examples where it was less than three digits (see the MS docs). Also see !6651 (comment 1075124) where this particular part of the CMake docs was queried and @sfreed141 indicated it was accurate.
I think it would be better to use words for the MMMDD
and BBB
part, just as was done for the <major>
and <minor>
parts. Then the prose can explain what those things mean. I don't know what to call MMMDD
, but at least the BBB
part could be replaced with <build>
or something similar (assuming that's what it actually means?). An example of a valid version and what product it corresponds to would also probably help.