This is a fork of GStreamer's cerbero. It builds WPE WebKit and its dependencies for Android. wpe-android downloads the packages it makes.
This page only covers what the fork adds. For how cerbero works, see the upstream README.md.
| What | Where it is set |
|---|---|
Upstream cerbero base (the 1.28 branch) |
CERBERO_VERSION in cerbero/enums.py |
| WebKit commit | commit in recipes/wpewebkit.recipe |
| Package version | version in packages/wpewebkit*.package |
| Android NDK | NDK_VERSION in cerbero/bootstrap/android.py |
| Android API level | target_distro_version in config/cross-android-*.cbc |
CI builds for arm64 and x86_64.
recipes/wpewebkit.recipe: builds WPE WebKit from a WebKit commit. SetWPEWEBKIT_COMMITin the environment to build another commit.recipes/wpeandroid.recipe: ships the NDK'slibc++_shared.so.packages/wpewebkit.packageandpackages/wpewebkit-core.package: the packages wpe-android uses.packages/wpewebkit-deps.packageandpackages/wpewebkit-deps-core.package: the same packages without WPE WebKit, to build WebKit against them.wpewebkit-coredepends onwpewebkit-deps-core, so the dependencies are listed only once.- Android fixes in some upstream recipes and in the Android build setup.
They are the commits on top of the upstream
1.28branch.
WPE WebKit depends on these cerbero recipes:
icu, freetype, gettext, gstreamer-1.0, gst-plugins-base-1.0, gst-plugins-good-1.0, gst-plugins-bad-1.0,
harfbuzz, libepoxy, libgcrypt, libjpeg-turbo, libpng, libsoup, libtasn1, libxslt, libwebp, openjpeg,
openxr and xkbcommon.
The deps list in recipes/wpewebkit.recipe is the full, current list.
./cerbero-uninstalled -c config/cross-android-arm64.cbc bootstrap
./cerbero-uninstalled -c config/cross-android-arm64.cbc package -f wpewebkit
./cerbero-uninstalled -c config/cross-android-arm64.cbc package -f wpewebkit-deps
This makes wpewebkit-android-arm64-<version>.tar.xz and wpewebkit-android-arm64-<version>-runtime.tar.xz,
and the same two for wpewebkit-deps.
CI builds every pull request.
When a pull request is merged, CI uploads the packages to https://wpewebkit.org/android/bootstrap/<version>/.
To bump WebKit:
- Change
commitinrecipes/wpewebkit.recipe. - Bump
versionin the four package files. - After the packages are uploaded, set
default_versionin wpe-android'stools/scripts/bootstrap.pyto the new version. - If WebKit's Android build needs the new dependencies, update its pins: see raise-webkit-dependencies.md.