From 4b41822a62d66aa9ce37fcead61e557ce566f4ce Mon Sep 17 00:00:00 2001 From: Zeke Sikelianos Date: Tue, 21 Nov 2017 10:55:56 -0800 Subject: [PATCH] document chromium_src directory --- .../source-code-directory-structure.md | 15 ++++++++++++++- 1 file changed, 14 insertions(+), 1 deletion(-) diff --git a/docs/development/source-code-directory-structure.md b/docs/development/source-code-directory-structure.md index 19b9017646ea..53c0e2b37c01 100644 --- a/docs/development/source-code-directory-structure.md +++ b/docs/development/source-code-directory-structure.md @@ -30,7 +30,7 @@ Electron | loop into Chromium's message loop. | └── api/ - The implementation of common APIs, and foundations of | Electron's built-in modules. -├── chromium_src/ - Source code that copied from Chromium. +├── chromium_src/ - Source code copied from Chromium. See below. ├── default_app/ - The default page to show when Electron is started without | providing an app. ├── docs/ - Documentations. @@ -47,6 +47,19 @@ Electron components like `node` and `breakpad`. ``` +## `/chromium_src` + +The files in `/chromium_src` tend to be pieces of Chromium that aren't part of +the content layer. For example to implement Pepper API, we need some wiring +similar to what official Chrome does. We could have built the relevant +sources as a part of [libcc](../glossary.md#libchromiumcontent) but most +often we don't require all the features (some tend to be proprietary, +analytics stuff) so we just took parts of the code. These could have easily +been patches in libcc, but at the time when these were written the goal of +libcc was to maintain very minimal patches and chromium_src changes tend to be +big ones. Also, note that these patches can never be upstreamed unlike other +libcc patches we maintain now. + ## Structure of Other Directories * **script** - Scripts used for development purpose like building, packaging,