Cygwin Python 3.9 breaks Windows WebKit build

John Neffenger john at status6.com
Mon Jan 2 18:29:45 UTC 2023


The latest Python version 3.9 available on Cygwin breaks the WebKit 
build on Windows. The previous version, Python 3.8, works fine.

The bug is reported to Python in the GitHub issue below, but the Python 
developers expect any fix to come from the Cygwin Python maintainers:

   Windows-style path is not recognized under cygwin
   https://github.com/python/cpython/issues/90907

I'm building with:

bash gradlew --no-daemon \
   -PCONF=Release -PPROMOTED_BUILD_NUMBER=7 \
   -PHUDSON_BUILD_NUMBER=101 -PHUDSON_JOB_NAME=jfx \
   -PCOMPILE_WEBKIT=true -PCOMPILE_MEDIA=true -PBUILD_LIBAV_STUBS=true \
   sdk jmods javadoc

The build fails with the following messages:

----------------------------
 > Task :web:compileNativeWin

...

[424/5282] Generating
     ../../JavaScriptCore/DerivedSources/CombinedDomains.json
FAILED: JavaScriptCore/DerivedSources/CombinedDomains.json
C:/cygwin64/home/john/src/jfx/modules/javafx.web/build/win/Release/
     JavaScriptCore/DerivedSources/CombinedDomains.json
cmd.exe /C "cd /D
     C:\cygwin64\home\john\src\jfx\modules\javafx.web\build\win\Release\
         Source\JavaScriptCore
         && C:\cygwin64\bin\python3.9.exe
     C:/cygwin64/home/john/src/jfx/modules/javafx.web/build/win/Release/
         JavaScriptCore/Scripts/generate-combined-inspector-json.py ...

...

/usr/bin/python3.9: can't open file
'/home/john/src/jfx/modules/javafx.web/build/win/Release/Source/
     JavaScriptCore/C:/cygwin64/home/john/src/jfx/modules/javafx.web/
     build/win/Release/JavaScriptCore/Scripts/
     generate-combined-inspector-json.py':
[Errno 2] No such file or directory
----------------------------

An up-to-date installation of Cygwin has the following Python versions 
available:

----------------------------
$ /usr/sbin/update-alternatives --display python
python - status is auto.
  link currently points to /usr/bin/python3.9
/usr/bin/python2.7 - priority 27
/usr/bin/python3.8 - priority 38
/usr/bin/python3.9 - priority 39
Current `best' version is /usr/bin/python3.9.

$ python --version
Python 3.9.10
----------------------------

To run the build, I had to remove the Python 3.9 packages entirely so 
that only the following two alternatives remain:

----------------------------
$ /usr/sbin/update-alternatives --display python
python - status is auto.
  link currently points to /usr/bin/python3.8
/usr/bin/python2.7 - priority 27
/usr/bin/python3.8 - priority 38
Current `best' version is /usr/bin/python3.8.

$ python --version
Python 3.8.12
----------------------------

John


More information about the openjfx-dev mailing list