# Do NOT add chrome to the list below. We shouldn't be including files # from src/chrome in src/content. Also, we may only depend on files in # src/components that are shared with the mojo html_viewer. include_rules = [ # The subdirectories in content/ will manually allow their own include # directories in content/ so we disallow all of them. "-content", "+content/app/resources/grit/content_resources.h", "+content/common", "+content/grit", "+content/public/common", "+content/public/test", "+content/test", "+blink", "+cc", "-cc/blink", # If you want to use any of these files, move them to src/base first. "-cc/base/scoped_ptr_algorithm.h", "-cc/base/scoped_ptr_deque.h", "-cc/base/scoped_ptr_vector.h", "+crypto", "+grit/blink_resources.h", "+grit/content_strings.h", "+dbus", "+gpu", "+mojo/common", "+mojo/edk/embedder", "+mojo/edk/js", "+mojo/edk/test", "+mojo/message_pump", "+mojo/public", "+net", "+ppapi", "+printing", "+sandbox", "+skia", # In general, content/ should not rely on google_apis, since URLs # and access tokens should usually be provided by the # embedder. # # There are a couple of specific parts of content that are excepted # from this rule, see content/browser/speech/DEPS and # content/browser/geolocation/DEPS. Both of these are cases of # implementations that are strongly tied to Google servers, i.e. we # don't expect alternate implementations to be provided by the # embedder. "-google_apis", # Don't allow inclusion of these other libs we shouldn't be calling directly. "-v8", "-tools", # Allow inclusion of third-party code: "+third_party/angle", "+third_party/flac", "+third_party/libjingle", "+third_party/mozilla", "+third_party/npapi/bindings", "+third_party/ocmock", "+third_party/re2", "+third_party/skia", "+third_party/sqlite", "+third_party/khronos", "+third_party/webrtc", "+third_party/zlib/google", "+third_party/WebKit/public/platform", "+third_party/WebKit/public/web", "+ui/accelerated_widget_mac", "+ui/accessibility", "+ui/android", # Aura is analogous to Win32 or a Gtk, so it is allowed. "+ui/aura", "+ui/base", "+ui/compositor", "+ui/events", "+ui/gfx", "+ui/gl", "+ui/native_theme", "+ui/ozone/public", "+ui/resources/grit/ui_resources.h", "+ui/resources/grit/webui_resources.h", "+ui/resources/grit/webui_resources_map.h", "+ui/shell_dialogs", "+ui/snapshot", "+ui/strings/grit/ui_strings.h", "+ui/surface", "+ui/touch_selection", "+ui/wm", # Content knows about grd files, but the specifics of how to get a resource # given its id is left to the embedder. "-ui/base/l10n", "-ui/base/resource", # These files aren't related to grd, so they're fine. "+ui/base/l10n/l10n_util_android.h", "+ui/base/l10n/l10n_util_win.h", # Content shouldn't depend on views. While we technically don't need this # line, since the top level DEPS doesn't allow it, we add it to make this # explicit. "-ui/views", "+storage/browser", "+storage/common", # For generated JNI includes. "+jni", ] # content -> content/shell dependency is not allowed, except for browser tests. specific_include_rules = { ".*_browsertest[a-z_]*\.cc": [ "+content/shell/browser", "+content/shell/common", ], }