wiki:BuildingCairoOnWindows

Version 28 (modified by Fujii Hironori, 5 years ago) (diff)

--

WinCairo port is a WebKit port for Windows, which is fully OpenSouce and redistributable unlike AppleWin port, It is using Cairo for the graphics backend, libcurl for the network backend.

Building on Windows

As with Apple's Windows Port, you must first follow the instructions to install the necessary developer tools, and check out the WebKit code.

In the top source directory, use

perl Tools/Scripts/build-webkit --wincairo --release

to start the build. Ensure you don't have GCC in your PATH, otherwise CMake is going to use GCC and builds will fail.

If you are behind http proxy, set following environment variabls for libcurl.

set http_proxy=http://proxy.example.com:8080/
set https_proxy=%http_proxy%
set no_proxy=localhost,127.0.0.1

Building from within Visual Studio

Some environment variables should be propagated to Visual Studio.

perl WebKit/Tools/Scripts/build-webkit --wincairo --release --generate-project-only
set WEBKIT_LIBRARIES=%cd%\WebKitLibraries\win
set WEBKIT_OUTPUTDIR=%cd%\WebKitBuild
devenv WebKitBuild\Release\WebKit.sln

Required Libraries

You will get required libraries downloaded automatically when you perform a build-webkit --wincairo. The source code is hosted in: https://github.com/WebKitForWindows/WinCairoRequirements

Running the tests

XAMPP should be installed in the default install path (c:\xampp).

Extensions .pl and .cgi need to be registered as CGI. Modify the following commands along your Perl path, and run them as administrator.

reg add HKEY_CLASSES_ROOT\.pl\Shell\ExecCGI\Command /ve /d "C:\tools\perl\perl\bin\perl.exe -T"
reg add HKEY_CLASSES_ROOT\.cgi\Shell\ExecCGI\Command /ve /d "C:\tools\perl\perl\bin\perl.exe -T"

Open a command prompt as administrator because http tests need to run Apache service.

set WEBKIT_LIBRARIES=%cd%\WebKitLibraries\win
set WEBKIT_OUTPUTDIR=%cd%\WebKitBuild
python Tools/Scripts/run-webkit-tests --release --wincairo --dump-render-tree

You can use Docker to run LayoutTests by mounting the host directory.

docker run -it --rm --cpu-count=8 --memory=16g -v %cd%:c:\repo -w c:\repo webkitdev/msbuild

Download build artifacts from BuildBot