Skip to content

Conversation

@kevinrushforth
Copy link
Member

@kevinrushforth kevinrushforth commented May 14, 2025

This PR updates the compiler on Windows to Visual Studio 2022 17.13.2 (from 17.6.5) to match JDK 25.

I ran a full headless and headful test run, including building media and WebKit. All tests pass.

NOTE: There is a compatibility issue, introduced in VS 2022 17.10, that is seen when compiling with a more recent version of Visual Studio and running against an older msvcp140.dll. A workaround is documented in the VS 2022 17.10 release notes and is implemented by this PR. Without the workaround of compiling with _DISABLE_CONSTEXPR_MUTEX_CONSTRUCTOR WebKit crashes in the ICU library when run on JDK 24 or earlier, since the version of msvcp140.dll in JDK 24 is the one from 17.6.5 (the JDK loads its msvcp140.dll first, causing the one we redistribute to be ignored). With this workaround, we can run both on older JDKs and on JDK 25.


Progress

  • Change must not contain extraneous whitespace
  • Commit message must refer to an issue
  • Change must be properly reviewed (3 reviews required, with at least 1 Reviewer, 2 Authors)

Issue

  • JDK-8354986: Update to Visual Studio 2022 version 17.13.2 on Windows (Bug - P3)

Reviewers

Reviewing

Using git

Checkout this PR locally:
$ git fetch https://git.openjdk.org/jfx.git pull/1807/head:pull/1807
$ git checkout pull/1807

Update a local copy of the PR:
$ git checkout pull/1807
$ git pull https://git.openjdk.org/jfx.git pull/1807/head

Using Skara CLI tools

Checkout this PR locally:
$ git pr checkout 1807

View PR using the GUI difftool:
$ git pr show -t 1807

Using diff file

Download this PR as a diff file:
https://git.openjdk.org/jfx/pull/1807.diff

Using Webrev

Link to Webrev Comment

@kevinrushforth kevinrushforth changed the title 8354986 vs2022 17.13.2 8354986 May 14, 2025
@bridgekeeper
Copy link

bridgekeeper bot commented May 14, 2025

👋 Welcome back kcr! A progress list of the required criteria for merging this PR into master will be added to the body of your pull request. There are additional pull request commands available for use with this pull request.

@openjdk
Copy link

openjdk bot commented May 14, 2025

@kevinrushforth This change now passes all automated pre-integration checks.

ℹ️ This project also has non-automated pre-integration requirements. Please see the file CONTRIBUTING.md for details.

After integration, the commit message for the final commit will be:

8354986: Update to Visual Studio 2022 version 17.13.2 on Windows

Reviewed-by: almatvee, arapte, sykora

You can use pull request commands such as /summary, /contributor and /issue to adjust it as needed.

At the time when this comment was updated there had been 2 new commits pushed to the master branch:

  • 7e8eff9: 8207333: [Linux, macOS] Column sorting is triggered always after context menu request on table header
  • 9950d33: 8169285: Re-enable javafx.swt tests

Please see this link for an up-to-date comparison between the source branch of this pull request and the master branch.
As there are no conflicts, your changes will automatically be rebased on top of these commits when integrating. If you prefer to avoid this automatic rebasing, please check the documentation for the /integrate command for further details.

➡️ To integrate this PR with the above commit message to the master branch, type /integrate in a new comment.

@openjdk openjdk bot changed the title 8354986 8354986: Update to Visual Studio 2022 version 17.13.2 on Windows May 14, 2025
@kevinrushforth
Copy link
Member Author

Reviewers: @arapte @tiainen @sashamatveev

/reviewers 3

@openjdk
Copy link

openjdk bot commented May 19, 2025

@kevinrushforth
The total number of required reviews for this PR (including the jcheck configuration and the last /reviewers command) is now set to 3 (with at least 1 Reviewer, 2 Authors).

@kevinrushforth
Copy link
Member Author

@sashamatveev I would like you to review the media Makefile changes.

@kevinrushforth kevinrushforth marked this pull request as ready for review May 19, 2025 16:10
@openjdk openjdk bot added the rfr Ready for review label May 19, 2025
@mlbridge
Copy link

