[Bundles] Use Placeholders for AR Native Code Inclusion.
This CL makes ar_module_tmpl use placeholders where appropriate,
and also refactors how upstream bundles uses "build switches"
* android_64bit_target_cpu,
* is_64_bit_browser,
* build_apk_secondary_abi,
* include_32_bit_webview,
to compute "module assignments"
* loadable_modules,
* secondary_abi_loadable_modules,
* native_lib_placeholders,
* secondary_native_lib_placeholders,
for native code inclusion.
Details:
* Outer template: Wrap non-global built switches above, i.e.,
{is_64_bit_browser, include_32_bit_webview}, into scope
native_switches, which is then passed to module templates that need to
include native code.
* Module templates (currently only AR):
* Specify {native_modules_if_32_bit, native_modules_if_64_bit}.
* Forward native_switches to inner template.
* Inner template: Perform the computation:
* Decision logic: Compute intermediate variables.
* Realization logic: Compute "module assignments".
* Behavior change: Specify names for dummy placeholders.
* Still need to support the old flow to support downstream templates.
Bug: 930874
Change-Id: I5576490c095a1e3d2337884051c9aff8e96ef2a9
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1536079
Commit-Queue: Samuel Huang <huangs@chromium.org>
Reviewed-by: Andrew Grieve <agrieve@chromium.org>
Reviewed-by: Tibor Goldschwendt <tiborg@chromium.org>
Cr-Commit-Position: refs/heads/master@{#645387}Chromium is an open-source browser project that aims to build a safer, faster, and more stable way for all users to experience the web.
The project's web site is https://www.chromium.org.
Documentation in the source is rooted in docs/README.md.
Learn how to Get Around the Chromium Source Code Directory Structure .