# you add a new build file, there must be some path of dependencies from this
# file to your new one or GN won't know about it.
+import("//build/config/ui.gni")
+
# In GN, a "group" is a dummy target that just lists other targets.
group("root") {
- # Declares that this target should be treated as "external" in the GN-GYP
- # hybrid build, and GN will not generate a GYP file for it. This flag is
- # ignored in the pure GN build.
- external = true
-
+ # Note that some dependencies are commented out. These are things that are
+ # currently written but not hooked up to the build yet. They may need to be
+ # completed or possibly just tested and then re-enabled.
deps = [
- "//base(//build/toolchain/nacl:x86_newlib)",
- "//chrome",
- "//components/language_usage_metrics",
- "//components/navigation_metrics",
- "//components/onc:onc_component",
- "//components/startup_metric_utils",
- "//components/translate:translate_core_browser",
- "//components/translate:translate_core_common",
+ # This is a temporary test of the not-yet-complete NaCl cross-compilation.
+ #"//base(//build/toolchain/nacl:x86_newlib)",
+ "//ash",
+ "//cc",
+ "//chrome/browser",
+ "//chrome/browser/devtools",
+ "//chrome/browser/ui",
+ "//chrome/browser/ui/views",
+ "//chrome/common",
+ "//chrome/plugin",
+ "//chrome/renderer",
+ "//chrome/service",
+ "//chrome/utility",
+ "//components:all_components",
+ "//content",
+ "//content/shell:content_shell",
+ "//content/test:test_support",
"//crypto",
- "//device/usb:device_usb",
+ "//device/bluetooth",
+ "//device/nfc",
+ "//device/usb",
+ "//extensions/browser",
+ "//extensions/common",
+ "//extensions/common/api",
+ "//extensions/renderer",
+ "//gin",
+ "//gpu",
+ "//google_apis",
+ "//google_apis/gcm",
"//ipc",
+ "//ipc/mojo",
+ "//media",
+ "//media/cast",
+ "//mojo",
"//net",
- "//net/third_party/nss:ssl",
+ "//pdf",
+ "//ppapi:ppapi_c",
+ "//printing",
+ "//sandbox",
"//sdch",
- "//third_party/WebKit/Source/platform",
- "//third_party/icu:icudata",
+ "//skia",
+ "//sql",
+ "//sync",
+ "//third_party/WebKit/public:all_blink",
+ "//third_party/angle:translator",
+ "//third_party/brotli",
+ "//third_party/cacheinvalidation",
+ "//third_party/cld",
+ "//third_party/cld_2",
+ "//third_party/ffmpeg",
+ "//third_party/flac",
+ "//third_party/harfbuzz-ng",
+ "//third_party/hunspell",
+ "//third_party/iccjpeg",
+ "//third_party/icu",
"//third_party/leveldatabase",
+ "//third_party/libaddressinput",
+ "//third_party/libphonenumber",
"//third_party/libpng",
+ "//third_party/libsrtp",
+ "//third_party/libusb",
+ "//third_party/libwebm",
+ "//third_party/libwebp",
+ "//third_party/libxslt",
+ "//third_party/libyuv",
+ "//third_party/lzma_sdk",
+ "//third_party/mesa",
+ "//third_party/opus",
+ "//third_party/ots",
+ "//third_party/protobuf:protobuf_lite",
+ "//third_party/qcms",
+ "//third_party/re2",
+ "//third_party/smhasher:cityhash",
+ "//third_party/smhasher:murmurhash3",
+ "//third_party/smhasher:pmurhash",
+ "//third_party/snappy",
+ "//third_party/speex",
+ "//third_party/widevine/cdm:version_h",
"//third_party/zlib",
- "//skia",
+ "//third_party:jpeg",
"//tools/gn",
+ "//tools/imagediff($host_toolchain)",
+ "//ui/app_list",
+ "//ui/aura",
+ "//ui/accessibility",
+ "//ui/base",
+ "//ui/display",
+ "//ui/events",
+ "//ui/gfx",
+ "//ui/gl",
+ "//ui/keyboard",
+ "//ui/native_theme",
+ "//ui/resources",
+ "//ui/snapshot",
+ "//ui/strings",
+ "//ui/surface",
+ "//ui/views",
+ "//ui/views/controls/webview",
+ "//ui/web_dialogs",
+ "//ui/wm",
"//url",
+ "//v8:v8",
+ "//webkit/browser:storage",
+ "//webkit/child",
]
+
+ if (!is_win) {
+ deps += [ "//breakpad:symupload" ]
+ }
+
+ if (is_linux) {
+ deps += [
+ "//dbus",
+ "//third_party/fontconfig",
+ "//third_party/freetype2",
+ ]
+ }
+
+ if (use_x11) {
+ deps += [ "//tools/xdisplaycheck" ]
+ }
+
+ if (is_win) {
+ deps += [
+ "//ui/metro_viewer",
+ ]
+ }
+
+ if (is_win || is_mac || is_chromeos) {
+ # RLZ works on these platforms.
+ deps += [
+ "//rlz:rlz_lib",
+ ]
+ }
+
+ if (cpu_arch == "x86" || cpu_arch == "x64") {
+ # YASM is x86/x64 only.
+ deps += [ "//third_party/yasm($host_toolchain)" ]
+ }
+
+ if (is_android) {
+ deps += [
+ "//ui/android:ui_java"
+ ]
+
+ deps -= [
+ "//chrome/browser", # Blocked on content.
+ "//chrome/browser/devtools", # Blocked on content.
+ "//chrome/browser/ui", # Blocked on content.
+ "//chrome/browser/ui/views", # Blocked on content.
+ "//chrome/common", # Blocked on content.
+ "//chrome/plugin", # Blocked on content.
+ "//chrome/renderer", # Blocked on content.
+ "//chrome/service", # Blocked on content.
+ "//chrome/utility", # Blocked on content.
+ "//content",
+ "//content/shell:content_shell", # Blocked on content.
+ "//content/test:test_support", # Blocked on content.
+ "//extensions/browser",
+ "//extensions/common",
+ "//extensions/common/api",
+ "//extensions/renderer",
+ "//pdf", # Not compiled on Android in GYP yet, either.
+ "//ppapi:ppapi_c",
+ "//sandbox",
+ "//third_party/libusb",
+ "//ui/keyboard", # Blocked on content.
+
+ # Blocked on neon stuff in vp8
+ "//third_party/WebKit/public:all_blink",
+
+ # Seems to not be compiled on Android. Otherwise it will need a config.h.
+ "//third_party/libxslt",
+
+ # Not relevant to Android.
+ "//ash",
+ "//tools/gn",
+ "//ui/aura",
+ "//ui/display",
+ "//ui/views",
+ "//ui/views/controls/webview",
+
+ # Fails on Android for unknown reasons.
+ "//third_party/flac",
+ "//breakpad:symupload",
+
+ # Not tested on Android yet:
+ "//google_apis/gcm",
+ "//third_party/cld_2",
+ "//third_party/libaddressinput",
+ "//third_party/ffmpeg",
+ "//ui/app_list",
+ "//ui/web_dialogs",
+ "//ui/wm",
+ "//webkit/browser:storage",
+ "//webkit/child",
+ ]
+ }
+
+ if (use_ozone) {
+ deps += [
+ "//ui/ozone",
+ "//ui/ozone/demo",
+ ]
+ }
}