OLD | NEW |
1 # Copyright 2015 The Chromium Authors. All rights reserved. | 1 # Copyright 2015 The Chromium Authors. All rights reserved. |
2 # Use of this source code is governed by a BSD-style license that can be | 2 # Use of this source code is governed by a BSD-style license that can be |
3 # found in the LICENSE file. | 3 # found in the LICENSE file. |
4 | 4 |
| 5 import("//third_party/protobuf/proto_library.gni") |
| 6 |
| 7 proto_library("stability_report_proto") { |
| 8 sources = [ |
| 9 "stability_report.proto", |
| 10 ] |
| 11 } |
| 12 |
5 static_library("browser_watcher") { | 13 static_library("browser_watcher") { |
6 # This is a separate lib to minimize the dependencies for its | 14 # This is a separate lib to minimize the dependencies for its |
7 # hosting binary "chrome_watcher.dll". | 15 # hosting binary "chrome_watcher.dll". |
8 sources = [ | 16 sources = [ |
9 "endsession_watcher_window_win.cc", | 17 "endsession_watcher_window_win.cc", |
10 "endsession_watcher_window_win.h", | 18 "endsession_watcher_window_win.h", |
11 "exit_code_watcher_win.cc", | 19 "exit_code_watcher_win.cc", |
12 "exit_code_watcher_win.h", | 20 "exit_code_watcher_win.h", |
13 "exit_funnel_win.cc", | 21 "exit_funnel_win.cc", |
14 "exit_funnel_win.h", | 22 "exit_funnel_win.h", |
| 23 "postmortem_minidump_writer.h", |
| 24 "postmortem_minidump_writer_win.cc", |
| 25 "postmortem_report_collector.cc", |
| 26 "postmortem_report_collector.h", |
15 "window_hang_monitor_win.cc", | 27 "window_hang_monitor_win.cc", |
16 "window_hang_monitor_win.h", | 28 "window_hang_monitor_win.h", |
17 ] | 29 ] |
18 deps = [ | 30 deps = [ |
| 31 ":stability_report_proto", |
19 "//base", | 32 "//base", |
| 33 "//components/version_info", |
| 34 "//third_party/crashpad/crashpad/client", |
| 35 |
| 36 # TODO(manzagop): remove non client/ crashpad dependencies. |
| 37 "//third_party/crashpad/crashpad/minidump", |
| 38 "//third_party/crashpad/crashpad/util", |
20 ] | 39 ] |
21 } | 40 } |
22 | 41 |
23 static_library("browser_watcher_client") { | 42 static_library("browser_watcher_client") { |
24 sources = [ | 43 sources = [ |
25 "watcher_client_win.cc", | 44 "watcher_client_win.cc", |
26 "watcher_client_win.h", | 45 "watcher_client_win.h", |
27 "watcher_metrics_provider_win.cc", | 46 "watcher_metrics_provider_win.cc", |
28 "watcher_metrics_provider_win.h", | 47 "watcher_metrics_provider_win.h", |
29 ] | 48 ] |
30 deps = [ | 49 deps = [ |
| 50 ":browser_watcher", |
| 51 ":stability", |
31 "//base", | 52 "//base", |
32 "//components/metrics", | 53 "//components/metrics", |
| 54 |
| 55 # This seems to be needed to add crashpad to the include directories. |
| 56 "//third_party/crashpad/crashpad/client", |
33 ] | 57 ] |
34 } | 58 } |
35 | 59 |
| 60 static_library("stability") { |
| 61 sources = [ |
| 62 "features.cc", |
| 63 "features.h", |
| 64 "stability_debugging_win.cc", |
| 65 "stability_debugging_win.h", |
| 66 ] |
| 67 deps = [ |
| 68 "//base", |
| 69 ] |
| 70 } |
| 71 |
36 source_set("unit_tests") { | 72 source_set("unit_tests") { |
37 testonly = true | 73 testonly = true |
38 sources = [ | 74 sources = [ |
39 "endsession_watcher_window_win_unittest.cc", | 75 "endsession_watcher_window_win_unittest.cc", |
40 "exit_code_watcher_win_unittest.cc", | 76 "exit_code_watcher_win_unittest.cc", |
41 "exit_funnel_win_unittest.cc", | 77 "exit_funnel_win_unittest.cc", |
| 78 "postmortem_minidump_writer_win_unittest.cc", |
| 79 "postmortem_report_collector_unittest.cc", |
| 80 "stability_debugging_win_unittest.cc", |
42 "watcher_client_win_unittest.cc", | 81 "watcher_client_win_unittest.cc", |
43 "watcher_metrics_provider_win_unittest.cc", | 82 "watcher_metrics_provider_win_unittest.cc", |
44 "window_hang_monitor_win_unittest.cc", | 83 "window_hang_monitor_win_unittest.cc", |
45 ] | 84 ] |
46 configs += [ "//build/config/compiler:no_size_t_to_int_warning" ] | 85 configs += [ "//build/config/compiler:no_size_t_to_int_warning" ] |
47 deps = [ | 86 deps = [ |
48 ":browser_watcher", | 87 ":browser_watcher", |
49 ":browser_watcher_client", | 88 ":browser_watcher_client", |
| 89 ":stability", |
| 90 ":stability_report_proto", |
50 "//base", | 91 "//base", |
51 "//base/test:test_support", | 92 "//base/test:test_support", |
| 93 "//components/version_info", |
| 94 "//testing/gmock", |
52 "//testing/gtest", | 95 "//testing/gtest", |
| 96 "//third_party/crashpad/crashpad/client", |
| 97 |
| 98 # TODO(manzagop): remove non client/ crashpad dependencies. |
| 99 "//third_party/crashpad/crashpad/client", |
| 100 "//third_party/crashpad/crashpad/compat", |
| 101 "//third_party/crashpad/crashpad/snapshot", |
| 102 "//third_party/crashpad/crashpad/util", |
53 ] | 103 ] |
54 } | 104 } |
| 105 |
| 106 executable("print_report") { |
| 107 sources = [ |
| 108 "print_report_main_win.cc", |
| 109 ] |
| 110 deps = [ |
| 111 ":stability_report_proto", |
| 112 "//base", |
| 113 ] |
| 114 } |
OLD | NEW |