[Webkit-unassigned] [Bug 186771] [WPE]: Add a way to setup our development environment inside flatpak

bugzilla-daemon at webkit.org bugzilla-daemon at webkit.org
Mon Jun 18 09:45:30 PDT 2018


https://bugs.webkit.org/show_bug.cgi?id=186771

Thibault Saunier <tsaunier at gnome.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
 Attachment #342945|                            |review?, commit-queue?
              Flags|                            |

--- Comment #1 from Thibault Saunier <tsaunier at gnome.org> ---
Created attachment 342945

  --> https://bugs.webkit.org/attachment.cgi?id=342945&action=review

[WPE]: Add a way to setup our development environment inside flatpak

This patch introduces a script (webkit-flatpak) to setup and work with a development environment
based on flatpak[0] and flatpak-builder, basically as a replacement for jhbuild. 

This patch is not totally finished yet but I believe that it is a pretty good starting point, at least to get the discussion started.

The worflow works as follow:

1. Building WebKit

    # No arguments, setup a WPE environment on the first run, and launch MiniBrowser once done (use `--gtk` to build WebKitGTK)
    $ webkit-flatpak

    # Build anything required to build WebKit itself if needed, it builds only WebKit itself when nothing specified
    $ webkit-flatpak --build-app

When building webkit, we mount `WebKit/` sources into `/app/webkit` inside the sandbox to have a more reproducible build and so that
we can potentially rsync content of `WebKitBuild` from a build server without problem. The `build-webkit` script is used inside the sandbox,
(at /app/webkit/Tools/Script/build-webkit) and the same `--cmarkargs` and `--makeargs` are exposed.

Also `WebKitBuild/WPE/Release` is mounted on `/app/webkit/WebKitBuild/Release` so that we can build several ports in the same worktree.

To be able to run layout tests, the httpd server is built inside the sandbox and Xvfb is built for the GTK port.

2. Running Layout tests

We reuse the run-webkit-tests script and all arguments after `--test` are passed to that script. There might have regressions that we still need to hunt.

    $ webkit-flatpak [--gtk] [--debug] --tests ...

3. Retrieve stacktrace

Since everything runs inside a flatpak sandbox, gdb needs to be run from within the sandbox, the script exposes a way to do it
easily with the `--gdb` option:

    $ webkit-flatpak --gdb [-m COREDUMPCTL MATCHES]

The Layout test `GDBCrashLogGenerator` has been taugth how to use that and is able to retrieve stacktrace as with the jhbuild based workflow.

-- 
You are receiving this mail because:
You are the assignee for the bug.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.webkit.org/pipermail/webkit-unassigned/attachments/20180618/d5dd845d/attachment.html>


More information about the webkit-unassigned mailing list