mlbridge bot commented May 19, 2025

Webrevs

Copy link
Member

@sashamatveev sashamatveev left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Media changes looks good.

@mlbridge
Copy link

mlbridge bot commented May 20, 2025

Mailing list message from Peter Hull on openjfx-dev:

On Mon, 19 May 2025 at 17:14, Kevin Rushforth <kcr at openjdk.org> wrote:

This PR updates the compiler on Windows to Visual Studio 2022 17.13.2 (from 17.6.5) to match JDK 25.

Related to this, on the wiki it says that Cygwin is needed
(https://wiki.openjdk.org/display/OpenJFX/Building+OpenJFX#BuildingOpenJFX-Windows)
but I tried without it and it seemed to build OK. Is Cygwin still a
requirement? I didn't attempt to build WebKit or the media.
Thanks
Peter

@mlbridge
Copy link

mlbridge bot commented May 20, 2025

Mailing list message from Nir Lisker on openjfx-dev:

The instructions could be outdated. They need another pass in any case.

On Tue, May 20, 2025, 09:03 Peter Hull <peterhull90 at gmail.com> wrote:

On Mon, 19 May 2025 at 17:14, Kevin Rushforth <kcr at openjdk.org> wrote:

This PR updates the compiler on Windows to Visual Studio 2022 17.13.2
(from 17.6.5) to match JDK 25.

Related to this, on the wiki it says that Cygwin is needed
(
https://wiki.openjdk.org/display/OpenJFX/Building+OpenJFX#BuildingOpenJFX-Windows
)
but I tried without it and it seemed to build OK. Is Cygwin still a
requirement? I didn't attempt to build WebKit or the media.
Thanks
Peter

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://mail.openjdk.org/pipermail/openjfx-dev/attachments/20250520/3ffffd7b/attachment.htm>

Copy link
Member

@arapte arapte left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM

Copy link
Collaborator

@tiainen tiainen left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I've managed to build and do some basic testing after updating to Visual Studio 17.13.2

@openjdk
Copy link

openjdk bot commented May 22, 2025

@kevinrushforth this pull request can not be integrated into master due to one or more merge conflicts. To resolve these merge conflicts and update this pull request you can run the following commands in the local repository for your personal fork:

git checkout 8354986-vs2022-17.13.2
git fetch https://git.openjdk.org/jfx.git master
git merge FETCH_HEAD
# resolve conflicts and follow the instructions given by git merge
git commit -m "Merge master"
git push

@openjdk openjdk bot added the merge-conflict Pull request has merge conflict with target branch label May 22, 2025
@openjdk openjdk bot removed the merge-conflict Pull request has merge conflict with target branch label May 22, 2025
@kevinrushforth
Copy link
Member Author

I merged with master to resolve the trivial merge conflict (kdiff3 resolved the conflict automatically).

As a result, a re-review is required.

@openjdk openjdk bot added the ready Ready to be integrated label May 28, 2025
@kevinrushforth
Copy link
Member Author

/integrate

@openjdk
Copy link

openjdk bot commented May 28, 2025

Going to push as commit a1c5b1c.
Since your change was applied there have been 2 commits pushed to the master branch:

  • 7e8eff9: 8207333: [Linux, macOS] Column sorting is triggered always after context menu request on table header
  • 9950d33: 8169285: Re-enable javafx.swt tests

Your commit was automatically rebased without conflicts.

@openjdk openjdk bot added the integrated Pull request has been integrated label May 28, 2025
@openjdk openjdk bot closed this May 28, 2025
@openjdk openjdk bot removed ready Ready to be integrated rfr Ready for review labels May 28, 2025
@openjdk
Copy link

openjdk bot commented May 28, 2025

@kevinrushforth Pushed as commit a1c5b1c.

💡 You may see a message that your pull request was closed with unmerged commits. This can be safely ignored.

@kevinrushforth kevinrushforth deleted the 8354986-vs2022-17.13.2 branch May 28, 2025 16:59
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

integrated Pull request has been integrated

Development

Successfully merging this pull request may close these issues.

4 participants