On Sat, 5 Dec 2020 01:13:34 GMT, Magnus Ihse Bursie <i...@openjdk.org> wrote:
>> For the build to work on Windows, we need a unix compatibility layer (known >> as the "winenv" in the build system). This can be e.g. Cygwin or Msys. The >> build system then needs to adapt various aspect to get the build to work in >> this winenv. Over time, our current solutions (which were never that >> well-designed) has collapsed into an unmaintainable mess. >> >> This rewrite takes on a fresh approach, by giving up on the native >> "fixpath.exe" converter, and instead relying on a platform-independent shell >> script "fixpath.sh", which can dynamically adapt to the current winenv. It >> also provides a proper framework on how to categorize, and support, >> different winenvs. As a result, we now easily support Cygwin, Msys2, WSL1 >> and WSL2 (the latter is unfortunately not mature enough to be able to >> compile the JDK). >> >> Furthermore, this rewrite removes all the kludges and hacks that were put in >> place all over the code base, and consolidates all tricky part of handling >> the winenv to basically two places: setting up in configure, and run-time >> handling by fixpath.sh. >> >> This patch also cleans up our handling of how we detect tools in configure, >> and makes a proper framework for cross-compilation on Windows. > > Magnus Ihse Bursie has updated the pull request incrementally with one > additional commit since the last revision: > > Extract only the actual contents added to the PATH by VS SetEnv.cmd. make/autoconf/boot-jdk.m4 line 66: > 64: if test "x$BOOT_JDK_FOUND" = xmaybe; then > 65: # Do we have a bin/java? > 66: if test ! -x "$BOOT_JDK/bin/java" && test ! -x > "$BOOT_JDK/bin/java.exe"; then `BOOTJDK_CHECK_BUILD_JDK` also needs those updates I believe ------------- PR: https://git.openjdk.java.net/jdk/pull/1597