Introduce the image_decoder service
Moves OOP image decoding from a one-off utility process IPC
to its own service_manager service. This is then hooked up
by Chrome to be launched by content's utility-process-based
sandboxed service launcher.
This serves as a precursor to extracing process launch
code from content, as it defines a service which is used
in production across all platforms that support multiprocess.
The ImageDecoder helper defined in src/chrome is substantially
simplified here, as it's reduced to a thin wrapper around the
image_decoder client library.
In order to support Chrome content_browser packaging the
service, this also adds support for packaging services within
manifest overlays by introducing a new service_manifest_overlay
GN template.
Finally this also introduces a new service_unittests binary
as a default home for service implementations to stash their
unittest sources. Follow-up work will add this test suite to
bot configurations.
BUG=654986
Review-Url: https://codereview.chromium.org/2475543003
Cr-Commit-Position: refs/heads/master@{#431605}
diff --git a/chrome/browser/DEPS b/chrome/browser/DEPS
index 0eebd89..6bc62ef 100644
--- a/chrome/browser/DEPS
+++ b/chrome/browser/DEPS
@@ -37,6 +37,7 @@
"+media/cdm/cdm_paths.h",
"+media/midi", # For midi switches
"+media/mojo", # For mojo media services.
+ "+services/image_decoder/public/cpp",
"+services/service_manager/public/cpp",
"+services/ui/public",
"+ppapi/c", # For various types.