-
Notifications
You must be signed in to change notification settings - Fork 36
Update WindowsPort.md as per #129 and other advisories #130
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: main
Are you sure you want to change the base?
Changes from 4 commits
dfc98a3
aa4b6c7
23de9e0
6beb1ae
617bab2
17f7833
c413ea1
f17aab2
8a3f853
4e61b14
8dc22c0
e7e3f67
be90997
f03dd45
49c61a1
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -3,22 +3,30 @@ | |
It is using [cairo](https://www.cairographics.org/) for the graphics backend, [libcurl](https://curl.se/libcurl/) for the network backend. | ||
It supports only 64 bit Windows. | ||
|
||
## Cloning Webkit | ||
Ensure that you are NOT cloning under an ancestor directory that is a git repository. This may confuse `build-webkit` script and result in failure.<br> | ||
A shallow clone of the WebKit repository at a detached hash may work if you are just building and not intending to develop WebKit. Official Apple release tags are unlikely to work. | ||
|
||
## Installing Development Tools | ||
|
||
Install [the latest Visual Studio with "Desktop development with C++" workload](https://learn.microsoft.com/en-us/cpp/build/vscpp-step-0-installation). | ||
|
||
If have included *C++ Clang Tools for Windows* for the workload, it's Llvm will take precedence and the build may fail. For this scenario, explicitilty provide the full path to an alternative Windows Llvm's `clang-cl.exe` in the Webkit Command Prompt script. | ||
donny-dont marked this conversation as resolved.
Show resolved
Hide resolved
|
||
|
||
[Activate Developer Mode](https://learn.microsoft.com/en-us/windows/apps/get-started/enable-your-device-for-development#activate-developer-mode). | ||
build-webkit script creates a symlink to a generated compile_commands.json. | ||
`build-webkit` script creates a symlink to a generated compile_commands.json. | ||
|
||
Install CMake, Perl, Python, Ruby, gperf \([GnuWin32 Gperf](https://gnuwin32.sourceforge.net/packages/gperf.htm)\), LLVM, and Ninja. | ||
Python 3.12 has [a problem for WebKit at the moment](https://webkit.org/b/261113). Use Python 3.11. | ||
- Python 3.12 has [a problem for WebKit at the moment](https://webkit.org/b/261113). Use Python 3.11. | ||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. I’m not 100% sure this is still an issue and I’m not sure if Python 3.13 is good to use. Might be worth verifying this. There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Python 3.13 (latest choco) compiles WebKit for me with the following caveates:
While There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. I’m not sure if that works because you can have multiple python versions installed There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. @iangrunert any thoughts on this? There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. I'm using Python 3.12 and haven't ran into issues as of yet. There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. From CMake configure: I think this is hard-coded somewhere obfuscated to PATH. I tried setting the Let me know if we are good with 3.13.x. If so, we can just document There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. @iangrunert @donny-dont |
||
- Cmake 4+ has [a dowstream problem for vcpkg woff2 at the moment](https://github.com/WebKit/Documentation/issues/129). Use Cmake 3.31.8. | ||
citkane marked this conversation as resolved.
Show resolved
Hide resolved
|
||
|
||
You can use [Chocolatey](https://community.chocolatey.org/) to install the tools. | ||
[ActivePerl chocolatey package](https://community.chocolatey.org/packages/ActivePerl) has a problem and no package maintainer now. | ||
XAMPP includes Perl, and running layout tests needs XAMPP. Install XAMPP instead. | ||
|
||
``` | ||
choco install -y xampp-81 python311 ruby git cmake gperf llvm ninja | ||
choco install -y xampp-81 python311 ruby git gperf llvm ninja | ||
choco install -y cmake --version=3.31.8 | ||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. I think we need a choco pin command with this so when someone upgrades they don’t end up with CMake 4. Ideally the version could be <4.0.0 so if there is another 3.x release it’ll upgrade. There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. See revised |
||
``` | ||
|
||
Install pywin32 Python module for run-webkit-tests and git-webkit. | ||
|
@@ -73,6 +81,8 @@ set DUMPRENDERTREE_TEMP=%TEMP% | |
|
||
set CC=clang-cl | ||
set CXX=clang-cl | ||
rem set CC=<path-to-llvm>\clang-cl.exe | ||
rem set CXX=<path-to-llvm>\clang-cl.exe | ||
|
||
rem set http_proxy=http://your-proxy:8080 | ||
rem set https_proxy=%http_proxy% | ||
|
@@ -87,6 +97,9 @@ rem set JSC_useDOMJIT=0 | |
rem You can show check TextureMapper FPS via WEBKIT_SHOW_FPS. | ||
citkane marked this conversation as resolved.
Show resolved
Hide resolved
|
||
rem set WEBKIT_SHOW_FPS=1 | ||
|
||
rem You can use ccache with pre-compiled headers @see https://ccache.dev/manual/latest.html#_precompiled_headers | ||
rem set CCACHE_SLOPPINESS=pch_defines,time_macros,include_file_mtime,include_file_ctime | ||
|
||
call "%VSPATH%\VC\Auxiliary\Build\vcvars64.bat" | ||
cd %~dp0 | ||
start powershell | ||
|
Uh oh!
There was an error while loading. Please reload this page.