Skip to content

Properly support MSVC 14.40 toolset for getting the universal CRT files#16480

Merged
seanbudd merged 8 commits into
nvaccess:masterfrom
LeonarddeR:1440Toolset
May 7, 2024
Merged

Properly support MSVC 14.40 toolset for getting the universal CRT files#16480
seanbudd merged 8 commits into
nvaccess:masterfrom
LeonarddeR:1440Toolset

Conversation

@LeonarddeR
Copy link
Copy Markdown
Collaborator

@LeonarddeR LeonarddeR commented May 3, 2024

Link to issue number:

None

Summary of the issue:

Microsoft is about to introduce Visual Studio 2022 version 17.10 in the near future. They decided to change the minor toolset version number, so we're going from MSVC 14.39 to 14.40.
See this blog post for details.
Note that they'll stick with version 143 in the crt version string, which is very weird.

Description of user facing changes

Building NVDA on visual studio 2022 version 17.10 (to be released) will work correctly.

Description of development approach

Rather than expecting all toolset directories to start with 14.3, we expect them to start with the major version part only (i.e. 14).

Testing strategy:

  • Test with Visual Studio 2022 Preview. Note that you have to patch scons for this to work.
    In the scons directory: tool\MSCommon\vc.py, change line 680 by adding the -prerelease parameter:
    vswhere_cmd = [vswhere_path] + vswhere_version_args + ["-prerelease", "-property", "installationPath"]
  • Visual Studio 2022 stable is covered by appveyor.

Known issues with pull request:

None known

Code Review Checklist:

  • Documentation:
    • Change log entry
    • User Documentation
    • Developer / Technical Documentation
    • Context sensitive help for GUI changes
  • [] Testing:
    • Unit tests
    • System (end to end) tests
    • Manual testing
  • UX of all users considered:
    • Speech
    • Braille
    • Low Vision
    • Different web browsers
    • Localization in other languages / culture than English
  • API is compatible with existing add-ons.
  • Security precautions taken.

@LeonarddeR LeonarddeR changed the title Properly support MSVC 14.40 toolset Properly support MSVC 14.40 toolset for getting the universal CRT files May 3, 2024
@AppVeyorBot
Copy link
Copy Markdown

See test results for failed build of commit 0f2ba7c6c7

@AppVeyorBot
Copy link
Copy Markdown

See test results for failed build of commit 403bab36ad

@AppVeyorBot
Copy link
Copy Markdown

See test results for failed build of commit e6729cfdab

@AppVeyorBot
Copy link
Copy Markdown

See test results for failed build of commit 01e17c530c

@LeonarddeR LeonarddeR marked this pull request as ready for review May 3, 2024 17:28
@LeonarddeR LeonarddeR requested a review from a team as a code owner May 3, 2024 17:28
@LeonarddeR LeonarddeR requested a review from seanbudd May 3, 2024 17:28
@LeonarddeR
Copy link
Copy Markdown
Collaborator Author

This is ready for review. I'm tempted to leave out a changelog entry, since it's only a cosmetic build system change.

@seanbudd seanbudd added this to the 2024.3 milestone May 6, 2024
@XLTechie
Copy link
Copy Markdown
Collaborator

XLTechie commented May 6, 2024 via email

@LeonarddeR
Copy link
Copy Markdown
Collaborator Author

In that case, I'm happy to add one as soon as the changelog for 2024.3 has been initiated.

@seanbudd seanbudd added the conceptApproved Similar 'triaged' for issues, PR accepted in theory, implementation needs review. label May 7, 2024
@seanbudd
Copy link
Copy Markdown
Member

seanbudd commented May 7, 2024

That should be ready now, thanks for your patience

@seanbudd seanbudd merged commit dfcb1aa into nvaccess:master May 7, 2024
@LeonarddeR LeonarddeR deleted the 1440Toolset branch August 23, 2025 06:27
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

conceptApproved Similar 'triaged' for issues, PR accepted in theory, implementation needs review. queued for merge

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants