Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(72)

Unified Diff: BUILD.gn

Issue 936193004: add gn_all, gyp_all targets to build files, remove GN's //:root (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: temporarily disable gn_all and gyp_all on Android Created 5 years, 10 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « no previous file | build/all.gyp » ('j') | build/all.gyp » ('J')
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: BUILD.gn
diff --git a/BUILD.gn b/BUILD.gn
index 124e0ff9244f670d35fe8c084e8f88057cad336c..e8c3c750aff2918e6fd3734a0fdec521d6ee900a 100644
--- a/BUILD.gn
+++ b/BUILD.gn
@@ -10,6 +10,7 @@
import("//build/config/features.gni")
import("//build/config/ui.gni")
+
if (is_android) {
import("//build/config/android/config.gni")
}
@@ -21,127 +22,119 @@ declare_args() {
root_extra_deps = []
}
+group("gyp_all") {
+ testonly = true
+
+ # TODO(GYP): This target should describe everything that is built by a GYP
+ # build but not yet by a GN build, i.e., these are the targets that still
+ # need to be ported to GN. Eventually this target should be identical to
+ # gn_all.
+
+ deps = [
+ ":gn_all",
+ # "//chrome/test:chromedriver_unittests", # TODO(GYP)
+ # "//components:components_browsertests", # TODO(GYP)
+ # "//components/nacl:nacl_loader_unittests", # TODO(GYP)
+ # "//google_apis:google_apis_unittests", # TODO(GYP)
+ # "//ui/compositor:compositor_unittests", # TODO(GYP)
+ # "//device:device_unittests", # TODO(GYP)
+ # "//ppapi:ppapi_unittests", # TODO(GYP)
+ # "//remoting:remoting_unittests", # TODO(GYP)
+ ]
+}
+
+# The "gn_all" target matches the "gn_all" target in build/all.gyp.
+# It is not (yet!) the same as building "all".
+# TODO(GYP): Make it be basically the same as building all, or at least
+# be sure that we don't want any of the stuff listed in gn_all to
+# be built by default.
+
# In GN, a "group" is a dummy target that just lists other targets.
-group("root") {
- # This should not be linked into production and depends on test targets.
+group("gn_all") {
testonly = 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 = [
- "//apps",
- "//ash",
- "//cc",
- "//cc/blink",
- "//chrome/browser",
- "//chrome/browser/devtools",
- "//chrome/common",
- "//chrome/plugin",
- "//chrome/renderer",
- "//chrome/test",
- "//chrome/tools",
- "//chrome/utility",
- "//components:all_components",
- "//content",
+ "//base:base_unittests",
+ "//cc:cc_unittests",
+ "//chrome",
+ "//chrome/test:browser_tests",
+ "//chrome/test:interactive_ui_tests",
+ "//chrome/test:sync_integration_tests",
+ "//chrome/test:unit_tests",
+ "//components:components_unittests",
"//content/shell:content_shell",
- "//content/test:test_support",
- "//crypto",
- "//device/battery",
- "//device/bluetooth",
- "//device/nfc",
- "//device/vibration",
- "//extensions/browser",
- "//extensions/common",
- "//extensions/common/api",
- "//extensions/renderer",
- "//gin",
- "//gpu",
- "//google_apis",
- "//google_apis/gcm",
- "//ipc",
- "//ipc/mojo",
- "//jingle:notifier",
- "//media",
- "//media/blink",
- "//media/cast",
- "//media/mojo",
+ "//content/test:content_browsertests",
+ "//content/test:content_perftests",
+ "//content/test:content_unittests",
+ "//crypto:crypto_unittests",
+ "//extensions:extensions_browsertests",
+ "//extensions:extensions_unittests",
+ "//google_apis/gcm:gcm_unit_tests",
+ "//gpu:gpu_unittests",
+ "//ipc:ipc_tests",
+ "//ipc/mojo:ipc_mojo_unittests",
+ "//jingle:jingle_unittests",
+ "//media:media_unittests",
+ "//media/mojo", # only builds in mojo
+ "//media/cast:cast_unittests",
"//mojo",
- "//net",
- "//pdf",
- "//ppapi/examples",
- "//printing",
- "//remoting/client/plugin",
- "//sandbox",
- "//sdch",
- "//skia",
- "//storage/browser",
- "//sql",
- "//sync",
+ "//mojo/common:mojo_common_unittests",
+
+ # "//mojo/services/html_viewer:tests", # TODO(GYP): Do we need this?
+ "//net:net_unittests",
+ "//ppapi/examples", # TODO(GYP): What's the GYP equivalent?
+ "//printing:printing_unittests",
+ "//skia:skia_unittests",
+ "//sql:sql_unittests",
+ "//sync:sync_unit_tests",
+
+ # TODO(GYP): the Blink test targets should be public, but
+ # currently aren't. all_blink pulls them in, though.
+ # "//third_party/WebKit/Source/platform:heap_unittests",
+ # "//third_party/WebKit/Source/platform:platform_unittests",
+ # "//third_party/WebKit/Source/wtf:wtf_unittests",
"//third_party/WebKit/public:all_blink",
- "//third_party/angle:translator",
- "//third_party/brotli",
- "//third_party/cacheinvalidation",
+ "//third_party/cacheinvalidation:cacheinvalidation_unittests",
+
+ # TODO(GYP): This is needed only w/ cld_version==1. What configs set that?
"//third_party/cld",
- "//third_party/cld_2",
"//third_party/codesighs",
- "//third_party/ffmpeg",
- "//third_party/flac",
- "//third_party/harfbuzz-ng",
- "//third_party/hunspell",
- "//third_party/iccjpeg",
- "//third_party/icu",
- "//third_party/leveldatabase",
- "//third_party/libphonenumber",
- "//third_party/libjingle",
- "//third_party/libpng",
+
+ # TODO(GYP): This is needed only w/ use_system_fontconfig==0.
+ # What configs set that?
+ # "//third_party/fontconfig",
+
+ # TODO(GYP): This will be pulled in automatically when enable_webrtc==true.
+ # For now pull it in manually so that it doesn't regress.
"//third_party/libsrtp",
- "//third_party/libusb",
- "//third_party/libwebp",
- "//third_party/libxslt",
- "//third_party/libvpx",
- "//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/mojo/src/mojo/edk/system:mojo_system_unittests",
+ "//third_party/mojo/src/mojo/edk/test:mojo_public_bindings_unittests",
+ "//third_party/mojo/src/mojo/edk/test:mojo_public_environment_unittests",
+ "//third_party/mojo/src/mojo/edk/test:mojo_public_system_unittests",
+ "//third_party/mojo/src/mojo/edk/test:mojo_public_utility_unittests",
+ "//third_party/pdfium/samples:pdfium_test",
+
+ # TODO(GYP): Verify that this is no longer needed.
"//third_party/smhasher:pmurhash",
- "//third_party/snappy",
- "//third_party/speex",
+
+ # TODO(GYP): This will be pulled in automatically when enable_webrtc==true.
+ # For now pull it in manually so that it doesn't regress.
"//third_party/usrsctp",
- "//third_party/widevine/cdm:version_h",
- "//third_party/webrtc",
- "//third_party/zlib",
- "//third_party:jpeg",
- "//tools/gn",
"//tools/imagediff($host_toolchain)",
- "//tools/telemetry:bitmaptools",
- "//ui/accessibility",
- "//ui/app_list",
- "//ui/aura",
- "//ui/base",
- "//ui/display",
- "//ui/events",
- "//ui/gfx",
- "//ui/gl",
- "//ui/keyboard",
- "//ui/native_theme",
- "//ui/resources",
- "//ui/snapshot",
- "//ui/strings",
- "//ui/surface",
- "//ui/touch_selection",
- "//ui/views",
- "//ui/views/controls/webview",
- "//ui/web_dialogs",
- "//url",
- "//v8:v8",
+ "//tools/gn",
+ "//tools/gn:gn_unittests",
+ "//tools/telemetry:bitmaptools($host_toolchain)",
+ "//ui/accessibility:accessibility_unittests",
+ "//ui/app_list:app_list_unittests",
+ "//ui/base:ui_base_unittests",
+ "//ui/display:display_unittests",
+ "//ui/events:events_unittests",
+ "//ui/gfx:gfx_unittests",
+ "//ui/touch_selection:ui_touch_selection_unittests",
+ "//ui/views:views_unittests",
+ "//url:url_unittests",
]
+
deps += root_extra_deps
# TODO(GYP): Get this working on the mac?
@@ -153,166 +146,154 @@ group("root") {
deps += [ "//breakpad:symupload" ]
}
- if (is_linux) {
- deps += [
- "//dbus",
- "//third_party/fontconfig",
- "//third_party/freetype2",
- ]
- }
-
if (use_x11) {
deps += [ "//tools/xdisplaycheck" ]
}
if (use_aura) {
- deps += [ "//ui/wm" ]
+ deps += [ "//ui/wm:wm_unittests" ]
}
- if (is_win) {
- deps += [ "//ui/metro_viewer" ]
+ if (use_ozone) {
+ deps += [
+ "//ui/ozone", # TODO(GYP) Needed??
+ "//ui/ozone/demo", # TODO(GYP) Needed??
+ ]
}
if (is_win || is_mac || is_chromeos) {
# RLZ works on these platforms.
+ # TODO(GYP): Is this target needed, or pulled in automatically?
deps += [ "//rlz:rlz_lib" ]
}
- if (current_cpu == "x86" || current_cpu == "x64") {
- # YASM is x86/x64 only.
- deps += [ "//third_party/yasm($host_toolchain)" ]
- }
-
if (is_android) {
deps += [
"//base/android/linker:chromium_android_linker",
"//build/android/gyp/test:hello_world",
"//build/android/rezip",
- "//third_party/openmax_dl/dl",
- "//content/shell/android:content_shell_apk",
"//chrome/android:chrome_shell_apk",
- "//chrome/test:test_support_unit",
"//chrome/test/chromedriver/test/webview_shell:chromedriver_webview_shell_apk",
- "//ui/android:ui_java",
+ "//tools/imagediff($host_toolchain)",
+
+ # TODO(GYP): Remove these when the components_unittests work.
+ "//components/history/core/test:test",
+ "//components/policy:policy_component_test_support",
+ "//components/policy:test_support",
+ "//components/rappor:test_support",
+ "//components/signin/core/browser:test_support",
+ "//components/sync_driver:test_support",
+ "//components/user_manager",
+ "//components/wallpaper",
+ "//content/shell/android:content_shell_apk",
+
+ # TODO(GYP): Are these needed, or will they be pulled in automatically?
"//third_party/android_tools:android_gcm_java",
"//third_party/android_tools:uiautomator_java",
"//third_party/android_tools:android_support_v13_java",
"//third_party/android_tools:android_support_v7_appcompat_java",
"//third_party/android_tools:android_support_v7_mediarouter_java",
+ "//third_party/mesa",
"//third_party/mockito:mockito_java",
- ]
-
- if (has_chrome_android_internal) {
- deps += [ "//clank" ]
- }
-
- # TODO(GYP): Move the targets in the rest of this block that still
- # need to be made to work in the GN build to the bottom of the file
- # so that all the remaining work is located in one place in the file.
- # This block should contain only the targets that aren't actually
- # needed on Android.
+ "//third_party/openmax_dl/dl",
+ "//third_party/speex",
+ "//ui/android:ui_java",
+ # TODO(GYP): Are these needed?
+ "//chrome/test:test_support_unit",
+ "//third_party/smhasher:murmurhash3",
+ "//ui/message_center:test_support",
+ ]
deps -= [
- "//apps", # Needs testing.
- "//chrome/browser",
- "//chrome/browser/devtools",
- "//chrome/common",
- "//chrome/plugin",
- "//chrome/renderer",
- "//chrome/test",
- "//chrome/tools",
- "//chrome/utility",
- "//content/shell:content_shell",
- "//extensions/browser",
- "//extensions/common",
- "//extensions/common/api",
- "//extensions/renderer",
- "//pdf", # Not compiled on Android in GYP yet, either.
+ "//breakpad:symupload", # TODO(GYP) ??
+ "//chrome", # TODO(GYP) ??
+ "//chrome/test:browser_tests", # TODO(GYP) ??
+ "//chrome/test:interactive_ui_tests", # TODO(GYP) ??
+ "//chrome/test:sync_integration_tests", # TODO(GYP) ??
+ "//chrome/test:unit_tests", # TODO(GYP)
+ "//extensions:extensions_browsertests",
+ "//extensions:extensions_unittests",
+ "//google_apis/gcm:gcm_unit_tests",
+ "//ipc:ipc_tests", # TODO(GYP) ??
+ "//jingle:jingle_unittests", # TODO(GYP) ??
+ "//net:net_unittests",
"//ppapi/examples",
- "//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",
+ "//third_party/pdfium/samples:pdfium_test",
"//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",
- "//remoting/client/plugin",
- "//storage/browser",
- "//third_party/cld_2",
- "//third_party/ffmpeg",
- "//ui/app_list",
- "//ui/web_dialogs",
+ "//tools/gn:gn_unittests",
+ "//ui/app_list:app_list_unittests",
+ "//ui/views:views_unittests",
+ "//url:url_unittests",
]
- }
- if (use_ozone) {
+ if (has_chrome_android_internal) {
+ deps += [ "//clank" ] # TODO(GYP) ??
+ }
+ } else if (is_linux) {
deps += [
- "//ui/ozone",
- "//ui/ozone/demo",
+ "//dbus:dbus_unittests",
+ "//sandbox/linux:sandbox_linux_unittests",
]
- }
-
- # Non-mobile builds.
- if (!is_android && !is_ios) {
+ } else if (is_mac) {
deps += [
- "//device/usb",
- "//device:device_unittests",
- "//third_party/pdfium/samples",
+ "//third_party/apple_sample_code",
+ "//third_party/molokocacao",
]
- }
- #
- # TODO(GYP): Make everything below this work in the GN build.
- #
-
- if (is_mac) {
+ # TODO(GYP): Remove these when the targets below work and these
+ # are pulled in automatically.
deps += [
- "//third_party/apple_sample_code",
- "//third_party/molokocacao",
+ "//cc/blink",
+ "//components/ui/zoom:ui_zoom",
+ "//content",
+ "//content/test:test_support",
+ "//device/battery",
+ "//device/bluetooth",
+ "//device/nfc",
+ "//device/usb",
+ "//device/vibration",
+ "//media/blink",
+ "//pdf",
+ "//storage/browser",
+ "//third_party/brotli",
+ "//third_party/flac",
+ "//third_party/hunspell",
+ "//third_party/iccjpeg",
+ "//third_party/libphonenumber",
+ "//third_party/ots",
+ "//third_party/qcms",
+ "//third_party/smhasher:murmurhash3",
+ "//third_party/speex",
+ "//third_party/webrtc/system_wrappers",
+ "//ui/native_theme",
+ "//ui/snapshot",
+ "//ui/surface",
]
# TODO(dpranke): These are as-yet untriaged but need at least the above.
deps -= [
- "//apps",
- "//ash",
- "//chrome/browser",
- "//chrome/browser/devtools",
- "//chrome/common",
- "//chrome/plugin",
- "//chrome/renderer",
- "//chrome/test",
- "//chrome/utility",
- "//components:all_components",
- "//content/shell:content_shell",
- "//extensions/browser",
- "//extensions/common",
- "//extensions/common/api",
- "//extensions/renderer",
- "//remoting/client/plugin",
- "//third_party/usrsctp",
- "//ui/app_list",
- "//ui/aura",
- "//ui/keyboard",
- "//ui/views",
- "//ui/views/controls/webview",
- "//ui/web_dialogs",
+ "//chrome", # TODO(GYP)
+ "//chrome/test:browser_tests", # TODO(GYP)
+ "//chrome/test:interactive_ui_tests", # TODO(GYP)
+ "//chrome/test:sync_integration_tests", # TODO(GYP)
+ "//chrome/test:unit_tests", # TODO(GYP)
+ "//components:components_unittests", # TODO(GYP)
+ "//content/test:content_browsertests", # TODO(GYP)
+ "//content/test:content_perftests", # TODO(GYP)
+ "//content/test:content_unittests", # TODO(GYP)
+ "//extensions:extensions_browsertests", # TODO(GYP)
+ "//extensions:extensions_unittests", # TODO(GYP)
+ "//net:net_unittests", # TODO(GYP)
+ "//third_party/usrsctp", # TODO(GYP)
+ "//ui/app_list:app_list_unittests", # TODO(GYP)
+ "//ui/gfx:gfx_unittests", # TODO(GYP)
+ "//ui/views:views_unittests", # TODO(GYP)
+ ]
+ } else if (is_win) {
+ deps += [ "//ui/metro_viewer" ]
+ deps -= [
+ "//crypto:crypto_unittests", # TODO(GYP)
+ "//net:net_unittests", # TODO(GYP)
]
- }
-
- if (is_mac || is_ios) {
- deps -= [ "//ui/touch_selection" ]
}
}
« no previous file with comments | « no previous file | build/all.gyp » ('j') | build/all.gyp » ('J')

Powered by Google App Engine
This is Rietveld 408576698