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

Unified Diff: components/crash/content/app/BUILD.gn

Issue 1417673004: Make unit_tests compile in Mac GN (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@mac
Patch Set: . Created 5 years, 2 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 | « components/crash.gypi ('k') | components/handoff/BUILD.gn » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: components/crash/content/app/BUILD.gn
diff --git a/components/crash/content/app/BUILD.gn b/components/crash/content/app/BUILD.gn
index e0985c559c35bda415494669abc6678445c5fb91..b593f40a3f6cdc14af5870e059a6bd4213d98a73 100644
--- a/components/crash/content/app/BUILD.gn
+++ b/components/crash/content/app/BUILD.gn
@@ -24,9 +24,49 @@ source_set("lib") {
# GYP version: components/crash.gypi:crash_component
source_set("app") {
sources = [
+ "crashpad_mac.h",
+ "crashpad_mac.mm",
+ ]
+
+ defines = [ "CRASH_IMPLEMENTATION" ]
+
+ deps = [
+ ":app_non_mac",
+ "//base",
+ ]
+
+ if (is_mac) {
+ deps += [ "//third_party/crashpad/crashpad/client" ]
+ }
+}
+
+# TODO(mark): https://crbug.com/466890: merge this target with
+# crash_component.
+#
+# This is a temporary base target that is depended on by both
+# crash_component and crash_component_breakpad_mac_to_be_deleted. It
+# provides everything common to both of those targets. For a short period,
+# there are two Mac crash component implementations. The new one uses a
+# Crashpad implementation and is used by Chrome. The old one uses a
+# Breakpad implementation and is used by content_shell. Consumers should
+# depend on the desired target. All three targets behave identically on
+# non-Mac. When content_shell and any other consumers are migrated to the
+# Crashpad implementation on Mac, crash_component will merge back into
+# this target, crash_component_non_mac, which will be renamed
+# crash_component. crash_component_breakpad_mac_to_be_deleted will be
+# deleted.
+#
+# While this situation exists:
+#
+# Do not depend on this target directly! Depend on
+# crash_component_breakpad_mac_to_be_deleted for old Breakpad behavior on
+# all platforms, or preferably, depend on crash_component to get Breakpad
+# everywhere except for Mac, where you will get Crashpad.
+source_set("app_non_mac") {
+ visibility = [ ":*" ]
+
+ sources = [
"breakpad_linux_impl.h",
- "breakpad_mac.h",
- "breakpad_mac.mm",
"breakpad_win.cc",
"breakpad_win.h",
"hard_error_handler_win.cc",
@@ -49,18 +89,16 @@ source_set("app") {
defines = [ "CRASH_IMPLEMENTATION" ]
deps = [
+ ":lib",
"//base",
"//base:base_static",
- ":lib",
]
if (is_android) {
defines += [ "CHROME_BUILD_ID=" + android_chrome_build_id ]
}
- if (is_mac) {
- deps += [ "//breakpad" ]
- } else if (is_win) {
+ if (is_win) {
deps += [
"//sandbox",
"//breakpad:breakpad_handler",
@@ -72,8 +110,30 @@ source_set("app") {
}
}
-source_set("test_support") {
+# TODO(mark): https://crbug.com/466890: remove this target.
+#
+# This is a temporary target provided for Mac Breakpad users that have not
+# yet migrated to Crashpad (namely content_shell). This target will be
+# removed shortly and all consumers will be expected to use Crashpad as
+# the Mac crash-reporting client. See the comment in the
+# crash_component_non_mac target for more details.
+source_set("app_breakpad_mac_to_be_deleted") {
deps = [
- ":lib",
+ ":app_non_mac",
]
+
+ if (is_mac) {
+ sources = [
+ "breakpad_mac.h",
+ "breakpad_mac.mm",
+ ]
+
+ defines = [ "CRASH_IMPLEMENTATION" ]
+
+ deps += [
+ "//base",
+ "//base:base_static",
+ "//breakpad",
+ ]
+ }
}
« no previous file with comments | « components/crash.gypi ('k') | components/handoff/BUILD.gn » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698