At the moment the 3 modules that use extension API schemas, those in
extensions/common/api, chrome/common/extensions/api, and extensions/shell/api,
are generated with different C++ namespaces: "core_api", "api", and
"shell::api" respectively.
This is a pointless distinction to make since as far as JS is concerned they
must all go on the window.chrome object, therefore namespace conflicts are
impossible. It just ends up adding code noise.
The only problem it solves is that all bundle compiles are generated to the
same name, "GeneratedSchemas" and "GeneratedFunctionRegistry". This patch
solves that a different way, by adding a JSON schema compiler option to give
those generated classes a prefix such that they are "GeneratedSchemas",
"ChromeGeneratedSchemas", and "ShellGeneratedSchemas" respectively.
This lets us to a global substitution from "core_api" to just "api".
R=rockot@chromium.org, dpranke@chromium.orgTBR=ben@chromium.org
Review URL: https://codereview.chromium.org/1226353004
Cr-Original-Commit-Position: refs/heads/master@{#340119}
Cr-Mirrored-From: https://chromium.googlesource.com/chromium/src
Cr-Mirrored-Commit: e58e6223146f09405229146fce6c1bfe6b71e4ce
* Fixed in this version: dependencies for *_api_registration on *_api.
Split bundle generation steps so that API registration is generated in browser, not common.
We now have schema generation, schema bundle generation, and schema bundle registration generation; the last of these is generated in a separate build target and output to browser rather than common.
Fix a couple of dangling gyp issues also.
BUG=405226
TBR=scottmg@chromium.org,sky@chromium.org
Review URL: https://codereview.chromium.org/513633002
Cr-Original-Commit-Position: refs/heads/master@{#292090}
Cr-Mirrored-From: https://chromium.googlesource.com/chromium/src
Cr-Mirrored-Commit: 774dcda2d369584b2e964fa4971dda71cf819677
Causing build failure in Android due to failed include for extensions/common/api/runtime.h.
This reverts commit 3b70ef14be986a3252428cc6d9553bf2c69deb70.
BUG=none
TBR=yoz
Review URL: https://codereview.chromium.org/506253003
Cr-Original-Commit-Position: refs/heads/master@{#292059}
Cr-Mirrored-From: https://chromium.googlesource.com/chromium/src
Cr-Mirrored-Commit: 8f65982274893958898690b22e1c0c9ed4968857
We now have schema generation, schema bundle generation, and schema bundle registration generation; the last of these is generated in a separate build target and output to browser rather than common.
Fix a couple of dangling gyp issues also.
BUG=405226
TBR=sky@chromium.org
Review URL: https://codereview.chromium.org/489153003
Cr-Original-Commit-Position: refs/heads/master@{#292057}
Cr-Mirrored-From: https://chromium.googlesource.com/chromium/src
Cr-Mirrored-Commit: 3b70ef14be986a3252428cc6d9553bf2c69deb70