[webkit-reviews] review requested: [Bug 186771] [WPE]: Add a way to setup our development environment inside flatpak : [Attachment 342945] [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:29 PDT 2018


Thibault Saunier <tsaunier at gnome.org> has asked  for review:
Bug 186771: [WPE]: Add a way to setup our development environment inside
flatpak
https://bugs.webkit.org/show_bug.cgi?id=186771

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

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




--- 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.


More information about the webkit-reviews mailing list