summaryrefslogtreecommitdiffstats
path: root/components/README
diff options
context:
space:
mode:
authorjoi@chromium.org <joi@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2012-12-27 11:44:00 +0000
committerjoi@chromium.org <joi@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2012-12-27 11:44:00 +0000
commit5ec3ed8f21662b76ca763937f312e1964f1e3cb3 (patch)
treed327aea78a19f54b72594a42574909e9d1dcd9e8 /components/README
parenta97de84b92fc37b731ae28d70c19141ff2abf81c (diff)
downloadchromium_src-5ec3ed8f21662b76ca763937f312e1964f1e3cb3.zip
chromium_src-5ec3ed8f21662b76ca763937f312e1964f1e3cb3.tar.gz
chromium_src-5ec3ed8f21662b76ca763937f312e1964f1e3cb3.tar.bz2
Establish src/components/ directory.
TBR=ben@chromium.org BUG=138280 Review URL: https://chromiumcodereview.appspot.com/11648012 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@174678 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'components/README')
-rw-r--r--components/README30
1 files changed, 30 insertions, 0 deletions
diff --git a/components/README b/components/README
new file mode 100644
index 0000000..09640a2
--- /dev/null
+++ b/components/README
@@ -0,0 +1,30 @@
+This directory is for components that have the Content Module as the
+uppermost layer they depend on. They may depend only on the Content
+API (content/public) and on lower layers (e.g. base/, net/, ipc/
+etc.).
+
+Components that have bits of code that need to live in different
+processes (e.g. some code in the browser process, some in the renderer
+process, etc.) should separate the code into different subdirectories.
+Hence for a component named 'foo' you might end up with a structure
+like the following:
+
+components/foo - DEPS, OWNERS, foo.gypi
+components/foo/browser - code that needs the browser process
+components/foo/common - for e.g. IPC constants and such
+components/foo/renderer - code that needs renderer process
+
+These subdirectories should have DEPS files with the relevant
+restrictions in place, i.e. only components/*/browser should
+be allowed to #include from content/public/browser.
+
+Note that there may also be an 'android' subdir, with a Java source
+code structure underneath it where the package name is
+org.chromium.components.foo, and with subdirs after 'foo'
+to illustrate process, e.g. 'browser' or 'renderer':
+
+components/foo/android/OWNERS, DEPS
+components/foo/android/java/src/org/chromium/components/foo/browser/
+components/foo/android/javatests/src/org/chromium/components/foo/browser/
+
+Code in this directory should be placed in the components:: namespace.