diff options
author | Jacobo Aragunde Pérez <jaragunde@igalia.com> | 2019-06-17 13:12:00 +0200 |
---|---|---|
committer | Jan-Simon Moeller <jsmoeller@linuxfoundation.org> | 2019-06-20 12:57:47 +0000 |
commit | e6cc8d4e0977b4a3dda28c70caea3515f9d07edd (patch) | |
tree | 37493398c6f35728ca73cc36c64e91e9bed33c1a /meta-html5-framework/recipes-wam/chromium/chromium68/v8-qemu-wrapper.patch | |
parent | 13e42025cf8c2b6f5b8d10666353e60da7d52370 (diff) |
chromium68: custom toolchain, target v8 snapshot
Modify the chromium68 recipe to make it more like the one available in
meta-browser: https://github.com/OSSystems/meta-browser
Instead of passing Yocto's build flags to the cros (=ChromeOS)
toolchain, generate a toolchain definition file specifically for this
build.
For the generation of the V8 memory snapshot, build the required files
for the target architecture, then use qemu-native to run them.
Upstream chromium addresses this problem by downloading a specific
native toolchain for every target platform, which we cannot do in this
context.
The toolchain changes trigger an issue with ARMv7 builds; backported
one patch to address that specific issue.
This changes also triggered a problem with 32 bit targets, the
generated binaries were too big. Forced the DEBUG_ARGS to use -g1 (or
-g0 otherwise).
Bug-AGL: SPEC-2514
Change-Id: Ib18431b628415c58a3c29595bfff10057e355a4b
Signed-off-by: Jacobo Aragunde Pérez <jaragunde@igalia.com>
Diffstat (limited to 'meta-html5-framework/recipes-wam/chromium/chromium68/v8-qemu-wrapper.patch')
-rw-r--r-- | meta-html5-framework/recipes-wam/chromium/chromium68/v8-qemu-wrapper.patch | 40 |
1 files changed, 40 insertions, 0 deletions
diff --git a/meta-html5-framework/recipes-wam/chromium/chromium68/v8-qemu-wrapper.patch b/meta-html5-framework/recipes-wam/chromium/chromium68/v8-qemu-wrapper.patch new file mode 100644 index 00000000..485766b0 --- /dev/null +++ b/meta-html5-framework/recipes-wam/chromium/chromium68/v8-qemu-wrapper.patch @@ -0,0 +1,40 @@ +Upstream-Status: Inappropriate [embedder specific] + +The patch below makes the V8 binaries run during the build be invoked through +QEMU, as they are built for the target. + +Signed-off-by: Raphael Kubo da Costa <raphael.kubo.da.costa@intel.com> +Signed-off-by: Maksim Sisov <msisov@igalia.com> + +Index: git/src/tools/v8_context_snapshot/BUILD.gn +=================================================================== +--- git.orig/src/tools/v8_context_snapshot/BUILD.gn ++++ git/src/tools/v8_context_snapshot/BUILD.gn +@@ -62,6 +62,7 @@ if (use_v8_context_snapshot) { + output_path = rebase_path(output_file, root_build_dir) + + args = [ ++ "./v8-qemu-wrapper.sh", + "./" + rebase_path( + get_label_info( + ":v8_context_snapshot_generator($v8_snapshot_toolchain)", +Index: git/src/v8/BUILD.gn +=================================================================== +--- git.orig/src/v8/BUILD.gn ++++ git/src/v8/BUILD.gn +@@ -900,6 +900,7 @@ action("run_torque") { + } + + args = [ ++ "./v8-qemu-wrapper.sh", + "./" + rebase_path(get_label_info(":torque($v8_torque_toolchain)", + "root_out_dir") + "/torque", + root_build_dir), +@@ -977,6 +978,7 @@ template("run_mksnapshot") { + data = [] + + args = [ ++ "./v8-qemu-wrapper.sh", + "./" + rebase_path(get_label_info(":mksnapshot($v8_snapshot_toolchain)", + "root_out_dir") + "/mksnapshot", + root_build_dir), |