| # Copyright (c) 2013 The Chromium Authors. All rights reserved. |
| # Use of this source code is governed by a BSD-style license that can be |
| # found in the LICENSE file. |
| |
| # This is the root build file for GN. GN will start processing by loading this |
| # file, and recursively load all dependencies until all dependencies are either |
| # resolved or known not to exist (which will cause the build to fail). So if |
| # 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") { |
| # 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 = [ |
| # 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", |
| "//crypto", |
| "//device/bluetooth", |
| "//device/nfc", |
| "//device/usb", |
| "//extensions/common/api", |
| "//gin", |
| "//gpu", |
| "//google_apis", |
| "//google_apis/gcm", |
| "//ipc", |
| "//media", |
| "//mojo", |
| "//mojo/common", |
| "//mojo/environment:chromium", |
| "//mojo/service_manager", |
| "//mojo/system", |
| "//net", |
| "//pdf", |
| "//ppapi:ppapi_c", |
| "//printing", |
| "//sandbox", |
| "//sdch", |
| "//skia", |
| "//sql", |
| "//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", |
| "//third_party:jpeg", |
| "//tools/gn", |
| "//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 (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 -= [ |
| "//cc", |
| "//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", |
| "//extensions/common/api", |
| "//pdf", # Not compiled on Android in GYP yet, either. |
| "//ppapi:ppapi_c", |
| "//sandbox", |
| "//third_party/libusb", |
| "//ui/keyboard", # Blocked on content. |
| |
| # 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", |
| |
| # TODO(brettw) make Blink work on Android. |
| "//third_party/WebKit/public:all_blink", |
| |
| # 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/events/ozone:events_ozone", |
| "//ui/events/ozone:events_ozone_evdev", |
| ] |
| } |
| } |